當(dāng)前位置:首頁(yè) > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]介紹了ATMEL公司生產(chǎn)的基于32位精簡(jiǎn)指令集(RISC)架構(gòu)的單片機(jī)AT91M42800A的特點(diǎn),提出了一種基于AT91M42800A的應(yīng)用設(shè)計(jì)方案,給出該設(shè)計(jì)的硬件原理圖,同時(shí)針對(duì)AT91M42800A的存儲(chǔ)器空間分配問(wèn)題,給出了分散裝載的程序代碼舉例,從而為基于AT91M42800A的嵌入式系統(tǒng)設(shè)計(jì)提供了一個(gè)思路。

 摘要:介紹了ATMEL公司生產(chǎn)的基于32位精簡(jiǎn)指令集(RISC)架構(gòu)的單片機(jī)AT91M42800A的特點(diǎn),提出了一種基于AT91M42800A的應(yīng)用設(shè)計(jì)方案,給出該設(shè)計(jì)的硬件原理圖,同時(shí)針對(duì)AT91M42800A的存儲(chǔ)器空間分配問(wèn)題,給出了分散裝載的程序代碼舉例,從而為基于AT91M42800A的嵌入式系統(tǒng)設(shè)計(jì)提供了一個(gè)思路。

    關(guān)鍵詞:精簡(jiǎn)指令集 AT91M42800A 單片機(jī)

1 引言

目前,嵌入式產(chǎn)品逐步占領(lǐng)了PC市場(chǎng),而其核心部分——處理器的性能則決定了產(chǎn)品的設(shè)計(jì)和性能。在32位嵌入式處理器中, 由ATMEL 公司生產(chǎn)的AT91系列芯片之一AT91M42800A是基于ARM7TDMI 處理器內(nèi)核的16/32位微控制器,它除具有ARM處理器的低功耗、低成本、高性能等優(yōu)點(diǎn)外,還具有非常豐富的片內(nèi)資源,特別適合于嵌入式產(chǎn)品的設(shè)計(jì)開(kāi)發(fā)。

2 AT91M42800A 的基本特性

AT91M42800A采用32位精簡(jiǎn)指令集(RISC)架構(gòu),因此,它既支持16位Thumb指令集,又支持32位的Arm指令集。它采用三級(jí)流水線結(jié)構(gòu),可在同一時(shí)間內(nèi),一條指令在執(zhí)行,第二條指令在譯碼,第三條指令在取指,這樣,在每個(gè)周期都有一條指令在執(zhí)行,因此,指令執(zhí)行速度很快。AT91M42800A的基于先進(jìn)微控制器總線結(jié)構(gòu)(AMBA)的模塊化設(shè)計(jì)方法具有綜合、快速、高性能價(jià)格比的特點(diǎn)。該微控制器的內(nèi)部工作寄存器很多,非常適合實(shí)時(shí)控制應(yīng)用。其主要特點(diǎn)如下:

●內(nèi)核電壓和鎖相環(huán)電壓為2.7~3.6V, I/O口操作電壓為2.7~5.5V;

●內(nèi)部帶有8kB靜態(tài)RAM;

●具有完全可編程外部總線接口(EBI),且多達(dá)8?jìng)€(gè)片選,尋址空間很大;

●內(nèi)含8通道外設(shè)數(shù)據(jù)控制器(PDC);

●帶有54個(gè)可編程I/O口;

●內(nèi)含6通道16位定時(shí)/計(jì)數(shù)器;

●具有2個(gè)通用串行異步接收/發(fā)送器(USART)和2個(gè)主/從SPI接口;

●內(nèi)含3個(gè)系統(tǒng)定時(shí)器;

●時(shí)鐘可由32768 Hz 晶體和內(nèi)部鎖相環(huán)(PLL)電路產(chǎn)生,最高可編程至33MHz,也可由外部時(shí)鐘信號(hào)提供;

●內(nèi)置嵌入式在線仿真電路(Embedded ICE)?可通過(guò)JTAG口對(duì)AT91M42800A進(jìn)行測(cè)試。

3 基本組成系統(tǒng)

由AT91M42800A構(gòu)成的最基本的系統(tǒng)至少應(yīng)包括以下幾個(gè)部分:

(1)程序存儲(chǔ)器(ROM)

