嵌入式實(shí)習報告
辛苦的實(shí)習生活在不經(jīng)意間已告一段落了,這段時(shí)間里,一定有很多值得分享的經(jīng)驗吧,不能光會(huì )埋頭苦干哦,寫(xiě)一份實(shí)習報告吧。千萬(wàn)不能認為實(shí)習報告隨便應付就可以,以下是小編為大家收集的嵌入式實(shí)習報告,歡迎大家分享。
嵌入式實(shí)習報告 篇1
一、嵌入式系統開(kāi)發(fā)與應用概述
在今日,嵌入式ARM 技術(shù)已經(jīng)成為了一門(mén)比較熱門(mén)的學(xué)科,無(wú)論是在電子類(lèi)的什么領(lǐng)域,你都可以看到嵌入式ARM 的影子。如果你還停留在單片機級別的學(xué)習,那么實(shí)際上你已經(jīng)落下時(shí)代腳步了,ARM 嵌入式技術(shù)正以幾何的倍數高速發(fā)展,它幾乎滲透到了幾乎你所想到的領(lǐng)域。本章節就是將你領(lǐng)入ARM 的學(xué)習大門(mén),開(kāi)始嵌入式開(kāi)發(fā)之旅。以嵌入式計算機為技術(shù)核心的嵌入式系統是繼網(wǎng)絡(luò )技術(shù)之后,又一個(gè)IT領(lǐng)域新的技術(shù)發(fā)展方向。由于嵌入式系統具有體積小、性能強、功耗低、可靠性高以及面向行業(yè)具體應用等突出特征,目前已經(jīng)廣泛地應用于軍事國防、消費電子、信息家電、網(wǎng)絡(luò )通信、工業(yè)控制等各個(gè)領(lǐng)域。嵌入式的廣泛應用可以說(shuō)是無(wú)所不在。
嵌入式微處理器技術(shù)的基礎是通用計算機技術(shù),F在許多嵌入式處理器也是從早期的PC機的應用發(fā)展演化過(guò)來(lái)的,如早期PC 諸如TRS-80、Apple II 和所用的Z80和6502處理器,至今仍為低端的嵌入式應用。在應用中,嵌入式微處理器具有體積小、重量輕、成本低、可靠性高的優(yōu)點(diǎn)。嵌入式處理器目前主要有Am186/88、386EX、SC-400、Power PC、68000、MIPS、ARM等系列。
在早期實(shí)際的嵌入式應用中,芯片選擇時(shí)往往以某一種微處理器內核為核心,在芯片內部集成必要的ROM/EPROM/Flash/EEPROM、SRAM、接口總線(xiàn)及總線(xiàn)控制邏輯、定時(shí)/計數器、WatchDog、I/O、串行口、脈寬調制輸出、A/D、D/A 等各種必要的功能和外設。
二、實(shí)習設備
硬件:Embest EduKit-IV實(shí)驗平臺、ULINK2仿真器套件、PC機
軟件:mu;Vision IDE for ARM集成開(kāi)發(fā)環(huán)境、Windows 98/2000/NT/XP
三、實(shí)習目的
1.初步掌握液晶屏的使用及其電路設計方法;掌握S3C2410X處理器的LCD控制器的使用;掌握通過(guò)任務(wù)調用的方法把液晶顯示函數添加到uC/OS-II中;通過(guò)實(shí)驗掌握液晶顯示文本及圖形的方法與程序設計。
2.了解S3C2410X處理器UART相關(guān)控制寄存器的使用;熟悉ARM處理器系統硬件電路中UART接口的設計方法:掌握ARM處理器串行通信的軟件編程方法。
3.掌握有關(guān)音頻處理的基礎知識;通過(guò)實(shí)驗了解IIS音頻接口的工作原理;通過(guò)實(shí)驗掌握對處理器S3C2410X中IIS模塊電路的控制方法;通過(guò)實(shí)驗掌握對常用IIS接口音頻芯片的控制方法。
4.了解mu;C/OS-II移植條件和內核基本結構;掌握將mu;C/OS-II內核移植到ARM9處理器上的方法和步驟。
四、實(shí)習要求
通過(guò)對mu;C/OS-II移植實(shí)驗、mu;C/OS-II LCD顯示實(shí)驗、串口通信實(shí)驗、IIS音頻實(shí)驗、液晶顯示實(shí)驗的學(xué)習,并將各部分內容合并,最終得出實(shí)習結果,實(shí)習要求在鍵盤(pán)上輸入學(xué)號,在液晶顯示屏上顯示相應的學(xué)生信息。學(xué)生信息包括顯示每個(gè)人的照片和姓名系別等,并用鍵控設置學(xué)生輸出的順序,輸入學(xué)號就顯示那個(gè)學(xué)生的信息,然后過(guò)一段時(shí)間就順序循環(huán)播放。
移植mu;C/OS-II內核到ARM處理器S3C2410,在IDE中觀(guān)察其運行狀況編寫(xiě)S3C2410X處理器的串口通信程序;監視串行口UART1動(dòng)作;將從UART1接收到的字符串回送顯示。將從UART1接收到的字符串回送顯示。
通過(guò)使用Embest EduKit-IV實(shí)驗板的彩色液晶屏(800x480)進(jìn)行電路設計,掌握液晶屏作為人機接口界面的設計方法,并編寫(xiě)任務(wù)函數在uC/OS-II系統中實(shí)現位圖顯示。在uC/OS-II中建立五個(gè)任務(wù)Tast1和Tast2,其中Tast1順序熄滅四個(gè)LED,延遲一會(huì )在順序點(diǎn)亮四個(gè)LED。Tast2在LCD屏幕上循環(huán)顯示三幅圖片,并打印一些文字信息和背景音樂(lè )。過(guò)使用Embest EduKit-III實(shí)驗板的256 色彩色液晶屏(320x240)進(jìn)行電路設計,掌握液晶屏作為人機接口界面的設計方法,并編寫(xiě)程序實(shí)現:畫(huà)出多個(gè)矩形框;顯示ASCII字符;顯示漢字字符;顯示彩色位圖。
五、實(shí)習步驟
1.準備實(shí)驗環(huán)境
使用ULINK2仿真器連接Embest EduKit-IV實(shí)驗平臺的主板JTAG接口;使用Embest EduKit-IV實(shí)驗平臺附帶的交叉串口線(xiàn),連接實(shí)驗平臺主板上的COM2和PC機的串口(一般PC只有一個(gè)串口,如果有多個(gè)請自行選擇,筆記本沒(méi)有串口設備的可購買(mǎi)USB轉串口適配器擴充);使用Embest EduKit-IV實(shí)驗平臺附帶的電源適配器,連接實(shí)驗平臺主板上的電源接口。
2.串口接收設置
在PC機上運行windows自帶的超級終端串口通信程序,或者使用實(shí)驗平臺附帶光盤(pán)內設置好了的超級終端,設置超級終端:波特率115200、1位停止位、無(wú)校驗位、無(wú)硬件流控制,或者使用其它串口通信程序。(注:超級終端串口的選擇根據用戶(hù)的PC串口硬件不同,請自行選擇,如果PC機只有一個(gè)串口,一般是COM1)
3.打開(kāi)實(shí)驗例程
1)打開(kāi)實(shí)驗程序
2)運行mu;Vision IDE for ARM軟件
3)默認打開(kāi)的工程在源碼編輯窗口會(huì )顯示實(shí)驗例程的說(shuō)明文件readme.txt,詳細閱讀并理解實(shí)驗內容。
4)工程提供了兩種運行方式:一是下載到SDRAM中調試運行,二是固化到Nor Flash中運行。用戶(hù)可以在工具欄Select Target下拉框中選擇在RAM中調試運行還是固化Flash中運行。下面實(shí)驗將介紹下載到SDRAM中調試運行,所以我們在Select Target下拉框中選擇UART_Test IN RAM。
5)接下來(lái)開(kāi)始編譯鏈接工程,在菜單欄“Projiet”選擇“Build target”或者“Rebuild all target files”編譯整個(gè)工程。
6編譯完成后,在輸出窗口可以看到編譯提示信息,比如“".SDRAMUART_Test.axf" - 0 Error(s), 1 Warning(s).”,如果顯示“0 Error(s)”即表示編譯成功。
7)撥動(dòng)實(shí)驗平臺電源開(kāi)關(guān),給實(shí)驗平臺上電,單擊菜單欄Debug->Start/Stop Debug Session項將編譯出來(lái)的映像文件下載到SDRAM中,或者單擊工具欄“”按鈕來(lái)下載。
8)下載完成后,單擊菜單欄Debug->Run項運行程序,或者單擊工具欄“”按鈕來(lái)全速運行程序。用戶(hù)也可以使用進(jìn)行單步調試程序。
9)全速運行后,用戶(hù)可以在超級終端看到程序運行的信息。
10)用戶(hù)可以Stop程序運行,使用mu;Vision IDE for ARM的一些調試窗口跟蹤查看程序運行的信息。注:如果在第4)步用戶(hù)選擇在Flash中運行,則編譯鏈接成功后,單擊菜單欄Flash->Download項將程序固化到NorFlash中,從實(shí)驗平臺的主板拔出JTAG線(xiàn),給實(shí)驗平臺重新上電,程序將自動(dòng)運行。
部分程序圖:
串口通信實(shí)驗:
IIS音頻實(shí)驗:
六、實(shí)習體會(huì )
在嵌入式系統中,除了課本上的基礎知識外,還學(xué)會(huì )了軟件編程的基本思路,掌握了液晶屏的使用及其電路設計方法;掌握有關(guān)音頻處理的基礎知識;掌握液晶顯示文本及圖形的方法與程序設計。
通過(guò)這次設計,掌握了液晶顯示實(shí)驗、mu;C/OS-II移植、mu;C/OS-IILCD顯示的工作原理及串口通信實(shí)驗的工作過(guò)程,學(xué)會(huì )了使用仿真軟件Embest EduKit-IV實(shí)驗平臺及ULINK2仿真器套件,并學(xué)會(huì )通過(guò)應用軟件仿真來(lái)實(shí)現各種通信系統的設計,對以后的學(xué)習和工作都起到了一定的作用,加強了動(dòng)手能力和學(xué)業(yè)技能。雖然花了很長(cháng)時(shí)間編寫(xiě)軟件程序設計,但這一切還是理論上的。希望學(xué)校能提供機會(huì )和條件,讓我們能夠去真正地將理論和實(shí)踐相結合。通過(guò)這次程序,感覺(jué)自己所掌握的知識是那么的有限,還有許多需要改進(jìn)和不足的地方,同時(shí)也幫助了我怎樣學(xué)好這門(mén)課程,增加了我對這門(mén)學(xué)科的興趣?傮w來(lái)說(shuō),這次實(shí)習我受益匪淺。在摸索該如何設計電路使之實(shí)現所需功能的過(guò)程中特別有趣,培養了我的設計思維,增加了實(shí)際操作能力。在讓我體會(huì )到了設計電路的艱辛的同時(shí),更讓我體會(huì )到成功的喜悅和快樂(lè )。通過(guò)這次實(shí)習通信系統的設計,使我更加清楚以后的發(fā)展及學(xué)習的方向。
最后感謝老師這個(gè)學(xué)期的指導和幫助!
七、參考文獻
《ARM9嵌入式系統設計與開(kāi)發(fā)應用》熊茂華、楊震倫編著(zhù) 清華大學(xué)出版社
《ARM9嵌入式系統設計與開(kāi)發(fā)教程》于明編著(zhù) 電子工業(yè)出版社
《Linux嵌入式系統教程》馬忠梅 北京航空航天大學(xué)出版社
嵌入式實(shí)習報告 篇2
藍牙技術(shù)概述
藍牙(Bluetooth)是目前比較流行的一種短距離無(wú)線(xiàn)通訊技術(shù),其主要目的就是要在全世界范圍內建立一個(gè)短距離的無(wú)線(xiàn)通信標準。設計者的初衷是用隱形的連接線(xiàn)代替線(xiàn)纜。它取代目前多種電纜連接方案,通過(guò)統一的短程無(wú)線(xiàn)鏈路,在各信息設備之間可以穿過(guò)墻壁或公文包,實(shí)現方便快捷、靈活安全、低成本小功耗的話(huà)音和數據通信!八{牙”技術(shù)的目的是使特定的移動(dòng)電話(huà)、便攜式電腦以及各種便攜式通信設備的主機之間在近距離內實(shí)現無(wú)縫的資源共享。
一、實(shí)踐目的
了解處理器的發(fā)展
掌握WinCE嵌入式系統開(kāi)發(fā)方法和開(kāi)發(fā)流程。
掌握WinCE嵌入式C#編程方法。
掌握WinCE嵌入式網(wǎng)絡(luò )通信技術(shù)。
掌握Bluetooth編碼技術(shù)
二、實(shí)踐要求
1.了解WinCE操作系統的裁剪及定制;
2.設計藍牙廣播系統(包括服務(wù)器端和客戶(hù)端);
3.設計藍牙文件傳輸系統(包括服務(wù)器端和客戶(hù)端);
4.應用程序安裝和部署。
三、實(shí)踐內容
。1)了解Wince平臺
了解處理器的發(fā)展,什么是嵌入系統,嵌入式系統的應用,以及窗體與控件的概念,掌握WinCE嵌入式C#編程方法,對實(shí)驗平臺有一定的認識,更進(jìn)一步的認識藍牙。了解編寫(xiě)應用程序的流程,理解了Windows 窗體,學(xué)會(huì )了使用基本控件如標簽、文本、按鈕、列表框和組合框,掌握窗體的常用屬性和方法。
(2)藍牙搜索、瀏覽與發(fā)送,藍牙設備列表,配對設備清空,刪除。
四、原理介紹
1.嵌入式系統:
嵌入式系統是以應用為中心,以計算機技術(shù)為基礎,并且軟硬件可裁剪,適用于應用系統對功能、可靠性、成本、體積、功耗有嚴格要求的專(zhuān)用計算機系統。
一般由硬件設備、嵌入式操作系統、嵌入式應用軟件組成。具有專(zhuān)用性、高效簡(jiǎn)潔性、高可靠和低能耗性、自身特殊性的特點(diǎn)。
嵌入式實(shí)習報告 篇3
ARM嵌入式系統綜合設計
一、實(shí)習時(shí)間和地點(diǎn)安排
1、實(shí)習時(shí)間:20XX年12月03日——20XX年12月14日,共兩周的時(shí)間。
2、每天的實(shí)習時(shí)間安排:
上午:8:30——11:30
下午:13:30——15:30
3、實(shí)習地點(diǎn):校內。
二、實(shí)習目的
1、掌握電子元器件的焊接原理和方法。
2、掌握ARM7 LPC2132控制程序的編寫(xiě)方法。
3、掌握調試軟件和硬件的方法。
三、實(shí)習內容與要求
1、根據設計要求焊接好電路板并測試焊接無(wú)誤。
2、繪制流程圖并編寫(xiě)程序。
3、編譯通過(guò)后,將程序下載到LPC2132進(jìn)行調試。
4、調試成功后編寫(xiě)實(shí)習報告。
四、LPC2132芯片介紹
LPC2132最小系統圖及其介紹
概述
LPC2132是基于一個(gè)支持實(shí)時(shí)仿真和嵌入式跟蹤的32/16 位 ARM7TDMI-STM CPU 的微控制器,并帶有 32kB、64kB、512 kB 的嵌入的高速Flash 存儲器。128 位寬度的存儲器接口和獨特的加速結構使 32 位代碼能夠在最大時(shí)鐘速率下運行。對代碼規模有嚴格控制的應用可使用 16 位 Thumb?
模式將代碼規模降低超過(guò) 30%,而性能的損失卻很小。
較小的封裝和極低的功耗使 LPC2131/2132/2138 可理想地用于小型系統中,如訪(fǎng)問(wèn)控制和 POS 機。寬范圍的串行通信接口和片內 8/16/32kB 的 SRAM 使 LPC2131/2132/2138 非常適用于通信網(wǎng)關(guān)、協(xié)議轉換器、軟 modem 、聲音辨別和低端成像,為它們提供巨大的緩沖區空間和強大的處理功能。多個(gè) 32 位定時(shí)器、1 個(gè)或 2 個(gè) 10 位 8 路 ADC 、10 位 DAC 、PWM 通道和 47 個(gè) GPIO 以及多達9 個(gè)邊沿或電平觸發(fā)的外部中斷使它們特別適用于工業(yè)控制和醫療系統。
特性
1、小型 LQFP64 封裝的 16/32 位 ARM7TDMI-S 微控制器。
2、8/16/32kB 片內靜態(tài) RAM 。
3、片內 Boot 裝載軟件實(shí)現在系統/在應用中編程(ISP/IAP )。扇區擦除或整片擦除的時(shí)間為400ms ,1ms 可編程 256 字節。
4、EmbeddedICE?RT 和嵌入式跟蹤接口可實(shí)時(shí)調試(利用片內 RealMonitor軟件)和高速跟蹤執行代碼。
5、1 個(gè)(LPC2132/2132 )或2 個(gè)(LPC2138 )8 路 10 位 A/D 轉換器共包含 16 個(gè)模擬輸入,每個(gè)通道的轉換時(shí)間低至 2.44us 。
6、1 個(gè) 10 位 D/A 轉換器,可提供不同的模擬輸出(LPC2132/2138 )。
7、 2 個(gè) 32 位定時(shí)器/計數器(帶 4 路捕獲和 4 路比較通道)、PWM 單元(6 路輸出)和看門(mén)狗。
8、實(shí)時(shí)時(shí)鐘具有獨立的電源和時(shí)鐘源,在節電模式下極大地降低了功耗。
9、多個(gè)串行接口,包括 2 個(gè) 16C550 工業(yè)標準 UART 、2 個(gè)高速 I2C 接口(400 kbit/s )、SPITM 和 SSP(具有緩沖功能,數據長(cháng)度可變)。
10、向量中斷控制器?膳渲脙(yōu)先級和向量地址。
11、多達 47 個(gè) 5V 的通用I/O 口(LQFP64 封裝)。
12、 9 個(gè)邊沿或電平觸發(fā)的外部中斷引腳。
13、 通過(guò)片內 PLL 可實(shí)現最大為 60MHz 的 CPU 操作頻率,PLL 的穩定時(shí)間為 100us。
14、片內晶振頻率范圍:1~30 MHz。
15、2 個(gè)低功耗模式:空閑和掉電。
16、可通過(guò)個(gè)別使能/禁止外部功能和降低外部時(shí)鐘來(lái)優(yōu)化功耗。
17、通過(guò)外部中斷將處理器從掉電模式中喚醒。
18、單個(gè)電源供電,含有上電復位(POR )和掉電檢測(BOD )電路:-CPU
操作電壓范圍:3.0~3.6 V (3.3 V+/ - 10%) ,I/O 口可承受5V 的最大電壓。
結構概述
LPC2132包含一個(gè)支持仿真的 ARM7TDMI-S CPU 、與片內存儲器控制器接口的 ARM7 局部總線(xiàn)、與中斷控制器接口的 AMBA 高性能總線(xiàn) (AHB )和連接片內外設功能的 VLSI 外設總線(xiàn) (VPB ,ARM AMBA 總線(xiàn)的兼容超集)。
LPC2131/2132/2138 將 ARM7TDMI-S 配置為小端(little-endian )字節順序。 AHB 外設分配了 2M 字節的地址范圍,它位于 4G 字節 ARM 存儲器空間的最頂端。每個(gè) AHB 外設都 分配了 16k 字節的地址空間。LPC2131/2132/2138 的外設功能 (中斷控制器除外)都連接到 VPB 總線(xiàn)。AHB 到 VPB 的橋將 VPB 總線(xiàn)與 AHB 總線(xiàn)相連。VPB 外設也分配了 2M 字節的地址范圍,從 3.5GB 地址點(diǎn)開(kāi)始。每個(gè) VPB 外設在 VPB 地址空間內都分配了 16k 字節地址空間。
片內外設與器件管腳的連接由管腳連接模塊控制。該模塊必須由軟件進(jìn)行控制以符合外設功能與管腳在特定應用中的需求。
ARM7TDMI-S 處理器
ARM7TDMI-S 是通用的 32 位微處理器,它具有高性能和低功耗的特性。ARM 結構是基于精簡(jiǎn)指令集 計算機(RISC)原理而設計的。指令集和相關(guān)的譯碼機制比復雜指令集計算機要簡(jiǎn)單得多。這樣使用一個(gè)小的、廉價(jià)的處理器核就可實(shí)現很高的指令吞吐量和實(shí)時(shí)的中斷響應。
由于使用了流水線(xiàn)技術(shù),處理和存儲系統的.所有部分都可連續工作。通常在執行一條指令的同時(shí)對下 ,一條指令進(jìn)行譯碼,并將第三條指令從存儲器中取出。
ARM7TDMI-S 處理器使用了一個(gè)被稱(chēng)為 THUMB 的獨特結構化策略,它非常適用于那些對存儲器有限制或者需要較高代碼密度的大批量產(chǎn)品的應用。
在 THUMB 后面一個(gè)關(guān)鍵的概念是“超精簡(jiǎn)指令集”;旧,ARM7TDMI-S 處理器具有兩個(gè)指令集:標準 32 位 ARM 指令集 、16 位 THUMB 指令集THUMB 指令集的 16 位指令長(cháng)度使其可以達到標準 ARM 代碼兩倍的密度,卻仍然保持 ARM 的大多 數性能上的優(yōu)勢,這些優(yōu)勢是使用 16 位寄存器的 16 位處理器所不具備的。因為 THUMB 代碼和 ARM 代碼一樣,在相同的 32 位寄存器上進(jìn)行操作。THUMB 代碼僅為 ARM 代碼規模的 65%,但其性能卻相當于連接到 16 位存儲器系統的相同 ARM 處理器性能的 160%。
片內 FLASH 程序存儲器
LPC2131/2132/2138 分別含有 32kB、64kB 和 512kB 的FLASH 存儲器系統。該存儲器可用作代碼和數據的存儲。對 FLASH 存儲器的編程可通過(guò)幾種方法來(lái)實(shí)現:通過(guò)內置的串行 JTAG 接口,通過(guò)在系統編程(ISP )和 UART0 ,或通過(guò)在應用編程(IAP )。使用在應用編程的應用程序也可以在應用程序運行時(shí)對FLAH 進(jìn)行擦除和/ 或編程,這樣就為數據存儲和現場(chǎng)固件的升級都帶來(lái)了極大的靈活性。如果LPC2131/2132/2138 使用了片內引導裝載程序(bootloader ),32/64/512kB 的 Flash 存儲器就可用來(lái)存放用戶(hù)代碼。 LPC2131/2132/2138 的Flash 存儲器至少可擦除/編程 10,000 次,保存數據的時(shí)間長(cháng)達 10 年。 片內靜態(tài) RAM,片內靜態(tài) RAM (SRAM )可用作代碼和/ 或數據的存儲,支持 8位、16 位和32 位的訪(fǎng)問(wèn)。LPC2131/2132/2138 含有 8/16/32kB 的靜態(tài)RAM 。 LPC2131/2132/2138 SRAM 是一個(gè)字節尋址的存儲器。對存儲器進(jìn)行字和半字訪(fǎng)問(wèn)時(shí)將忽略地址對準,訪(fǎng)問(wèn)被尋址的自然對準值(因此,對存儲器進(jìn)行字訪(fǎng)問(wèn)時(shí)將忽略地址位 0 和 1,半字訪(fǎng)問(wèn)時(shí)將忽略地址位 0 )。因此,有效的讀寫(xiě)操作要求半字數據訪(fǎng)問(wèn)的地址線(xiàn)0 為 0(地址以0、2 、4 、6、8、A 、C 和 E 結尾),字 數據訪(fǎng)問(wèn)的地址線(xiàn) 0 和 1 都為 0 (地址以0、4 、8 和 C 結尾)。該原則同樣用于片外和片內存儲器。SRAM 控制器包含一個(gè)回寫(xiě)緩沖區,它用于防止 CPU 在連續的寫(xiě)操作時(shí)停止運行;貙(xiě)緩沖區總是保存著(zhù)軟件發(fā)送到 SRAM的最后一個(gè)字節。該數據只有在軟件請求下一次寫(xiě)操作時(shí)才寫(xiě)入 SRAM (數據只有 在軟件執行另外一次寫(xiě)操作時(shí)被寫(xiě)入 SRAM)。如果發(fā)生芯片復位,實(shí)際的SRAM 內容將不會(huì )反映最近一 次的寫(xiě)請求(即:在一次“熱”芯片復位后,SRAM 不會(huì )反映最后一次寫(xiě)入的內容)。任何在復位后檢查 SRAM 內容的程序都必須注意這一點(diǎn)。通過(guò)對一個(gè)單元執行兩次相同的寫(xiě)操作可保證復位后數據的寫(xiě)入;蛘,也可通過(guò)在進(jìn)入空閑或掉電模式前執行虛寫(xiě)(dummy write )操作來(lái)保證最后的數據在復位后被真正寫(xiě)入SRAM。
嵌入式實(shí)習報告 篇4
一、嵌入式的概述:
隨著(zhù)信息化技術(shù)的發(fā)展和數字化產(chǎn)品的普及,以計算機技術(shù)、芯片技術(shù)和軟件技術(shù)為核心的嵌入式系統再度成為當前研究和應用的熱點(diǎn),通信、計算機、消費電子技術(shù)(3C)合一的趨勢正在逐步形成,無(wú)所不在的網(wǎng)絡(luò )和無(wú)所不在的計算(everything connecting, everywhere computing)正在將人類(lèi)帶入一個(gè)嶄新的信息社會(huì )。
二、實(shí)習目的
學(xué)習和了解了嵌入式在生活中的重要作用和發(fā)展過(guò)程,熟練掌握ARM硬件體系結構,熟悉linux下的嵌入式編程流程,積累自己的軟件編寫(xiě)經(jīng)驗,能夠參與并實(shí)現一個(gè)真實(shí)和完整的嵌入式項目,為今后的學(xué)習和將從事的技術(shù)工作打下堅實(shí)的基礎。
三、實(shí)習任務(wù)
第一階段Linux操作和編程基礎
主要介紹Linux的基本命令和基礎編程知識,包括Linux的文件操作和目錄操作命令,VI編輯器,GCC編譯器,GDB調試器和Make項目管理工具等知識。
第二階段 嵌入式C語(yǔ)言編程基礎
主要介紹在嵌入式開(kāi)發(fā)編程中C語(yǔ)言的重要概念和編程技巧中的重點(diǎn)難點(diǎn),以復習串講和實(shí)例分析的形式,重點(diǎn)介紹包括函數與程序結構,指針、數組和鏈表,庫函數的使用等知識。
第三階段Linux上C強化編程訓練
主要包括整數算法訓練,遞歸和棧編程訓練,位操作訓練,指針訓練,字符串訓練和常用C庫函數編程接口實(shí)踐,強化學(xué)員對Linux下基本編程開(kāi)發(fā)的理解和編碼調試的能力。
第四階段 Linux環(huán)境高級編程及項目開(kāi)發(fā)編程實(shí)踐
主要包括系統編程(信號/系統調用/管道/FIFO/消息隊列/共享內存等),文件I/O編程(文件描述符/文件讀寫(xiě)接口/原子操作/阻塞與非阻塞IO等,多任務(wù)和多線(xiàn)程編程(進(jìn)程標識/ 用戶(hù)標識/fork與vfork/多線(xiàn)程概念/線(xiàn)程同步等),網(wǎng)絡(luò )編程(網(wǎng)絡(luò )基本概念/套接口編程/網(wǎng)絡(luò )字節次序/Client/Server結構/UDP編程);掌握Linux下Socket編程的開(kāi)發(fā)流程,熟悉網(wǎng)絡(luò )編程的調用接口函數和相關(guān)數據結構,使學(xué)員初步具備在Linux上進(jìn)行系統編程開(kāi)發(fā)的能力。同時(shí)綜合之前所學(xué)內容和編程技術(shù),以小組為單位進(jìn)行一個(gè)團隊合作項目的開(kāi)發(fā),考核內容包括文件I/O編程,多線(xiàn)程編程,網(wǎng)絡(luò )編程和項目文檔編寫(xiě)。
第五階段 嵌入式處理器體系結構及編程實(shí)踐
主要介紹ARM體系結構及其基本編程知識,包括指令分類(lèi),尋址方式、指令集、存儲系統、異常中斷處理、匯編語(yǔ)言以及CC++和匯編語(yǔ)言的混合編程等知識。同時(shí)結合ARM嵌入式開(kāi)發(fā)板硬件設計原理和基本硬件設計流程,分析各種外設的工作原理和驅動(dòng)機制,并自己動(dòng)手實(shí)踐完成一個(gè)ARM開(kāi)發(fā)板上的編程大作業(yè)。
第六階段 嵌入式Linux開(kāi)發(fā)基礎及高級應用
主要介紹嵌入式Linux開(kāi)發(fā)應用程序的基本流程和知識,包括嵌入式Linux基本概念和開(kāi)發(fā)流程、Bootloader工作原理、內核裁減配置和交叉編譯、根文件系統制作、網(wǎng)絡(luò )編程以及圖形界面和數據庫開(kāi)發(fā)等知識。同時(shí)獨立完成一個(gè)基于嵌入式Linux GUI的應用編程大作業(yè)。
第七階段 嵌入式 Linux驅動(dòng)理論及驅動(dòng)程序開(kāi)發(fā)實(shí)踐
主要介紹嵌入式Linux上驅動(dòng)程序開(kāi)發(fā)規范,包括設備驅動(dòng)程序概念、字符設備驅動(dòng)程序、塊設備與網(wǎng)絡(luò )設備、網(wǎng)卡驅動(dòng)以及常用嵌入式設備驅動(dòng)開(kāi)發(fā)等知識。同時(shí)獨立實(shí)現兩種嵌入式設備驅動(dòng)程序的編寫(xiě),包括驅動(dòng)模塊的調試和加載以及完整的項目開(kāi)發(fā)文檔的編寫(xiě)。
第八階段 嵌入式Linux項目團隊開(kāi)發(fā)實(shí)踐鍛煉
主要包括設計并實(shí)現一個(gè)真實(shí)和完整的嵌入式項目的開(kāi)發(fā)流程,涉及到數據采集、網(wǎng)絡(luò )通訊、圖形用戶(hù)界面顯示以及嵌入式數據庫存儲系統等多種嵌入式Linux編程技術(shù)。要求學(xué)員建立起團隊開(kāi)發(fā)和協(xié)同工作的企業(yè)項目開(kāi)發(fā)模式的概念和流程,強化學(xué)員對編寫(xiě)項目概要設計文檔和詳細設計文檔的理解,為就業(yè)前的職業(yè)技能和素質(zhì)訓練做好充分準備。
四、實(shí)習內容
1.嵌入式的歷史與現狀
雖然嵌入式系統是近幾年才開(kāi)始真正風(fēng)靡起來(lái)的,但事實(shí)上嵌入式這個(gè)概念卻很早就已經(jīng)存在了,從上個(gè)世紀70年代單片機的出現到今天各種嵌入式微處理器、微控制器的廣泛應用,嵌入式系統少說(shuō)也有了近30年的歷史?v觀(guān)嵌入式系統的發(fā)展歷程,大致經(jīng)歷了以下四個(gè)階段:
無(wú)操作系統階段
嵌入式系統最初的應用是基于單片機的,大多以可編程控制器的形式出現,具有監測、伺服、設備指示等功能,通常應用于各類(lèi)工業(yè)控制和飛機、導彈等武器裝備中,一般沒(méi)有操作系統的支持,只能通過(guò)匯編語(yǔ)言對系統進(jìn)行直接控制,運行結束后再清除內存。這些裝置雖然已經(jīng)初步具備了嵌入式的應用特點(diǎn),但僅僅只是使用8位的CPU芯片來(lái)執行一些單線(xiàn)程的程序,因此嚴格地說(shuō)還談不上"系統"的概念。
這一階段嵌入式系統的主要特點(diǎn)是:系統結構和功能相對單一,處理效率較低,存儲容量較小,幾乎沒(méi)有用戶(hù)接口。由于這種嵌入式系統使用簡(jiǎn)便、價(jià)格低廉,因而曾經(jīng)在工業(yè)控制領(lǐng)域中得到了非常廣泛的應用,但卻無(wú)法滿(mǎn)足現今對執行效率、存儲容量都有較高要求的信息家電等場(chǎng)合的需要。
簡(jiǎn)單操作系統階段
20世紀80年代,隨著(zhù)微電子工藝水平的提高,IC制造商開(kāi)始把嵌入式應用中所需要的微處理器、I/O接口、串行接口以及RAM、ROM等部件統統集成到一片VLSI中,制造出面向I/O設計的微控制器,并一舉成為嵌入式系統領(lǐng)域中異軍突起的新秀。與此同時(shí),嵌入式系統的程序員也開(kāi)始基于一些簡(jiǎn)單的"操作系統"開(kāi)發(fā)嵌入式應用軟件,大大縮短了開(kāi)發(fā)周期、提高了開(kāi)發(fā)效率。這一階段嵌入式系統的主要特點(diǎn)是:出現了大量高可靠、低功耗的嵌入式CPU(如Power PC等),各種簡(jiǎn)單的嵌入式操作系統開(kāi)始出現并得到迅速發(fā)展。此時(shí)的嵌入式操作系統雖然還比較簡(jiǎn)單,但已經(jīng)初步具有了一定的兼容性和擴展性,內核精巧且效率高,主要用來(lái)控制系統負載以及監控應用程序的運行。
實(shí)時(shí)操作系統階段
20世紀90年代,在分布控制、柔性制造、數字化通信和信息家電等巨大需求的牽引下,嵌入式系統進(jìn)一步飛速發(fā)展,而面向實(shí)時(shí)信號處理算法的DSP產(chǎn)品則向著(zhù)高速度、高精度、低功耗的方向發(fā)展。隨著(zhù)硬件實(shí)時(shí)性要求的提高,嵌入式系統的軟件規模也不斷擴大,逐漸形成了實(shí)時(shí)多任務(wù)操作系統(RTOS),并開(kāi)始成為嵌入式系統的主流。
這一階段嵌入式系統的主要特點(diǎn)是:操作系統的實(shí)時(shí)性得到了很大改善,已經(jīng)能夠運行在各種不同類(lèi)型的微處理器上,具有高度的模塊化和擴展性。此時(shí)的嵌入式操作系統已經(jīng)具備了文件和目錄管理、設備管理、多任務(wù)、網(wǎng)絡(luò )、圖形用戶(hù)界面(GUI)等功能,并提供了大量的應用程序接口(API),從而使得應用軟件的開(kāi)發(fā)變得更加簡(jiǎn)單。
面向Internet階段
21世紀無(wú)疑將是一個(gè)網(wǎng)絡(luò )的時(shí)代,將嵌入式系統應用到各種網(wǎng)絡(luò )環(huán)境中去的呼聲自然也越來(lái)越高。目前大多數嵌入式系統還孤立于Internet之外,隨著(zhù)Internet的進(jìn)一步發(fā)展,以及Internet技術(shù)與信息家電、工業(yè)控制技術(shù)等的結合日益緊密,嵌入式設備與Internet的結合才是嵌入式技術(shù)的真正未來(lái)。
信息時(shí)代和數字時(shí)代的到來(lái),為嵌入式系統的發(fā)展帶來(lái)了巨大的機遇,同時(shí)也對嵌入式系統廠(chǎng)商提出了新的挑戰。目前,嵌入式技術(shù)與Internet技術(shù)的結合正在推動(dòng)著(zhù)嵌入式技術(shù)的飛速發(fā)展,嵌入式系統的研究和應用產(chǎn)生了如下新的顯著(zhù)變化:
1.新的微處理器層出不窮,嵌入式操作系統自身結構的設計更加便于移植,能夠在短時(shí)間內支持更多的微處理器。
2.嵌入式系統的開(kāi)發(fā)成了一項系統工程,開(kāi)發(fā)廠(chǎng)商不僅要提供嵌入式軟硬件系統本身,同時(shí)還要提供強大的硬件開(kāi)發(fā)工具和軟件支持包。
3.通用計算機上使用的新技術(shù)、新觀(guān)念開(kāi)始逐步移植到嵌入式系統中,如嵌入式數據庫、移動(dòng)代理、實(shí)時(shí)CORBA等,嵌入式軟件平臺得到進(jìn)一步完善。
4.各類(lèi)嵌入式Linux操作系統迅速發(fā)展,由于具有源代碼開(kāi)放、系統內核小、執行效率高、網(wǎng)絡(luò )結構完整等特點(diǎn),很適合信息家電等嵌入式系統的需要,目前已經(jīng)形成了能與Windows CE、Palm OS等嵌入式操作系統進(jìn)行有力競爭的局面。
5.網(wǎng)絡(luò )化、信息化的要求隨著(zhù)Internet技術(shù)的成熟和帶寬的提高而日益突出,以往功能單一的設備如電話(huà)、手機、冰箱、微波爐等功能不再單一,結構變得更加復雜,網(wǎng)絡(luò )互聯(lián)成為必然趨勢。
6.精簡(jiǎn)系統內核,優(yōu)化關(guān)鍵算法,降低功耗和軟硬件成本。
7.提供更加友好的多媒體人機交互界面。
2.體系結構
根據國際電氣和電子工程師協(xié)會(huì )(IEEE)的定義,嵌入式系統是"控制、監視或者輔助設備、機器和車(chē)間運行的裝置"(devices used to control, monitor, or assist the operation of equipment, machinery or plants)。一般而言,整個(gè)嵌入式系統的體系結構可以分成四個(gè)部分:嵌入式處理器、嵌入式外圍設備、嵌入式操作系統和嵌入式應用軟件。
嵌入式處理器
嵌入式系統的核心是各種類(lèi)型的嵌入式處理器,嵌入式處理器與通用處理器最大的不同點(diǎn)在于,嵌入式CPU大多工作在為特定用戶(hù)群所專(zhuān)門(mén)設計的系統中,它將通用CPU中許多由板卡完成的任務(wù)集成到芯片內部,從而有利于嵌入式系統在設計時(shí)趨于小型化,同時(shí)還具有很高的效率和可靠性。
嵌入式處理器的體系結構經(jīng)歷了從CISC(復雜指令集)至RISC(精簡(jiǎn)指令集)和Compact RISC的轉變,位數則由4位、8位、16位、32位逐步發(fā)展到64位。目前常用的嵌入式處理器可分為低端的嵌入式微控制器(Micro Controller Unit,MCU)、中高端的嵌入式微處理器(Embedded Micro Processor Unit,EMPU)、用于計算機通信領(lǐng)域的嵌入式DSP處理器(Embedded Digital Signal Processor,EDSP)和高度集成的嵌入式片上系統(System On Chip,SOC)。
目前幾乎每個(gè)半導體制造商都生產(chǎn)嵌入式處理器,并且越來(lái)越多的公司開(kāi)始擁有自主的處理器設計部門(mén),據不完全統計,全世界嵌入式處理器已經(jīng)超過(guò)1000多種,流行的體系結構有30多個(gè)系列,其中以ARM、PowerPC、MC 68000、MIPS等使用得最為廣泛。
嵌入式外圍設備
在嵌入系統硬件系統中,除了中心控制部件(MCU、DSP、EMPU、SOC)以外,用于完成存儲、通信、調試、顯示等輔助功能的其他部件,事實(shí)上都可以算作嵌入式外圍設備。目前常用的嵌入式外圍設備按功能可以分為存儲設備、通信設備和顯示設備三類(lèi)。
存儲設備主要用于各類(lèi)數據的存儲,常用的有靜態(tài)易失型存儲器(RAM、SRAM)、動(dòng)態(tài)存儲器(DRAM)和非易失型存儲器(ROM、EPROM、EEPROM、FLASH)三種,其中FLASH憑借其可擦寫(xiě)次數多、存儲速度快、存儲容量大、價(jià)格便宜等優(yōu)點(diǎn),在嵌入式領(lǐng)域內得到了廣泛應用。
目前存在的絕大多數通信設備都可以直接在嵌入式系統中應用,包括RS-232接口(串行通信接口)、SPI(串行外圍設備接口)、IrDA(紅外線(xiàn)接口)、I2C(現場(chǎng)總線(xiàn))、USB(通用串行總線(xiàn)接口)、Ethernet(以太網(wǎng)接口)等。
由于嵌入式應用場(chǎng)合的特殊性,通常使用的是陰極射線(xiàn)管(CRT)、液晶顯示器(LCD)和觸摸板(Touch Panel)等外圍顯示設備。
嵌入式操作系統
為了使嵌入式系統的開(kāi)發(fā)更加方便和快捷,需要有專(zhuān)門(mén)負責管理存儲器分配、中斷處理、任務(wù)調度等功能的軟件模塊,這就是嵌入式操作系統。嵌入式操作系統是用來(lái)支持嵌入式應用的系統軟件,是嵌入式系統極為重要的組成部分,通常包括與硬件相關(guān)的底層驅動(dòng)程序、系統內核、設備驅動(dòng)接口、通信協(xié)議、圖形用戶(hù)界面(GUI)等。嵌入式操作系統具有通用操作系統的基本特點(diǎn),如能夠有效管理復雜的系統資源,能夠對硬件進(jìn)行抽象,能夠提供庫函數、驅動(dòng)程序、開(kāi)發(fā)工具集等。但與通用操作系統相比較,嵌入式操作系統在系統實(shí)時(shí)性、硬件依賴(lài)性、軟件固化性以及應用專(zhuān)用性等方面,具有更加鮮明的特點(diǎn)。
嵌入式操作系統根據應用場(chǎng)合可以分為兩大類(lèi):一類(lèi)是面向消費電子產(chǎn)品的非實(shí)時(shí)系統,這類(lèi)設備包括個(gè)人數字助理(PDA)、移動(dòng)電話(huà)、機頂盒(STB)等;另一類(lèi)則是面向控制、通信、醫療等領(lǐng)域的實(shí)時(shí)操作系統,如WindRiver公司的VxWorks、QNX系統軟件公司的QNX等。實(shí)時(shí)系統(Real Time System)是一種能夠在指定或者確定時(shí)間內完成系統功能,并且對外部和內部事件在同步或者異步時(shí)間內能做出及時(shí)響應的系統。在實(shí)時(shí)系統中,操作的正確性不僅依賴(lài)于邏輯設計的正確程度,而且與這些操作進(jìn)行的時(shí)間有關(guān),也就是說(shuō),實(shí)時(shí)系統對邏輯和時(shí)序的要求非常嚴格,如果邏輯和時(shí)序控制出現偏差將會(huì )產(chǎn)生嚴重后果。
實(shí)時(shí)系統主要通過(guò)三個(gè)性能指標來(lái)衡量系統的實(shí)時(shí)性,即響應時(shí)間(Response Time)、生存時(shí)間(Survival Time)和吞吐量(Throughput):
o 響應時(shí)間 是實(shí)時(shí)系統從識別出一個(gè)外部事件到做出響應的時(shí)間;
o 生存時(shí)間 是數據的有效等待時(shí)間,數據只有在這段時(shí)間內才是有效的;
o 吞吐量 是在給定的時(shí)間內系統能夠處理的事件
總數,吞吐量通常比平均響應時(shí)間的倒數要小一點(diǎn)。
實(shí)時(shí)系統根據響應時(shí)間可以分為弱實(shí)時(shí)系統、一般實(shí)時(shí)系統和強實(shí)時(shí)系統三種。弱實(shí)時(shí)系統在設計時(shí)的宗旨是使各個(gè)任務(wù)運行得越快越好,但沒(méi)有嚴格限定某一任務(wù)必須在多長(cháng)時(shí)間內完成,弱實(shí)時(shí)系統更多關(guān)注的是程序運行結果的正確與否,以及系統安全性能等其他方面,對任務(wù)執行時(shí)間的要求相對來(lái)講較為寬松,一般響應時(shí)間可以是數十秒或者更長(cháng)。一般實(shí)時(shí)系統是弱實(shí)時(shí)系統和強實(shí)時(shí)系統的一種折衷,它的響應時(shí)間可以在秒的數量級上,廣泛應用于消費電子設備中。強實(shí)時(shí)系統則要求各個(gè)任務(wù)不僅要保證執行過(guò)程和結果的正確性,同時(shí)還要保證在限定的時(shí)間內完成任務(wù),響應時(shí)間通常要求在毫秒甚至微秒的數量級上,這對涉及到醫療、安全、軍事的軟硬件系統來(lái)說(shuō)是至關(guān)重要的。 時(shí)限(deadline)是實(shí)時(shí)系統中的一個(gè)重要概念,指的是對任務(wù)截止時(shí)間的要求,根據時(shí)限對系統性能的影響程度,實(shí)時(shí)系統又可以分為軟實(shí)時(shí)系統(soft real-time-system)和硬實(shí)時(shí)系統(hard real-time-system)。軟實(shí)時(shí)指的是雖然對系統響應時(shí)間有所限定,但如果系統響應時(shí)間不能滿(mǎn)足要求,并不會(huì )導致系統產(chǎn)生致命的錯誤或者崩潰;硬實(shí)時(shí)則指的是對系統響應時(shí)間有嚴格的限定,如果系統響應時(shí)間不能滿(mǎn)足要求,就會(huì )引起系統產(chǎn)生致命的錯誤或者崩潰。如果一個(gè)任務(wù)在時(shí)限到達之時(shí)尚未完成,對軟實(shí)時(shí)系統來(lái)說(shuō)還是可以容忍的,最多只會(huì )降低系統性能,但對硬實(shí)時(shí)系統來(lái)說(shuō)則是無(wú)法接受的,因為這樣帶來(lái)的后果根本無(wú)法預測,甚至可能是災難性的。在目前實(shí)際運用的實(shí)時(shí)系統中,通常允許軟硬兩種實(shí)時(shí)性同時(shí)存在,其中一些事件沒(méi)有時(shí)限要求,另外一些事件的時(shí)限要求是軟實(shí)時(shí)的,而對系統產(chǎn)生關(guān)鍵影響的那些事件的時(shí)限要求則是硬實(shí)時(shí)的。
五、實(shí)習總結
計算機和網(wǎng)絡(luò )已經(jīng)全面滲透到日常生活的每一個(gè)角落,對于我們沒(méi)有個(gè)人來(lái)說(shuō),需要的已經(jīng)不再僅僅是放在桌面上處理文檔,進(jìn)行工業(yè)管理和生產(chǎn)控制的計算機“機器”任何一個(gè)普通的人都可能擁有從小到大的各種嵌入式技術(shù)的電子產(chǎn)品,小到MP3PDA等微型數字化產(chǎn)品,大到網(wǎng)絡(luò )家電,智能家電等,各種各樣的新型嵌入式系統設備在應用數量上已經(jīng)遠遠超過(guò)了通用計算機,在工業(yè)和服務(wù)領(lǐng)域,使用嵌入式技術(shù)的數字機床、智能工具、工業(yè)機器人、服務(wù)機器人、正在逐漸的改變著(zhù)傳統的工業(yè)生產(chǎn)和服務(wù)方式。而ARM芯片憑借強大的處理能力和極低的功耗,非常適合這些場(chǎng)合。所以現在越來(lái)越多的公司在產(chǎn)品選型的時(shí)候考慮到使用ARM處理器,從這個(gè)角度來(lái)說(shuō),對于在校大學(xué)生來(lái)說(shuō),如果你掌握了ARM開(kāi)發(fā)技術(shù),對于尋找一份好的工作也十分有利。
【嵌入式實(shí)習報告】相關(guān)文章:
嵌入式軟件求職簡(jiǎn)歷的范文12-18
教師實(shí)習轉正實(shí)習報告04-18
實(shí)習生實(shí)習報告04-15
銷(xiāo)售報告實(shí)習04-19
銷(xiāo)售實(shí)習報告04-15
法語(yǔ)實(shí)習報告04-14
校外實(shí)習報告04-14
工程實(shí)習報告04-15
校外實(shí)習報告04-14
關(guān)于實(shí)習報告04-12