資料介紹
單片機CPU與外部設備交換信息通常有如下幾種方式:無條件傳送方式,查詢傳送方式和中斷傳送方式。我們以單片機與微型打印機接口為例講述這三種方式。假定用戶要打印三個數據,這三個數據保存在單片機的內部數據存儲器10H,11H,和12H中,8051用并口P2與微型打印機的并行數據口DB進行數據交換。
(1)無條件傳送方式
這種數據傳送方式中沒有聯絡信號,即CPU總是認為打印機在如何時候都是處于“準備好”的狀態。這種傳送方式中只需要在程序中加入數據送往P2的指令,數據傳送便可以實現。但這種數據傳送方式有一個致命弱點,數據易丟失,這是因為CPU的速度相當快,而打印機的速度相對來說較慢,其結果是在打印機打印一個數據的時間內,CPU已送來了多個數據。
(2)查詢傳送方式
查詢傳送也稱條件傳送是,在這種傳送方式中,無論是輸入還是輸出,都是以計算機為主動一方。為了數據傳送的正確性,計算機在傳送數據之前,要首先查詢外部設備是否已處于“準備好”狀態;對于輸出操作,則要知道外設是否已把上一次計算機輸出的數據處理完畢。只有通過查詢,確信外設已處于“準備好”的狀態,計算機才能發出訪問外設的指令,實現數據交換。狀態信息一般只需要一位二進制碼表示“準備好”和“未準備好”兩種狀態,所以,在接口中只用一個D觸發器就可用來保存和產生狀態信息。例如,“準備好”有D觸發器Q=1表示;“沒準備好”用Q=0表示.查詢方式過程:查詢,即讀“準備好”引腳,若該引腳為“準備好”狀態,則進行數據傳送,若引腳為“未準備好”狀態,則繼續查詢,直到該引腳為“準備好”狀態,再進行數據傳送。
在我們這個例子中可以在打印機上增加一條名為BUSY的引腳,打印機開始打印一個數據前,使該引腳為高電平,打印完一個數據后,使該引腳為低電 ,該引腳的初始化為0。我們將該引腳與單片機的引腳INT0相連,單片機每發送一個數據前,都查詢該引腳狀態是否為0,若為0,則發送數據。否則,就繼續查詢,直到該引腳為0時,再發送數據,請看例子:
上電后打印機的BUSY引腳為0。
單片機運行第一條指令,設置打印緩沖區起點。
單片機運行第二條指令,設置打印字節。
單片機運行第三條指令,讀入打印機BUSY引腳的狀態,判斷該狀態是否為0。為0,則發送第一個數據,打印機設置BUSY引腳為0,開始打印。
單片機運行下一個指令,打印緩沖區加1,使下一次能發送第二個數據。判斷數據是否已經發完,未發完,準備發送下一個數據,讀打印機引腳BUSY的狀態 。
引腳BUSY狀態為1,繼續查詢。
引腳BUSY狀態為0,發送第二個數據,打印緩沖區加1,使下一次能發送第三個數據,判斷數據是否已經發完,未發完,準備發送下一個數據,打印緩沖區加1,判斷數據是否已經發完。三個數據都發送完,程序結束。
可以看出,這種方式的缺點是需要有一個等待的過程,特別是在連續進行數據傳送時,由于外設工作速度比CPU慢得多,所以CPU在完成一次數據傳送后要等待很長的時間才能進行下一次傳送。在等待過程中,CPU不能進行其他操作,所以效率比較低,提高CPU效率的一個有效方式是采用中斷方式。
(3)中斷方式
剛才我們講到,無條件傳送方式不可靠,查詢傳送方式太浪費CPU的時間。
為了解決這個問題,單片機設置了另一個傳送方式—中斷方式。所謂中斷,就是指中央處理器CPU正在處理某件事情的時候,外部發生某一事件,請求CPU迅速去處理,于是,CPU暫時中斷當前的工作,轉入處理所發生的事件;中斷服務處理以后,再回到原來被中斷的地方,繼續原來的工作,這樣的過程稱為中斷。實現這種功能的部件稱為中斷系統,產生中斷的請求源稱為中斷源。
(mbbeetchina)
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- 8051單片機的這三種數據傳輸方式,你了解多少?
- 【嵌入式-單片機筆記1】處理器(MCU)與外部設備的通信方式(主要就串行通信進行總結)
- 單片機基礎及應用:單片機并行存儲器擴展資料下載
- 51單片機外部中斷的兩種觸發方式資料下載
- 單片機最小應用系統及外部擴展總線資料下載
- 解析單片機與CPU的區別資料下載
- 幾種單片機I/O的常用驅動和隔離電路的設計方法資料下載
- 使用單片機外部中斷的使用C語言程序免費下載 9次下載
- 單片機僅靠CPU和內存是無法運行的!資料下載
- 單片機=CPU、內存、外圍功能...如何理解資料下載
- 51單片機的外部XRAM讀寫程序免費下載
- 使用51單片機進行串口通信的學習資料免費下載
- 單片機入門匯編之外部中斷1的演示程序資料免費下載 5次下載
- 單片機教程之51系列單片機的指令系統資料免費下載 9次下載
- 51單片機外部中斷實例的程序資料說明免費下載 9次下載
- ?51單片機串口通信詳細介紹-小白必看 1509次閱讀
- 單片機外部中斷的好處 1919次閱讀
- 基于單片機的矩陣鍵盤檢測案例 925次閱讀
- 單片機程序的幾種常用下載方式介紹 2w次閱讀
- 單片機和外部設備的通信方式 1.2w次閱讀
- 常用單片機通信方式綜述 5031次閱讀
- 8051單片機數據傳送的方式有哪些 2973次閱讀
- AVR單片機有什么特性可用于哪些領域 1454次閱讀
- 如何對51單片機進行外部擴展 1.5w次閱讀
- 解讀單片機和CPU的區別及意義 2.9w次閱讀
- 單片機串行口介紹,8051單片機的通信方式 1.6w次閱讀
- 基于8051單片機的外部設備交換信息的三種數據傳輸方式解析 1w次閱讀
- DMA控制器與單片機的接口技術 3190次閱讀
- AVR單片機的主要特性 895次閱讀
- AVR單片機有什么優點_為什么要選擇AVR單片機 2420次閱讀
下載排行
本周
- 1TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 2開關電源基礎知識
- 5.73 MB | 6次下載 | 免費
- 3100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 4嵌入式linux-聊天程序設計
- 0.60 MB | 3次下載 | 免費
- 5基于FPGA的光纖通信系統的設計與實現
- 0.61 MB | 2次下載 | 免費
- 6基于FPGA的C8051F單片機開發板設計
- 0.70 MB | 2次下載 | 免費
- 751單片機窗簾控制器仿真程序
- 1.93 MB | 2次下載 | 免費
- 8基于51單片機的RGB調色燈程序仿真
- 0.86 MB | 2次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應用800例(新編版)
- 0.00 MB | 33564次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關電源設計實例指南
- 未知 | 21548次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數字電路基礎pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅動電路設計》 溫德爾著
- 0.00 MB | 6653次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉中文版)
- 78.1 MB | 537796次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191185次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183278次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論
查看更多