射頻識別技術(RFID)是一種通過電磁耦合方式工作的無線識別系統,具有保密性強、無接觸式信息傳遞等特點,目前廣泛應用于物流、公共交通、門禁控制等與人們生活密切相關的方方面面。 本論文的目的是開發(fā)出一款讀卡終端設備,支持IS014443標準中規(guī)定的TypeA、Type B兩種類型的卡,具有高級擴展功能,也可以在硬件基礎上進行增減,以適應不同場合的需要。 讀卡器設計中采用嵌入式芯片為處理核心,讀卡功能采用射頻讀卡芯片實現。讀卡器終端具有網絡接口、USB接口和觸摸屏接口。軟件上采用移植嵌入式系統并添加任務的模式實現讀卡器的各功能。通過對軟硬件的調試實現了RYID讀卡器原理樣機的硬件與軟件平臺構律。
上傳時間: 2013-06-12
上傳用戶:450976175
北京航空航天大學出版社,深入淺出ARM7--LPC213x214x下冊,周立功等編著。本書全面介紹了以LPC213x/LPC214x兩個系列ARM芯片為硬件平臺的各種應用開發(fā),詳細分析了嵌入式實時操作系統μC/OS-II在ARM7上的移植和應用。第101-180頁。
上傳時間: 2013-06-11
上傳用戶:tianjinfan
at91rm9200啟動過程教程 系統上電,檢測BMS,選擇系統的啟動方式,如果BMS為高電平,則系統從片內ROM啟動。AT91RM9200的ROM上電后被映射到了0x0和0x100000處,在這兩個地址處都可以訪問到ROM。由于9200的ROM中固化了一個BOOTLOAER程序。所以PC從0X0處開始執(zhí)行這個BOOTLOAER(準確的說應該是一級BOOTLOADER)。這個BOOTLOER依次完成以下步驟: 1、PLL SETUP,設置PLLB產生48M時鐘頻率提供給USB DEVICE。同時DEBUG USART也被初始化為48M的時鐘頻率; 2、相應模式下的堆棧設置; 3、檢測主時鐘源(Main oscillator); 4、中斷控制器(AIC)的設置; 5、C 變量的初始化; 6、跳到主函數。 完成以上步驟后,我們可以認為BOOT過程結束,接下來的就是LOADER的過程,或者也可以認為是裝載二級BOOTLOER。AT91RM9200按照DATAFLASH、EEPROM、連接在外部總線上的8位并行FLASH的順序依次來找合法的BOOT程序。所謂合法的指的是在這些存儲設備的開始地址處連續(xù)的存放的32個字節(jié),也就是8條指令必須是跳轉指令或者裝載PC的指令,其實這樣規(guī)定就是把這8條指令當作是異常向量表來處理。必須注意的是第6條指令要包含將要裝載的映像的大小。關于如何計算和寫這條指令可以參考用戶手冊。一旦合法的映像找到之后,則BOOT程序會把找到的映像搬到SRAM中去,所以映像的大小是非常有限的,不能超過16K-3K的大小。當BOOT程序完成了把合法的映像搬到SRAM的任務以后,接下來就進行存儲器的REMAP,經過REMAP之后,SRAM從映設前的0X200000地址處被映設到了0X0地址并且程序從0X0處開始執(zhí)行。而ROM這時只能在0X100000這個地址處看到了。至此9200就算完成了一種形式的啟動過程。如果BOOT程序在以上所列的幾種存儲設備中找到合法的映像,則自動初始化DEBUG USART口和USB DEVICE口以準備從外部載入映像。對DEBUG口的初始化包括設置參數115200 8 N 1以及運行XMODEM協議。對USB DEVICE進行初始化以及運行DFU協議。現在用戶可以從外部(假定為PC平臺)載入你的映像了。在PC平臺下,以WIN2000為例,你可以用超級終端來完成這個功能,但是還是要注意你的映像的大小不能超過13K。一旦正確從外部裝載了映像,接下來的過程就是和前面一樣重映設然后執(zhí)行映像了。我們上面講了BMS為高電平,AT91RM9200選擇從片內的ROM啟動的一個過程。如果BMS為低電平,則AT91RM9200會從片外的FLASH啟動,這時片外的FLASH的起始地址就是0X0了,接下來的過程和片內啟動的過程是一樣的,只不過這時就需要自己寫啟動代碼了,至于怎么寫,大致的內容和ROM的BOOT差不多,不同的硬件設計可能有不一樣的地方,但基本的都是一樣的。由于片外FLASH可以設計的大,所以這里編寫的BOOTLOADER可以一步到位,也就是說不用像片內啟動可能需要BOOT好幾級了,目前AT91RM9200上使用較多的bootloer是u-boot,這是一個開放源代碼的軟件,用戶可以自由下載并根據自己的應用配置。總的說來,筆者以為AT91RM9200的啟動過程比較簡單,ATMEL的服務也不錯,不但提供了片內啟動的功能,還提供了UBOOT可供下載。筆者寫了一個BOOTLODER從片外的FLASHA啟動,效果還可以。 uboot結構與使用uboot是一個龐大的公開源碼的軟件。他支持一些系列的arm體系,包含常見的外設的驅動,是一個功能強大的板極支持包。其代碼可以 http://sourceforge.net/projects/u-boot下載 在9200上,為了啟動uboot,還有兩個boot軟件包,分別是loader和boot。分別完成從sram和flash中的一級boot。其源碼可以從atmel的官方網站下載。 我們知道,當9200系統上電后,如果bms為高電平,則系統從片內rom啟動,這時rom中固化的boot程序初始化了debug口并向其發(fā)送'c',這時我們打開超級終端會看到ccccc...。這說明系統已經啟動,同時xmodem協議已經啟動,用戶可以通過超級終端下載用戶的bootloader。作為第一步,我們下載loader.bin.loader.bin將被下載到片內的sram中。這個loder完成的功能主要是初始化時鐘,sdram和xmodem協議,為下載和啟動uboot做準備。當下載了loader.bin后,超級終端會繼續(xù)打印:ccccc....。這時我們就可以下在uboot了。uboot將被下載到sdram中的一個地址后并把pc指針調到此處開始執(zhí)行uboot。接著我們就可以在終端上看到uboot的shell啟動了,提示符uboot>,用戶可以uboot>help 看到命令列表和大概的功能。uboot的命令包含了對內存、flash、網絡、系統啟動等一些命令。 如果系統上電時bms為低電平,則系統從片外的flash啟動。為了從片外的flash啟動uboot,我們必須把boot.bin放到0x0地址出,使得從flash啟動后首先執(zhí)行boot.bin,而要少些boot.bin,就要先完成上面我們講的那些步驟,首先開始從片內rom啟動uboot。然后再利用uboot的功能完成把boot.bin和uboot.gz燒寫到flash中的目的,假如我們已經啟動了uboot,可以這樣操作: uboot>protect off all uboot>erase all uboot>loadb 20000000 uboot>cp.b 20000000 10000000 5fff uboot>loadb 21000000 uboot>cp.b 210000000 10010000 ffff 然后系統復位,就可以看到系統先啟動boot,然后解壓縮uboot.gz,然后啟動uboot。注意,這里uboot必須壓縮成.gz文件,否則會出錯。 怎么編譯這三個源碼包呢,首先要建立一個arm的交叉編譯環(huán)境,關于如何建立,此處不予說明。建立好了以后,分別解壓源碼包,然后修改Makefile中的編譯器項目,正確填寫你的編譯器的所在路徑。 對loader和boot,直接make。對uboot,第一步:make_at91rm9200dk,第二步:make。這樣就會在當前目錄下分別生成*.bin文件,對于uboot.bin,我們還要壓縮成.gz文件。 也許有的人對loader和boot搞不清楚為什么要兩個,有什么區(qū)別嗎?首先有區(qū)別,boot主要完成從flash中啟動uboot的功能,他要對uboot的壓縮文件進行解壓,除此之外,他和loader并無大的區(qū)別,你可以把boot理解為在loader的基礎上加入了解壓縮.gz的功能而已。所以這兩個并無多大的本質不同,只是他們的使命不同而已。 特別說名的是這三個軟件包都是開放源碼的,所以用戶可以根據自己的系統的情況修改和配置以及裁減,打造屬于自己系統的bootloder。
上傳時間: 2013-10-27
上傳用戶:wsf950131
1.增加的設備支持: Atmel AT91SAM9Rxx Cirrus Logic CS7401xx-IQZ Luminary Micro LM3S576x, LM3S5752, LM3S5747, LM3S573x, LM3S5662, LM3S5652, LM3S5632, LM3S3759, LM3S3749, and LM3S3739 NXP LPC32XX and LPC2460 STMicroelectronics STR912FAZ4X, STR912FAW4X, STR911FAW4X, STR911FAM4X, STR910FAW32, and STR910FAZ32 2.修改了NXP LPC23XX/24XX的頭文件庫 3.增加了ST-LINK II的調試支持 4.增加了對Cortex-M3 內核芯片的RTX Event Viewer 的支持 5.增加了MCBSTM32: STM32 FLASH OPTION BYTES PROGRAMMING 6.增加了ULINK2對Cortex-M3的SWV功能的調試 7.增強了使用GNU在MDK下調試M1,M3,ARM7,ARM9的調試功能( Using μVision with CodeSourcery GNU ARM Toolchain.) 8.增加了大量經典開發(fā)板例程 Boards目錄列表: ├─Embest 深圳市英蓓特公司開發(fā)板例程 │ ├─AT91EB40X-40008 │ ├─S3CEB2410 │ ├─ATEBSAM7S │ ├─LPC22EB06-I │ ├─LPCEB2000-A │ ├─LPCEB2000-B │ ├─LPCEB2000-S │ ├─str710 │ ├─str711 │ ├─str730 │ ├─str750 │ ├─STR912 │ ├─STM32V100 │ ├─STM32R100 │ ├─ATEB9200 ├─ADI ADI半導體的芯片例程 │ ├─ADuC702X │ └─ADuC712x ├─Atmel Atmel半導體的芯片例程 │ ├─AT91RM9200-EK │ ├─AT91SAM7A3-EK │ ├─AT91SAM7S-EK │ ├─AT91SAM7SE-EK │ ├─AT91SAM7X-EK │ ├─AT91SAM9260-EK │ ├─AT91SAM9261-EK │ ├─AT91SAM9263-EK ├─Keil Keil公司的開發(fā)板例程 │ ├─MCB2100 │ ├─MCB2103 │ ├─MCB2130 │ ├─MCB2140 │ ├─MCB2300 │ ├─MCB2400 │ ├─MCB2900 │ ├─MCBLM3S │ ├─MCBSTM32 │ ├─MCBSTR7 │ ├─MCBSTR730 │ ├─MCBSTR750 │ └─MCBSTR9 ├─Luminary Luminary半導體公司的芯片例程 │ ├─ek-lm3s1968 │ ├─ek-lm3s3748 │ ├─ek-lm3s3768 │ ├─dk-lm3s101 │ ├─dk-lm3s102 │ ├─dk-lm3s301 │ ├─dk-lm3s801 │ ├─dk-lm3s811 │ ├─dk-lm3s815 │ ├─dk-lm3s817 │ ├─dk-lm3s818 │ ├─dk-lm3s828 │ ├─ek-lm3s2965 │ ├─ek-lm3s6965 │ ├─ek-lm3s811 │ └─ek-lm3s8962 ├─NXP NXP半導體公司的芯片例程 │ ├─LH79524 │ ├─LH7A404 │ └─SJA2510 ├─OKI OKI半導體公司的芯片例程 │ ├─ML674000 │ ├─ML67Q4003 │ ├─ML67Q4051 │ ├─ML67Q4061 │ ├─ML67Q5003 │ └─ML69Q6203 ├─Samsung Samsung半導體公司的芯片例程 │ ├─S3C2440 │ ├─S3C44001 │ └─S3F4A0K ├─ST ST半導體公司的芯片例程 │ ├─CQ-STARM2 │ ├─EK-STM32F │ ├─STM32F10X_EVAL │ ├─STR710 │ ├─STR730 │ ├─STR750 │ ├─STR910 │ └─STR9_DONGLE ├─TI TI半導體公司的芯片例程 │ ├─TMS470R1A256 │ └─TMS470R1B1M ├─Winbond Winbond半導體公司的芯片例程 │ └─W90P710 └─ ...
上傳時間: 2013-10-13
上傳用戶:zhangliming420
這是gcc編譯中不可或缺的代碼段,想了解elf的人不如從源代碼入手,深入理解elf的思想。
上傳時間: 2015-04-24
上傳用戶:qiao8960
詳細的介紹了GNU工具生成的elf文件格式,對學習ARM編程的人很有幫助
上傳時間: 2015-05-23
上傳用戶:tonyshao
picocom 是一款linux下的串口調試工具,很想minicom,比minicom精巧的多,編譯好后, 我輸入 picocom -b 115200 /dev/ttyS0 就可以調試我的arm板了
上傳時間: 2014-07-27
上傳用戶:shizhanincc
將eCos應用到UPS(不間斷電源)遠程監(jiān)控管理系統中,設計了以ARM (S3C4510B)為核心的軟硬件平臺 詳細分析了。Cos嵌入式Web服務器及應 用軟件設計流程與方法,形成了B/S結構的UPS監(jiān)控系統,替代了傳統的基于 C/S結構的監(jiān)控系統,更方便的實現對UPS的智能監(jiān)控與管理。 此文檔需要用CAJVIEWER打開。
標簽: eCos UPS 不間斷電源 遠程監(jiān)控
上傳時間: 2014-10-10
上傳用戶:498732662
TnKernel是一個源碼開放的ARM嵌入式實時操作系統,該操作系統在眾多ARM芯片中得到廣泛應用,官方已經移植了包括LPC、AT91SAM7S、STR7等ARM7芯片,本工程是最新的2.4版本,包含了ADS、Keil、IAR、GCC等眾多編譯環(huán)境,開發(fā)人員可以在不同的目錄下找到自己熟悉的編譯器工程文件,對嵌入式開發(fā)人員極具參考價值。
上傳時間: 2013-12-26
上傳用戶:CSUSheep
The latest release, ver 1.16 of the ARM (7TDMI, 720T, 920T) port for uC/OS-II V2.61 (and higher) includes ports for the following platforms: 1. S3c2410x ( ARM920T from Samsung ) on SMDK2410 eval board. 2. LPC2xxx - LPC210x & LPC213x ( ARM7TDMI-S from Philips ) on IAR s Kickstart & OLIMEX boards. 3. EP7312 ( ARM720T from CIRRUS ) on CDK238 eval board. Should also work on boards based on the CS89712. Tool-chains: GCC 3.3.2, ADS 1.2 & SDT 2.51. Op-modes: Pure ARM & ARM-THUMB interworked. Endianess: Big endian & Little endian modes
標簽: release latest higher OS-II
上傳時間: 2014-01-26
上傳用戶:小眼睛LSL