版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、河海大學(xué)計(jì)算機(jī)及信息工程學(xué)院(常州)課程設(shè)計(jì)報(bào)告 題 目 嵌入式課程設(shè)計(jì) 專業(yè)學(xué)號 學(xué)生姓名 授課班號 指導(dǎo)教師 完成時(shí)間 2011.7.5 目 錄摘 要 2 第一章 時(shí)鐘設(shè)計(jì) 3第一節(jié) 課題目標(biāo) .3 第二節(jié) 程序和芯片的初始化.4 第三節(jié) 構(gòu)建功能模塊.5 第四節(jié) 實(shí)現(xiàn)信息的傳遞. 5 第二章 實(shí)驗(yàn)結(jié)果討論 .6 第一節(jié) 軟件的編譯,連接和運(yùn)行 .6 第二節(jié) protues 7.4仿真軟件調(diào)試 .7第三章 結(jié)論8心得體會(huì)9參考文獻(xiàn) 10附 錄 11 源程序11 摘要 實(shí)時(shí)時(shí)鐘(rtc)器件是一種能提供日歷/時(shí)鐘、數(shù)據(jù)存儲(chǔ)等功能的專用集成電路,常用作各種計(jì)算機(jī)系統(tǒng)的時(shí)鐘信號源和參數(shù)設(shè)置存儲(chǔ)電
2、路。rtc具有計(jì)時(shí)準(zhǔn)確、耗電低和體積小等特點(diǎn),特別適用于在各種嵌入式系統(tǒng)忠記錄事件發(fā)生的時(shí)間和相關(guān)信息,尤其是在通信工程、電力自動(dòng)化、工業(yè)控制等自動(dòng)化程度較高領(lǐng)域的無人職守環(huán)境。隨著集成電路技術(shù)的不斷發(fā)展,rtc器件的新品也不斷推出。這些新品不僅具有準(zhǔn)確的rtc,還有大容量的存儲(chǔ)器、溫度傳感器和a/d數(shù)據(jù)采集通道等,已成為集rtc、數(shù)據(jù)采集和存儲(chǔ)于一體的綜合功能器件,特別適用于以微控制器為核心的嵌入式系統(tǒng)。 summary real time clock (rtc) device can provide a calendar / clock, data storage and other fe
3、atures specific integrated circuit, commonly used for various computer systems, the clock source and the parameter settings stored in the circuit.rtc has a timing accuracy, low power consumption and small size and other characteristics, especially for embedded systems zhong recorded in the event of
4、time and information, especially in communication engineering, electric power automation, industrial control and other areas of higher degree of automationunattended environment.with integrated circuit technology continues to evolve, rtc also has introduced new devices.these new products not only ha
5、ve accurate rtc, there is a large-capacity memory, temperature sensor and a / d data acquisition channel, etc., has become a set of rtc, data collection and storage functions in one integrated device, particularly applicable to micro-controllercore embedded systems.第一章 時(shí)鐘設(shè)計(jì)第一節(jié) 課題目標(biāo) 利用arm 7芯片和lcd顯示器,
6、通過c語言編譯,完成實(shí)時(shí)時(shí)鐘(rtc)的顯示。第二節(jié) 程序和芯片初始化 程序中包括:lcd的初始化:中斷向量的初始化:rtc的初始化: 第三節(jié) 構(gòu)建功能模塊lcd顯示的時(shí)鐘界面包括:靜止不動(dòng)的圓形鐘面和一直在走動(dòng)的時(shí)鐘指針。所以需要構(gòu)建兩個(gè)重要的函數(shù)實(shí)現(xiàn)畫圓和畫直線。以下為畫圓函數(shù):該算法是通過x變量的自增,補(bǔ)償1 修正正方形控制y變量自減,找到距中心恒定距離的點(diǎn),其中rs=45,x自0加1增至45。和原點(diǎn)坐標(biāo)運(yùn)算,可以在第一象限找到一點(diǎn),再通過折疊對稱找到其他象限的三個(gè)點(diǎn),通過畫點(diǎn)函數(shù)描繪出。再畫他的45度鏡像就好了。畫線函數(shù):void line(unsigned int x1,unsign
7、ed int y1,unsigned int x2,unsigned int y2,unsigned char draw)以中心的坐標(biāo)為起點(diǎn),使用while函數(shù)與指針最外圈的點(diǎn)比較,不斷延長直至相等,所以事先計(jì)算出時(shí)針,分針和秒針三個(gè)同心圓最外圈點(diǎn)的坐標(biāo),以便帶入函數(shù)。也同圓類似,要考慮不同象限點(diǎn)的情況,根據(jù)不同的位置帶參數(shù)到畫點(diǎn)函數(shù)中描繪。 第四節(jié) 實(shí)現(xiàn)信息的傳遞畫點(diǎn)函數(shù):數(shù)據(jù)傳遞函數(shù):與通用可編程輸入輸出口(general programable input output)相連,把計(jì)算的數(shù)據(jù)傳遞給lcd顯示。第二章 實(shí)驗(yàn)結(jié)果討論第一節(jié) 軟件的編譯,連接和運(yùn)行 構(gòu)建完整的程序:添加頭文件,中
8、斷處理匯編程序段,初始化函數(shù)和主函數(shù):編譯器提示:成功生成所需hex文件,將得到的hex文件導(dǎo)入仿真芯片中,觀察實(shí)時(shí)時(shí)鐘。第三章 結(jié) 論綜合效果圖:以上為protues部分設(shè)計(jì)的,ads程序見附錄。心得體會(huì) 回顧起此次課程設(shè)計(jì),至今我仍感慨頗多,從理論到實(shí)踐,我學(xué)到很多很多的東西,不僅鞏固了以前所學(xué)過的知識,而且學(xué)到了很多在書本上所沒有學(xué)到過的內(nèi)容。通過這次課程設(shè)計(jì)使我懂得了理論與實(shí)際相結(jié)合是很重要的,只有理論知識是遠(yuǎn)遠(yuǎn)不夠的,只有把所學(xué)的理論知識與實(shí)踐相結(jié)合起來,從理論中得出結(jié)論,才是真正的知識,才能提高自己的實(shí)際動(dòng)手能力和獨(dú)立思考的能力。在設(shè)計(jì)的過程遇到了各種各樣的問題,同時(shí)在設(shè)計(jì)的過程中
9、發(fā)現(xiàn)了自己的不足之處,對以前所學(xué)過的知識理解得不夠深刻,掌握得不夠牢固,通過這次課程設(shè)計(jì),把以前所學(xué)過的知識重新溫故,鞏固了所學(xué)的知識。參考文獻(xiàn)1 謝自美,電子線路設(shè)計(jì)、實(shí)驗(yàn)、測試,華中理工大學(xué)出版社,2003。2 宋春榮,通用集成電路速查手冊,山東科學(xué)技術(shù)出版社,1995。3 arnold berger,嵌入式系統(tǒng)設(shè)計(jì),呂駿 譯, 北京:電子工業(yè)出版社, 20024 桑楠. 嵌入式系統(tǒng)原理及應(yīng)用開發(fā)技術(shù),北京:北京航空航天大學(xué)出版社, 2002 附 錄1、 一、源程序:#include .incconfig.h#definestacksize256#define x_line 160#def
10、ine y_line 80os_stk_data stk;extern gui_font chinese_font12;extern gui_font chinese_font16;extern gui_font gui_font8x16;os_event * send_lcd_sem;os_event *key_mbox;i8 hour3,min3,sec3;i8 hour = 0, min = 0, sec = 0,ms;i8 yea13,yea23,mon3,day3;int yea1 = 20,yea2=11, mon = 6, day = 23;i8 xh03,xh13,xh23,x
11、h33;i8 xh43,xh53,xh63,xh73;char xh0=01,xh1=62,xh2=31,xh3=03;char xh4=32,xh5=36,xh6=02,xh7=12;/int timecount = 0;int spacexs61=160,165,170,175,180,185,189,193,197,201,205,206,207,208,209,210,209,208,207,206,205,201,197,193,189,185,180,175,170,165,160,155,150,145,140,135,131,127,123,119,115,114,113,11
12、2,111,110,111,112,113,114,115,119,123,127,131,135,140,145,150,155,160, , spaceys61=30,31,32,33,34, 35,39,43,47,51, 55,60,65,70,75, 80,85,90,95,100, 105,109,113,117,121, 125,126,127,128,129, 130,129,128,127,126, 125,121,117,113,109, 105,100,95,90,85, 80,75,70,65,60, 55,51,47,43,39, 35,34,33,32,31,30,
13、 spacexm61=160,164,168,172,176,180,183,186,189,192, 195,196,197,198,199,200,199,198,197,196, 195,192,189,186,183,180,176,172,168,164, 160,156,152,148,144,140,137,134,131,128, 125,124,123,122,121,120,121,122,123,124, 125,128,131,134,137,140,144,148,152,156, 160 , spaceym61=40,41,42,43,44,45,48,51,54,
14、57, 60,64,68,72,76,80,84,88,92,96, 100,103,106,109,112,115,116,117,118,119, 120,119,118,117,116,115,112,109,106,103, 100,96,92,88,84,80,76,72,68,64, 60,57,54,51,48,45,44,43,42,41, 40 , spacexh13=160,175,185,190,185,175,160,145,135,130,135,145,160, spaceyh13=50,55,65,80,95,105,110,105,95,80,65,55,50,
15、 *placex=&spacexs0,*placey=&spaceys0,*placexm=&spacexm0,*placeym=&spaceym0, *placexh=&spacexh0,*placeyh=&spaceyh0;void display_xh1(char xx1,char yy1);void display_xh2(char xx2,char yy2);void display_xh3(char xx3,char yy3);void show(i8 s) if(s%4=0) set_color(gui_blue); set_font (&chinese_font16); dis
16、p_string (cn_startcn_end,48,210); set_font(&gui_font8x16); display_xh3(250,210); display_xh2(250,190); display_xh1(250,170); set_color(gui_red); set_font (&chinese_font16); display_xh1(250,210); else if(s%4=1) set_color(gui_yellow); set_font (&chinese_font16); disp_string (cn_startcn_end,48,210); se
17、t_color(gui_yellow); fill_circle (288,50,25); display_xh1(250,210); else if(s%4=2) set_color(gui_blue); set_font (&chinese_font16); disp_string (cn_startcn_end,48,210); set_color(gui_white); set_font (&chinese_font16); disp_string (cn_startcn_end,48,210); set_color(gui_white); set_font(&gui_font8x16
18、); display_xh2(250,210); else if(s%4=3) set_color(gui_blue); set_font(&gui_font8x16); disp_string (clock,10,10); set_font (&chinese_font16); disp_string (cn_startcn_end,48,210); set_color(gui_lightmagenta); set_font (&chinese_font16); disp_string (cn_startcn_end,48,210); set_color(gui_lightmagenta);
19、 void shows() show(sec); set_color(gui_gray); /擦除上一秒的 draw_line(x_line,y_line,*placex,*placey); placex=placex+1; placey=placey+1; set_color(gui_yellow); /顯示下一秒的 draw_line(x_line,y_line,*placex,*placey); set_color(gui_red); /顯示下一分的 draw_line(x_line,y_line,*placexm,*placeym); set_color(gui_green); /顯示
20、下一時(shí)的 draw_line(x_line,y_line,*placexh,*placeyh); if(placex=&spacexs60&placey=&spaceys60) placex=&spacexs0; placey=&spaceys0; void showm() set_color(gui_green); fill_circle (288, 50, 25); set_color(gui_red); fill_circle (280, 50, 10); fill_circle (296, 50, 10); fill_circle (288, 40, 10); fill_circle
21、(288, 60, 10); set_color(gui_yellow); fill_circle (288, 50, 5); set_color(gui_gray); /擦除上一分的 draw_line(x_line,y_line,*placexm,*placeym); placexm=placexm+1; placeym=placeym+1; set_color(gui_red); /顯示下一分的 draw_line(x_line,y_line,*placexm,*placeym); set_color(gui_green); /顯示下一時(shí)的 draw_line(x_line,y_line
22、,*placexh,*placeyh); if(placexm=&spacexm60&placeym=&spaceym60) placexm=&spacexm0; placeym=&spaceym0; void showh() set_color(gui_yellow); fill_circle (288, 50, 25); set_color(gui_green); fill_circle (280, 50, 10); fill_circle (296, 50, 10); fill_circle (288, 40, 10); fill_circle (288, 60, 10); set_co
23、lor(gui_red); fill_circle (288, 50, 5); set_color(gui_gray); /擦除上一時(shí)的 draw_line(x_line,y_line,*placexh,*placeyh); placexh=placexh+1; placeyh=placeyh+1; set_color(gui_green); /顯示下一時(shí)的 draw_line(x_line,y_line,*placexh,*placeyh); if(placexh=&spacexh12&placeyh=&spaceyh12) placexh=&spacexh0; placeyh=&space
24、yh0; void shouw_cricle() / 整 點(diǎn)set_color(gui_yellow); fill_circle (160, 30,2); / 12點(diǎn)(x,y,r) fill_circle (135, 35,2); / 11 點(diǎn)(x,y,r) fill_circle (115, 55,2); / 10 點(diǎn)(x,y,r) fill_circle (110, 80,2); / 9 點(diǎn)(x,y,r) fill_circle (115, 105,2); / 8 點(diǎn)(x,y,r) fill_circle (135, 125,2); / 7 點(diǎn)(x,y,r) fill_circle (16
25、0, 130,2); / 6 點(diǎn)(x,y,r) fill_circle (185, 125,2); / 5 點(diǎn)(x,y,r) fill_circle (205, 105,2); / 4 點(diǎn)(x,y,r) fill_circle (210, 80,2); / 3 點(diǎn)(x,y,r) fill_circle (205, 55,2); / 2點(diǎn)(x,y,r) fill_circle (185, 35,2); / 1點(diǎn)(x,y,r) set_color(gui_white); fill_circle (165, 31,1); fill_circle (170, 32,1); fill_circle (1
26、75, 33,1); fill_circle (180, 34,1); fill_circle (189, 39,1); fill_circle (193, 43,1); fill_circle (197, 47,1); fill_circle (201, 51,1); fill_circle (206, 60,1); fill_circle (207, 65,1); fill_circle (208, 70,1); fill_circle (209, 75,1); fill_circle (209, 85,1); fill_circle (208, 90,1); fill_circle (2
27、07, 95,1); fill_circle (206, 100,1); fill_circle (201, 109,1); fill_circle (197, 113,1); fill_circle (193, 117,1); fill_circle (189, 121,1); fill_circle (180, 126,1); fill_circle (175, 127,1); fill_circle (170, 128,1); fill_circle (165, 129,1); fill_circle (155, 129,1); fill_circle (150, 128,1); fil
28、l_circle (145, 127,1); fill_circle (140, 126,1); fill_circle (131, 121,1); fill_circle (127, 117,1); fill_circle (123, 113,1); fill_circle (119, 109,1); fill_circle (114, 100,1); fill_circle (113, 95,1); fill_circle (112, 90,1); fill_circle (111, 85,1); fill_circle (111, 75,1); fill_circle (112, 70,
29、1); fill_circle (113, 65,1); fill_circle (114, 60,1); fill_circle (119, 51,1); fill_circle (123, 47,1); fill_circle (127, 43,1); fill_circle (131, 39,1); fill_circle (140, 34,1); fill_circle (145, 33,1); fill_circle (150, 32,1); fill_circle (155, 31,1); void delay(int time);void changeform(char time
30、,char time) time0 = time / 10 + 48; time1 = time % 10 + 48; time2 = 0;void display_time(char x,char y) changeform(hour, hour); changeform(min, min); changeform(sec, sec); changeform(mon, mon); changeform(day, day); changeform(yea1, yea1); changeform(yea2, yea2); disp_string (hour,x,160); disp_string
31、 (:,x + 16,160); disp_string (min,x + 24,160); disp_string (:,x + 40,160); disp_string (sec,x + 48,160); disp_string (yea1,x , 180); disp_string (yea2,x +16,180); disp_string (,x + 32,180); disp_string (mon,x + 40,180); disp_string (,x + 56,180); disp_string (day,x + 64,180); void display_xh1(char x
32、x1,char yy1)/ changeform(xh0, xh0); changeform(xh1, xh1); changeform(xh2, xh2); changeform(xh3, xh3); changeform(xh4, xh4); disp_string (xh0,xx1,yy1); disp_string (xh1,xx1+16,yy1); disp_string (xh2,xx1+32,yy1); disp_string (xh3,xx1+48,yy1); disp_string (xh4,xx1+48,yy1); void display_xh2(char xx2,cha
33、r yy2)/ changeform(xh0, xh0); changeform(xh1, xh1); changeform(xh2, xh2); changeform(xh3, xh3); changeform(xh5, xh5); disp_string (xh0,xx2,yy2); disp_string (xh1,xx2+16,yy2); disp_string (xh2,xx2+32,yy2); disp_string (xh3,xx2+32,yy2); disp_string (xh5,xx2+48,yy2); void display_xh3(char xx3,char yy3)
34、/ changeform(xh0, xh0); changeform(xh1, xh1); changeform(xh2, xh2); changeform(xh6, xh6); changeform(xh7, xh7); disp_string (xh0,xx3,yy3); disp_string (xh1,xx3+16,yy3); disp_string (xh2,xx3+32,yy3); disp_string (xh6,xx3+48,yy3); disp_string (xh7,xx3+48,yy3); void show_color()set_color( gui_blue ); f
35、ill_rect(0,0,319,239); set_color(gui_red); set_bkcolor (gui_blue); fill_rect(0,0,319,2); fill_rect(0,0,2,239); fill_rect(0,237,319,239); fill_rect(317,0,319,239); set_color(gui_red); set_font (&chinese_font16);disp_string (cn_start姓名:cn_end,5,210);disp_string (cn_start學(xué)號:cn_end,210,210);set_color(gui_white ); fill_rect (79,17,242,20); /上線(x0,y0,x1,y1)fill_rect (79,20,82,202); /左線(x0,y0,x1,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 廣東司法警官職業(yè)學(xué)院《社會(huì)治理》2023-2024學(xué)年第一學(xué)期期末試卷
- 廣東省外語藝術(shù)職業(yè)學(xué)院《環(huán)境地學(xué)》2023-2024學(xué)年第一學(xué)期期末試卷
- 廣東輕工職業(yè)技術(shù)學(xué)院《工商管理基礎(chǔ)》2023-2024學(xué)年第一學(xué)期期末試卷
- 廣東茂名健康職業(yè)學(xué)院《清潔能源技術(shù)原理與應(yīng)用》2023-2024學(xué)年第一學(xué)期期末試卷
- 三年級數(shù)學(xué)計(jì)算題專項(xiàng)練習(xí)及答案
- 大學(xué)美育(河南財(cái)經(jīng)政法大學(xué))學(xué)習(xí)通測試及答案
- 2025年人教版八年級數(shù)學(xué)寒假復(fù)習(xí) 專題02 全等三角形(4個(gè)知識點(diǎn)回顧+5大題型歸納+過關(guān)檢測)
- 【名師一號】2021年新課標(biāo)版歷史-必修3-雙基限時(shí)練15
- 《糖尿病運(yùn)動(dòng)療法》課件
- 2021高考英語安徽黃山市語法填空及閱讀類自選練習(xí)(1)及答案
- 2023年鞍山市海城市教育局畢業(yè)生招聘筆試真題
- 北京2025年首都醫(yī)科大學(xué)附屬北京友誼醫(yī)院招聘140人歷年參考題庫(頻考版)含答案解析
- 遼寧省撫順縣2024-2025學(xué)年九年級上學(xué)期期末物理試卷(含答案)
- 2024-2025學(xué)年安徽省合肥市巢湖市三年級數(shù)學(xué)第一學(xué)期期末達(dá)標(biāo)測試試題含解析
- 浙江省寧波市九校2023-2024學(xué)年高一上期末聯(lián)考生物試題
- 《工商管理專業(yè)畢業(yè)實(shí)習(xí)》課程教學(xué)大綱
- 乳腺中心建設(shè)方案
- 國開電大本科《西方經(jīng)濟(jì)學(xué)(本)》網(wǎng)上形考(作業(yè)一至六)試題及答案
- 提高有風(fēng)險(xiǎn)患者預(yù)防跌倒墜床護(hù)理措施落實(shí)率品管圈PDCA案例匯報(bào)
- 安環(huán)部2025年度工作計(jì)劃
- 2024年行政執(zhí)法人員執(zhí)法資格知識考試題庫(附含答案)
評論
0/150
提交評論