當(dāng)前位置:首頁(yè) > 模擬 > 模擬
[導(dǎo)讀]隨著SoC技術(shù)的發(fā)展,應(yīng)用單芯片滿(mǎn)足應(yīng)用中的各種需求已經(jīng)成為一種趨勢(shì)。將更多設(shè)計(jì)中必需的通用外設(shè)集成到芯片內(nèi)部,不但可以降低成本,而且可以提高系統(tǒng)的穩(wěn)定性。本文給出一種基于AT91SAM7X的單芯片多路USB2.O數(shù)據(jù)采集系統(tǒng)的解決方案。芯片本身集成USB2.O接口和8路10位A/D轉(zhuǎn)換器,外部標(biāo)準(zhǔn)的一5~+5 V信號(hào)可以直接接入本系統(tǒng)進(jìn)行采集,達(dá)到了降低成本、提高系統(tǒng)穩(wěn)定性的目的。

目前工業(yè)和醫(yī)療上使用的USB設(shè)備,絕大部分是使用專(zhuān)用的USB芯片與微處理器相連的,特別是USB數(shù)據(jù)采集系統(tǒng)。根據(jù)不同的需求,通常也需要外擴(kuò)一定數(shù)量的A/D轉(zhuǎn)換器,接口非常復(fù)雜。有時(shí)甚至需要為了協(xié)調(diào)不同的時(shí)鐘而外擴(kuò)FIFO,這樣的設(shè)計(jì)不但成本大幅提高,而且系統(tǒng)的穩(wěn)定性受到了嚴(yán)重的威脅。本文使用Atmel公司開(kāi)發(fā)的基于ARM的閃存微控制器AT91SAM7X芯片。芯片內(nèi)部集成了8路10位ADC和USB2.O設(shè)備接口,單芯片即可完成設(shè)計(jì)任務(wù),避免了復(fù)雜的接口電路設(shè)計(jì),不但有效地解決了以上這些問(wèn)題,而且在很大程度上提高了系統(tǒng)的穩(wěn)定性。


1 AT91SAM7X數(shù)據(jù)采集主控芯片介紹
    AT9lSAM7X是基于32位ARM7TDMI內(nèi)核的微控制器。AT91SAM7X系列微控制器具備嵌入式10/100M以太網(wǎng)(Ethernet)MAC、CAN、全速(12 Mbps)USB 2.O。針對(duì)廣泛的網(wǎng)絡(luò)化實(shí)時(shí)嵌入式系統(tǒng)而設(shè)計(jì)的AT9lSAM7X256還具備1個(gè)10位模/數(shù)轉(zhuǎn)換器(ADC)、2個(gè)串行外圍接口(SPI)、同步串行接口(SSC)、雙線(xiàn)接口(TWI)、3個(gè)通用異步收發(fā)器(UART)、1個(gè)8級(jí)優(yōu)先中斷控制器(priority interrupt controller)和眾多的監(jiān)管功能。這個(gè)新型的50MIPS MCU擁有64 KB的靜態(tài)存儲(chǔ)器和256 KB的25 ns閃存,這種閃存支持實(shí)時(shí)控制系統(tǒng)所需的可確定性處理能力。

2 數(shù)據(jù)采集系統(tǒng)硬件設(shè)計(jì)
2.1 數(shù)據(jù)采集系統(tǒng)硬件設(shè)計(jì)結(jié)構(gòu)圖
   
本文設(shè)計(jì)的基于AT91SAM7X的多路USB2.O數(shù)據(jù)采集系統(tǒng)主要由6部分組成,如圖1所示,分別是輸入信號(hào)接口模塊、多路信號(hào)放大模塊、信號(hào)調(diào)理模塊、數(shù)據(jù)采集處理模塊、USB2.O接口模塊和上位機(jī)模塊。其中,輸入信號(hào)接口模塊、多路信號(hào)放大模塊、信號(hào)調(diào)理模塊主要完成外部標(biāo)準(zhǔn)的一5~+5 V信號(hào)的隔離接人與變換。因?yàn)锳T91SAM7X的ADC允許接入的轉(zhuǎn)換電壓范圍是O~3 V,所以上述3個(gè)過(guò)程的信號(hào)變換是必要的。本系統(tǒng)主要采用的變換手段為信號(hào)的差分放大,主要部分?jǐn)?shù)據(jù)采集處理模塊和USB2.O接口模塊分別由AT91SAM7X內(nèi)置的ADC模塊和USB2.O模塊來(lái)完成。由于大部分的工作是在同一個(gè)芯片內(nèi)部完成,只需通過(guò)簡(jiǎn)單的寄存器設(shè)置和數(shù)據(jù)交換,即可完成數(shù)據(jù)的采集和傳輸過(guò)程,在很大程度上優(yōu)化了系統(tǒng)的設(shè)計(jì)。

