新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 采用單片機(jī)的多機(jī)并行通訊系統(tǒng)方案設(shè)計(jì)

采用單片機(jī)的多機(jī)并行通訊系統(tǒng)方案設(shè)計(jì)

作者: 時(shí)間:2012-02-29 來源:網(wǎng)絡(luò) 收藏

5.2 通訊協(xié)議的執(zhí)行過程

下面以檢測(cè)方式為例說明通訊協(xié)議的執(zhí)行過程。

5.2.1 主機(jī)向從機(jī)寫數(shù)過程:(主機(jī)寫, 從機(jī)讀)

主機(jī)向74HC646寫數(shù)據(jù),然后通知從機(jī)有數(shù)據(jù)來,從機(jī)從74HC646中讀取數(shù)據(jù)。

① 主機(jī)讀取狀態(tài)位,檢測(cè)TFNF*位是否為零。

②若TFNF*=1,主機(jī)暫時(shí)等待;若TFNF*=0,主機(jī)向74HC646寫數(shù)據(jù),使TFNF*=1,同時(shí)使TFNE*=0。

③ 從機(jī)讀取狀態(tài)位,檢測(cè)TFNE*位是否為零。若TFNE*=1,從機(jī)暫時(shí)等待;若TFNE*=0,從機(jī)從74HC646讀數(shù)據(jù),使TFNE*=1,同時(shí)使TFNF*=0。

④ 主機(jī)再次檢測(cè)狀態(tài)位TFNF*是否為零,若為“0”,說明從機(jī)已將數(shù)據(jù)從74HC646中取走,主機(jī)可發(fā)送下一數(shù)據(jù)。

5.2.2 主機(jī)讀從機(jī)過程:(從機(jī)寫, 主機(jī)讀)

從機(jī)向74HC646寫數(shù)據(jù),然后通知主機(jī)有數(shù)據(jù)來,主機(jī)收到信號(hào)后,將數(shù)據(jù)從74HC646中取走。

① 從機(jī)讀取狀態(tài)位,檢測(cè)RFNF*位是否為零。

②若RFNF*=1,從機(jī)暫時(shí)等待;若RFNF*=0,從機(jī)向74HC646寫數(shù)據(jù),使RFNF*=1,同時(shí)使RFNE*=0。

③ 主機(jī)讀取狀態(tài)位,檢測(cè)RFNE*位是否為零。若RFNE*=1,主機(jī)暫時(shí)等待;若RFNE*=0,主機(jī)從74HC646讀數(shù)據(jù),使RFNE*=1,同時(shí)使RFNF*=0。

④ 從機(jī)再次檢測(cè)狀態(tài)位RFNF*是否為零,若為“0”,說明從機(jī)已將數(shù)據(jù)從74HC646中取走,主機(jī)可發(fā)送下一數(shù)據(jù)。

6 流程圖(檢測(cè)方式)

檢測(cè)方式的程序流程如圖3所示。

本文引用地址:http://m.butianyuan.cn/article/171986.htm



圖3 檢測(cè)方式的程序流程圖

若使用中斷方式, 只需對(duì)執(zhí)行過程和流程圖稍加修改即可。


上一頁 1 2 3 下一頁

評(píng)論


相關(guān)推薦

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

關(guān)閉