我在公车被蹭水后当晚就来了月经,在公车上露着奶被男人玩,公车上的人妻沦陷完整版,(NP、高H、纯肉)公车,公车娇喘抽搐喷潮H文苏小暖,公车全黄H全肉短篇公车之狼

技術熱線: 4007-888-234

技術支持

PC和多單片機通信的一種方法

更新時間: 2019-03-26

單片機應用簡單靈活,使用非常廣泛,但存在無法實時保存大量的數據、實時更新數據等缺點,因此經常需要把單片機和PC機的優(yōu)勢相結合組成系統(tǒng)。本文以卡式電話管理系統(tǒng)(非通用型電話系統(tǒng))為例,從硬件和軟件兩方面分析PC和單片機之間的通信方法和注意事項,并給出相關系統(tǒng)的結構框圖。
  現在的卡式電話系統(tǒng)一般都采用單片機實現讀卡、計費等功能,但單片機操作相對固定,無法根據外界條件變化作出相應改變。比如當計費的單價發(fā)生變化時,必須重新更新整個計費程序,再燒錄到每個單片機中,這就使得維護非常復雜。如果把這些經常改變的量寫入到一個類似服務器的PC機中,單片機只要到PC中讀取相應的數據,就可以實現數據更新了。實現此功能,要解決PC和多個單片機之間的連接,以及協(xié)調PC和多個單片機之間的通信,使之不出現沖突。
  PC和單片機之間的連接方式有多種,如利用微機的串口、并口或通過專門的I/O板進行數據傳送,單片機通過共享通道的方法掛在上述總線上。附表列出以上三種連接方式的特點。

應用時應根據實際需要進行選擇。在我們的卡式電話系統(tǒng)中,通信數據量很小、傳輸距離很近,因此選擇了串口通信方式。
  由于每個單片機都是通過串口線和PC連接的,也就是說其總線是共享的,必須避免沖突。其方法有:各單片機通過中斷向PC申請數據總線、PC輪詢各單片機、單片機進行數據總線檢測等。單片機通過中斷向PC申請數據總線的方式可以實現實時的通信,但控制比較復雜,同時需要PC具有中斷排隊的能力,并且要求很多的中斷線,因此只適合一臺PC帶少量的單片機的情況。PC輪詢單片機則相對簡單,成本也很低,不過實時性較差,握手時延很長。第三種方法若要完全避免沖突則非常復雜。
  在卡式電話系統(tǒng)中,我們采用了由PC機輪詢方式,在輪詢時采用PC中斷單片機的方法。這是第一、二種方法的折衷。由于中斷線是共享的,還為每個單片機設定了地址碼。
  卡式電話系統(tǒng)的硬件系統(tǒng)框圖如圖1所示。此系統(tǒng)共需要4根信號線,即收、發(fā)、地和中斷線,收、發(fā)和地可以從串口中找到相應的線,而中斷線采用串口中的RTS信號,可以直接編程。
  軟件工作流程是:PC先發(fā)送一個中斷信號,使所有的單片機轉入中斷程序,然后發(fā)送一個地址碼,各單片機讀此地址碼以后和自己的實際地址相比較,若相同,則轉入相應的動作,比如讀取單價或上報本機信息等,否則從中斷程序中跳出。軟件需要解決的是設定PC串口的工作方式,包括串口的通訊速率、奇偶校驗位、停止位等。經測試,此系統(tǒng)可以在288kbit/s速率下穩(wěn)定工作,比較理想。在此工作速率下,一臺PC可以帶64臺單片機。圖2為通信程序流程圖。


404
返回首頁 |  返回上一頁
黔南| 锡林郭勒盟| 夹江县| 灵武市| 宁安市| 恩平市| 城固县| 咸阳市| 田东县| 册亨县| 宾川县| 蒙山县| 德惠市| 长寿区| 维西| 泌阳县| 阿城市| 贺兰县| 迁安市| 博爱县| 扶风县| 贵德县| 岳阳县| 白朗县| 银川市| 六盘水市| 海门市| 宁河县| 安化县| 罗江县| 工布江达县| 和静县| 清水县| 英吉沙县| 九龙坡区| 乾安县| 浦东新区| 黔西| 沈阳市| 库尔勒市| 岑溪市|