a一级爱做片免费观看欧美,久久国产一区二区,日本一二三区免费,久草视频手机在线观看

新聞中心

EEPW首頁 > EDA/PCB > 設計應用 > 基于FPGA的PCI總線串口卡設計

基于FPGA的PCI總線串口卡設計

作者: 時間:2010-10-18 來源:網絡 收藏

 接收模塊通過狀態機來完成數據接收,其狀態機包含4個狀態:空閑狀態(idle)、移位狀態(shift)、奇偶校驗狀態(parity)和停止位狀態(stop),如圖6所示。其工作過程如下:當系統復位時,狀態機進入空閑狀態,等待接收開始位;當開始位被確定有效后,狀態機進入移位狀態。在移位狀態中,接收模塊為每個數據位的移入等待16個內部時鐘周期,接收完特定的數據位后,若奇偶校驗使能有效,則跳轉到奇偶校驗狀態;否則,進入停止位狀態,而后進入空閑狀態,重復上述過程。

本文引用地址:http://www.j9360.com/article/191527.htm


1.2.4 發送模塊
 發送模塊包括發送緩存寄存器和發送移位寄存器。在發送數據開始時,清空發送緩存寄存器和發送移位寄存器后,發送緩存寄存器接收發送來的數據,然后從發送緩存寄存器向發送移位寄存器發送數據。首先發送起始位到發送移位寄存器,同時啟動發送數據計數器,記錄發送數據的個數,直到發送移位寄存器接收到滿足需求的數據。若奇偶校驗使能有效,則跳轉到奇偶校驗狀態;否則,進入停止位狀態,完成1幀數據的發送。只要發送緩存寄存器不為空,則繼續傳輸下一幀數據。其狀態機的實現與接收模塊的類似。
2 系統軟件設計
2.1 驅動程序

 WinDriver是一套驅動程序開發包。它改變了傳統驅動程序開發的方法與思路,極大地簡化了驅動程序的編制。同時,WinDriver又沒有犧牲驅動程序的性能,是一套高效、快捷的驅動程序開發軟件包[4]。WinDriver可在VC/C++、Delphi、BC++、VB等多種開發環境中使用,本設計選用VC++作為驅動程序的開發環境,通過WinDriver生成VC++代碼,根據設計的需要修改生成的代碼以完成此設備的驅動。驅動程序流程圖如圖7所示。

2.2 應用程序
 應用程序負責調用、連接驅動程序,實現與驅動程序的通信。連接到驅動程序后,向驅動程序注冊,同時啟動監測工作線程,等待事件發生。當驅動程序接收到中斷后,通過發送消息通知應用程序,處理發生的事件。處理后退出應用程序,結束等待事件線程。應用程序流程圖如圖8所示。
 本文介紹了一種基于的PCI卡設計方法,簡單說明了其硬件的設計和驅動程序、應用程序的編寫方法。該設計符合通用的PCI規范,支持即插即用功能,傳輸速率高,抗干擾能力強。可以廣泛應用于各類測試設備、工廠自動化等,具有很高的實用價值。
參考文獻
[1] 徐志春.基于PCI的多通信適配卡設計[J].微計算機信息,2007,23:294-296.
[2] 王友波,劉明業.PCI接口控制器的設計[J].北京理工大學學報,2004,24(5): 423-426.
[3] 楊大柱.基于的UART電路設計與仿真[J]. 微計 算機信息, 2007,23(5-2):212-213.
[4] 劉映杰,張在峰,劉瑋,等.用WinDriver開發PCI設備驅動程序[J]. 信息技術,2004, 28 (2):78-80.


上一頁 1 2 3 下一頁

關鍵詞: FPGA PCI 總線 串口

評論


相關推薦

技術專區

關閉