報告使用范圍很廣。按照上級部署或工作計劃,每完成一項任務,一般都要向上級寫報告,反映工作中的基本情況、工作中取得的經驗教訓、存在的問題以及今后工作設想等,以取得上級領導部門的指導。報告,在已發布的黨、人大、政府、司法、軍隊機關的公文處理規范中, 以下是為大家整理的關于嵌入式實習報告4篇 , 供大家參考選擇。
嵌入式實習報告4篇
【篇1】嵌入式實習報告
《嵌入式QT編程設計》
實驗報告
學生姓名:
學 號:
專業班級:
指導教師:
完成時間:
實驗4 嵌入式QT編程及使用
一.實驗目的
理解QT信號和插槽機制,掌握利用QT CREATOR進行圖形軟件設計的基本步驟,并掌握將編譯好的可執行程序加載到嵌入式開發板并運行的方法。掌握QT應用程序操縱底層硬件設備的基本步驟和方法。
二.實驗內容
實驗4.1 QT小計算器編程設計
實驗4.2 溫度傳感器采集及顯示
三.預備知識
Linux使用、QT相關知識等
四.實驗設備及工具(包括軟件調試工具)
硬件:ARM 嵌入式開發平臺、PC 機Pentium100 以上、串口線。
軟件: WinXP或UBUNTU開發環境。
五.實驗步驟
5.1 QT小計算器編程設計
步驟【參看Mini6410 Qt4和Qtopia編程開發指南-20110112.pdf的4.2節】。
5.2溫度傳感器采集及圖形顯示
【略】
【篇2】嵌入式實習報告
嵌入式程序設計基礎練習題
一、選擇題
1、int a[]={1,2,3,4,5,6,7,8,9,10},*p=a,i;數組元素的正確表示( A )A、*(a+i) B、a++ C、&p D、&p[i]
2、μCOS-II操作系統不屬于( C )。
A、RTOS B、占先式實時操作系統
C、非占先式實時操作系統 D、嵌入式實時操作系統
3、 在μC/OS-II系統中,OSTimeTick()函數只被以下( )函數或過程所調用。
A. OSTickISR B. OSShed C. OSCtxSw D. OSIntCtxSw
4、μCOS-II的系統任務中,( A )任務是可刪除的。
A、統計任務 B、空閑任務 C、起始任務 D、系統任務
5、以下是某RTOS內核的幾個函數名,現要將該RTOS移植到ARM平臺,試根據函數名猜想其功能,你認為要根據ARM硬件體系結構作移植的函數是( )。
A、OSSemphoreCreate() B、OSTCBInit()
C、OSIntContexSwitch() D、OSMai1BoxCreate()
6、在μCOS-II中,如果希望應用程序中任務的優先級為27個,則OS_LOWEST_PRIO的值應為( B )。
A、25 B、26 C、27 D、28
7、在消息郵箱中,非阻塞式讀取消息時使用的函數為( C )。
A、OSMboxCreat() B、OSMboxPend()
C、OSMboxAccept() D、OSMboxPos()
8、假設在μC/OS-II系統中,若準備釋放的內存塊無效,則調用OSMemPut()函數的返回值為( )。
A、OS_NO_ERR B、OS_MEM_FULL
C、OS_MEM_INVALID D、OS_MEM_TYPE_MUTEX
9、下面數據結構中,與事件組標志無關的是( D )。
A、OS_FLAG_GRP B、OS_FLAG_NONE C、TCB D、ECB
10、能阻止出現優先級反轉現象的信號稱為( C )。
A、事件 B、消息郵箱 C、互斥信號量 D、消息隊列
11、當當前事件為消息隊列時,ECB中的OSEventType的值應為( B )。
A、OS_EVENT_TYPE_MBOX B、OS_EVENT_TYPE_Q
C、OS_EVENT_TYPE_SEM D、OS_EVENT_TYPE_MUEX
12、訪問共享資源的排他性被稱為( B )
A、同步 B、互斥 C、調度 D、執行
13、μCOS-II默認的創建任務函數為( B )
A、OSTaskCreate() B、OSTaskCreateExt()
C、OSIntContexSwitch() D、OSMai1BoxCreate()
14、調用OSTaskSuspend()可以把當前正在執行的任務,轉為( C )狀態。
A、就緒 B、等待 C、被掛起 D、刪除
15、消息隊列中,事件控制塊中OSEventPtr變量中保存著( C )的起始地址。
A、任務控制塊(TCB) B、事件控制塊(ECB)
B、C、隊列控制塊(QCB) D、以上都錯
二、填空題
16、填寫μC/OS-II中任務創建函數OSTaskCreate()的四個參數的含義:
OSTaskCreate(
MyTask, //( 任務的函數地址/任務名 )
(void *)s, //傳遞給任務的參數
&TaskStartStk[TASK_STK_SIZE - 1], //( 任務私有堆棧的堆棧指針 )
0 //( 任務優先級 )
);。
17、信號量有兩種類型,分別為: 和 。
18、事件控制塊ECB中OSEventType表示為 時間類型 ,OSEventCnt表示 全局計數器(變量) 。
19、若一個優先級為48的任務就緒,則在就緒表中,OSRdyTbl[]的 OSRdyTbl[6] 置1,變量OSRdyGrp的 位6置1 置位。
20、任務由 任務控制塊 、任務堆棧和任務代碼三個部分組成。
21、OSTaskSuspend (self)可把正在運行的 任務把自己掛起來 ,參數self指 任務自身的優先權 。用此函數掛起的任務可通過 OSTaskResum 函數喚醒。
22、μCOS-II的中斷允許中斷嵌套,用全局變量 來記錄中斷的嵌套層數。
23、μCOS-II將任務控制塊分成兩個鏈表來進行管理,分別是空閑任務控制塊鏈表和 就緒任務鏈表 。
24、消息隊列由三個部分組成: 消息隊列控制塊 、消息隊列和消息。
25、任務切換的核心工作是 任務堆棧指針 的切換。
三、判斷題
26、在μC/OS-II操作系統中,已知Task1的優先級為12,Task2的優先級為26。假如在Task2運行時發生鍵盤中斷,在執行中斷服務程序時Task1進入就緒狀態,則返回時Task1得到CPU使用權。( 對 )
27、若定義任務task1的優先級為12,則不能再定義其他任務的優先級也為12。( 錯 )
28、任務創建后即開始調度。( 錯 )
29、處于就緒狀態的任務只能切換到運行狀態。( 錯 )
30、系統通過與內存分區相關的內存控制塊來對內存分區進行管理。( )
31、μC/OS-II先調用函數OSStart(),后調用OSInit()。( 錯 )
32、通過事件發送事件,獲取事件信息叫做請求事件。( )
四、簡述題
33、根據以下程序回答問題。 struct NODE
{int k;
struct NODE *link;
}; main()
{ struct NODE m[5],*p=m,*q=m+4;
int i=0;
while(p!=q)
{p->k=++i;p++;
q->k=i++;q--;
} q->k=i;
for(i=0;i
【篇3】嵌入式實習報告
嵌入式實習心得體會
嵌入式實習心得體會
【篇一:嵌入式實驗報告】
中國地質大學(北京)
實 驗 報 告
課程名稱:嵌入式系統實驗名稱:嵌入式 linux socket編程 姓 名:楊森學 號: 1010102115班 級:10101021 指導教師:曾衛華 評 分: 實驗時間: 二零一三年 四月
實驗題目:嵌入式 linux socket編程
一、 實驗目的
通過實驗熟悉linux環境,掌握linux串口和網絡應用程序開發。并且學會串口的設置,串口數據收發處理,阻塞型i/o和非阻塞型i/o,socket套接字,多線程編程基礎,server和client端程序設計,對嵌入式系統有進一步的了解。
二、 實驗內容和步驟
1.4.4.3交叉編譯工具的path已經生效,在任意目錄下能夠執行arm-linux-gcc –v; 2.nfs網絡文件系統的配置:
1打開nfs1175.exe; ○
255.255.255.0);
3掛載:在板子上運行 #mount -t nfs -o nolock 115.25.74.175:/d/share_vm/mnt/nfs ○
4使用 cd /mnt/nfs 進入nfs共享目錄,ls 顯示共享目錄下的文件; ○
3.仔細閱讀提供的代碼server.c和client.c target為服務器,ubuntu為客戶端; 4.交叉編譯server.c、本地編譯client.c(因為用到多線程編程,在編譯語句后面加上-lpthread);
5.在板子上運行server可執行文件:#cd /mnt/nfs #ls -l server 看看前面的字串里面有沒有“x”,
如沒有則表明沒有可執行的權限,需要用命令加入server的執行權限:#chmod 777 server,運行server
代碼 #./server;
6.在ubuntu上運行client程序:#./client 115.25.74.176; 7.觀察服務器端和客戶端的提示信息。
三、 程序流程框圖和源碼
1.
流式套接字工作過程,如圖1所示
圖1 流式套接字工作過程
2.工作過程
以太網
1用戶從串口輸入信息,將串口信息轉發至以太網,在ubuntu上編寫client端程序,將收到的○
網絡數據打印出來;
2用戶從ubuntu中client端輸入信息,client將位信息發送至以太網,嵌入式linux收到以太○
網信息從串口輸出該信息。
3.源碼
更改過的源碼見附錄。
四、 實驗結果
1.掛載成功后串口顯示,如圖2所示
圖2 掛載截圖
2.編譯之后得到的目標代碼,如圖3所示
圖3 目標代碼編譯成功
3.客戶端與服務器連接,如圖4,圖5,圖6所示
圖4 等待連接中
圖5 ubuntu中顯示連接成功
圖6 串口中顯示連接成功
4.結果驗證,如圖7所示
在串口中輸入姓名(yangsen)和班級(10101021),在ubuntu中顯示相應的結果; 在ubuntu中輸入姓名(yangsen)和班級(10101021),在串口中顯示相應的結果。
圖7 驗證通訊結果
五、 實驗體會
本學期的所有實驗均在宿主pc機與at91rm9200目標板上進行。在實驗中,我們先建立硬件實驗平臺,又建立主機軟件開發環境,接著為實驗進行各項配置,最后完成了各個實驗中的多種功能。很重要的一點,前期的硬件、軟件準備必須完整無誤地實現,這是后續的實驗能順利進行的前提。本實驗中,雖然已經給出了串口程序和socket編程的程序,但是需要我們來修改和完善代碼,在原代碼的基礎上實現新的功能。
對于整個學期的學習,我總結了一個學習嵌入式學習的要點,就是動手實踐。剛開始接觸嵌入式linux的時候,感覺非常的麻煩,一直思考為什么既然有了windows,linux為什么還有存在的必要。經過一段時間的學習和了解,我終于了解了開源的重要性以及linux操作系統在科研領域的無可撼動的地位。經過多次的失敗之后,我已經熟練的掌握了linux的入門知識,逐步完成了建立實驗軟件開發平臺,搭建實驗編譯軟件環境,在pc上編輯、編譯一個應用程序,并且在嵌入式系統上運行和調試它的過程,課堂的7個實驗都成功地完成。這其中,自我課外學習和向高手請教是必不可少的。
通過這學期的實驗,我整個實驗讓我了解了一套完整的嵌入式系統簡單的開發的全過程,也讓
【篇二:嵌入式實習報告】
一、嵌入式系統開發與應用概述
在今日,嵌入式arm 技術已經成為了一門比較熱門的學科,無論是在電子類的什么領域,你都可以看到嵌入式arm 的影子。如果你還停留在單片機級別的學習,那么實際上你已經落下時代腳步了,arm 嵌入式技術正以幾何的倍數高速發展,它幾乎滲透到了幾乎你所想到的領域。本章節就是將你領入arm 的學習大門,開始嵌入式開發之旅。以嵌入式計算機為技術核心的嵌入式系統是繼網絡技術之后,又一個it領域新的技術發展方向。由于嵌入式系統具有體積小、性能強、功耗低、可靠性高以及面向行業具體應用等突出特征, 目前已經廣泛地應用于軍事國防、消費電子、信息家電、網絡通信、工業控制等各個領域。嵌入式的廣泛應用可以說是無所不在。
嵌入式微處理器技術的基礎是通用計算機技術。現在許多嵌入式處理器也是從早期的pc 機的應用發展演化過來的,如早期pc 諸如trs-80、appleii 和所用的z80 和6502 處理器,至今仍為低 端的嵌入式應用。在應用中,嵌入式微處理器具有體積小、重量輕、成本低、可靠性高的優點。嵌入式處理器目前主要有am186/88、386ex、sc-400、power pc、68000、mips、arm 等系列。在早期實際的嵌入式應用中,芯片選擇時往往以某一種微處理器內核為核心,在芯片內部集成必要的
rom/eprom/flash/eeprom、sram、接口總線及總線控制邏輯、定時/計數器、watchdog、i/o、串行口、脈寬調制輸出、a/d、d/a 等各種必要的功能和外設。
二、實習設備
硬件:embest edukit-iv實驗平臺、ulink2仿真器套件、pc機
三、實習目的
1.初步掌握液晶屏的使用及其電路設計方法;掌握s3c2410x處理器的lcd控制器的使用;掌握通過任務調用的方法把液晶顯示函數添加到uc/os-ii中;通過實驗掌握液晶顯示文本及圖形的方法與程序設計。
2.了解s3c2410x處理器uart相關控制寄存器的使用; 熟悉arm處理器系統硬件電路中uart接口的設計方法:掌握arm處理器串行通信的軟件編程方法。
3.掌握有關音頻處理的基礎知識;通過實驗了解iis音頻接口的工作原理;通過實驗掌握對處理器s3c2410x中iis模塊電路的控制方法;通過實驗掌握對常用iis接口音頻芯片的控制方法。
四、實習要求
上顯示相應的學生信息。學生信息包括顯示每個人的照片和姓名系別等,并用鍵控設置學生輸出的順序,輸入學號就顯示那個學生的信息,然后過一段時間就順序循環播放。
通過使用embest edukit-iv實驗板的彩色液晶屏(800*480)進行電路設計,掌握液晶屏作為人機接口界面的設計方法,并編寫任務函數在uc/os-ii系統中實現位圖顯示。在uc/os-ii中建立五個任務tast1和tast2,其中tast1順序熄滅四個led,延遲一會在順序點亮四個led。tast2在lcd屏幕上循環顯示三幅圖片,并打印一些文字信息和背景音樂。過使用embest edukit-iii實驗板的256 色彩色液晶屏(320x240)進行電路設計,掌握液晶屏作為人機接口界面的設計方法,并編寫程序實現:畫出多個矩形框;顯示ascii字符;顯示漢字字符;顯示彩色位圖。
五、實習步驟
1. 準備實驗環境
使用ulink2仿真器連接embest edukit-iv實驗平臺的主板jtag接口;使用embest edukit-iv實驗平臺附帶的交叉串口線,連接實驗平臺主板上的com2和pc機的串口(一般pc只有一個串口,如果有多個請自行選擇,筆記本沒有串口設備的可購買usb轉
串口適配器擴充);使用embest edukit-iv實驗平臺附帶的電源適配器,連接實驗平臺主板上的電源接口。
2. 串口接收設置
在pc機上運行windows自帶的超級終端串口通信程序,或者使用實驗平臺附帶光盤內設置好了的超級終端,設置超級終端:波特率115200、1位停止位、無校驗位、無硬件流控制,或者使用其它串口通信程序。(注:超級終端串口的選擇根據用戶的pc串口硬件不同,請自行選擇,如果pc機只有一個串口,一般是com1)
3. 打開實驗例程
1)打開實驗程序
3)默認打開的工程在源碼編輯窗口會顯示實驗例程的說明文件readme.txt,詳細閱讀并理解實驗內容。
4)工程提供了兩種運行方式:一是下載到sdram中調試運行,二是固化到nor flash中運行。用戶可以在工具欄select target下拉框中選擇在ram中調試運行還是固化flash中運行。下面實驗將介紹下載到sdram中調試運行,所以我們在select target下拉框中選擇uart_test in ram。
5)接下來開始編譯鏈接工程,在菜單欄“projiet”選擇“build target”或者“rebuild all target files”編譯整個工程。
6編譯完成后,在輸出窗口可以看到編譯提示信息,比如
“.sdramuart_test.axf - 0 error(s), 1 warning(s).”,如果顯示“0 error(s)”即表示編譯成功。
7)撥動實驗平臺電源開關,給實驗平臺上電,單擊菜單欄
debug-start/stop debug session項將編譯出來的映像文件下載到sdram中,或者單擊工具欄“”按鈕來下載。
8)下載完成后,單擊菜單欄debug-run項運行程序,或者單擊工具欄“”按鈕來全速運行程序。用戶也可以使用進行單步調試程序。
9)全速運行后,用戶可以在超級終端看到程序運行的信息。
flash-download項將程序固化到norflash中,從實驗平臺的主板拔出jtag線,給實驗平臺重新上電,程序將自動運行。部分程序圖:
串口通信實驗:
iis音頻實驗:
六、實習體會
在嵌入式系統中,除了課本上的基礎知識外,還學會了軟件編程的基本思路,掌握了液晶屏的使用及其電路設計方法;掌握有關音頻處理的基礎知識;掌握液晶顯示文本及圖形的方法與程序設計。
【篇三:嵌入式系統實驗報告】
嵌入式系統設計實驗報告
班 級:
學 號:
姓 名:
成 績:
指導教師:
1. 實驗一
1.1 實驗名稱
博創up-3000實驗臺基本結構及使用方法
1.2 實驗目的
1.學習嵌入式系統開發流程。
2.熟悉up-net3000實驗平臺的核心硬件電路和外設。
3.增加對各個外設的了解,為今后各個接口實驗打下基礎。
1.3 實驗環境
博創up-netarm3000 嵌入式開發平臺
1.4 實驗內容及要求
(1)嵌入式系統開發流程概述
(2)熟悉up-net3000實驗平臺的核心硬件電路和外設
(3)arm jtag的安裝與使用
(4)通過操作系統自帶的通訊軟件超級終端,檢驗各個外設的工作狀態
(5)通過本次課程對各個外設的了解,為今后各個接口實驗打下基礎
1.5 實驗設計與實驗步驟
1.硬件安裝
2.軟件安裝
(1)超級終端:
運行windows 系統下的超級終端(hyperterminal)應用程序,新建一個通信終端;在接下來的對話框中選擇 arm開發平臺實際連接的pc機串口;完成新建超級終端的設置以后,可以選擇超級終端文件菜單中的保存,將當前設置保存為一個特定超級終端到桌面上,以備后用。
(2)jtag 驅動程序的安裝:
執行armjtag目錄下armjtagsetup.exe程序,選擇安裝目錄,安裝 jtag 軟件。
1.6 實驗過程與分析
(1)了解嵌入式系統開發流程
(2)對硬件的安裝
(3)對軟件的安裝
1.7 實驗結果總結
通過本次實驗對嵌入式系統開發流程進行了了解,并且對硬件環境和軟件環境進行了安裝配置,通過本次實驗對以后的接口實驗打了基礎。
1.8 心得體會
通過本次實驗對嵌入式實驗有了初步的了解,對基本開發流程也有了初步的了解。
2. 實驗二
2.1 實驗名稱
ads1.2軟件開發環境使用方法
2.2 實驗目的
熟悉ads1.2開發環境,學會 arm仿真器的使用。使用 ads 編譯、下載、調試并跟蹤一段已有的程序,了解嵌入式開發的基本思想和過程。
2.3 實驗環境
(1)ads1.2開發環境
(2)博創up-netarm3000 嵌入式開發平臺
(3)pc
(4)串口線
2.4 實驗內容及要求
本次實驗使用ads 集成開發環境,新建一個簡單的工程文件,并編譯這個工程文件。學習arm仿真器的使用和開發環境的設置。下載已經編譯好的文件到嵌入式控制器中運行。學會在程序中設置斷點,觀察系統內存和變量,為調試應用程序打下基礎。
2.5 實驗設計與實驗步驟
(1)運行ads1.2開發環境
(2)新建工程文件
(3)編譯工程文件
(4)下載編譯好的文件到嵌入式控制器中運行
2.6 實驗過程與分析
(1)實現hello world!
最終在輸出了hello world
(2)編程實現arm 和計算機之間的串行通訊
實現了串口通信,用arm監視串口,接收到的字符串由arm通過串口發送給超級終端,最終在超級終端上顯示了按下的鍵。學習了串行通訊原理,了解串行通訊控制器,閱讀arm 芯片文檔,掌握arm 的uart相關寄存器的功能,熟悉arm 系統硬件的uart 相關接口。
2.7 實驗結果總結
對ads 1.2開發環境使用和axd debugger使用方法有了初步的了解,基本成功運行了編譯好的工程文件。
2.8 心得體會
學習了ads1.2開發環境的使用方法和調試方法。使用 ads 編譯、下載、調試并跟蹤一段已有的程序,了解了嵌入式開發的基本思想和過程。
3. 實驗三
3.1 實驗名稱
鍵盤控制方法及led驅動設計
3.2 實驗目的
熟悉zlg7289芯片的內部結構,掌握用zlg7289驅動鍵盤和led的方法,掌握arm匯編語言和c語言的編程方法編寫出一段程序,要求能在led上顯示出小鍵盤上按下的4位數字。
3.3 實驗環境
(1)ads1.2開發環境
(2)博創up-netarm3000 嵌入式開發平臺
(3)pc
(4)串口線
3.4 實驗內容及要求
通過zlg7289芯片驅動17鍵的鍵盤和8個共陰極led,將按鍵值在led 上顯示出來。
3.5 實驗設計與實驗步驟
(1)新建工程,將“exp3鍵盤及led 驅動實驗”中的文件添加到工程。
(2)定義zlg7289 寄存器
(3)編寫zlg7289 驅動函數
(4)定義鍵盤映射表
(5)定義鍵值讀取函數
(6)編寫主函數
3.6 實驗過程與分析
(1)定義zlg7289寄存器
#define zlg7289_cs
#define zlg7289_key
#define zlg7289_enable() do{zlg7289sioband=rsbrdr;zlg7289sioctrl=rsiocon; rsiocon=0x31;rsbrdr=0xff;rpdatb=(~zlg7289_cs);}while(0)
#define zlg7289_disable() do{rpdatb|=zlg7289_cs;rsbrdr=zlg7289sioband; rsiocon=zlg7289sioctrl;}while(0)
【篇4】嵌入式實習報告
--《題目名稱》
班級:姓名:學號:指導教師:
2011屆北軟計算機應用技術專業開題報告
一、題目背景
{題目背景是對題目進行切題的背景分析,說明當前該行業和領域的發展現狀,國內外該行業的情況。}
二、設計目標
系統最終要實現的功能1、2、3、
三、開發環境及開發工具
開發環境開發工具開發語言
開發工具及開發語言的特點及優勢:
四、系統結構設計
3.1整體模塊設計……
3.2功能模塊設計
畫出各個功能模塊的流程圖,如果應用數據文件,需說明數據格式。3.3界面設計
五、進度安排(用表進行說明)
5.1、開發進度,以周為單位進行安排。(只需安排開發階段的內容,論文寫作不算在內)
時間安排
內容安排
5.2、測試計劃(測試內容條目,時間,測試結果)
測試條目
測試時間
測試結果




