新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 如何用單片機代替專用I/O接口芯片方法簡介

如何用單片機代替專用I/O接口芯片方法簡介

作者: 時間:2013-01-18 來源:網(wǎng)絡 收藏

 ?、莅存I部分采用常規(guī)的非編碼鍵盤方式即可;

 ?、逓榱颂岣呷藱C的,顯示部分采用了GXM12864SL大屏幕LCD,這樣屏幕上可顯示自編的漢字、數(shù)字、等式及簡單的圖案;

 ?、叽蛴/O端口,可根據(jù)要求進行相應的連接配置即可;

 ?、嗄M開關選用多片CD4051,它們與配合,用于選擇多路液位模擬量中的1路液位的模擬量,然后進行A/D轉換。

  由于選用了3個,有效地解決了I/O端口不夠用的問題,也使得在設計上簡化了許多,只要按照常規(guī)的連接芯片方式即可,省去了很多的過渡芯片,如74LS244、74LS245、74LS73等,也使得軟件設計變得簡單容易。因硬件連接變得簡單而且均為常規(guī)連接,所以本文沒有提供詳細的線路連接圖。3個之間的數(shù)據(jù)交換采用了串行口通信方式。本設計中,3個單片機采用同時復位,當然也可采用分開復位方式,但按鍵要增加,此種情況視要求而定。

  3 軟件結構設計

  由于3個單片機同時復位,所以復位后3個單片機是處于并行工作狀態(tài)的。1#單片機的主要工作是將所有路液位模擬量轉換成數(shù)字量保存起來。它可根據(jù)鍵盤命令或系統(tǒng)默認格式將采集加工后的結果傳送給2#單片機顯示及3#單片機輸出控制,也可根據(jù)命令只監(jiān)測指定的某1路或某幾路的液位變化。2#單片機的主要工作是讀入鍵盤命令,加工處理后,向1#和3#發(fā)布命令,然后根據(jù)反饋結果在LCD上顯示出來。也可根據(jù)1#單片要同采集到的數(shù)據(jù),不斷更新其顯示內容。LCD顯示方式可多種多樣,可循環(huán)顯示指定的某幾路液位,或固定顯示某1路液位,或循環(huán)顯示某1個月的每天或某天的每班輸入輸出量等。每1路液體的比重、計算修正值、液位上下限高度設定等都可通過鍵盤輸入并保存起來。也可通過鍵盤設定密碼,防止別人或誤操作破壞設定內容,鍵入方式應設計成無須看說明書,只要按照LCD顯示上的提示進行選擇即可。3#單片機的主要工作是根據(jù)鍵盤命令或1#單片機及時采集到的數(shù)據(jù),發(fā)出控制信號或打印輸出結果,打印輸出格式可根據(jù)鍵盤命令進行選擇。

  3個單片機之間通過串行口,除傳送正常的數(shù)據(jù)、命令外,3者之間還要進行互相監(jiān)督(這是I/O擴展芯片很難做到的)。

 ?、傧嗷ブg傳送信息后一定要進行印證,也就是發(fā)送者要及時收到接收者的回執(zhí);

 ?、?者之間定時互訪,確保相安無事;

 ?、勖看紊想姀臀怀詸z外,還要互檢。

  互相監(jiān)督的目的是為提高整個系統(tǒng)的性能,為系統(tǒng)維護提供方便。1#和3#單片機上都配有2個發(fā)送二極管,用于監(jiān)測指示另外兩個單片機工作是否正常。2#單片機本身有LCD顯示,無需發(fā)光二極管。串行通信中斷服務程序、發(fā)送程序流程圖及定時互訪程序流程圖等因比較簡單沒有給出。

  4 調試

  在一個系統(tǒng)中,使用多個單片機對整個系統(tǒng)調試確實會帶來一些不便。系統(tǒng)中有多少個單片機最好就有多少個單片機開發(fā)裝置,這對調試是有極大幫助的,因為在調試中可隨時查看每個單片機的狀態(tài),但實際當中往往不會有多個,只有1個。

  每個單片機的程序基本上是由兩部分組成的,一部分是與其它單片機沒有任何聯(lián)系的獨立部分,另一部分是單片機之間相互通信聯(lián)系的部分(這部分程序量較小)。調試時先把單片機各自獨立部分調試出來,這部分對單片機應用人員來說不會有問題。然后調試單片機相互之間的串行通信程序,先把相互之間的簡單通信建立起來,相互之間能識別傳遞數(shù)據(jù)后,再逐步把完整的程序一步一步添加進去。在設計、編制程序時要想到如何調試,這樣在編制程序時就會有意識地程序分成有效的塊,調試時就可以一塊一塊地調試。多單片機調試方法較多,此是一孔之見。

  結語

  在一個液位監(jiān)控系統(tǒng)中采用多個單片機是一種嘗試,但它確實簡化了系統(tǒng)設計,便于分工和多人投入?yún)f(xié)作,也便于產(chǎn)品改進更新。其最顯著的效果是縮短了產(chǎn)品的設計、調試和生產(chǎn)的周期。


上一頁 1 2 下一頁

關鍵詞: 單片機 接口芯片 交互能力

評論


相關推薦

技術專區(qū)

關閉