基于STD總線(xiàn)的多路數字I/O設計
3.1 部分程序代碼
部分程序代碼如下:


其中:addr是10位地址總線(xiàn);bd是8位數據總線(xiàn);en_245和dir_245分別是STD總線(xiàn)接口芯片74LS245的片選使能與方向信號;tempx是片內寄存器;io_inx和outx分別是8位輸入、8位輸出I/O口。
3.2 性能描述
多路數字I/O口的選擇由10位地址決定,不同的地址操作不同的。I/O端口,在I/O非動(dòng)態(tài)情況下,數據總線(xiàn)處于高阻狀態(tài),避免了總線(xiàn)沖突,同時(shí)也提高了I/O端口的穩定性,減少了高速數據傳輸條件下引起不必要的錯誤,根據現場(chǎng)對I/O輸入、輸出的需要,可以修改程序,靈活改變端口的功能,另外,對于輸出端口,加入了數據寫(xiě)出后讀回的功能,使得上位機能夠隨時(shí)驗證寫(xiě)出數據的正確性,對于外設信號,通過(guò)信號調理板實(shí)現電平匹配,進(jìn)一步增加了本設計的功能可靠性。
4 結語(yǔ)
以CPLD器件為核心,選用Xilinx公司的ISE作為硬件開(kāi)發(fā)平臺,并采用VHDL編程語(yǔ)言,充分應用了可編程邏輯器件的特點(diǎn),發(fā)揮了VHDL硬件描述語(yǔ)言的編程優(yōu)點(diǎn)。減少了芯片數量,既做到了系統小型化又降低了成本。程序已通過(guò)綜合實(shí)驗,應用了STD總線(xiàn)的通訊特點(diǎn),與總線(xiàn)上的其他板卡、設備通訊也極為方便,既解決了工業(yè)通信網(wǎng)絡(luò )的一般問(wèn)題,又達到了工業(yè)通用I/O的較高要求??傊?,該多路數字I/O設計容量高、功耗低、速度快,不僅具有通用性、實(shí)用性,而且具有靈活性和移植性,便于調試,為高速I(mǎi)/O開(kāi)發(fā)設計提供了一種很好的嘗試,相信在很多行業(yè)都會(huì )有廣闊的應用前景。本文引用地址:http://dyxdggzs.com/article/162940.htm
評論