由于AT91M42800A 內(nèi)部沒(méi)有ROM,因此,必須外擴(kuò)一片程序存儲(chǔ)器。應(yīng)當(dāng)注意的是:AT91M42800A的8位總線和16位總線的FLASH接法不同,具體接法如圖1所示。

(2)數(shù)據(jù)存儲(chǔ)器?RAM?

如果設(shè)計(jì)的系統(tǒng)比較復(fù)雜,數(shù)據(jù)比較多,當(dāng)單片機(jī)內(nèi)部8kB SRAM不能滿足要求時(shí),還要外擴(kuò)一片數(shù)據(jù)存儲(chǔ)器。AT91M42800A能夠支持兩種“寫(xiě)”方式,但對(duì)8位數(shù)據(jù)總線和16位數(shù)據(jù)總線的操作也是不同的,因此,對(duì)于不同的存儲(chǔ)器,其接法不同。對(duì)于8位總線的存儲(chǔ)器,只需接D0~D7,將D8~D15懸空,并將其地址線對(duì)接,而單片機(jī)的NWE/NWR0接到存儲(chǔ)器的NWE上。對(duì)于16位總線的存儲(chǔ)器,則將其數(shù)據(jù)線對(duì)接,A1~A17接存儲(chǔ)器的A0~A16,并將其NWE/NWR0接存儲(chǔ)器的NWE,NUB/NWR1接存儲(chǔ)器的NUB,NLB/A0接存儲(chǔ)器的NLB。外擴(kuò)的RAM 的接法與外擴(kuò)FLASH的接法類似。

(3)時(shí)鐘發(fā)生電路

AT91M42800A的時(shí)鐘既可以外接晶體,也可外接時(shí)鐘信號(hào)。當(dāng)外接晶體時(shí),由于其內(nèi)帶振蕩電路,因此,外接32.768 kHz 的晶體后,可產(chǎn)生慢時(shí)鐘(SLCK)。由于SLCK頻率低,所以系統(tǒng)的功耗也很低。若想提高系統(tǒng)的工作頻率,則可通過(guò)PLLA或PLLB對(duì)其倍頻,以達(dá)到所要求的工作頻率。如果所需頻率不能通過(guò)PLL倍頻得到,則可由外接時(shí)鐘信號(hào)來(lái)提供。當(dāng)外接時(shí)鐘信號(hào)時(shí),可直接把時(shí)鐘信號(hào)接到XIN引腳上,XOUT引腳懸空。

(4)顯示電路

顯示電路可采用數(shù)碼管顯示或液晶顯示,由于液晶顯示的功耗低,故常采用這種顯示方式。該設(shè)計(jì)選用的液晶顯示模塊為LCM103。

(5)電源及復(fù)位電路

AT91M42800A內(nèi)部帶有看門狗(WatchDog)電路,也可以外加WatchDog電路。本文中的例子采用的就是外加WatchDog電路的接法,所選用的器件是MAXIM公司生產(chǎn)的MAX6316LUK29CY。

4 典型應(yīng)用

由于單片機(jī)AT91M42800A具有低功耗、高性能、片內(nèi)資源豐富、尋址空間大等優(yōu)點(diǎn),所以適合現(xiàn)場(chǎng)總線產(chǎn)品的開(kāi)發(fā),其簡(jiǎn)要硬件原理圖如圖2所示。圖中只給出主要器件的主要引腳接法,電源電路及其它引腳限于篇幅圖中未畫(huà),讀者在實(shí)際的設(shè)計(jì)過(guò)程中可自行設(shè)定。

圖2 現(xiàn)場(chǎng)總線開(kāi)發(fā)實(shí)例

5 存儲(chǔ)器空間分配

