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

          新聞中心

          EEPW首頁 > 消費電子 > 設(shè)計應(yīng)用 > 基于C8051F023單片機的OLED顯示實現(xiàn)方案

          基于C8051F023單片機的OLED顯示實現(xiàn)方案

          作者: 時間:2010-11-17 來源:網(wǎng)絡(luò) 收藏

          引言

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

            眾所周知,各個部門經(jīng)常有重要事情需要進行通知。開會固然好,但比較耗時;如果發(fā)信息,有時候表達得不夠清楚。最好的方法就是打電話通知,既節(jié)省被通知人的時間,又能夠把信息表達清楚,可是要工作人員一個個打電話來通知所有人也是一件麻煩事情。在這種情況下,就有必要研制一種無需人控制即能實現(xiàn)自動通知的電話通知系統(tǒng)。

            目前,多數(shù)類似的通知系統(tǒng)都是基于CTI卡實現(xiàn)的。這種系統(tǒng)需要由計算機進行實時控制才能夠?qū)崿F(xiàn)撥打電話和播放通知語音,因此在實現(xiàn)通知任務(wù)時計算機需要開機,這樣就不利于在下班時間或假期無人職守時進行通知。本文設(shè)計了一個主要由離線電話自動通知裝置構(gòu)成的電話自動通知系統(tǒng),其通知過程不需要PC機實時管理。

            1 系統(tǒng)總體設(shè)計

            本系統(tǒng)由上位機自動通知控制軟件和下位機離線電話自動通知裝置構(gòu)成。其中,上位機自動通知控制軟件主要完成電話號碼和通知信息的管理,它只是一個信息管理系統(tǒng),而具體電話通知的工作是由離線電話自動通知裝置獨立自動完成的。

            如圖1所示,離線電話自動通知裝置主要由通知信息存儲模塊、語音數(shù)據(jù)存儲與播放電路、電話呼叫及狀態(tài)檢測模塊、DTMF信號檢測模塊、串口通信及系統(tǒng)控制模塊等組成。其中,通知信息存儲模塊用來完成通知信息(包括被通知的電話號碼、通知語音和提示音的存儲以及本次通知狀態(tài)信息)的存儲,硬件上主要使用串口閃存芯片實現(xiàn);語音數(shù)據(jù)存儲與播放電路用來完成語音信息的D/A轉(zhuǎn)換,再通過語音信號耦合電路將音頻信號與電話線路進行信號耦合輸出;電話呼叫及狀態(tài)檢測模塊用來完成電話號碼的撥叫和呼叫狀態(tài)的檢測,用于判斷接聽狀態(tài),其中包括DTMF信號生成與呼叫及狀態(tài)檢測電路(使用DTMF編解碼芯片完成)、模擬摘掛機電路及摘掛機檢測電路;DTMF信號檢測模塊用來檢測電話撥通之后,播放通知語音過程中接聽方是否按下確認鍵(使用另外一片DTMF編解碼芯片完成);串口通信及系統(tǒng)控制模塊,由串口電平轉(zhuǎn)換電路和由MCS51系列MCU(AT89S52)構(gòu)成的控制單元組成,用來完成通知過程的控制和數(shù)據(jù)通信。

          離線電話自動通知裝置結(jié)構(gòu)框圖
          圖1 離線電話自動通知裝置結(jié)構(gòu)框圖


          上一頁 1 2 3 下一頁

          關(guān)鍵詞: 單片機 OLED

          評論


          相關(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); })();