2.2 AT91SAM7X的ADC模塊介紹
    AT91SAM7X的片內(nèi)ADC是基于連續(xù)寄存器(SAR)模型,片內(nèi)通過(guò)一個(gè)8到1的模擬復(fù)用器來(lái)實(shí)現(xiàn)8通道的模/數(shù)轉(zhuǎn)換。ADC輸入范圍是O V~ADVREF。ADC支持8位和10位兩種分辨率,可以通過(guò)軟件觸發(fā)、外部ADTRG觸發(fā)引腳、內(nèi)部觸發(fā)定時(shí)器來(lái)啟動(dòng)ADC??梢酝ㄟ^(guò)配置ADC時(shí)鐘、啟動(dòng)時(shí)間、采樣保持時(shí)間來(lái)提高ADC的精度。ADC不受電源管理器管理,有一個(gè)中斷源,如果用到ADC中斷信號(hào),則需要配置中斷控制器(AIC)。
2.3 AT91SAM7X的USB2.O模塊介紹

    AT91SAM7X具有內(nèi)置的USB設(shè)備控制器,USB設(shè)備端口符合USB2.O全速器件規(guī)范,具有12 Mbps的通信速率。每個(gè)端點(diǎn)可以配置為幾種USB傳輸類(lèi)型中的一種。USB設(shè)備自動(dòng)檢測(cè)掛起與恢復(fù),通過(guò)中斷來(lái)停止處理器。同時(shí),為了配合USB設(shè)備的使用并發(fā)揮其最大性能,片內(nèi)集成了328字節(jié)的雙口RAM。此雙口RAM的一個(gè)DPR段由處理器讀/寫(xiě),另一個(gè)DPR段由USB2.O外設(shè)讀/寫(xiě),從而有效地保證了數(shù)據(jù)傳輸?shù)淖畲髱挕?/p>

3 AT91SAM7X的配置與模塊編程
3.1 ADC模塊的配置與模塊編程
    ADC模塊功能框圖如圖2所示。ADC模塊是基于逐次逼近寄存器(SAR)的10位模/數(shù)轉(zhuǎn)換器,集成了一個(gè)8到1的模擬多路復(fù)用器,可實(shí)現(xiàn)8路模擬信號(hào)的模/數(shù)轉(zhuǎn)換。轉(zhuǎn)換由O V到ADVREF。同時(shí),ADC支持8位或10位分辨率模式,并且轉(zhuǎn)換結(jié)果進(jìn)入一個(gè)所有通道可用的通用寄存器(即通道專(zhuān)用寄存器)中??膳渲脼檐浖|發(fā)、外部觸發(fā)ADTRG引腳上升沿或內(nèi)部觸發(fā)定時(shí)計(jì)數(shù)器輸出。ADC還集成休眠模式與轉(zhuǎn)換序列發(fā)生器,并與PDC通道連接。這些特性可降低功耗,減少處理器干涉。最后,用戶(hù)可配置ADC時(shí)間,如啟動(dòng)時(shí)間以及采樣與保持時(shí)間。
    系統(tǒng)設(shè)計(jì)中采用多點(diǎn)方式進(jìn)行A/D轉(zhuǎn)換,ADVREF接3.O V的基準(zhǔn)電壓。方便起見(jiàn),以單點(diǎn)轉(zhuǎn)換為例,說(shuō)明ADC模塊的配置與模塊編程。當(dāng)然在A/D轉(zhuǎn)換之前,系統(tǒng)時(shí)鐘和整體的配置是必需的,此處只介紹ADC模塊相關(guān)的配置與模塊編程。先將與模/數(shù)轉(zhuǎn)換相關(guān)的所有寄存器清零,以保證所有寄存器都有確定值。具體配置過(guò)程和IAR程序代碼如下:

