| | |
| | | /* Includes ------------------------------------------------------------------*/ |
| | | #include "main.h" |
| | | #include "adc.h" |
| | | #include "spi.h" |
| | | #include "tim.h" |
| | | #include "usart.h" |
| | | #include "gpio.h" |
| | |
| | | /* Private includes ----------------------------------------------------------*/ |
| | | /* USER CODE BEGIN Includes */ |
| | | #include "miscdev.h" |
| | | #include "ds18b20.h" |
| | | #include "sht20.h" |
| | | #include "w25q.h" |
| | | #include "hal_oled.h" |
| | | /* USER CODE END Includes */ |
| | | |
| | | /* Private typedef -----------------------------------------------------------*/ |
| | |
| | | { |
| | | |
| | | /* USER CODE BEGIN 1 */ |
| | | int rv; |
| | | float temperature; |
| | | int pos_x = 25; |
| | | int pos_y = 1; |
| | | /* USER CODE END 1 */ |
| | | |
| | | /* MCU Configuration--------------------------------------------------------*/ |
| | |
| | | MX_ADC1_Init(); |
| | | MX_TIM6_Init(); |
| | | MX_TIM1_Init(); |
| | | MX_SPI1_Init(); |
| | | /* USER CODE BEGIN 2 */ |
| | | |
| | | beep_start(2, 300); |
| | | OLED_Init(); |
| | | |
| | | /* USER CODE END 2 */ |
| | | |
| | | /* Infinite loop */ |
| | | /* USER CODE BEGIN WHILE */ |
| | | while (1) |
| | | { |
| | | rv = ds18b20_sample( &temperature); |
| | | if( rv < 0 ) |
| | | { |
| | | printf("ERROR: DS18B20 sample data failure, rv=%d\r\n", rv); |
| | | } |
| | | else |
| | | { |
| | | printf("DS18B20 sample temperature: %.3f\r\n", temperature); |
| | | } |
| | | HAL_Delay(1000); |
| | | OLED_Clear(); |
| | | OLED_ShowString(pos_x, pos_y, "ISKBoard", OLED_FONT16); |
| | | HAL_Delay(1000); |
| | | |
| | | OLED_Clear(); |
| | | for(int i=0; i<HZK_LEN_LINGYUN; i++) |
| | | OLED_ShowChinese(Hzk_LingYun, pos_x+i*16, pos_y, i); |
| | | HAL_Delay(1000); |
| | | |
| | | OLED_Clear(); |
| | | OLED_DrawBMP(0,0, X_WIDTH,Y_WIDTH/2, bmp_logo); |
| | | HAL_Delay(1000); |
| | | |
| | | /* USER CODE END WHILE */ |
| | | |