單片機基礎(chǔ)第三版 課后答案 李廣弟
標(biāo)簽: 單片機基礎(chǔ)
上傳時間: 2013-11-17
上傳用戶:zhuoying119
STM32控制三軸加速度傳感器實現(xiàn)分析
上傳時間: 2013-11-22
上傳用戶:xja31415
PIC初學(xué)試題三(PIC存儲器習(xí)題)
上傳時間: 2013-10-23
上傳用戶:kytqcool
C語言程序設(shè)計(第三版)-譚浩強
上傳時間: 2014-12-26
上傳用戶:yeling1919
對于瀝青混凝土攤鋪機自動找平控制系統(tǒng)來說,數(shù)字式控制系統(tǒng)的研制是目前的一個方向。介紹了一種基于CAN總線的數(shù)字式自動找平控制系統(tǒng)。該系統(tǒng)以CAN總線作為通信方式,PWM控制信號通過C8051F040單片機內(nèi)部PCA可編程計數(shù)器陣列產(chǎn)生,并具有結(jié)構(gòu)簡單、信號穩(wěn)定、實時性強、易擴展的特點。通過硬件實現(xiàn)和系統(tǒng)運行達到了比較理想的控制效果,驗證了系統(tǒng)的可行性。 Abstract: A digital auto-leveling control system based on CAN Bus is introduced.It uses CAN Bus as the method of communication and creates PWM signals by programmable counter array in C8051F040 microcontroller. The system is simple, stable, real-time and expansive.
標(biāo)簽: CAN 總線 數(shù)字式 控制系統(tǒng)設(shè)計
上傳時間: 2013-10-09
上傳用戶:ligi201200
摘要:采用C51單片機作為三值光計算機編碼器的控制核心,實現(xiàn)了可以長時間穩(wěn)定工作的三值光計算機編碼器模型。C5l單片機主要完成了與上位機通信和控制液晶單元工作的功能。文中從硬件和軟件兩個方面對使用的單片機系統(tǒng)進行了詳細討論,著重介紹了單片機系統(tǒng)中硬件的設(shè)計、實現(xiàn)方法和軟件流程及核心程序段。實驗結(jié)果表明該系統(tǒng)性能穩(wěn)定可靠,目前已在360位的三值邏輯光學(xué)處理器模擬機中使用。關(guān)鍵詞:嵌入式系統(tǒng);單片機控制系統(tǒng);三值光計算機;編碼器
標(biāo)簽: C51 單片機 三值光 中的應(yīng)用
上傳時間: 2013-12-02
上傳用戶:lxm
三菱梯形圖轉(zhuǎn)51單片機軟件使用
上傳時間: 2013-11-04
上傳用戶:離殤
通過結(jié)合51LPC微控制器和BTA2xx三端雙向可控硅Philips半導(dǎo)體使阻性和容性負載的控制更容易這個通用的一對所有控制解決方案覆蓋了低功耗高感性的負載如螺線管閥門和同步電機到以主電壓供電的高功耗阻性負載如電機和電熱器這個兩芯片解決方案性能的核心是檢測負載電流過零的專利技術(shù)使用該技術(shù)不需要在負載電路上連接旁路電阻這樣不但簡化了設(shè)計而且降低了整個系統(tǒng)的成本這個簡單的微控制器三端雙向可控硅的組合向設(shè)計者提供了一個有效可編程的解決方法而且電磁干擾最小最小門脈沖持續(xù)時間的自動應(yīng)用可以實現(xiàn)任何負載下的鎖定由于使用較低的電源電流因此只需要一個阻性或R-C 的主分支電源附加的增值特性可以更容易地實現(xiàn)遙控軟啟動錯誤管理和使用三端雙向可控硅監(jiān)控的負載電流管理將傳感器連接到模擬或數(shù)字輸入也為整個系統(tǒng)提供了智能的閉環(huán)控制
上傳時間: 2013-11-17
上傳用戶:huang111
at91rm9200啟動過程教程 系統(tǒng)上電,檢測BMS,選擇系統(tǒng)的啟動方式,如果BMS為高電平,則系統(tǒng)從片內(nèi)ROM啟動。AT91RM9200的ROM上電后被映射到了0x0和0x100000處,在這兩個地址處都可以訪問到ROM。由于9200的ROM中固化了一個BOOTLOAER程序。所以PC從0X0處開始執(zhí)行這個BOOTLOAER(準(zhǔn)確的說應(yīng)該是一級BOOTLOADER)。這個BOOTLOER依次完成以下步驟: 1、PLL SETUP,設(shè)置PLLB產(chǎn)生48M時鐘頻率提供給USB DEVICE。同時DEBUG USART也被初始化為48M的時鐘頻率; 2、相應(yīng)模式下的堆棧設(shè)置; 3、檢測主時鐘源(Main oscillator); 4、中斷控制器(AIC)的設(shè)置; 5、C 變量的初始化; 6、跳到主函數(shù)。 完成以上步驟后,我們可以認為BOOT過程結(jié)束,接下來的就是LOADER的過程,或者也可以認為是裝載二級BOOTLOER。AT91RM9200按照DATAFLASH、EEPROM、連接在外部總線上的8位并行FLASH的順序依次來找合法的BOOT程序。所謂合法的指的是在這些存儲設(shè)備的開始地址處連續(xù)的存放的32個字節(jié),也就是8條指令必須是跳轉(zhuǎn)指令或者裝載PC的指令,其實這樣規(guī)定就是把這8條指令當(dāng)作是異常向量表來處理。必須注意的是第6條指令要包含將要裝載的映像的大小。關(guān)于如何計算和寫這條指令可以參考用戶手冊。一旦合法的映像找到之后,則BOOT程序會把找到的映像搬到SRAM中去,所以映像的大小是非常有限的,不能超過16K-3K的大小。當(dāng)BOOT程序完成了把合法的映像搬到SRAM的任務(wù)以后,接下來就進行存儲器的REMAP,經(jīng)過REMAP之后,SRAM從映設(shè)前的0X200000地址處被映設(shè)到了0X0地址并且程序從0X0處開始執(zhí)行。而ROM這時只能在0X100000這個地址處看到了。至此9200就算完成了一種形式的啟動過程。如果BOOT程序在以上所列的幾種存儲設(shè)備中找到合法的映像,則自動初始化DEBUG USART口和USB DEVICE口以準(zhǔn)備從外部載入映像。對DEBUG口的初始化包括設(shè)置參數(shù)115200 8 N 1以及運行XMODEM協(xié)議。對USB DEVICE進行初始化以及運行DFU協(xié)議。現(xiàn)在用戶可以從外部(假定為PC平臺)載入你的映像了。在PC平臺下,以WIN2000為例,你可以用超級終端來完成這個功能,但是還是要注意你的映像的大小不能超過13K。一旦正確從外部裝載了映像,接下來的過程就是和前面一樣重映設(shè)然后執(zhí)行映像了。我們上面講了BMS為高電平,AT91RM9200選擇從片內(nèi)的ROM啟動的一個過程。如果BMS為低電平,則AT91RM9200會從片外的FLASH啟動,這時片外的FLASH的起始地址就是0X0了,接下來的過程和片內(nèi)啟動的過程是一樣的,只不過這時就需要自己寫啟動代碼了,至于怎么寫,大致的內(nèi)容和ROM的BOOT差不多,不同的硬件設(shè)計可能有不一樣的地方,但基本的都是一樣的。由于片外FLASH可以設(shè)計的大,所以這里編寫的BOOTLOADER可以一步到位,也就是說不用像片內(nèi)啟動可能需要BOOT好幾級了,目前AT91RM9200上使用較多的bootloer是u-boot,這是一個開放源代碼的軟件,用戶可以自由下載并根據(jù)自己的應(yīng)用配置。總的說來,筆者以為AT91RM9200的啟動過程比較簡單,ATMEL的服務(wù)也不錯,不但提供了片內(nèi)啟動的功能,還提供了UBOOT可供下載。筆者寫了一個BOOTLODER從片外的FLASHA啟動,效果還可以。 uboot結(jié)構(gòu)與使用uboot是一個龐大的公開源碼的軟件。他支持一些系列的arm體系,包含常見的外設(shè)的驅(qū)動,是一個功能強大的板極支持包。其代碼可以 http://sourceforge.net/projects/u-boot下載 在9200上,為了啟動uboot,還有兩個boot軟件包,分別是loader和boot。分別完成從sram和flash中的一級boot。其源碼可以從atmel的官方網(wǎng)站下載。 我們知道,當(dāng)9200系統(tǒng)上電后,如果bms為高電平,則系統(tǒng)從片內(nèi)rom啟動,這時rom中固化的boot程序初始化了debug口并向其發(fā)送'c',這時我們打開超級終端會看到ccccc...。這說明系統(tǒng)已經(jīng)啟動,同時xmodem協(xié)議已經(jīng)啟動,用戶可以通過超級終端下載用戶的bootloader。作為第一步,我們下載loader.bin.loader.bin將被下載到片內(nèi)的sram中。這個loder完成的功能主要是初始化時鐘,sdram和xmodem協(xié)議,為下載和啟動uboot做準(zhǔn)備。當(dāng)下載了loader.bin后,超級終端會繼續(xù)打印:ccccc....。這時我們就可以下在uboot了。uboot將被下載到sdram中的一個地址后并把pc指針調(diào)到此處開始執(zhí)行uboot。接著我們就可以在終端上看到uboot的shell啟動了,提示符uboot>,用戶可以uboot>help 看到命令列表和大概的功能。uboot的命令包含了對內(nèi)存、flash、網(wǎng)絡(luò)、系統(tǒng)啟動等一些命令。 如果系統(tǒng)上電時bms為低電平,則系統(tǒng)從片外的flash啟動。為了從片外的flash啟動uboot,我們必須把boot.bin放到0x0地址出,使得從flash啟動后首先執(zhí)行boot.bin,而要少些boot.bin,就要先完成上面我們講的那些步驟,首先開始從片內(nèi)rom啟動uboot。然后再利用uboot的功能完成把boot.bin和uboot.gz燒寫到flash中的目的,假如我們已經(jī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)先啟動boot,然后解壓縮uboot.gz,然后啟動uboot。注意,這里uboot必須壓縮成.gz文件,否則會出錯。 怎么編譯這三個源碼包呢,首先要建立一個arm的交叉編譯環(huán)境,關(guān)于如何建立,此處不予說明。建立好了以后,分別解壓源碼包,然后修改Makefile中的編譯器項目,正確填寫你的編譯器的所在路徑。 對loader和boot,直接make。對uboot,第一步:make_at91rm9200dk,第二步:make。這樣就會在當(dāng)前目錄下分別生成*.bin文件,對于uboot.bin,我們還要壓縮成.gz文件。 也許有的人對loader和boot搞不清楚為什么要兩個,有什么區(qū)別嗎?首先有區(qū)別,boot主要完成從flash中啟動uboot的功能,他要對uboot的壓縮文件進行解壓,除此之外,他和loader并無大的區(qū)別,你可以把boot理解為在loader的基礎(chǔ)上加入了解壓縮.gz的功能而已。所以這兩個并無多大的本質(zhì)不同,只是他們的使命不同而已。 特別說名的是這三個軟件包都是開放源碼的,所以用戶可以根據(jù)自己的系統(tǒng)的情況修改和配置以及裁減,打造屬于自己系統(tǒng)的bootloder。
上傳時間: 2013-10-27
上傳用戶:wsf950131
多路電壓采集系統(tǒng)一、實驗?zāi)康模保煜た删幊绦酒珹DC0809,8253的工作過程,掌握它們的編程方法。2.加深對所學(xué)知識的理解并學(xué)會應(yīng)用所學(xué)的知識,達到在應(yīng)用中掌握知識的目的。 二、實驗內(nèi)容與要求1.基本要求通過一個A/D轉(zhuǎn)換器循環(huán)采樣4路模擬電壓,每隔一定時間去采樣一次,一次按順序采樣4路信號。A/D轉(zhuǎn)換器芯片AD0809將采樣到的模擬信號轉(zhuǎn)換為數(shù)字信號,轉(zhuǎn)換完成后,CPU讀取數(shù)據(jù)轉(zhuǎn)換結(jié)果,并將結(jié)果送入外設(shè)即CRT/LED顯示,顯示包括電壓路數(shù)和數(shù)據(jù)值。2. 提高要求 (1) 可以實現(xiàn)循環(huán)采集和選擇采集2種方式。(2)在CRT上繪制電壓變化曲線。 三、實驗報告要求 1.設(shè)計目的和內(nèi)容 2.總體設(shè)計 3.硬件設(shè)計:原理圖(接線圖)及簡要說明 4.軟件設(shè)計框圖及程序清單5.設(shè)計結(jié)果和體會(包括遇到的問題及解決的方法) 四、總體設(shè)計設(shè)計思路如下:1) 4路模擬電壓信號通過4個電位器提供0-5V的電壓信號。2) 選擇ADC0809芯片作為A/D轉(zhuǎn)換器,4路輸入信號分別接到ADC0809的IN0—IN4通道,每隔一定的時間采樣一次,采完一路采集下一路,4路電壓循環(huán)采集。3) 利用3個LED數(shù)碼管顯示數(shù)據(jù),1個數(shù)碼管用來顯示輸入電壓路數(shù),3個數(shù)碼管用來顯示電壓采樣值。4) 延時由8253定時/計數(shù)器來實現(xiàn)。 五、硬件電路設(shè)計根據(jù)設(shè)計思路,硬件主要利用了微機實驗平臺上的ADC0809模數(shù)轉(zhuǎn)換器、8253定時/計數(shù)器以及LED顯示輸出等模塊。電路原理圖如下:1.基本接口實驗板部分1) 電位計模塊,4個電位計輸出4路1-5V的電壓信號。2) ADC0809模數(shù)轉(zhuǎn)換器,將4路電壓信號接到IN0-IN3,ADD_A、ADD_B、ADD_C分別接A0、A1、A2,CS_AD接CS0時,4個采樣通道對應(yīng)的地址分別為280H—283H。3) 延時模塊,8253和8255組成延時電路。8255的PA0接到8253的OUT0,程序中查詢計數(shù)是否結(jié)束。硬件電路圖如圖1所示。 圖1 基本實驗板上的電路圖實驗板上的LED顯示部分實驗板上主要用到了LED數(shù)碼管顯示電路,插孔CS1用于數(shù)碼管段碼的輸出選通,插孔CS2用于數(shù)碼管位選信號的輸出選通。電路圖如圖2所示。
上傳時間: 2013-11-06
上傳用戶:sunchao524
蟲蟲下載站版權(quán)所有 京ICP備2021023401號-1