<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于AT89S52單片機(jī)的簡(jiǎn)易數(shù)字示波器設(shè)計(jì)

          基于AT89S52單片機(jī)的簡(jiǎn)易數(shù)字示波器設(shè)計(jì)

          作者: 時(shí)間:2011-08-17 來(lái)源:網(wǎng)絡(luò) 收藏

          3 軟件
          軟件部分主要包括主程序模塊、A/D轉(zhuǎn)換模塊、LCD顯示模塊、按鍵處理模塊,其流程圖如圖5所示。

          本文引用地址:http://www.ex-cimer.com/article/172557.htm

          e.jpg


          3.1 A/D轉(zhuǎn)換部分
          當(dāng)定時(shí)器產(chǎn)生中斷時(shí),ADC0809將輸入的模擬量轉(zhuǎn)換成量。ADC0809的轉(zhuǎn)換速率最大可達(dá)640 kHz,程序設(shè)定了定時(shí)器時(shí)間間隔為2μs,所以采樣頻率達(dá)到了500 kHz。
          3.2 鍵盤掃描部分
          設(shè)定了1個(gè)按鍵實(shí)現(xiàn)波形的運(yùn)行與停止,4個(gè)獨(dú)立按鍵用于改變波形的尺寸。amp和time兩個(gè)參數(shù)分別用于調(diào)整幅值和時(shí)間軸的大小,當(dāng)MCU檢測(cè)到按鍵被按下時(shí),兩個(gè)參數(shù)的值相應(yīng)地發(fā)生改變,從而改變了波形的大小。
          3.3 LCD顯示部分
          A/D產(chǎn)生的第一個(gè)數(shù)據(jù),其對(duì)應(yīng)的點(diǎn)排在第一列,這樣就確定了該點(diǎn)的橫軸位置,縱軸的位置由信號(hào)大小按比例換算而來(lái)。由于采樣頻率一定,所以每2個(gè)點(diǎn)之間的時(shí)間間隔相同,下一個(gè)點(diǎn)排第二列,以此類推。
          3.4 存儲(chǔ)部分
          數(shù)字存儲(chǔ)芯片選擇了Atmel公司推出的AT24C512,其作用是存儲(chǔ)不同時(shí)刻的信號(hào)大小,克服了模擬只能顯示當(dāng)前波形的缺點(diǎn)。由于該芯片采用I2C總線傳輸數(shù)據(jù),所以需要的I/O口用來(lái)模擬該總線。

          4 結(jié)語(yǔ)
          本文的以為控制核心的數(shù)字,在軟硬件有機(jī)結(jié)合下,可以達(dá)到所要求的性能指標(biāo),運(yùn)行穩(wěn)定可靠。測(cè)試表明該數(shù)字具有較高的實(shí)時(shí)采樣率,可以將采集到的數(shù)據(jù)經(jīng)過(guò)硬件電路、軟件程序轉(zhuǎn)換成相應(yīng)的波形很好的顯示在液晶顯示屏上。該數(shù)字示波器能夠?qū)崿F(xiàn)波形的采集、調(diào)理、存儲(chǔ)、顯示等功能,通過(guò)鍵盤對(duì)波形進(jìn)行相應(yīng)的功能設(shè)置,具有體積小、操作簡(jiǎn)單、方便、設(shè)備廉價(jià)等特點(diǎn)。在后續(xù)的改進(jìn)中,可以利用分頻合成技術(shù)進(jìn)行采樣頻率合成,提高其采樣頻率,同時(shí)該數(shù)字示波器還具有一定的擴(kuò)展能力,具有廣闊的應(yīng)用前景和實(shí)用價(jià)值。


          上一頁(yè) 1 2 3 4 下一頁(yè)

          評(píng)論


          相關(guān)推薦

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

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();