新聞中心

        EEPW首頁 > 測試測量 > 設(shè)計(jì)應(yīng)用 > 基于AT89S52單片機(jī)的太陽能環(huán)境參數(shù)測試儀設(shè)計(jì)

        基于AT89S52單片機(jī)的太陽能環(huán)境參數(shù)測試儀設(shè)計(jì)

        作者: 時(shí)間:2009-11-20 來源:網(wǎng)絡(luò) 收藏

          圖4為鋰電池充電電路。其中LEDl和LED2分別作為充電中和充電飽和兩種狀態(tài)的指示燈,R1在充電時(shí)起限流保護(hù)的作用;電容C1和C2采用的是多層陶瓷電容器(MLCC),能保證充電電路穩(wěn)定工作。

        1.5 通信模塊

          測試儀通過RS485工業(yè)總線與PC機(jī)進(jìn)行通信,其硬件接口電路如圖5所示。


        2 軟件設(shè)計(jì)

        2.1 總體設(shè)計(jì)

          測試儀的軟件開發(fā)環(huán)境采用的是Keil C,所有代碼采用C語言編寫。為了方便程序調(diào)試和提高可靠性,軟件采用模塊化結(jié)構(gòu)設(shè)計(jì),主要由初始化程序、主程序、子程序、中斷服務(wù)程序等組成。單片機(jī)上電后即開始循環(huán)執(zhí)行溫濕度、照度測量程序,并以設(shè)定的時(shí)間間隔在數(shù)碼管上輪流動(dòng)態(tài)顯示;按鍵切換和通信功能部分由于使用頻率相對(duì)較低,為降低設(shè)備功耗,其程序以中斷響應(yīng)的方式執(zhí)行。在此要注意中斷優(yōu)先級(jí)的設(shè)置:按鍵中斷優(yōu)先級(jí)應(yīng)高于串口中斷,否則將無法進(jìn)行顯示切換。主程序流程如圖6所示。

        2.2 傳感器驅(qū)動(dòng)程序

          本系統(tǒng)采用的傳感器均為集成數(shù)字芯片且都具有I2C總線接口,故其驅(qū)動(dòng)程序的編寫要嚴(yán)格遵循I2C總線的時(shí)序。主程序?yàn)槊恳粋€(gè)參數(shù)開辟了一個(gè)8位的存儲(chǔ)空間,傳感器將采集到的數(shù)據(jù)經(jīng)SDA引腳串行輸出,驅(qū)動(dòng)程序?qū)DA線上輸出的數(shù)據(jù)進(jìn)行串并轉(zhuǎn)換,并存儲(chǔ)到相應(yīng)空間中,以方便其他功能程序調(diào)用。以下是照度傳感器數(shù)據(jù)采集程序的部分代碼。



        關(guān)鍵詞: 89S S52 AT 89

        評(píng)論


        相關(guān)推薦

        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 长兴县| 宁强县| 三江| 江口县| 盐城市| 隆子县| 淮滨县| 兴宁市| 子长县| 昌平区| 正镶白旗| 芜湖市| 克山县| 平湖市| 兴城市| 丰镇市| 五原县| 温宿县| 轮台县| 高要市| 清流县| 乌苏市| 望城县| 常州市| 鲁甸县| 菏泽市| 温泉县| 大余县| 邯郸县| 玉林市| 禹州市| 甘泉县| 海宁市| 小金县| 稷山县| 鹤岗市| 齐齐哈尔市| 吉林市| 翁牛特旗| 武夷山市| 化州市|