ModelSim具備強(qiáng)大的模擬仿真功能,在設(shè)計(jì)、編譯、仿真、測試、調(diào)試開發(fā)過程中,有一整套工具供你使用,而且操作起來極其靈活,可以通過菜單、快捷鍵和命令行的方式進(jìn)行工作。ModelSim的窗口管理界面讓用戶使用起來很方面,它能很好的與操作系統(tǒng)環(huán)境協(xié)調(diào)工作。ModelSim的一個(gè)很顯著的特點(diǎn)就是它具備命令行的操作方式,類似于一個(gè)shell有很多操作指令供你使用,給人的感覺就像是工作在Unix環(huán)境下,這種命令行操作方式是基于Tcl/Tk的,其功能相當(dāng)強(qiáng)大,這需要在以后的實(shí)際應(yīng)用中慢慢體會(huì)。ModelSim的功
標(biāo)簽: ModelSimSE
上傳時(shí)間: 2013-05-27
上傳用戶:D&L37
ModelSim具備強(qiáng)大的模擬仿真功能,在設(shè)計(jì)、編譯、仿真、測試、調(diào)試開發(fā)過程中,有一整套工具供你使用,而且操作起來極其靈活,可以通過菜單、快捷鍵和命令行的方式進(jìn)行工作。ModelSim的窗口管理界面讓用戶使用起來很方面,它能很好的與操作系統(tǒng)環(huán)境協(xié)調(diào)工作。ModelSim的一個(gè)很顯著的特點(diǎn)就是它具備命令行的操作方式,類似于一個(gè)shell有很多操作指令供你使用,給人的感覺就像是工作在Unix環(huán)境下,這種命令行操作方式是基于Tcl/Tk的,其功能相當(dāng)強(qiáng)大,這需要在以后的實(shí)際應(yīng)用中慢慢體會(huì)。ModelSim的功
標(biāo)簽: ModelSimSE
上傳時(shí)間: 2013-07-28
上傳用戶:dct灬fdc
linux操作系統(tǒng)入門教程, Linux入門教程 shell的入門及提高教程
標(biāo)簽: linux
上傳時(shí)間: 2013-06-15
上傳用戶:集美慧
·本書全面介紹了Linux的編程知識(shí),包括Linux程序的調(diào)試、Shell編程、Linux的內(nèi)存管理、Linux的系統(tǒng)調(diào)用、標(biāo)準(zhǔn)I/O流、進(jìn)程與進(jìn)程調(diào)度、進(jìn)程間通信、信號(hào)編程、Linux多線程編程、網(wǎng)絡(luò)編程、數(shù)據(jù)庫編程、圖形編程等。書中最后還介紹了近年來較為熱門的Linux國際化和本地化程序設(shè)計(jì)。 本書內(nèi)容豐富、深入淺出,每章內(nèi)容都含有大量編程實(shí)例,以加強(qiáng)讀者理解和提供給讀者使用。本書適合希望利用
標(biāo)簽: Linux 應(yīng)用開發(fā)
上傳時(shí)間: 2013-08-05
上傳用戶:ommshaggar
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)該是一級(jí)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)為是裝載二級(jí)BOOTLOER。AT91RM9200按照DATAFLASH、EEPROM、連接在外部總線上的8位并行FLASH的順序依次來找合法的BOOT程序。所謂合法的指的是在這些存儲(chǔ)設(shè)備的開始地址處連續(xù)的存放的32個(gè)字節(jié),也就是8條指令必須是跳轉(zhuǎn)指令或者裝載PC的指令,其實(shí)這樣規(guī)定就是把這8條指令當(dāng)作是異常向量表來處理。必須注意的是第6條指令要包含將要裝載的映像的大小。關(guān)于如何計(jì)算和寫這條指令可以參考用戶手冊。一旦合法的映像找到之后,則BOOT程序會(huì)把找到的映像搬到SRAM中去,所以映像的大小是非常有限的,不能超過16K-3K的大小。當(dāng)BOOT程序完成了把合法的映像搬到SRAM的任務(wù)以后,接下來就進(jìn)行存儲(chǔ)器的REMAP,經(jīng)過REMAP之后,SRAM從映設(shè)前的0X200000地址處被映設(shè)到了0X0地址并且程序從0X0處開始執(zhí)行。而ROM這時(shí)只能在0X100000這個(gè)地址處看到了。至此9200就算完成了一種形式的啟動(dòng)過程。如果BOOT程序在以上所列的幾種存儲(chǔ)設(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平臺(tái))載入你的映像了。在PC平臺(tái)下,以WIN2000為例,你可以用超級(jí)終端來完成這個(gè)功能,但是還是要注意你的映像的大小不能超過13K。一旦正確從外部裝載了映像,接下來的過程就是和前面一樣重映設(shè)然后執(zhí)行映像了。我們上面講了BMS為高電平,AT91RM9200選擇從片內(nèi)的ROM啟動(dòng)的一個(gè)過程。如果BMS為低電平,則AT91RM9200會(huì)從片外的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好幾級(jí)了,目前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中的一級(jí)boot。其源碼可以從atmel的官方網(wǎng)站下載。 我們知道,當(dāng)9200系統(tǒng)上電后,如果bms為高電平,則系統(tǒng)從片內(nèi)rom啟動(dòng),這時(shí)rom中固化的boot程序初始化了debug口并向其發(fā)送'c',這時(shí)我們打開超級(jí)終端會(huì)看到ccccc...。這說明系統(tǒng)已經(jīng)啟動(dòng),同時(shí)xmodem協(xié)議已經(jīng)啟動(dòng),用戶可以通過超級(jí)終端下載用戶的bootloader。作為第一步,我們下載loader.bin.loader.bin將被下載到片內(nèi)的sram中。這個(gè)loder完成的功能主要是初始化時(shí)鐘,sdram和xmodem協(xié)議,為下載和啟動(dòng)uboot做準(zhǔn)備。當(dāng)下載了loader.bin后,超級(jí)終端會(huì)繼續(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文件,否則會(huì)出錯(cuò)。 怎么編譯這三個(gè)源碼包呢,首先要建立一個(gè)arm的交叉編譯環(huán)境,關(guān)于如何建立,此處不予說明。建立好了以后,分別解壓源碼包,然后修改Makefile中的編譯器項(xiàng)目,正確填寫你的編譯器的所在路徑。 對loader和boot,直接make。對uboot,第一步:make_at91rm9200dk,第二步:make。這樣就會(huì)在當(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
The C500 microcontroller family usually provides only one on-chip synchronous serialchannel (SSC). If a second SSC is required, an emulation of the missing interface mayhelp to avoid an external hardware solution with additional electronic components.The solution presented in this paper and in the attached source files emulates the mostimportant SSC functions by using optimized SW routines with a performance up to 25KBaud in Slave Mode with half duplex transmission and an overhead less than 60% atSAB C513 with 12 MHz. Due to the implementation in C this performance is not the limitof the chip. A pure implementation in assembler will result in a strong reduction of theCPU load and therefore increase the maximum speed of the interface. In addition,microcontrollers like the SAB C505 will speed up the interface by a factor of two becauseof an optimized architecture compared with the SAB C513.Moreover, this solution lays stress on using as few on-chip hardware resources aspossible. A more excessive consumption of those resources will result in a highermaximum speed of the emulated interface.Due to the restricted performance of an 8 bit microcontroller a pin compatible solution isprovided only; the internal register based programming interface is replaced by a set ofsubroutine calls.The attached source files also contain a test shell, which demonstrates how to exchangeinformation between an on-chip HW-SSC and the emulated SW-SSC via 5 external wiresin different operation modes. It is based on the SAB C513 (Siemens 8 bit microcontroller).A table with load measurements is presented to give an indication for the fraction of CPUperformance required by software for emulating the SSC.
標(biāo)簽: synchronous Emulating serial
上傳時(shí)間: 2014-01-31
上傳用戶:z1191176801
The solution presented in this paper and in the attached source files emulates the mostimportant SSC functions by using SW routines implemented in C. The code is focused onthe SAB C513, but will fit to all C500 derivatives.Beyond the low level software drivers a test shell is delivered. This shell allows a quicktest of the software drivers by an emulator or a starter kit demo board.
上傳時(shí)間: 2013-11-24
上傳用戶:363186
Shell
標(biāo)簽: Linuxshell 腳本 編寫
上傳時(shí)間: 2013-10-26
上傳用戶:windwolf2000
755頁高清版Linux C編程一站式教程,如果你在做Linux軟件開發(fā),請不要錯(cuò)過。 Makefile,Shell,文件系統(tǒng),I/O,信號(hào),進(jìn)程,線程,TCP/IP,UDP,Socket編程等等內(nèi)容
上傳時(shí)間: 2013-10-23
上傳用戶:lo25643
實(shí)時(shí)操作系統(tǒng),Kernel部分完成于2006年上半年,其IPC部分甚至是年中時(shí)才具備相 應(yīng)的雛形。最開始時(shí)是因?yàn)橐獮榕笥炎鲆粋€(gè)小型的手持設(shè)備,而本人起初又是另一國內(nèi)老牌 實(shí)時(shí)操作系統(tǒng):DOOLOO RTOS開發(fā)人員,但這個(gè)團(tuán)隊(duì)在2005年底已經(jīng)解散。但朋友的系統(tǒng)要 上,用其他小型系統(tǒng)嗎,一不熟悉,二看不上。答應(yīng)朋友的事,總得有解決方法吧,即使是原來 的DOOLOO RTOS,因?yàn)槠浞耉xWorks結(jié)構(gòu),導(dǎo)致它的核心太大,包括太多不必要的東西(一套 完整的libc庫),這些方案都否決了。怎么辦?當(dāng)時(shí)朋友那邊也不算太急,先自己寫一套內(nèi)核吧。 這個(gè)就是源頭!(后來雖然朋友的項(xiàng)目夭折了,但這套OS則保留下來了,并開源了,萬幸) 1 序 3 1.1 RT-Thread誕生 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.2 艱難的發(fā)展期 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.3 一年增加0.0.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 1.4 Cortex-M3的變革 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 1.5 面向?qū)ο笤O(shè)計(jì)方法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 1.6 文檔結(jié)構(gòu) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 2 實(shí)時(shí)系統(tǒng) 7 2.1 嵌入式系統(tǒng) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 2.2 實(shí)時(shí)系統(tǒng) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 2.3 軟實(shí)時(shí)與硬實(shí)時(shí) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 3 快速入門 11 3.1 準(zhǔn)備環(huán)境 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 3.2 初識(shí)RT-Thread . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 3.3 系統(tǒng)啟動(dòng)代碼 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 3.4 用戶入口代碼 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 3.5 跑馬燈的例子 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 3.6 生產(chǎn)者消費(fèi)者問題 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 4 RT-Thread簡介 25 4.1 實(shí)時(shí)內(nèi)核 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 4.2 虛擬文件系統(tǒng) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 4.3 輕型IP協(xié)議棧 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 4.4 shell系統(tǒng) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 4.5 圖形用戶界面 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 4.6 支持的平臺(tái) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 5 內(nèi)核對象模型 29 5.1 C語言的對象化模型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 5.2 內(nèi)核對象模型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 6 線程調(diào)度與管理 39 6.1 實(shí)時(shí)系統(tǒng)的需求 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
標(biāo)簽: RT-Thread 實(shí)時(shí)操作系統(tǒng) 編程指南 版本
上傳時(shí)間: 2013-10-14
上傳用戶:1234321@q
蟲蟲下載站版權(quán)所有 京ICP備2021023401號(hào)-1