標題: STM32可調(diào)時鐘加溫度顯示源碼 [打印本頁]

作者: LGX123    時間: 2018-8-12 10:12
標題: STM32可調(diào)時鐘加溫度顯示源碼
該程序是在stm32開發(fā)板上實現(xiàn)功能的,DS18B20獲取溫度通過屏幕顯示和串口打印出來,通過K_UP按鍵選擇修改時間的哪個參數(shù)各自對應(yīng)D1~D7指示燈亮,通過K_LEFT和K_DOWM改變數(shù)字的加減。

實物圖:


stm32單片機源程序如下:
  1. #include "system.h"
  2. #include "SysTick.h"
  3. #include "led.h"
  4. #include "usart.h"
  5. #include "rtc.h"
  6. #include "tftlcd.h"
  7. #include "key.h"
  8. #include "exti.h"
  9. #include "DS18B20.h"


  10. /*******************************************************************************
  11. * 函 數(shù) 名         : main
  12. * 函數(shù)功能                   : 主函數(shù)
  13. * 輸    入         : 無
  14. * 輸    出         : 無
  15. *******************************************************************************/
  16. int main()
  17. {
  18.         u8 i=0;
  19.         float temper;
  20.         u8 temper_buf[6];
  21.         int temper1;
  22.        
  23.         SysTick_Init(72);
  24.         NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);  //中斷優(yōu)先級分組 分2組
  25.         LED_Init();
  26.         USART1_Init(9600);
  27.         RTC_Init();
  28.         TFTLCD_Init();
  29.         LED_Init();
  30.         KEY_Init();
  31.         My_EXTI_Init();
  32.         DS18B20_Init();
  33.        
  34.         FRONT_COLOR=YELLOW;
  35.        
  36.         LCD_ShowFontHZ(10,120,"當前溫度為");
  37.         LCD_ShowFontHZ(80,150,"℃");
  38.        
  39.         while(1)
  40.         {
  41.                 i++;
  42.                 if(i%5==0)
  43.                 {
  44.                   temper=DS18B20_GetTemperture();
  45.                         temper1=temper*100;
  46.                         temper_buf[0]=temper1/10000+0x30;
  47.       temper_buf[1]=temper1%10000/1000+0x30;
  48.                         temper_buf[2]=temper1%1000/100+0x30;
  49.                         temper_buf[3]='.';
  50.                         temper_buf[4]=temper1%100/10+0x30;
  51.       temper_buf[5]=temper1%10+0x30;
  52.                         LCD_ShowString(10,150,tftlcd_data.width,tftlcd_data.height,24,(u8 *)temper_buf);
  53.                 }
  54.                 if(i%20==0)
  55.                 {
  56.                         led1=!led1;
  57.                 }
  58.                 delay_ms(10);
  59.         }
  60. }
復制代碼

所有資料51hei提供下載:
可調(diào)時鐘加溫度顯示.rar (327.7 KB, 下載次數(shù): 45)



作者: hhkjvip    時間: 2019-12-30 10:55
感謝樓主分享,謝謝
作者: 潘志豪    時間: 2020-1-2 00:37
謝謝樓主分享
作者: tj小學渣    時間: 2020-7-21 20:24
感謝樓主,感覺樓主可能是tj學長?




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1