四位數(shù)碼管從一數(shù)到F,LED就向下移一位c語言代碼
上傳時(shí)間: 2014-12-25
上傳用戶:1214209695
AN4347-應(yīng)由S08AC和S08FL系列向S08PT系列轉(zhuǎn)換(飛思卡爾)英文資料 其目錄如下圖所示:
上傳時(shí)間: 2013-10-18
上傳用戶:kernaling
c8051f系列單片機(jī)配置工具,方便對c8051f系列單片機(jī)內(nèi)部各個(gè)寄存器進(jìn)行配置。親測非常的方便。
上傳時(shí)間: 2013-11-01
上傳用戶:tyler
[摘要]本文以學(xué)院單片機(jī)課程的實(shí)驗(yàn)教學(xué)為背景,較為全面地闡述了基于Proteus軟件仿真的單片機(jī)虛擬實(shí)驗(yàn)室只配置有限的硬件設(shè)備,就能夠很好地解決資金和設(shè)備維護(hù)問題的建設(shè)方案。方案的設(shè)計(jì)采用的大量的仿真工作是在軟件環(huán)境中實(shí)現(xiàn),極大地增強(qiáng)了實(shí)驗(yàn)室向?qū)W生開放的便利性。[關(guān)鍵詞]Proteus單片機(jī)仿真虛擬實(shí)驗(yàn)室
標(biāo)簽: 單片機(jī) 虛擬實(shí)驗(yàn)室
上傳時(shí)間: 2013-10-18
上傳用戶:lhuqi
摘 要:以EZ2USB FX2為基礎(chǔ)設(shè)計(jì)了一種單片機(jī)的USB接口方式.該設(shè)計(jì)應(yīng)用EZ2USB FX2芯片構(gòu)建單片機(jī)和主機(jī)的數(shù)據(jù)管道,接口符合USB2.0協(xié)議.EZ2USBFX2芯片工作在從屬FIFO方式下,通過適當(dāng)?shù)呐渲门c單片機(jī)方便地進(jìn)行連接,單片機(jī)可以象訪問外部存儲器一樣訪問FX2的端點(diǎn).主機(jī)應(yīng)用程序通過USB接口向單片機(jī)發(fā)送相應(yīng)的命令,并能夠接收單片機(jī)上傳的數(shù)據(jù).該設(shè)計(jì)硬件連接方便、編程簡單.文中詳細(xì)介紹了該設(shè)計(jì)的硬件組成和軟件設(shè)計(jì),包括FX2的固件程序和主機(jī)用戶程序.關(guān)鍵詞:FX2;Slave FIFO;USB;接口
標(biāo)簽: C68013 68013 2.0 CY7
上傳時(shí)間: 2013-12-26
上傳用戶:swz13842860183
本文介紹AVR Studio環(huán)境下對AVR芯片熔絲的配置,AVR單片機(jī)的熔絲配置項(xiàng)比較多也比較復(fù)雜,好在AVR Studio將各種配置進(jìn)行了組合,這樣配置起來就方便多了。基本上不需要查數(shù)據(jù)手冊,能看懂一點(diǎn)英文就可以根據(jù)功能需求直接配置了。下面在ATmega16芯片基礎(chǔ)上進(jìn)行說明,不同芯片之間可能有一點(diǎn)不同。
上傳時(shí)間: 2014-12-27
上傳用戶:蒼山觀海
NDAM 配置軟件 V2.07 安裝程序
上傳時(shí)間: 2014-01-12
上傳用戶:123456wh
C8051F單片機(jī) C8051F系列單片機(jī) 單片機(jī)自20世紀(jì)70年代末誕生至今,經(jīng)歷了單片微型計(jì)算機(jī)SCM、微控制器MCU及片上系統(tǒng)SoC三大階段,前兩個(gè)階段分別以MCS-51和80C51為代表。隨著在嵌入式領(lǐng)域中對單片機(jī)的性能和功能要求越來越高,以往的單片機(jī)無論是運(yùn)行速度還是系統(tǒng)集成度等多方面都不能滿足新的設(shè)計(jì)需要,這時(shí)Silicon Labs 公司推出了C8051F系列單片機(jī),成為SoC的典型代表。 C8051F具有上手快(全兼容8051指令集)、研發(fā)快(開發(fā)工具易用,可縮短研發(fā)周期)和見效快(調(diào)試手段靈活)的特點(diǎn),其性能優(yōu)勢具體體現(xiàn)在以下方面: 基于增強(qiáng)的CIP-51內(nèi)核,其指令集與MCS-51完全兼容,具有標(biāo)準(zhǔn)8051的組織架構(gòu),可以使用標(biāo)準(zhǔn)的803x/805x匯編器和編譯器進(jìn)行軟件開發(fā)。CIP-51采用流水線結(jié)構(gòu),70%的的指令執(zhí)行時(shí)間為1或2個(gè)系統(tǒng)時(shí)鐘周期,是標(biāo)準(zhǔn)8051指令執(zhí)行速度的12倍;其峰值執(zhí)行速度可達(dá)100MIPS(C8051F120等),是目前世界上速度最快的8位單片機(jī)。 增加了中斷源。標(biāo)準(zhǔn)的8051只有7個(gè)中斷源Silicon Labs 公司 C8051F系列單片機(jī)擴(kuò)展了中斷處理這對于時(shí)實(shí)多任務(wù)系統(tǒng)的處理是很重要的擴(kuò)展的中斷系統(tǒng)向CIP-51提供22個(gè)中斷源允許大量的模擬和數(shù)字外設(shè)中斷一個(gè)中斷處理需要較少的CPU干預(yù)卻有更高的執(zhí)行效率。 集成了豐富的模擬資源,絕大部分的C8051F系列單片機(jī)都集成了單個(gè)或兩個(gè)ADC,在片內(nèi)模擬開關(guān)的作用下可實(shí)現(xiàn)對多路模擬信號的采集轉(zhuǎn)換;片內(nèi)ADC的采樣精度最高可達(dá)24bit,采樣速率最高可達(dá)500ksps,部分型號還集成了單個(gè)或兩個(gè)獨(dú)立的高分辨率DAC,可滿足絕大多數(shù)混合信號系統(tǒng)的應(yīng)用并實(shí)現(xiàn)與模擬電子系統(tǒng)的無縫接口;片內(nèi)溫度傳感器則可以迅速而精確的監(jiān)測環(huán)境溫度并通過程序作出相應(yīng)處理,提高了系統(tǒng)運(yùn)行的可靠性。 集成了豐富的外部設(shè)備接口。具有兩路UART和最多可達(dá)5個(gè)定時(shí)器及6個(gè)PCA模塊,此外還根據(jù)不同的需要集成了SMBus、SPI、USB、CAN、LIN等接口,以及RTC部件。外設(shè)接口在不使用時(shí)可以分別禁止以降低系統(tǒng)功耗。與其他類型的單片機(jī)實(shí)現(xiàn)相同的功能需要多個(gè)芯片的組合才能完成相比,C8051單片機(jī)不僅減少了系統(tǒng)成本,更大大降低了功耗。 增強(qiáng)了在信號處理方面的性能,部分型號具有16x16 MAC以及DMA功能,可對所采集信號進(jìn)行實(shí)時(shí)有效的算法處理并提高了數(shù)據(jù)傳送能力。 具有獨(dú)立的片內(nèi)時(shí)鐘源(精度最高可達(dá)0.5%),設(shè)計(jì)人員既可選擇外接時(shí)鐘,也可直接應(yīng)用片內(nèi)時(shí)鐘,同時(shí)可以在內(nèi)外時(shí)鐘源之間自如切換。片內(nèi)時(shí)鐘源降低了系統(tǒng)設(shè)計(jì)的復(fù)雜度,提高了系統(tǒng)可靠性,而時(shí)鐘切換功能則有利于系統(tǒng)整體功耗的降低。 提供空閑模式及停機(jī)模式等多種電源管理方式來降低系統(tǒng)功耗 實(shí)現(xiàn)了I/O從固定方式到交叉開關(guān)配置。固定方式的I/O端口,既占用引腳多,配置又不夠靈活。在C8051F中,則采用開關(guān)網(wǎng)絡(luò)以硬件方式實(shí)現(xiàn)I/O端口的靈活配置,外設(shè)電路單元通過相應(yīng)的配置寄存器控制的交叉開關(guān)配置到所選擇的端口上。 復(fù)位方式多樣化,C8051F把80C51單一的外部復(fù)位發(fā)展成多源復(fù)位,提供了上電復(fù)位、掉電復(fù)位、外部引腳復(fù)位、軟件復(fù)位、時(shí)鐘檢測復(fù)位、比較器0復(fù)位、WDT復(fù)位和引腳配置復(fù)位。眾多的復(fù)位源為保障系統(tǒng)的安全、操作的靈活性以及零功耗系統(tǒng)設(shè)計(jì)帶來極大的好處。 從傳統(tǒng)的仿真調(diào)試到基于JTAG接口的在系統(tǒng)調(diào)試。C8051F在8位單片機(jī)中率先配置了標(biāo)準(zhǔn)的JTAG接口(IEEE1149.1)。C8051F的JTAG接口不僅支持Flash ROM的讀/寫操作及非侵入式在系統(tǒng)調(diào)試,它的JTAG邏輯還為在系統(tǒng)測試提供邊界掃描功能。通過邊界寄存器的編程控制,可對所有器件引腳、SFR總線和I/O口弱上拉功能實(shí)現(xiàn)觀察和控制。 C8051F系列單片機(jī)型號齊全,可根據(jù)設(shè)計(jì)需求選擇不同規(guī)模和帶有特定外設(shè)接口的型號,提供從多達(dá)100個(gè)引腳的高性能單片機(jī)到最小3mmX3mm的封裝,滿足不同設(shè)計(jì)的需要。 基于上述特點(diǎn),Silicon Labs 公司C8051F系列單片機(jī)作為SoC芯片的杰出代表能夠滿足絕大部分場合的復(fù)雜功能要求,并在嵌入式領(lǐng)域的各個(gè)場合都得到了廣泛的應(yīng)用:在工業(yè)控制領(lǐng)域,其豐富的模擬資源可用于工業(yè)現(xiàn)場多種物理量的監(jiān)測、分析及控制和顯示;在便攜式儀器領(lǐng)域,其低功耗和強(qiáng)大的外設(shè)接口也非常適合各種信號的采集、存儲和傳輸;此外,新型的C8051F5xx系列單片機(jī)也在汽車電子行業(yè)中嶄露頭角。正是這些優(yōu)勢,使得C8051單片機(jī)在進(jìn)入中國市場的短短幾年內(nèi)就迅速風(fēng)靡,相信隨著新型號的不斷推出以及推廣力度的不斷加大,C8051系列單片機(jī)將迎來日益廣闊的發(fā)展空間,成為嵌入式領(lǐng)域的時(shí)代寵兒 此系列單片機(jī)完全兼容MCS-51指令集,容易上手,開發(fā)周期短,大大節(jié)約了開發(fā)成本。C8051F系統(tǒng)集成度高,總線時(shí)鐘可達(dá)25M
上傳時(shí)間: 2013-11-24
上傳用戶:testAPP
at91rm9200啟動(dòng)過程教程 系統(tǒng)上電,檢測BMS,選擇系統(tǒng)的啟動(dòng)方式,如果BMS為高電平,則系統(tǒng)從片內(nèi)ROM啟動(dòng)。AT91RM9200的ROM上電后被映射到了0x0和0x100000處,在這兩個(gè)地址處都可以訪問到ROM。由于9200的ROM中固化了一個(gè)BOOTLOAER程序。所以PC從0X0處開始執(zhí)行這個(gè)BOOTLOAER(準(zhǔn)確的說應(yīng)該是一級BOOTLOADER)。這個(gè)BOOTLOER依次完成以下步驟: 1、PLL SETUP,設(shè)置PLLB產(chǎn)生48M時(shí)鐘頻率提供給USB DEVICE。同時(shí)DEBUG USART也被初始化為48M的時(shí)鐘頻率; 2、相應(yīng)模式下的堆棧設(shè)置; 3、檢測主時(shí)鐘源(Main oscillator); 4、中斷控制器(AIC)的設(shè)置; 5、C 變量的初始化; 6、跳到主函數(shù)。 完成以上步驟后,我們可以認(rèn)為BOOT過程結(jié)束,接下來的就是LOADER的過程,或者也可以認(rèn)為是裝載二級BOOTLOER。AT91RM9200按照DATAFLASH、EEPROM、連接在外部總線上的8位并行FLASH的順序依次來找合法的BOOT程序。所謂合法的指的是在這些存儲設(shè)備的開始地址處連續(xù)的存放的32個(gè)字節(jié),也就是8條指令必須是跳轉(zhuǎn)指令或者裝載PC的指令,其實(shí)這樣規(guī)定就是把這8條指令當(dāng)作是異常向量表來處理。必須注意的是第6條指令要包含將要裝載的映像的大小。關(guān)于如何計(jì)算和寫這條指令可以參考用戶手冊。一旦合法的映像找到之后,則BOOT程序會把找到的映像搬到SRAM中去,所以映像的大小是非常有限的,不能超過16K-3K的大小。當(dāng)BOOT程序完成了把合法的映像搬到SRAM的任務(wù)以后,接下來就進(jìn)行存儲器的REMAP,經(jīng)過REMAP之后,SRAM從映設(shè)前的0X200000地址處被映設(shè)到了0X0地址并且程序從0X0處開始執(zhí)行。而ROM這時(shí)只能在0X100000這個(gè)地址處看到了。至此9200就算完成了一種形式的啟動(dòng)過程。如果BOOT程序在以上所列的幾種存儲設(shè)備中找到合法的映像,則自動(dòng)初始化DEBUG USART口和USB DEVICE口以準(zhǔn)備從外部載入映像。對DEBUG口的初始化包括設(shè)置參數(shù)115200 8 N 1以及運(yùn)行XMODEM協(xié)議。對USB DEVICE進(jìn)行初始化以及運(yùn)行DFU協(xié)議。現(xiàn)在用戶可以從外部(假定為PC平臺)載入你的映像了。在PC平臺下,以WIN2000為例,你可以用超級終端來完成這個(gè)功能,但是還是要注意你的映像的大小不能超過13K。一旦正確從外部裝載了映像,接下來的過程就是和前面一樣重映設(shè)然后執(zhí)行映像了。我們上面講了BMS為高電平,AT91RM9200選擇從片內(nèi)的ROM啟動(dòng)的一個(gè)過程。如果BMS為低電平,則AT91RM9200會從片外的FLASH啟動(dòng),這時(shí)片外的FLASH的起始地址就是0X0了,接下來的過程和片內(nèi)啟動(dòng)的過程是一樣的,只不過這時(shí)就需要自己寫啟動(dòng)代碼了,至于怎么寫,大致的內(nèi)容和ROM的BOOT差不多,不同的硬件設(shè)計(jì)可能有不一樣的地方,但基本的都是一樣的。由于片外FLASH可以設(shè)計(jì)的大,所以這里編寫的BOOTLOADER可以一步到位,也就是說不用像片內(nèi)啟動(dòng)可能需要BOOT好幾級了,目前AT91RM9200上使用較多的bootloer是u-boot,這是一個(gè)開放源代碼的軟件,用戶可以自由下載并根據(jù)自己的應(yīng)用配置。總的說來,筆者以為AT91RM9200的啟動(dòng)過程比較簡單,ATMEL的服務(wù)也不錯(cuò),不但提供了片內(nèi)啟動(dòng)的功能,還提供了UBOOT可供下載。筆者寫了一個(gè)BOOTLODER從片外的FLASHA啟動(dòng),效果還可以。 uboot結(jié)構(gòu)與使用uboot是一個(gè)龐大的公開源碼的軟件。他支持一些系列的arm體系,包含常見的外設(shè)的驅(qū)動(dòng),是一個(gè)功能強(qiáng)大的板極支持包。其代碼可以 http://sourceforge.net/projects/u-boot下載 在9200上,為了啟動(dòng)uboot,還有兩個(gè)boot軟件包,分別是loader和boot。分別完成從sram和flash中的一級boot。其源碼可以從atmel的官方網(wǎng)站下載。 我們知道,當(dāng)9200系統(tǒng)上電后,如果bms為高電平,則系統(tǒng)從片內(nèi)rom啟動(dòng),這時(shí)rom中固化的boot程序初始化了debug口并向其發(fā)送'c',這時(shí)我們打開超級終端會看到ccccc...。這說明系統(tǒng)已經(jīng)啟動(dòng),同時(shí)xmodem協(xié)議已經(jīng)啟動(dòng),用戶可以通過超級終端下載用戶的bootloader。作為第一步,我們下載loader.bin.loader.bin將被下載到片內(nèi)的sram中。這個(gè)loder完成的功能主要是初始化時(shí)鐘,sdram和xmodem協(xié)議,為下載和啟動(dòng)uboot做準(zhǔn)備。當(dāng)下載了loader.bin后,超級終端會繼續(xù)打印:ccccc....。這時(shí)我們就可以下在uboot了。uboot將被下載到sdram中的一個(gè)地址后并把pc指針調(diào)到此處開始執(zhí)行uboot。接著我們就可以在終端上看到uboot的shell啟動(dòng)了,提示符uboot>,用戶可以uboot>help 看到命令列表和大概的功能。uboot的命令包含了對內(nèi)存、flash、網(wǎng)絡(luò)、系統(tǒng)啟動(dòng)等一些命令。 如果系統(tǒng)上電時(shí)bms為低電平,則系統(tǒng)從片外的flash啟動(dòng)。為了從片外的flash啟動(dòng)uboot,我們必須把boot.bin放到0x0地址出,使得從flash啟動(dòng)后首先執(zhí)行boot.bin,而要少些boot.bin,就要先完成上面我們講的那些步驟,首先開始從片內(nèi)rom啟動(dòng)uboot。然后再利用uboot的功能完成把boot.bin和uboot.gz燒寫到flash中的目的,假如我們已經(jīng)啟動(dòng)了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 然后系統(tǒng)復(fù)位,就可以看到系統(tǒng)先啟動(dòng)boot,然后解壓縮uboot.gz,然后啟動(dòng)uboot。注意,這里uboot必須壓縮成.gz文件,否則會出錯(cuò)。 怎么編譯這三個(gè)源碼包呢,首先要建立一個(gè)arm的交叉編譯環(huán)境,關(guān)于如何建立,此處不予說明。建立好了以后,分別解壓源碼包,然后修改Makefile中的編譯器項(xiàng)目,正確填寫你的編譯器的所在路徑。 對loader和boot,直接make。對uboot,第一步:make_at91rm9200dk,第二步:make。這樣就會在當(dāng)前目錄下分別生成*.bin文件,對于uboot.bin,我們還要壓縮成.gz文件。 也許有的人對loader和boot搞不清楚為什么要兩個(gè),有什么區(qū)別嗎?首先有區(qū)別,boot主要完成從flash中啟動(dòng)uboot的功能,他要對uboot的壓縮文件進(jìn)行解壓,除此之外,他和loader并無大的區(qū)別,你可以把boot理解為在loader的基礎(chǔ)上加入了解壓縮.gz的功能而已。所以這兩個(gè)并無多大的本質(zhì)不同,只是他們的使命不同而已。 特別說名的是這三個(gè)軟件包都是開放源碼的,所以用戶可以根據(jù)自己的系統(tǒng)的情況修改和配置以及裁減,打造屬于自己系統(tǒng)的bootloder。
上傳時(shí)間: 2013-10-27
上傳用戶:wsf950131
本文介紹了基于SRAM 查找表的現(xiàn)場可重配置FPGA 的結(jié)構(gòu)和原理,及其配置方法,通過對多種配置方法的比較,提出了由單片機(jī)和EPROM 存儲器組成的串行配置方式。這種方式結(jié)構(gòu)簡單,設(shè)計(jì)保密性好,易于升級,降低設(shè)計(jì)成本。在大規(guī)模可編程邏輯器件出現(xiàn)以前,把器件焊接在電路板上是設(shè)計(jì)數(shù)字系統(tǒng)的最后一步。當(dāng)設(shè)計(jì)存在問題并解決后,設(shè)計(jì)者往往不得不重新設(shè)計(jì)印制電路板。設(shè)計(jì)周期長,設(shè)計(jì)效率低。CPLD 、FPGA 出現(xiàn)后,利用其在系統(tǒng)可編程或可重配置功能,設(shè)計(jì)者可以在進(jìn)行邏輯設(shè)計(jì)而未進(jìn)行電路設(shè)計(jì)時(shí)就把CPLD、FPGA 焊接在電路板上,然后在設(shè)計(jì)調(diào)試時(shí)可一次次隨心所欲的改變電路的硬件邏輯關(guān)系,而不用改變電路板的結(jié)構(gòu)。
標(biāo)簽: 單片機(jī) 現(xiàn)場可編程門陣列
上傳時(shí)間: 2013-10-29
上傳用戶:born2007
蟲蟲下載站版權(quán)所有 京ICP備2021023401號-1