前言在開發(fā)USB設(shè)備時最難的就是固件和驅(qū)動程序的開發(fā),要想成功的開發(fā)這兩部分必須完全熟悉USB協(xié)議,而這至少需要五到六個月的時間。南京沁恒公司的CH371芯片是一塊屏蔽了USB協(xié)議的接口芯片,該芯片固化了設(shè)備驅(qū)動程序和單片機程序中的協(xié)議處理部分,因此不需要去了解復(fù)雜的設(shè)備驅(qū)動程序和USB協(xié)議,大大減少了開發(fā)周期,也降低了開發(fā)難度。本文介紹的演示板就是基于該公司的CH371和CH451芯片的一個簡單USB外設(shè),通過這塊演示板,不僅可以了
前言
在開發(fā)
USB設(shè)備時最難的就是固件和驅(qū)動程序的開發(fā),要想成功的開發(fā)這兩部分必須完全熟悉USB協(xié)議,而這至少需要五到六個月的時間。南京沁恒公司的CH371芯片是一塊屏蔽了USB協(xié)議的接口芯片,該芯片固化了設(shè)備驅(qū)動程序和單片機程序中的協(xié)議處理部分,因此不需要去了解復(fù)雜的設(shè)備驅(qū)動程序和USB協(xié)議,大大減少了開發(fā)周期,也降低了開發(fā)難度。本文介紹的演示板就是基于該公司的CH371和
CH451芯片的一個簡單USB外設(shè),通過這塊演示板,不僅可以了解基于USB接口的基本結(jié)構(gòu),而且還可以熟悉基于這種接口的PC和單片機通信的單片機控制程序和計算機應(yīng)用程序的編寫。
芯片介紹
USB接口芯片CH371
CH371是一個USB 總線的通用接口芯片。在本地端,CH371 具有8位數(shù)據(jù)總線和讀、寫、片選控制線以及中斷輸出,可以方便地掛接到單片機、
DSP、
MCU 等控制器的系統(tǒng)總線上;在計算機系統(tǒng)中,CH371 的配套軟件提供了簡潔易用的操作接口,與本地端的單片機通訊就如同讀寫硬盤中的文件。CH371 屏蔽了USB 通訊中的所有協(xié)議,在計算機應(yīng)用層與本地端控制器之間提供端對端的連接。基于CH371,不需要了解任何USB 協(xié)議或者固件程序,甚至驅(qū)動程序,就可以輕松地將并口、串口的產(chǎn)品升級到USB 接口。
使用時,在本地端CH371具有8位數(shù)據(jù)總線和讀、寫、片選控制線以及中斷輸出,就像操作一般外設(shè)芯片一樣方便地掛接到DSP、MCU等控制器的系統(tǒng)總線上;在計算機端,CH371的配套軟件包括通用驅(qū)動程序以及應(yīng)用軟件包,提供了簡潔易用的操作接口。
根據(jù)不同的工作方式,芯片的接口類型可以有以下幾種:被動并行接口、I2C主接口、主控方式接口。按照芯片特點,CH371芯片通過被動并行接口與本地端控制器連接,通過USB接口與計算機連接,如圖1所示。
圖1 單片機、CH371芯片以及PC連接示意圖
鍵盤控制和
數(shù)碼管驅(qū)動芯片CH451
CH451 是一個多功能外圍芯片,通過可以級聯(lián)的4 線串行接口與單片機、DSP、微處理器等控制器交換數(shù)據(jù)。CH451 包含三個功能:數(shù)碼管顯示驅(qū)動、鍵盤掃描控制、 P 監(jiān)控,三個功能之間相互獨立,控制器可以通過操作命令分別啟用、關(guān)閉、設(shè)定CH451 的任何一個功能。CH451 的串行接口是由硬件實現(xiàn)的,控制器可以頻繁地通過串行接口進行高速操作。CH451主要功能包括動態(tài)掃描功能和鍵盤掃描功能。
在計算機應(yīng)用層,通過應(yīng)用程序來演示CH451的各種功能。應(yīng)用程序把控制命令通過CH371傳送給單片機,單片機接收到命令后再來控制CH451。CH451通過四線串行接口與單片機連接,如圖2所示。
圖2 單片機、CH451芯片和鍵盤、數(shù)碼管的連接示意圖
USB設(shè)備配置和
數(shù)據(jù)傳輸過程描述