在本設(shè)計(jì)中,由于ARM7TDMI處理器的地址空間非常大(可達(dá)4G字節(jié))。因此,在重映射前,可將地址最低的4MB分配給內(nèi)部存儲(chǔ)器,最高的4M 分配給內(nèi)部外設(shè),其余中間的地址空間(從0x00400000到0xFFFCFFFF)留給外部擴(kuò)展的設(shè)備,這部分設(shè)備可由AT91M42800A 的八個(gè)片選來(lái)選擇。筆者選擇的AT91M42800A開(kāi)發(fā)環(huán)境為ADS1.1,由于在實(shí)際的嵌入式系統(tǒng)中,ADS1.1提供的缺省存儲(chǔ)器映射不能滿足要求,而用戶的目標(biāo)硬件有多個(gè)存儲(chǔ)器設(shè)備,且位于不同的位置,如上例中,AT91M42800A的四個(gè)片選分別給了外擴(kuò)FLASH、外擴(kuò)的RAM、以及FB3050的內(nèi)部寄存器片選和存儲(chǔ)器片選,因此需要通過(guò)Scat-ter 文本文件來(lái)指定一段代碼或數(shù)據(jù)在加載和運(yùn)行時(shí)在存儲(chǔ)器的不同位置,這個(gè)文本文件在命令行中由-scatter開(kāi)關(guān)指定。在arm linker菜單的output 子菜單下有link type一項(xiàng)。link type 選項(xiàng)中,只要選擇 scatter,并指定scatter.scf 文件的存儲(chǔ)位置就可以了。在下面的例子中,FLASH中的代碼和數(shù)據(jù)存儲(chǔ)在0x04000000起始的、長(zhǎng)度為32kB的地址空間中。

由于Start. s:匯編引導(dǎo)程序代碼在執(zhí)行重映射后,中斷向量表將存放在內(nèi)部RAM中,其地址范圍為0x00000000到0x00000018,因此,用于存放數(shù)據(jù)的實(shí)際地址是從0x00000020開(kāi)始的。存放在外擴(kuò)RAM中的代碼放在ext_ram.c中,以下類似。上例的scatter 文本文件代碼如下:

FLASH 0x04000000 0x8000

{

FLASH 0x04000000 0x8000

{

Start.o (Reset, +First)

* (+RO)

}

RAM ON CHIP 0x0020 0x2000

{

*(+RW,+ZI)

}

RAM OFF CHIP 0x8000000 0x40000

{

ext ram.o(+RW,+ZI)

}

FB3050 SEND 0x30000000 0x00ff

{

sendbuf.o(+RW,+ZI)

}

FB3050 RECEIVE 0x30004000 0x00ff

{

receive buf.o?+RW?+ZI?

    }

    }

6 調(diào)試要點(diǎn)

在設(shè)計(jì)調(diào)試過(guò)程中,AT91M42800A還有幾個(gè)特殊的引腳需要特別注意。

BMS:此引腳用來(lái)選擇引導(dǎo)存儲(chǔ)器的數(shù)據(jù)寬度,如果引導(dǎo)存儲(chǔ)器是8位的,應(yīng)將其上拉,而如果為16位則要下拉。

NTRI:此引腳用來(lái)選擇三態(tài)模式。如果要進(jìn)入三態(tài)模式,應(yīng)使NTRI引腳在NRST上升沿到來(lái)之前保持10個(gè)慢時(shí)鐘周期的低電平,否則,則應(yīng)將NTRI上拉。

NWAIT:此引腳在調(diào)試AT91M42800A?xí)r,應(yīng)將其上拉,否則,系統(tǒng)將進(jìn)入等待狀態(tài)。

MODE0、MODE1:這兩個(gè)引腳用來(lái)選擇AT91M42800A的4種操作模式,當(dāng)模式改變時(shí),必須進(jìn)行復(fù)位才能有效。其設(shè)置方法如表1所列。

表1 操作模式設(shè)置

MODE0 MODE1 操  作  模  式
0 0 通用模式(時(shí)鐘由片上振蕩電路產(chǎn)生)
0 1 邊界掃描模式
1 0 通用模式(時(shí)鐘由外時(shí)鐘信號(hào)通過(guò)XIN引腳
1 1 保留

7 結(jié)束語(yǔ)

AT91M42800A是一款處理能力非常強(qiáng)、性能價(jià)格比非常高的嵌入式微控制器,它具有32位處理器的處理能力,但卻只有16位處理器的價(jià)格。它豐富的片上資源和強(qiáng)大的擴(kuò)展能力為嵌入式系統(tǒng)的開(kāi)發(fā)設(shè)計(jì)提供了很大靈活性。

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

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

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

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

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

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶希望企業(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ā)表演講稱,數(shù)字世界的話語(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)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

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