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

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > AT89C2051單片機(jī)與MT8880接口設(shè)計(jì)

          AT89C2051單片機(jī)與MT8880接口設(shè)計(jì)

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

          加拿大MITEL公司生產(chǎn)的是一種帶有CPU的DTMF(雙音多頻)發(fā)送/接收芯片,其可與6800系列微處理器或直接。然而,對(duì)于想使用芯片的51系列用戶而言,關(guān)注的是51系列如何與的問(wèn)題。本文將以具有51內(nèi)核的 (簡(jiǎn)稱2051)單片機(jī)為例,介紹2051單片機(jī)與MT8880接口電路的,供有關(guān)用戶參考。

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

          1 接口時(shí)鐘信號(hào)

          筆者在使用MT8880過(guò)程中,經(jīng)實(shí)驗(yàn)研究發(fā)現(xiàn),MT8880對(duì)接口控制信號(hào)時(shí)序的要求并不十分嚴(yán)格,關(guān)鍵在如何為MT8880提供接口時(shí)鐘信號(hào)CP(第12腳)。從MITEL公司原文器件手冊(cè)提供的參數(shù)可知,CP時(shí)鐘周期tCYC典型值為250nS(0.25μS),實(shí)際上,tCYC在0.167~10μS(6MHz~100KHz)之間取值時(shí),MT8880仍能正常工作,tCYC 取值范圍較寬。因此,CP的產(chǎn)生比較靈活,能以下述4種方法實(shí)現(xiàn)。

          ⑴ 眾所周知,51系列單片機(jī)的地址鎖存允許信號(hào)ALE為晶振頻率的6分頻(如:晶振為12MHz,ALE為2MHz),因此,可用地址鎖存允許信號(hào)ALE作為CP。

          ⑵ 用MT8880自身的晶振輸出信號(hào)(3.58MHz)作為CP,這樣CP的產(chǎn)生不依賴于單片機(jī)。

          ⑶ 當(dāng)51系列單片機(jī)所用晶振頻率在6MHz以下時(shí),可直接用晶振輸出的信號(hào)加驅(qū)動(dòng)后作為CP。

          ⑷ 用I/O線模擬CP端,配合SETB和CLR指令,也能產(chǎn)生芯片所需的CP信號(hào)。需注意的是,部分MT8880芯片用這種方法不能正常工作。

          綜上所述,方法⑴最為簡(jiǎn)便,方法⑵次之,其余方法略顯煩瑣、效果較差。亦即方法⑴、⑵是產(chǎn)生CP信號(hào)的最佳選擇。

          2 接口硬件

          與51系列其它單片機(jī)相比,2051單片機(jī)主要缺少用于外部擴(kuò)展的并行總線(無(wú)P0、P2口和部分控制線)。由于2051無(wú)ALE控制信號(hào),因而,其與MT8880芯片接口時(shí),最好采用上述方法⑵ 提供CP信號(hào)。

          2051與MT8880接口電路如圖1所示,可見(jiàn),時(shí)鐘信號(hào)CP是從MT8880的晶振輸出端OSC2,經(jīng)30P電容提供的。另外,接口時(shí),以2051的P1.0~P1.3作為數(shù)據(jù)線,P1.4和P1.5分別控制MT8880的R/W及RSO端。

          23.gif
          圖1 2051與MT8880接口電路


          上一頁(yè) 1 2 3 下一頁(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); })();