3.2 USB2.0模塊的配置與固件編程
    USB2.0接口模塊如圖3所示。該模塊需要2個(gè)時(shí)鐘,即USB2.O器件端口時(shí)鐘和主時(shí)鐘。模塊通過(guò)APB總線(xiàn)接口訪(fǎng)問(wèn)USB2.0器件端口.通過(guò)對(duì)APB寄存器的8位值進(jìn)行讀/寫(xiě)以實(shí)現(xiàn)對(duì)存儲(chǔ)數(shù)據(jù)的雙口RAM的讀/寫(xiě)。外部恢復(fù)信號(hào)可選,允許在系統(tǒng)模式下喚醒USB2.O器件端口外設(shè),然后主機(jī)將通知請(qǐng)求恢復(fù)的器件。USB2.O接口進(jìn)行枚舉時(shí),該特性必須由主機(jī)處理。為保留檢查VBUS的I/O線(xiàn),必須先對(duì)PIO的控制器編程,將該I/O配置為輸入PIO模式。USB2.O器件中有一條中斷線(xiàn)與高級(jí)中斷控制器AIC相連,因此,處理USB2.0器件中斷時(shí),必須在配置USB2.0器件端口前對(duì)高級(jí)中斷控制器AIC編程。
    本系統(tǒng)中使用USB2.0接口與上位機(jī)進(jìn)行通信。為便于說(shuō)明,此處以向上位機(jī)端通過(guò)USB2.0接口傳送O~9的數(shù)字,并循環(huán)10次為例,說(shuō)明USB2.0模塊的配置與同件編程。系統(tǒng)初始化完成后,此固件程序就通過(guò)USB2.0接口發(fā)送O~9的數(shù)字,循環(huán)10次后結(jié)束。具體的配置過(guò)程和IAR程序代碼如下:


    注意:在USB2.0通信接121調(diào)試過(guò)程中,一定要將USB2.0固件程序下載到AT91SAM7X的F1ash中。這個(gè)過(guò)程可以通過(guò)ARM的地址重映射來(lái)完成,然后重新給USB2.0接口上電,因?yàn)橹挥性谠O(shè)備插入時(shí)上位機(jī)才檢測(cè)設(shè)備,并提示添加相應(yīng)的驅(qū)動(dòng)程序。如果開(kāi)發(fā)人員調(diào)試的過(guò)程中只是將程序加載到RAM中,那么由于數(shù)據(jù)掉電不會(huì)保存,固件程序在下一次插入設(shè)備時(shí)就不會(huì)存在,無(wú)論在上位機(jī)添加何種驅(qū)動(dòng)程序,上位機(jī)都不會(huì)接收到數(shù)據(jù),這樣就會(huì)導(dǎo)致整個(gè)調(diào)試過(guò)程的失敗。
3.3 USB2.0的Windows應(yīng)用程序設(shè)計(jì)
    上位機(jī)部分通過(guò)Visual C++6.0程序?qū)崿F(xiàn)與嵌入式硬件部分的USB通信。測(cè)試過(guò)程中,先將USB2.0固件程序下載到AT91SAM7X中,插上USB數(shù)據(jù)線(xiàn),根據(jù)提示添加相應(yīng)的驅(qū)動(dòng)程序后直接運(yùn)行設(shè)計(jì)好的Visual C++6.0程序。測(cè)試結(jié)果如圖4所示。

    上位機(jī)程序運(yùn)行過(guò)程中首先檢查設(shè)備的連接情況,確認(rèn)成功連接后開(kāi)始接收USB2.0設(shè)備發(fā)送過(guò)來(lái)的數(shù)據(jù)。此處為循環(huán)10次的0~9的數(shù)字,如圖4所示,數(shù)據(jù)已經(jīng)成功傳輸?shù)搅松衔粰C(jī)端。

結(jié) 語(yǔ)
    本文設(shè)計(jì)了基于AT91SAMTX的多路USB2.0數(shù)據(jù)采集系統(tǒng),以AT91SAM7X芯片為核心實(shí)現(xiàn)了數(shù)據(jù)信號(hào)的調(diào)理變換、采集和向上位機(jī)的傳輸。由于AT91SAM7X內(nèi)置了ADC模塊和USB2.0設(shè)備接口,使得系統(tǒng)設(shè)計(jì)十分方便;同時(shí)由于無(wú)需使用大量的外擴(kuò)芯片,使得硬件成本大幅降低,產(chǎn)品體積更小巧,穩(wěn)定性方面也比外擴(kuò)芯片的方式有較大幅度的提升。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專(zhuān)欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車(chē)的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車(chē)技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車(chē)工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車(chē)。 SODA V工具的開(kāi)發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車(chē) 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶(hù)希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來(lái)越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開(kāi)幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱(chēng),數(shù)字世界的話(huà)語(yǔ)權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱(chēng)"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