diff --git a/john103C6T6/Core/Inc/main.h b/john103C6T6/Core/Inc/main.h index 1552111..4687a72 100644 --- a/john103C6T6/Core/Inc/main.h +++ b/john103C6T6/Core/Inc/main.h @@ -61,12 +61,15 @@ typedef struct /* Exported types ------------------------------------------------------------*/ /* USER CODE BEGIN ET */ +#define reset_blink_delay 10 +#define rest_iter 10 extern void handle_command(char* cmd); typedef void (*FunctionPointer)(void); uint16_t handle_valves(TEMP* tmp_sense); void init_all_T_sense(void); void iwdg_refresh(void); +void led_blink(GPIO_TypeDef *GPIOx,uint16_t GPIO_Pin,uint8_t iter,uint16_t delay); /* USER CODE END ET */ diff --git a/john103C6T6/Core/Src/main.c b/john103C6T6/Core/Src/main.c index a7e9dd8..ac1536c 100644 --- a/john103C6T6/Core/Src/main.c +++ b/john103C6T6/Core/Src/main.c @@ -29,7 +29,8 @@ #include "def.h" #include - #include "rs_message.h" +#include "rs_message.h" + /* USER CODE END Includes */ @@ -117,60 +118,26 @@ int main(void) MX_USART1_UART_Init(); MX_TIM2_Init(); MX_ADC1_Init(); - /* USER CODE BEGIN 2 */ - //TIM1->DIER |= TIM_DIER_UIE; -// HAL_TIM_Base_MspInit(&htim1); -// HAL_TIM_Base_Start(&htim1); - GPIOC->ODR^=(1<<13); - HAL_Delay(50); - GPIOC->ODR^=(1<<13); - HAL_Delay(50); - GPIOC->ODR^=(1<<13); - HAL_Delay(50); - GPIOC->ODR^=(1<<13); - HAL_Delay(50); - GPIOC->ODR^=(1<<13); - HAL_Delay(50); - GPIOC->ODR^=(1<<13); - HAL_Delay(50); - GPIOC->ODR^=(1<<13); - HAL_Delay(50); - GPIOC->ODR^=(1<<13); - HAL_Delay(50); - GPIOC->ODR^=(1<<13); - HAL_Delay(50); - GPIOC->ODR^=(1<<13); - HAL_Delay(50); - GPIOC->ODR^=(1<<13); - HAL_Delay(50); - GPIOC->ODR^=(1<<13); - HAL_Delay(50); - GPIOC->ODR&=~(1<<13); - //DS18B20_Init(GPIOA, GPIO_PIN_1); + /* USER CODE BEGIN 2 */ + + led_blink(GPIOC,GPIO_PIN_13,rest_iter,reset_blink_delay); MODBUS_FirstInit(); uint8_t uart_byte = 0; RS_Receive_IT(&hmodbus1, &MODBUS_MSG); - //HAL_UART_Receive_IT(&huart1, &uart_byte, 1); - - Dallas_BusFirstInit(&htim1); - - // инициализация по порядку найденных датчиков // Инициализация по индексу (порядковому номеру найденного датчика) -for ( int i=0; iRomCnt;i++) -{ - - -// Инициализация по ROM-адресу + for ( int i=0; iRomCnt;i++) + { + // Инициализация по ROM-адресу //sens[i].Init.init_func = &Dallas_SensorInitByROM; // sens[i].Init.InitParam.ROM = rom_address; sens[i].Init.InitParam.Ind = i; sens[i].Init.init_func = &Dallas_SensorInitByInd; sens[i].Init.Resolution = DALLAS_CONFIG_9_BITS; - sens[i].set_temp =20.; - sens[i].hyst =2; + MB_DATA.HoldRegs.set_Temp[i] =sens[i].set_temp =20.; + sens[i].hyst =3; Dallas_AddNewSensors(&hdallas, &sens[i]); } @@ -290,7 +257,14 @@ void SystemClock_Config(void) { IWDG->KR = 0xAAAA; // Сбросить таймер } - +void led_blink(GPIO_TypeDef *GPIOx,uint16_t GPIO_Pin,uint8_t iter,uint16_t delay) + { + for(int i=0;iODR^=(1<Instance == USART1)