diff --git a/board/ALPHA_I.MX_emmc_256ddr/out/target/TencentOS_tiny.bin b/board/ALPHA_I.MX_emmc_256ddr/out/target/TencentOS_tiny.bin old mode 100755 new mode 100644 diff --git a/board/ALPHA_I.MX_emmc_256ddr/out/target/TencentOS_tiny.elf b/board/ALPHA_I.MX_emmc_256ddr/out/target/TencentOS_tiny.elf old mode 100755 new mode 100644 diff --git a/board/BearPi_STM32L431RC/BSP/Hardware/E53_ST1/E53_ST1.c b/board/BearPi_STM32L431RC/BSP/Hardware/E53_ST1/E53_ST1.c deleted file mode 100644 index 6b9dbbbc0e12075ca2a1aec5ed38bef7340d75d1..0000000000000000000000000000000000000000 --- a/board/BearPi_STM32L431RC/BSP/Hardware/E53_ST1/E53_ST1.c +++ /dev/null @@ -1,377 +0,0 @@ -#include "E53_ST1.h" -#include "stm32l4xx.h" -#include "stm32l4xx_it.h" -#include "usart.h" -#include "main.h" - -gps_msg gpsmsg; -static unsigned char gps_uart[1000]; - - -TIM_HandleTypeDef htim16; - -/*************************************************************** -* 函数名称: MX_TIM16_Init -* 说 明: 初始化定时器16 -* 参 数: 无 -* 返 回 值: 无 -***************************************************************/ -/* TIM16 init function */ -void MX_TIM16_Init(void) -{ - TIM_OC_InitTypeDef sConfigOC; - TIM_BreakDeadTimeConfigTypeDef sBreakDeadTimeConfig; - - htim16.Instance = TIM16; - htim16.Init.Prescaler = 79; - htim16.Init.CounterMode = TIM_COUNTERMODE_UP; - htim16.Init.Period = 999; - htim16.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1; - htim16.Init.RepetitionCounter = 0; - htim16.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE; - if (HAL_TIM_Base_Init(&htim16) != HAL_OK) - { - Error_Handler(); - } - - if (HAL_TIM_PWM_Init(&htim16) != HAL_OK) - { - Error_Handler(); - } - - sConfigOC.OCMode = TIM_OCMODE_PWM1; - sConfigOC.Pulse = 499; - sConfigOC.OCPolarity = TIM_OCPOLARITY_HIGH; - sConfigOC.OCNPolarity = TIM_OCNPOLARITY_HIGH; - sConfigOC.OCFastMode = TIM_OCFAST_DISABLE; - sConfigOC.OCIdleState = TIM_OCIDLESTATE_RESET; - sConfigOC.OCNIdleState = TIM_OCNIDLESTATE_RESET; - if (HAL_TIM_PWM_ConfigChannel(&htim16, &sConfigOC, TIM_CHANNEL_1) != HAL_OK) - { - Error_Handler(); - } - - sBreakDeadTimeConfig.OffStateRunMode = TIM_OSSR_DISABLE; - sBreakDeadTimeConfig.OffStateIDLEMode = TIM_OSSI_DISABLE; - sBreakDeadTimeConfig.LockLevel = TIM_LOCKLEVEL_OFF; - sBreakDeadTimeConfig.DeadTime = 0; - sBreakDeadTimeConfig.BreakState = TIM_BREAK_DISABLE; - sBreakDeadTimeConfig.BreakPolarity = TIM_BREAKPOLARITY_HIGH; - sBreakDeadTimeConfig.BreakFilter = 0; - sBreakDeadTimeConfig.AutomaticOutput = TIM_AUTOMATICOUTPUT_DISABLE; - if (HAL_TIMEx_ConfigBreakDeadTime(&htim16, &sBreakDeadTimeConfig) != HAL_OK) - { - Error_Handler(); - } - - HAL_TIM_MspPostInit(&htim16); - -} -/*************************************************************** -* 函数名称: HAL_TIM_Base_MspInit -* 说 明: 使能定时器16时钟,设置时钟源 -* 参 数: 无 -* 返 回 值: 无 -***************************************************************/ -void HAL_TIM_Base_MspInit(TIM_HandleTypeDef* tim_baseHandle) -{ - - if(tim_baseHandle->Instance==TIM16) - { - /* USER CODE BEGIN TIM16_MspInit 0 */ - - /* USER CODE END TIM16_MspInit 0 */ - /* TIM16 clock enable */ - __HAL_RCC_TIM16_CLK_ENABLE(); - /* USER CODE BEGIN TIM16_MspInit 1 */ - - /* USER CODE END TIM16_MspInit 1 */ - } -} - -/*************************************************************** -* 函数名称: HAL_TIM_MspPostInit -* 说 明: 使能定时器16硬件初始化 -* 参 数: 无 -* 返 回 值: 无 -***************************************************************/ -void HAL_TIM_MspPostInit(TIM_HandleTypeDef* timHandle) -{ - - GPIO_InitTypeDef GPIO_InitStruct; - if(timHandle->Instance==TIM16) - { - /* USER CODE BEGIN TIM16_MspPostInit 0 */ - - /* USER CODE END TIM16_MspPostInit 0 */ - - /**TIM16 GPIO Configuration - PB8 ------> TIM16_CH1 - */ - GPIO_InitStruct.Pin = ST1_Beep_Pin; - GPIO_InitStruct.Mode = GPIO_MODE_AF_PP; - GPIO_InitStruct.Pull = GPIO_NOPULL; - GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_HIGH; - GPIO_InitStruct.Alternate = GPIO_AF14_TIM16; - HAL_GPIO_Init(ST1_Beep_GPIO_Port, &GPIO_InitStruct); - - /* USER CODE BEGIN TIM16_MspPostInit 1 */ - - /* USER CODE END TIM16_MspPostInit 1 */ - } - -} - -/*************************************************************** -* 函数名称: Init_Beep -* 说 明: 初始化E53_ST1的蜂鸣器 -* 参 数: 无 -* 返 回 值: 无 -***************************************************************/ -void Init_Beep(void) -{ - GPIO_InitTypeDef GPIO_InitStruct; - - /* GPIO Ports Clock Enable */ - ST1_Beep_GPIO_CLK_ENABLE(); - - /*Configure GPIO pin Output Level */ - HAL_GPIO_WritePin(ST1_Beep_GPIO_Port, ST1_Beep_Pin, GPIO_PIN_RESET); - - /*Configure GPIO pin : PtPin */ - GPIO_InitStruct.Pin = ST1_Beep_Pin; - GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; - GPIO_InitStruct.Pull = GPIO_NOPULL; - GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; - HAL_GPIO_Init(ST1_Beep_GPIO_Port, &GPIO_InitStruct); -} - -/*************************************************************** -* 函数名称: Init_LED -* 说 明: 初始化E53_ST1的LED灯 -* 参 数: 无 -* 返 回 值: 无 -***************************************************************/ -void Init_LED(void) -{ - GPIO_InitTypeDef GPIO_InitStruct; - - /* GPIO Ports Clock Enable */ - ST1_LED_GPIO_CLK_ENABLE(); - - /*Configure GPIO pin Output Level */ - HAL_GPIO_WritePin(ST1_LED_GPIO_Port, ST1_LED_Pin, GPIO_PIN_SET); - - /*Configure GPIO pin : PtPin */ - GPIO_InitStruct.Pin = ST1_LED_Pin; - GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; - GPIO_InitStruct.Pull = GPIO_NOPULL; - GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; - HAL_GPIO_Init(ST1_LED_GPIO_Port, &GPIO_InitStruct); -} -/*************************************************************** -* 函数名称: Init_GPS_POW -* 说 明: 初始化E53_ST1的GPS使能引脚 -* 参 数: 无 -* 返 回 值: 无 -***************************************************************/ -void Init_GPS_POW(void) -{ - GPIO_InitTypeDef GPIO_InitStruct; - - /* GPIO Ports Clock Enable */ - ST1_GPS_POW_GPIO_CLK_ENABLE(); - - /*Configure GPIO pin Output Level */ - HAL_GPIO_WritePin(ST1_GPS_POW_GPIO_Port, ST1_GPS_POW_Pin, GPIO_PIN_RESET); - - /*Configure GPIO pin : PtPin */ - GPIO_InitStruct.Pin = ST1_GPS_POW_Pin; - GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; - GPIO_InitStruct.Pull = GPIO_NOPULL; - GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; - HAL_GPIO_Init(ST1_GPS_POW_GPIO_Port, &GPIO_InitStruct); -} -/*************************************************************** -* 函数名称: GPS_Init -* 说 明: 初始化GPS模块 -* 参 数: 无 -* 返 回 值: 无 -***************************************************************/ -void GPS_Init(void) -{ - MX_USART3_UART_Init(); //初始化串口 - HAL_UART_Transmit(&huart3, "$CCMSG,GGA,1,0,*19\r\n", 20, 200); - HAL_UART_Transmit(&huart3, "$CCMSG,GSA,1,0,*0D\r\n", 20, 200); - HAL_UART_Transmit(&huart3, "$CCMSG,GSV,1,0,*1A\r\n", 20, 200); -} - -/*************************************************************** -* 函数名称: Init_E53_ST1 -* 说 明: 初始化E53_ST1扩展板 -* 参 数: 无 -* 返 回 值: 无 -***************************************************************/ -void Init_E53_ST1(void) -{ - GPS_Init(); - Init_Beep(); - Init_LED(); - Init_GPS_POW(); - MX_TIM16_Init(); -} - -/***************************************************\ -* 函数名称: NMEA_Comma_Pos -* 函数功能:从buf里面得到第cx个逗号所在的位置 -* 输入值: -* 返回值:0~0xFE,代表逗号所在位置的偏移 -* 0xFF,代表不存在第cx个逗号 -\***************************************************/ - -uint8_t NMEA_Comma_Pos(uint8_t *buf,uint8_t cx) -{ - uint8_t *p = buf; - while(cx) - { - if(*buf=='*'||*buf<' '||*buf>'z')return 0xFF; - if(*buf==',')cx--; - buf++; - } - return buf-p; -} -/***************************************************\ -* 函数名称: NMEA_Pow -* 函数功能:返回m的n次方值 -* 输入值:底数m和指数n -* 返回值:m^n -\***************************************************/ -uint32_t NMEA_Pow(uint8_t m,uint8_t n) -{ - uint32_t result = 1; - while(n--)result *= m; - return result; -} -/***************************************************\ -* 函数名称: NMEA_Str2num -* 函数功能:str数字转换为(int)数字,以','或者'*'结束 -* 输入值:buf,数字存储区 -* dx,小数点位数,返回给调用函数 -* 返回值:转换后的数值 -\***************************************************/ -int NMEA_Str2num(uint8_t *buf,uint8_t*dx) -{ - uint8_t *p = buf; - uint32_t ires = 0,fres = 0; - uint8_t ilen = 0,flen = 0,i; - uint8_t mask = 0; - int res; - while(1) - { - if(*p=='-'){mask |= 0x02;p++;}//说明有负数 - if(*p==','||*p=='*')break;//遇到结束符 - if(*p=='.'){mask |= 0x01;p++;}//遇到小数点 - else if(*p>'9'||(*p<'0'))//数字不在0和9之内,说明有非法字符 - { - ilen = 0; - flen = 0; - break; - } - if(mask&0x01)flen++;//小数点的位数 - else ilen++;//str长度加一 - p++;//下一个字符 - } - if(mask&0x02)buf++;//移到下一位,除去负号 - for(i=0;i5)flen=5;//最多取五位小数 - *dx = flen; - for(i=0;ilatitude_bd=temp/NMEA_Pow(10,dx+2); //得到° - rs=temp%NMEA_Pow(10,dx+2); //得到' - gpsmsg->latitude_bd=gpsmsg->latitude_bd*NMEA_Pow(10,5)+(rs*NMEA_Pow(10,5-dx))/60;//转换为° - } - posx=NMEA_Comma_Pos(p4,4); //南纬还是北纬 - if(posx!=0XFF)gpsmsg->nshemi_bd=*(p4+posx); - posx=NMEA_Comma_Pos(p4,5); //得到经度 - if(posx!=0XFF) - { - temp=NMEA_Str2num(p4+posx,&dx); - gpsmsg->longitude_bd=temp/NMEA_Pow(10,dx+2); //得到° - rs=temp%NMEA_Pow(10,dx+2); //得到' - gpsmsg->longitude_bd=gpsmsg->longitude_bd*NMEA_Pow(10,5)+(rs*NMEA_Pow(10,5-dx))/60;//转换为° - } - posx=NMEA_Comma_Pos(p4,6); //东经还是西经 - if(posx!=0XFF)gpsmsg->ewhemi_bd=*(p4+posx); -} - -/*************************************************************** -* 函数名称: E53_ST1_Read_Data -* 说 明: 获取GPS经纬度信息 -* 参 数: 无 -* 返 回 值: 无 -***************************************************************/ -void E53_ST1_Read_Data(void) -{ - HAL_UART_Receive_IT(&huart3,gps_uart,1000); - NMEA_BDS_GPRMC_Analysis(&gpsmsg,(uint8_t*)gps_uart); //分析字符串 - E53_ST1_Data.Longitude=(float)((float)gpsmsg.longitude_bd/100000); - E53_ST1_Data.Latitude=(float)((float)gpsmsg.latitude_bd/100000); -} - -/*************************************************************** -* 函数名称: E53_ST1_LED_StatusSet -* 说 明: E53 ST1开发板上的LED灯的亮灭控制 -* 参 数: status,LED灯的状态 -* 非1,关灯 -* 1,开灯 -* 返 回 值: 无 -***************************************************************/ -void E53_ST1_LED_StatusSet(E53ST1_Status_ENUM status) -{ - HAL_GPIO_WritePin(ST1_LED_GPIO_Port, ST1_LED_Pin, status != ST1_ON ? GPIO_PIN_RESET : GPIO_PIN_SET ); -} - -/*************************************************************** -* 函数名称: E53_ST1_Beep -* 说 明: E53 ST1蜂鸣器报警与否 -* 参 数: status,LED_ENUM枚举的数据 -* ST1_OFF,关蜂鸣器 -* ST1_ON,开蜂鸣器 -* 返 回 值: 无 -***************************************************************/ -void E53_ST1_Beep(E53ST1_Status_ENUM status) -{ - if(status == ST1_ON) - HAL_TIM_PWM_Start(&htim16,TIM_CHANNEL_1); - if(status == ST1_OFF) - HAL_TIM_PWM_Stop(&htim16,TIM_CHANNEL_1); -} - - diff --git a/board/TencentOS_tiny_EVB_MX_Plus/BSP/Hardware/E53_ST1/E53_ST1.c b/board/TencentOS_tiny_EVB_MX_Plus/BSP/Hardware/E53_ST1/E53_ST1.c index 3cab776e1dae2a838f86dd3a6ac4c60e00c482fc..f3e10ea5d86c1d2e4eb506096178995f7422add9 100644 --- a/board/TencentOS_tiny_EVB_MX_Plus/BSP/Hardware/E53_ST1/E53_ST1.c +++ b/board/TencentOS_tiny_EVB_MX_Plus/BSP/Hardware/E53_ST1/E53_ST1.c @@ -360,9 +360,9 @@ void E53_ST1_LED_StatusSet(E53ST1_Status_ENUM status) /*************************************************************** * 函数名称: E53_ST1_Beep * 说 明: E53 ST1蜂鸣器报警与否 -* 参 数: status,LED_ENUM枚举的数据 -* LED_OFF,关灯 -* LED_ON,开灯 +* 参 数: status,E53_ST1枚举的数据 +* ST1_OFF,关蜂鸣器 +* ST1_ON,开蜂鸣器 * 返 回 值: 无 ***************************************************************/ void E53_ST1_Beep(E53ST1_Status_ENUM status) diff --git a/board/TencentOS_tiny_EVB_MX_Plus/BSP/Hardware/PM25/sensor_parser.h b/board/TencentOS_tiny_EVB_MX_Plus/BSP/Hardware/PM25/sensor_parser.h index b69c8169272aedf9385280dd904fef76ab99109d..3ff57c7aef030082a537550dfa2068254d9453cb 100644 --- a/board/TencentOS_tiny_EVB_MX_Plus/BSP/Hardware/PM25/sensor_parser.h +++ b/board/TencentOS_tiny_EVB_MX_Plus/BSP/Hardware/PM25/sensor_parser.h @@ -15,8 +15,8 @@ * within TencentOS. *---------------------------------------------------------------------------*/ -#ifndef _TOS_SHELL_H_ -#define _TOS_SHELL_H_ +#ifndef _SENSOR_PARSER_H_ +#define _SENSOR_PARSER_H_ #include "tos_k.h" @@ -50,5 +50,5 @@ __API__ void tos_shell_printf(const char *format, ...); __API__ void tos_shell_input_byte(uint8_t data); -#endif /* _TOS_SHELL_H_ */ +#endif /* _SENSOR_PARSER_H_ */