新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于tinyAVR和Nokia3310 LCD的溫度繪圖儀

        基于tinyAVR和Nokia3310 LCD的溫度繪圖儀

        作者: 時間:2012-11-07 來源:網絡 收藏

        b.JPG



        5 C語言程序設計
        這里提供給大家經過編譯的利用C語言編寫的源代碼程序(軟件集成開發環境為WinAVR,C語言編譯器為AVR-GCC)。程序需要運行在1 MHz的時鐘頻率下。
        采用編程器STK500在ISP編程模式給單片機燒寫程序。單總線溫度傳感器DS18B20是通過單總線接口完成讀/寫功能的,這種總線接口在單片機上是利用軟件模擬來實現的??梢詤⒖紲囟葌鞲衅鞯氖褂檬謨砸垣@取它的各種命令。這里僅僅對源程序代碼中較重要的部分作如下注釋:
        f.JPG
        在ds1820_read函數中讀取DS18B20,經過必要的處理后,返回一個10倍于實際攝氏溫度值的數值。無限循環構成程序的主體,其操作模式主要有兩種:第一種模式是以攝氏度和華氏度交替顯示當前溫度值,同時顯示最大值和最小值;另一種模式是用圖形方式顯示溫度的變化。曲線圖的繪制采用了graph1函數,它是通過提取數組data的數值繪制像素點的。Setlcd函數用于在LCD屏幕上繪制坐標軸。S4開關(連接單片機PA1引腳)用于切換上述兩種模式。從繪圖模式到溫度模式的相互切換并不會刪除狀態信息。程序代碼的其他部分用于處理LCD的初始化和繪圖算法。

        6 獨立運行
        溫度繪圖儀采用一節或兩節5號或7號規格的干電池,可以是堿性電池,或者可充電的鎳氫或鎳鎘電池。一旦接通電源后,顯示器開始顯示溫度值??墒褂瞄_關在讀數模式和繪圖模式之間切換。


        上一頁 1 2 3 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 巩义市| 旬阳县| 阳朔县| 乐都县| 宾阳县| 东城区| 利津县| 文水县| 临沂市| 宜君县| 积石山| 嘉兴市| 兰考县| 永顺县| 洪雅县| 玛沁县| 忻州市| 喀喇沁旗| 霍林郭勒市| 屯昌县| 枣庄市| 锡林浩特市| 杭州市| 邳州市| 府谷县| 惠州市| 宣化县| 余庆县| 温州市| 陇南市| 徐汇区| 都匀市| 偏关县| 荆门市| 大姚县| 忻州市| 喀喇沁旗| 三台县| 油尖旺区| 香河县| 洪泽县|