<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 基于C8051F020的示波器監控程序的設計

基于C8051F020的示波器監控程序的設計

作者: 時(shí)間:2016-11-30 來(lái)源:網(wǎng)絡(luò ) 收藏
  6 系統軟件設計
  6.1 一鍵多義鍵盤(pán)程序設計
  在鍵盤(pán)分析中,運用一個(gè)工作狀態(tài)寄存器保存鍵盤(pán)的現狀態(tài),當鍵盤(pán)掃描到一個(gè)按鍵時(shí),根據現狀態(tài)的值從分析程序入口表中找到分析程序狀態(tài)表地址,從該地址處進(jìn)入分析程序狀態(tài)表,找到相匹配的值,把下一狀態(tài)送到現狀態(tài)單元里,取出動(dòng)作號,根據動(dòng)作號計算出動(dòng)作子程序入口地址,再執行相應子程序。圖4為鍵碼匹配子程序的流程圖。
  6. 2 編碼開(kāi)關(guān)程序設計
  由圖1可以看出,引腳1和引腳2有同時(shí)為高電平的情況,之后如果引腳2比引腳1先到達高電平則表示左旋,如果引腳1比引腳2先到達高電平則表示右旋。編程的時(shí)候依據這個(gè)特點(diǎn)來(lái)判斷引腳1、引腳2的狀態(tài)即可。以1引腳接P4.0,2引腳接P4.1為例:
  6.3 模數轉換軟件設計
  通過(guò)設置ADCO控制寄存器ADCOCN位3~2(ADOCM1~O)A/D轉換啟動(dòng)方式選擇位,來(lái)啟動(dòng)A/D轉換:位3~2為00時(shí),向ADOBUSY(ADCOCN位4)寫(xiě)1啟動(dòng)A/D轉換;位3~2為01時(shí),定時(shí)器3溢出啟動(dòng)A/D轉換;位3~2為10時(shí),CNVSTR上升沿啟動(dòng) A/D轉換;位3~2為11時(shí),定時(shí)器2溢出啟動(dòng)A/D轉換。本設計采用第一種啟動(dòng)方式。
  由于單片機的工作量并不大,所以軟件設計時(shí)采用查詢(xún)的方式。單片機不斷地查詢(xún)鍵盤(pán)、編碼開(kāi)關(guān)以及電位器的狀態(tài),如果有變化時(shí),單片機將動(dòng)作信息傳遞給 ARM主MCU,等待主MCU的處理。由于單片機模數轉換的速度非???,因此在程序中加延時(shí),以便觀(guān)察到模數轉換的變化量。另外,硬件設計時(shí)沒(méi)有考慮濾波,故用軟件實(shí)現濾波。一般的濾波的方法有限幅濾波法、中位置濾波法、算術(shù)平均濾波法等,現在提出一種新的濾波方法。由于使用12位A/D,但只要8位就可以達到所要的精度,所以可以采用去掉低4位的方法來(lái)實(shí)現濾波的目的。由于篇幅有限,下面只給出程序的一部分,以AIN0為例:
  結語(yǔ)
  本文介紹的一鍵多義的按鍵管理程序,對多按鍵的智能儀表可以通用。編碼開(kāi)關(guān)的編程方法簡(jiǎn)單易懂。在A(yíng)/D轉換部分,提出的去掉低4位的軟件濾波方法可靠可行,對精度要求不高的場(chǎng)合非常適用。這3部分構成了一個(gè)完整的監控程序,當單片機監控到某一部分有變化時(shí),就將其動(dòng)作信息傳遞給ARM主CPU,主CPU 進(jìn)行相應的處理。

參考文獻:

[1].C8051F020datasheethttp://www.dzsc.com/datasheet/C8051F020_209830.html.

本文引用地址:http://dyxdggzs.com/article/201611/323656.htm
上一頁(yè) 1 2 下一頁(yè)

關(guān)鍵詞: C8051F020示波器監控程

評論


技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>