日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > windows >内容正文

windows

基于Tiny-51操作系统的51单片机温度测控系统设计

發布時間:2024/3/12 windows 53 豆豆
生活随笔 收集整理的這篇文章主要介紹了 基于Tiny-51操作系统的51单片机温度测控系统设计 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

  • 基于Tiny-51操作系統的51單片機溫度測控系統設計
    • 一、設計題目
    • 二、設計要求
    • 三、設計作用及目的
    • 四、硬件設計
    • 五、軟件流程
    • 六、調試界面
    • 七、心得體會
    • 八、程序源碼

基于Tiny-51操作系統的51單片機溫度測控系統設計

一、設計題目

? 溫度測控儀(擴展板AD仿真)

二、設計要求

  • 使用電位器輸出電壓進行采樣仿真溫度測量,設定溫度范圍從-20-200攝氏度,采樣分辨率為0.01攝氏度;
  • 采樣進行定時采樣,采樣時間自定(推薦1秒);
  • 采樣得到的數字量通過曲線擬合出溫度值,并將溫度數值顯示在OLED顯示屏,同時OLED也要顯示當前時間;
  • 分三個不同時間段進行報警,可以切換攝氏度與華氏度單位;
  • 通過矩陣鍵盤和OLED顯示屏設計人機交互界面,設置溫度的上下限值、設置時間段、設置當前時間;16個矩陣鍵盤的按鍵功能分配如下,0-9、設置、確認、上移、下移(兼具單位切換)、左移、右移;下載程序第一次上電后,設定值有默認值,后續如果修改設定值,設定值存入AT24C02,掉電不丟失;
  • 制定通信協議,可以在PC機通過串口助手獲取當前的溫度值、當前時間、當前運行狀態(正常、超上限、超下限);
  • 制定通訊協議,可以發送指令,通過上位機設定溫度的上下限、時間段和當前時間
  • 三、設計作用及目的

    • 設計作用

      ? 本次設計的主要作用是提高同學們對于51單片機的掌握程度,掌握使用51單片機進行項目開發的流程,通過團隊合作制作一個具有一定項目意義的項目,讓每一位成員參與到項目的設計之中,了解設計的流程,將所學的知識應用到項目之中,實現所有功能。

    • 設計目的

      ? 基于STC89C52RC單片機,編寫程序,調度外圍模塊,達到可以實時ad采集電壓轉化為溫度,同時顯示時間,以及溫度上下限,并且可以進入設置界面,設置溫度單位,3個溫度時間段,以及在其時間段范圍內,溫度上下限的設定。

    四、硬件設計

    • 功能模塊選擇:
  • 溫度模擬采集:溫度模擬使用A-D模塊,將電位器的輸入電壓(模擬量Analog)轉換為輸出量(數字量Digital),在使用單片機讀取數字量電壓信號。此處我們使用的是ADS1015采集模塊,該模塊通過IIC配置模塊內部寄存器,讀寫地址位分別為:0x91和0x90,通過對不同寄存器寫入對應值,可以控制開始轉換,讀取采集數據的功能。IIC總線協議不清楚的可以看我的另外一篇文章:鏈接;
  • 時間模塊:P8563時間模塊該模塊也是通過IIC總線進行讀寫操作,寫入對應時間寄存器設定時間后,自動進行時間計數,搭配外部電源與晶振,可以在斷電時繼續運行,維持時間計數,可以通過IIC讀取寄存器,讀取當前時間。
  • 顯示模塊:采用OLED模塊做顯示,本模塊通過IIC配置對應寄存器,IIC寫入GRAM,OLED顯示對應的設置,OLED顯示清晰,成本也較為低廉,故選用此模塊。
  • 存儲模塊:AT24C02,該模塊通過IIC寫入數據,將需要存儲的數據寫入24C02(EEPROM)內部對應的區域,每次寫入一個字節,讀取時也是通過IIC總線讀取,每次讀取一個字節。
    • 硬件電路連接:
  • IO口分配:電路硬件連接的設計結合各個模塊的IO口使用情況來設計,時間、存儲、模擬采集、數據顯示皆使用IIC,且地址不重復,故可以使用同一組IIC總線,根據各個模塊的地址進行不同模塊的讀寫操作。此處由于使用模塊皆為5v或5v以下,使用電腦供電足夠,電源可直接進行連接,無需適配其他的穩壓方式。

  • 硬件連接圖:

    2.1 整體硬件思路:

    2.2 實際連接方案:

    ADS1015電路設計圖,圖中SCL:P0.4;SDA:P0.5;

    PCF8563時鐘模塊以及AT24C02EEPROM模塊,SCL:P0.4;SDA:P0.5;

    ? OLED顯示模塊:SCL:P0.4;SDA:P0.5;

    ? 蜂鳴器及LED連接電路:

    ? 51單片機最小系統電路:

    ? 矩陣鍵盤硬件原理圖:

  • 五、軟件流程

    • 程序流程圖:
    • 各部分任務流程圖
  • 啟動任務

  • ADC采集任務

  • 串口任務

  • 按鍵任務

  • 顯示任務

  • 時鐘任務

  • 報警任務

  • 存儲任務

    • 矩陣按鍵功能表:

    六、調試界面

    數據界面:

    設置界面:

    七、心得體會

    過去的51單片機開發都是以裸機直接進行開發,程序編寫復雜,邏輯難以布置,在程序任務量大了之后一旦出現bug,難以進行修改,因為使用過操作系統進行開發,我也比較傾向于使用操作系統進行開發,分析了本次題目之后,因為程序的功能較為復雜,所以使用操作系統有一定的必要性,使用的實時系統是keil公司推出的RTX51 tiny版本,采取分時調度,任務主程序占據RAM9字節,每創建一個任務占據3個字節,每個信號量占據3字節,ROM最大900個字節,這些使用資源對于擁有256RAM和8kROM的stc89c52rc來說開銷也很小,在使用了RTX之后,任務的開發難度下降了很多,每種類型的任務單獨封裝成一個線程,線程間通過信號和全局量進行同步與通信,在出現BUG時,可以很快根據現象找到對應錯誤的線程位置,提高開發的速度,同時通過這次課設我也進一步加強了我對于51單片機內部結構的熟悉,加強了我對51外設的了解與使用程度,進一步加深了我對51配置外圍模塊的理解,以及串口通信,IIC總線的使用程度。

    八、程序源碼

    Gitee:鏈接

    總結

    以上是生活随笔為你收集整理的基于Tiny-51操作系统的51单片机温度测控系统设计的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。