關 閉

        新聞中心

        EEPW首頁 > 工控自動化 > 設計應用 > 基于虛擬存儲器的USB下載線設計

        基于虛擬存儲器的USB下載線設計

        作者: 時間:2010-11-02 來源:網絡 收藏

        在圖2中,PDIDl2的數據端口連接到單片機的P0端口,實現單片機與PDIDl2的數據交換通道。將PDIDl2的讀寫控制分別接到P3.6和P3.7引腳,實現單片機寫入和讀出PDIUSBDl2的數據。地址端A0接到P2.O引腳上,用于實現對PDIUSBDl2的數據和地址選擇。PDIUSB Dl2從CLKOUT輸出時鐘信號,連接到單片機AT89S52的XTAL1上,作為單片機的時鐘信號。
        接口驅動電路74HC244采用P2的部分引腳進行控制。其中,P2.1接74HC244的門控端,輸出低電平時電路工作,在平時輸出高電平時使74HC244工作在高阻狀態,使與目標單片機脫離連接。P2.2接2Y4通過接口作為SCK,實現ISP接口的同步脈沖。P2.3通過74HC244后接到下載線接口作為MOSI,實現對目標芯片的串行數據讀出。下載線接口的MISO通過74HC244驅動后接到P2.5,實現對目標芯片的串行數據的讀出。P2.5通過74HC244控制目標芯片的RESET引腳,使其進入和退出串行程序下載模式。
        另外,在系統中保留了P3.O和P3.1作為異步串行通信端口,作為系統調試端口。P1.5,P1.6,P1.7和RESET與VCC,GND連接到系統控制芯片,作為系統控制芯片自身的程序寫入接口。

        2 軟件系統設計
        2.1 系統架構

        基于虛擬內存的USB下載線,就是從計算機角度看,下載線與目標單片機是計算機的一個通用的USB存儲器,在對目標單片機程序進行寫操作時,就像對磁盤(U盤)進行寫操作一樣。
        在PC機端主要完成的任務是USB設備驅動程序,即將USB設備(下載線)識別為U盤,實現文件的寫入和讀出操作。在Windows 2000及以后的操作系統中,將USB磁盤驅動作為標準驅動程序,直接利用操作系統磁盤驅動程序。文件的寫入和讀出,由操作系統完成相關功能,在本系統中不需要編寫程序。
        下載線與計算機連接采用PDIUSBD12作為接口芯片,要與計算機交換數據,就需要對PDIUSBDl2芯片進行操作,下載線系統需要PDIUSBDl2驅動程序。要向計算機說明下載線是一個U盤,下載線系統需要在計算機硬件詢問時要按USB Disk應答,下載線系統還需要構建一個文件系統,由于下載線系統是面向單片機的程序下載,數據量小,采用FAT12作為下載線的文件系統。
        當下載線接收到計算機傳送過來的一個程序文件時,需要將程序文件中的內容分離出來。設計本系統主要支持bin和HEX兩種格式,其中bin文件就是機器指令的數據,直接寫入單片機的程序存儲器中即可完成程序下載;Hex文件的INTEL格式是Intel公司提出的按地址排列的數據信息,并不是直接的機器指令代碼,因此還需要將HEX格式轉換為bin格式。
        在對目標單片機進行程序下載時,需要按照目標單片機的程序下載時序,逐次將數據寫入目標單片機的程序存儲器中,下載系統需要控制下載接口電路實現程序時序。整個硬件電路結構與軟件關系如圖3所示。

        本文引用地址:http://www.104case.com/article/202506.htm



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 贵港市| 额敏县| 哈巴河县| 茌平县| 乐都县| 荣成市| 小金县| 防城港市| 岑巩县| 宜川县| 通江县| 申扎县| 越西县| 高州市| 浏阳市| 扶沟县| 海城市| 庆阳市| 诸城市| 磴口县| 新兴县| 蓬莱市| 专栏| 文登市| 措勤县| 西吉县| 安义县| 罗江县| 运城市| 吉安市| 广水市| 东乡族自治县| 盐池县| 五寨县| 江城| 河北区| 香港 | 丰城市| 庄河市| 滁州市| 武穴市|