




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
PAGE1班級:自動化1004學(xué)號:班級:自動化1004學(xué)號:10401701305姓名:甘顯豪指導(dǎo)教師:成績:課程設(shè)計報告設(shè)計任務(wù)一十字路口交通燈控制一、設(shè)計目的:1.了解基于ARM7核的LPC2106的管腳功能和特點,掌握I/O控制寄存器的設(shè)置方法;2.掌握ARM7應(yīng)用系統(tǒng)編程開發(fā)方法,能用C語言編寫應(yīng)用程序;3.熟練掌握ADS1.2軟件的使用以及PROTEUS仿真調(diào)試的方法;二、具體任務(wù):1.采用PROTEUS完成十字路口交通燈控制的硬件電路設(shè)計,要求單片機選型為飛利浦公司的LPC2106,東西南北方向分別設(shè)置紅黃綠3個指示燈,東西方向和南北方向各用1個數(shù)碼管顯示通行時間;2.用ADS1.2編寫C語言應(yīng)用程序,完成十字路口交通燈控制;3.采用PROTEUS將應(yīng)用程序裝載在LPC2106中,進行仿真驗證。要求東西方向和南北方向的數(shù)碼管顯示通行時間并倒計時,可以設(shè)置成一樣,例如都是9秒倒計時;每當(dāng)?shù)褂嫊r時間到,完成紅黃綠指示燈的狀態(tài)切換,模擬實現(xiàn)十字路口的交通燈管理控制。三、硬件電路設(shè)計。(參考下圖完成硬件電路設(shè)計,用屏幕抓圖的方式將自己設(shè)計的PROTEUS電路圖粘貼在下面,并用文字對所設(shè)計的電路功能、原理進一步說明)附圖:硬件電路說明:復(fù)位電路,時鐘電路(仿真可略),ARM7微處理器LPC2106,南北、東西道路交通燈,東西南北左轉(zhuǎn)彎燈交通計時共陰顯示數(shù)碼管。交通規(guī)則:(1)首先是東西方向綠燈亮10s(從15s減到5s),然后東西黃燈閃爍5次,接著是東西左轉(zhuǎn)彎綠燈亮10s,然后是東西左轉(zhuǎn)彎綠燈閃爍5s;(2)南北方向方向綠燈亮10s,然后南北黃燈閃爍5次,接著是南北左轉(zhuǎn)彎綠燈亮10s,然后是南北左轉(zhuǎn)彎綠燈閃爍5s(沒提到的方向都是紅燈亮)。四、源程序。(只將C語言應(yīng)用程序附在后面,其它項目文檔不要提供,C語言應(yīng)用程序要有一定的注釋說明)源程序:#include"config.h"#include"LPC2106.h"voiddelay(unsignedintx)//延遲0.xMS{while(x--){unsignedcharj;for(j=0;j<125;j++){;}}}uint8led[]={0x3f,0x06,0x5b,0x4f,0x66, 0x6d,0x7d,0x07,0x7f,0x6f}; //共陰數(shù)碼管段選值voiddisplay() //數(shù)碼管顯示{ uint8i=15; while(i-5) { IOSET=(led[i/10]<<13)|(led[i%10]<<6); delay(5000); IOCLR=(led[i/10]<<13)|(led[i%10]<<6);i--; } }intmain(void){ uint8k; int8type=1; PINSEL0=0x00000000;//將管腳設(shè)置為通用IO端口GPIO PINSEL1=0x00000000; IODIR=0xFFFFFFFF;//將方向寄存器IODIR全設(shè)為輸出=1while(1){ switch(type) { case1: //東西綠燈亮,南北紅燈亮 IOSET=0x00600021; display(); k=5;//東西黃燈閃爍 while(k) { IOSET=0x00000010; IOSET=(led[k/10]<<13)|(led[k%10]<<6); delay(3000); IOCLR=0x00000010; IOCLR=(led[k/10]<<13)|(led[k%10]<<6); delay(3000); k--; } /*東西左轉(zhuǎn)彎綠燈亮*/ IOCLR=0x00600021; IOSET=0X00500009; display(); type=2; break; case2://東西左轉(zhuǎn)彎綠燈閃爍 k=5; while(k) { IOSET=0x00100000; IOSET=(led[k/10]<<13)|(led[k%10]<<6); delay(3000); IOCLR=0x00100000; IOCLR=(led[k/10]<<13)|(led[k%10]<<6); delay(3000); k--; } type=3; break; case3: //南北綠燈亮,東西紅燈亮 IOCLR=0x00000001; IOSET=0x0060000C; display(); k=5;//南北黃燈閃爍 while(k) { IOSET=0x00000002; IOSET=(led[k/10]<<13)|(led[k%10]<<6); delay(3000); IOCLR=0x00000002; IOCLR=(led[k/10]<<13)|(led[k%10]<<6); delay(3000); k--; } /*南北左轉(zhuǎn)彎綠燈亮*/ IOCLR=0X0060000C; IOSET=0x00A00009; display(); type=4; break; case4://南北左轉(zhuǎn)彎綠燈閃爍 k=5; while(k) { IOSET=0x00800000; IOSET=(led[k/10]<<13)|(led[k%10]<<6); delay(3000); IOCLR=0x00800000; IOCLR=(led[k/10]<<13)|(led[k%10]<<6); delay(3000); k--; } type=1; IOCLR=0xFFFFFFFF;//全部清零 } }} 五、仿真效果。(用屏幕抓圖的方式將PROTEUS運行仿真效果圖粘貼在下面)設(shè)計任務(wù)二uC/OS-Ⅱ的移植與應(yīng)用一、設(shè)計目的:1.了解嵌入式實時操作系統(tǒng)uC/OS-Ⅱ可移植、可裁剪等性能特點,正確理解實時操作系統(tǒng)中任務(wù)、信號、消息、中斷等基本概念以及uC/OS-Ⅱ多任務(wù)管理的調(diào)度算法;2.掌握uC/OS-Ⅱ在ARM7上移植的方法;3.能將uC/OS-Ⅱ移植在LPC2106中,并根據(jù)具體要求創(chuàng)建用戶任務(wù),解決實際問題;二、具體任務(wù):1.uC/OS-Ⅱ移植在LPC2106中。2.編寫用戶任務(wù)程序,完成實時溫度的采集控制。硬件電路見參考硬件電路圖,圖中用滑動變阻器代替溫度傳感器轉(zhuǎn)換后的電壓,用ADC0809完成A/D轉(zhuǎn)換,并用數(shù)碼管顯示出來。三、參考硬件電路。(用文字對所設(shè)計的電路功能、原理做詳細說明)附圖:硬件電路說明:復(fù)位電路,時鐘電路(仿真可略),ARM7微處理器LPC2106,溫度電壓值輸入電路,A/D轉(zhuǎn)換器ADC0808(8bit),按鍵電路SW,四位數(shù)碼管顯示電路。四、源程序。(只將C語言應(yīng)用程序附在后面,其它項目文檔不要提供,C語言應(yīng)用程序要有一定的注釋說明)源程序:/********************************************************************************************************/#include"config.h"#defineTASK_STK_SIZE64#definekey0x00001000//按鍵#defineadstart0x00002000//AD采樣開始#defineadend0x00004000//AD結(jié)束constuint32led_code[16]={0x0000003F,0x00000006,0x0000005B,0x0000004F,0x00000066,0x0000006D,0x0000007D,0x00000007,0x0000007F,0x00000006F,0x00000077,0x0000007C,0x00000039,0x0000005E,0x00000079,0x00000071};OS_STKTask0Stk[TASK_STK_SIZE];OS_STKTask1Stk[TASK_STK_SIZE];OS_STKTask2Stk[TASK_STK_SIZE];INT32Ui;voidTask0(void*data);voidTask1(void*data);voidTask2(void*data);/***********************************************************************************************************函數(shù)名稱:main**功能描述:c語言的主函數(shù),由它啟動多任務(wù)環(huán)境********************************************************************************************************/intmain(void){ OSInit(); OSTaskCreate(Task0,(void*)0,&Task0Stk[TASK_STK_SIZE-1],1); OSTaskCreate(Task1,(void*)0,&Task1Stk[TASK_STK_SIZE-1],2); OSTaskCreate(Task2,(void*)0,&Task2Stk[TASK_STK_SIZE-1],3); OSStart(); return0;}voiddelay(INT32Ut){ uint32x,y; for(x=t;x>0;x--) for(y=110;y>0;y--);}voidL_Init(void)//初始化{PINSEL0=0x00000000;PINSEL1=0x00000000;IODIR|=0x00002fFF;}/***********************************************************************************************************函數(shù)名稱:Task0**功能描述:μCOS-II的第一個任務(wù),通常由它初始化目標板和建立其它任務(wù)********************************************************************************************************/voidTask0(void*p_arg){p_arg=p_arg;TargetInit();L_Init();for(;;){while((IOPIN&key)!=0);//假如按鍵沒有按下,則一直循環(huán)在這里L(fēng)_Init();while((IOPIN&key)==0);//按鍵被按下又彈起,程序順序執(zhí)行IOCLR=0x0000ffFF;OSTaskSuspend(OS_PRIO_SELF);//OSTimeDlyHMSM(0,0,0,8);//IOSET=adstart;//OSTimeDlyHMSM(0,0,0,1);//IOCLR=adstart;//OSTimeDlyHMSM(0,0,0,1);//IOSET=adstart;}}/******************************************************************************************************函數(shù)名稱:Task1**功能描述:μCOS-II的第2個任務(wù),AD轉(zhuǎn)換********************************************************************************************************/voidTask1(void*p_arg){p_arg=p_arg;L_Init();for(;;){ IOCLR=adstart;//輸入高低的脈沖電平 delay(100); IOSET=adstart; delay(100); IOCLR=adstart; delay(100); L_Init();while((IOPIN&adend)==0); IOSET=1<<11;//11位為AD的OE使能端 //OSTimeDlyHMSM(0,0,0,50); i=IOPIN; i=i>>15;//AD的輸出OUT8到OUT1分別由15到22位控制 OSTaskSuspend(OS_PRIO_SELF);}}/******************************************************************************************************函數(shù)名稱:Task2**功能描述:μCOS-II的第3個任務(wù),LED顯示********************************************************************************************************/voidTask2(void*p_arg){ INT32Ugw,sw,bw;p_arg=p_arg;L_Init(); //動態(tài)循環(huán)顯示數(shù)碼管 while((IOPIN&key)!=0)//假如按鍵再次按下,則推出顯示循環(huán){ g
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 哈爾濱醫(yī)科大學(xué)《書畫裝裱》2023-2024學(xué)年第二學(xué)期期末試卷
- 廣東工程職業(yè)技術(shù)學(xué)院《工程招投標與概預(yù)算》2023-2024學(xué)年第二學(xué)期期末試卷
- 江蘇航運職業(yè)技術(shù)學(xué)院《中學(xué)語文教學(xué)設(shè)計與技能訓(xùn)練(二)》2023-2024學(xué)年第二學(xué)期期末試卷
- 黑龍江司法警官職業(yè)學(xué)院《模擬電子技術(shù)課程設(shè)計》2023-2024學(xué)年第二學(xué)期期末試卷
- 廣東司法警官職業(yè)學(xué)院《數(shù)字特效合成》2023-2024學(xué)年第二學(xué)期期末試卷
- 天津工藝美術(shù)職業(yè)學(xué)院《衛(wèi)生檢驗綜合技術(shù)》2023-2024學(xué)年第二學(xué)期期末試卷
- 東莞職業(yè)技術(shù)學(xué)院《計算機與操作系統(tǒng)》2023-2024學(xué)年第二學(xué)期期末試卷
- 武漢工程科技學(xué)院《外國文學(xué)名篇》2023-2024學(xué)年第二學(xué)期期末試卷
- 2025三年級湘教版語文下學(xué)期期末知識點歸納復(fù)習(xí)周末練習(xí)單
- PROMIS-評分量表-使用版
- 軟壓光機計算說明
- 森林防火安全責(zé)任書(施工隊用)
- 《汽車性能評價與選購》課程設(shè)計
- 35kV絕緣導(dǎo)線門型直線桿
- 水庫應(yīng)急搶險與典型案例分析
- 49式武當(dāng)太極劍動作方位
- 工程成本分析報告(新)
- 國際學(xué)術(shù)會議海報模板16-academic conference poster model
- 經(jīng)典誦讀比賽評分標準【精選文檔】
- 高值耗材參考目錄
- 步兵戰(zhàn)斗動作
評論
0/150
提交評論