基于單片機PIC18F4550的USB接口設計
引言
本文引用地址:http://m.butianyuan.cn/article/173064.htmUSB是一種快速的、雙向同步傳輸?shù)?、廉價并可以進行熱插拔的串行接口。利用USB總線技術,開發(fā)適用于科學研究和工業(yè)牛產的各種儀器儀表設備,借以取代傳統(tǒng)計算機測控系統(tǒng)中采用串行RS232或并行接口的儀器儀表設備,使計算機測控系統(tǒng)更加高效實時,方便靈活。
利用USB總線的數(shù)據(jù)采集方案有兩種,一種是采用普通單片機加上專用的USB通信芯片。該方案可充分利用開發(fā)人員原有的硬件資源和軟件知識,開發(fā)成本較低,但系統(tǒng)的設計和調試較為麻煩,且電磁兼容性差,容易造成主機不能識別USB設備。另一種是利用具有USB接口功能的單片機。使用這些專用芯片構成的數(shù)據(jù)采集系統(tǒng)電路設計簡單,調試方便,電磁兼容性好。然而,目前大部分具有USB功能的單片機都是專門針對個人計算機外圍設備或消費市場的需要而設計的,忽略了嵌入式工程師的需要。Microchip公司新款PIC18F4550系列單片機的問世,為廣泛的嵌入式應用增添了全速USB的優(yōu)勢,即使遇到惡劣的操作環(huán)境或在只能不定時地連接個人計算機的情況下,也能正常工作。
本文以光柵位移傳感器檢測系統(tǒng)的設計為背景,詳細介紹了帶全速USB接口的單片機PIC18F4550的應用設計方法。
1 PIC18F4550介紹
PIC18F4550是Microchip公司最新生產的帶全速USB接口的8位高檔單片機,芯片為40/44腳封裝。該單片機除了具有PIC單片機所特有的精簡指令集(RISC)、數(shù)據(jù)總線和指令總線相互獨立的哈佛(Harvard)結構等特點外,還配備了自編程閃存存儲器以及納瓦節(jié)能技術,工作頻率達48 MHz,數(shù)據(jù)傳輸速率高達12 Mbps。另外,還具有Microchip先進PMOS電可擦除單元(PEEC)閃存技術,耐擦寫次數(shù)可高達100萬次,而數(shù)據(jù)保存期能超過40年。因而該芯片有很強的控制能力和靈活的工作方式。新器件的全速USB 2.0接口具有1 KB雙重存取RAM,支持高達32個端點(雙向16對)和2種數(shù)據(jù)傳輸速率(即全速模式1 2 Mbps和低速模式1.5 Mbps),具有USB協(xié)議所規(guī)定的4種數(shù)據(jù)傳輸方式(控制傳輸方式、中斷傳輸方式、批量傳輸方式和實時傳輸方式)。該接口包括一個片上收發(fā)器和一個并行流端口,能把數(shù)據(jù)直接傳送到外部的設備,不僅減小了CPU的開銷,而且大大增強了系統(tǒng)的抗干擾能力和工作可靠性。
PIC18F4550的硬件資源非常豐富,包含33個I/O,I/O端口為端口A、B、C、D、E;具有多個中斷源和1個中斷優(yōu)先級選擇,4個定時器,32 KB程序閃存,256字節(jié)EEP-ROM數(shù)據(jù)存儲器,2 048字節(jié)數(shù)據(jù)隨機存儲器以及8×8硬件乘法器;集成了13通道的10位A/D轉換器,2個CCP(比較/捕捉/PWM)模塊,1個增強型CCP模塊和1個看門狗;具有省電功能的休眠模式;1個USART不僅支持異步與同步的串行通信,而且支持LIN總線;2個模擬比較器,支持I2C和SPI通信的主控同步串行端口,可編程欠壓復位及低電壓檢測電路等。
PIC18F4550單片機的一個關鍵特性在于它配備了32 KB自編程增強型閃存,使得設計人員可以通過USB端口對最終應用進行現(xiàn)場升級。結合新器件配備的一系列片上外設和納瓦技術(nanoWatt)的功耗管理功能,使其非常適用于多種嵌入式應用,包括工業(yè)、醫(yī)療、汽車、電池供電和消費類產品等。
2 PIC18F4550的設計應用
2.1 光柵位移傳感器的基本工作原理、特點
光柵位移傳感器的基本工作原理是利用一對光柵,其中一塊是固定的,而另一塊是運動的。當它們發(fā)生相對運動并有光通過兩者時,能夠獲得相當于干涉儀中得到的條紋信號,即所謂的“莫爾條紋信號”。對于一對計量光柵,彼此移動一條刻槽(現(xiàn)代計量光柵常采用4~250 L/mm)就移動一條莫爾條紋。條紋寬度不受波長影響,并且條紋較寬可進行內插,由于誤差平均效應,因而可以獲得很高的精度。與普通位移傳感器相比,它有以下幾個特點:?、?精度高。光柵位移傳感器在大量程測量長度或直線位移方面僅僅低于激光干涉?zhèn)鞲衅?;在圓分度和角位移測量方面,光柵式傳感器屬于精度最高的。
?、?大量程測量兼有高分辨率。感應同步器和磁柵式傳感器也具有大量程測量的特點,但分辨力和精度都不如光柵位移傳感器。
③ 可動態(tài)測量,易于實現(xiàn)測量及數(shù)據(jù)處理自動化。
?、?具有較強的抗干擾能力,對環(huán)境條件的要求不像激光干涉?zhèn)鞲衅髂敲磭栏?,但不如感應同步器和磁柵式傳感器的適應性強。油污和灰塵會影響它的可靠性,主要適合于在實驗室和環(huán)境較好的車間使用。
2.2 PIC18F4550硬件設計
PIC18F4550的USB接口硬件設計比較簡單,而單片機控制的外圍設備屬于一般單片機設計,可以參照一般PIC單片機的設計方法。對于USB接口,Microchip公司提供了一套開發(fā)套件(Demo板)幫助使用者開發(fā)自己的產品。它提供了應用程序、驅動程序和固件,幫助使用者熟悉USB的工作過程;同時,可以直接利用開發(fā)套件來擴展外圍設備。
圖1是一個光柵位移傳感器檢測系統(tǒng)硬件電路框圖,主要實現(xiàn)數(shù)據(jù)的采集、處理、傳輸和PWM脈沖的產生等。從光柵傳感器輸入的信號有5路:±sin,±cos以及零窗信號zero。經差分放大電路合成,分3路進入PIC單片機模擬量輸入口進行A/D轉換;同時,經差分放大電路合成后的sin、cos信號經過零比較器后轉換成數(shù)字脈沖信號,然后經D觸發(fā)器和“與”門電路完成光柵位移的辨向。PIC單片機T0和T1口接收來自“與”門電路的數(shù)字脈沖,完成光柵位移的計數(shù)(計算光柵尺移動的完整光柵數(shù));PIC單片機RC1口輸出4 MHz的PWM脈沖信號作為D觸發(fā)器的CP信號。計算機的USB接口兩根數(shù)據(jù)線分別接PIC18F4550的D+和D-口,用于完成計算機和單片機之間的數(shù)據(jù)通信。計算機的USB電源一方面為PIC微處理器提供能源,另一方面通過電源模塊轉換成±12 V電源,為運放電路提供正負電源。
2.3 單片機軟件部分設計
單片機的軟件部分主要完成光柵位移傳感器的數(shù)據(jù)采集、A/D轉換、計算光柵位移傳感器的正向、反向莫爾條紋的個數(shù)、為數(shù)字電路提供CP脈沖以及完成USB的通信等工作。圖2是單片機軟件部分的流程圖。
干涉儀相關文章:干涉儀原理
評論