本帖最后由 aj1139420688 于 2019-5-6 11:12 編輯
本作品采用pwm三級調試,具有OLED顯示,同時實時監測當前溫度。
單片機源程序如下:
- /************************************************************************************
- Copyright, LCE STUDIO
- 程序名稱: OLED顯示屏試驗(12MHz)
- 功能說明: 0.96寸OLED顯示英文字符
- ************************************************************************************/
- #include "stc15f2k60s2.h" // 單片機STC15F2K60S2頭文件,可以不再加入reg51.h
- #include"delay.h"
- #include "oled.h"
- #include "bmp.h"
- #include "18b20.h" // 溫度傳感器頭文件
- /****************************** 用戶定義宏 ***********************************/
- //sbit LCD_CS =P4^3;
- /************* 本地變量聲明 **************/
- /************* 本地函數聲明 **************/
- /********************** ADC配置函數 ************************/
-
- //========================================================================
- // 函數: void SYS_Init(void)
- // 描述: 單片機端口初始化
- // 說明:STC15W4K32S4系列單片機,在上電后與PWM相關的IO為高阻狀態,需手動設置為普通雙向IO
- // PWM相關IO為 : P0.6/P0.7/P1.6/P1.7/P2.1/P2.2
- // P2.3/P2.7/P3.7/P4.2/P4.4/P4.5
- //========================================================================
- void SYS_Init()
- {
- P0M0=0x20;
- P0M1=0x20;
- P1M0=0x3C;
- P1M1=0x3C;
- P2M0=0x00;
- P2M1=0x00;
- P3M0=0x00;
- P3M1=0x00;
- P4M0=0x00;
- P4M1=0x00;
- P5M0=0x00;
- P5M1=0x00;
- }
- //========================================================================
- // 函數: void main(void)
- // 描述: 主函數
- //========================================================================
-
- void main(void)
- {
- int temp;
- float temperature;
- char displaytemp[16]; // 定義顯示區域臨時存儲數組
- SYS_Init(); // 系統初始化
- DelayMS(100);
- DelayUS(100);
- OLED_Init(); //初始化OLED
- OLED_Clear();
- while(1)
- {
- temp=ReadTemperature();
- temperature=(float)temp*0.0625;
- DelayMS(1000);
- // OLED_Clear();
- OLED_ShowCHinese(16,0,0);//紅
- OLED_ShowCHinese(34,0,1);//外
- OLED_ShowCHinese(52,0,2);//遙
- OLED_ShowCHinese(70,0,3);//控
- OLED_ShowCHinese(88,0,4);//風
- OLED_ShowCHinese(106,0,5);//扇
- OLED_ShowCHinese(0,3,6);//溫
- OLED_ShowCHinese(18,3,7);//度
- OLED_ShowCHinese(32,3,11);//:
- OLED_ShowNum(40,3,temperature,2,16);
- OLED_ShowCHinese(60,3,8);//℃
-
- OLED_ShowCHinese(0,6,9);//檔
- OLED_ShowCHinese(18,6,10);//位
- OLED_ShowCHinese(32,6,11);//:
- }
- }
復制代碼
所有資料51hei提供下載:
紅外風扇.zip
(198.83 KB, 下載次數: 16)
2019-5-4 16:27 上傳
點擊文件名下載附件
源代碼
|