




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
PAGEPAGE1單片機綜合實驗報告題目:模擬真實交通燈班級: 姓名: 學號: 指導老師: 時間:一、實驗內容:用8255芯片的PA、PB口低四位做輸出口,控制十二個發(fā)光二極管燃滅,模擬十字路口交通燈管理,并利用數(shù)碼顯示器進行倒計時顯示(采用單片機內部定時器定時)。通過外部中斷能使交通燈暫停運行,并點亮4個紅燈。通過16*16點陣中的圖形模擬控制行人過馬路的人形“走”、“?!敝甘緹?,可參考下圖所示。選做增加項目:在交通燈開始之前可通過開關對紅綠燈亮滅時間的初始值進行增、減設定或者交通燈暫停時加上樂曲報警。二、實驗電路及功能說明電路:74LS138譯碼器電路8255與發(fā)光二極管連線圖數(shù)碼LED顯示器電路(不需接線)16×16LED點陣顯示電要求:交通燈亮滅過程同“8255控制交通燈實驗”,倒計時顯示只需兩位數(shù)(0~99),用定時器定時進行倒計時,每秒鐘減1。在16*16點陣中顯示的人形“走”、“停”標志可自定義,由專門軟件可轉換為相應顯示代碼,不需自己推理。三、實驗程序流程圖:主程序:子程序:詳細程序請參考程序清單。四、實驗結果分析對程序進行仿真可以觀察到:點陣中交替顯示如圖(a)、(b)所示圖像,且交替顯示時間為30秒。當顯示圖像為(a)時,表示可以容行人通過,限時30秒;當顯示圖像為(b)時,表示不容行人通過,也限時30秒。如此,在十字路口各置一對點陣即可模擬實景。五、心得體會通過此次實驗,對單片機的I/O口的使用的條件有了更深的理解,對單片機的各個管腳功能的理解也加深了,以及在常用編程設計思路技巧的掌握方面也向前邁了一大步。這次的課程設計讓我把單片機的理論知識應用在實踐中,實現(xiàn)了理論和實踐相結合,從中更懂得理論是實踐的基礎,實踐有助于檢驗理論的正確性的道理,對我以后參加工作或者繼續(xù)學習深造將產生巨大的幫助和影響。六、程序清單#include<reg51.h>#include<absacc.h>#defineucharunsignedchar#defineuintunsignedint#defineROW1XBYTE[0XFFE3]#defineROW2XBYTE[0XFFE0]#defineCOL1XBYTE[0XFFE2]#defineCOL2XBYTE[0XFFE1]#definePAXBYTE[0xffd8]#definePBXBYTE[0xffd9]#defineCTLXBYTE[0xffdb]#defineSEGXBYTE[0xffdc]#defineBITXBYTE[0xffdd]#defineallredend10#defineewredend2*ewstarter+allredend#definesnyellowendewredend+10#definesnredendsnyellowend+2*snstarter#defineewyellowendsnredend+10sbitKEY1=P1^0;sbitKEY2=P1^1;sbitKEY3=P1^2;sbitP32=P3^2;uchartongBu;ucharcodeewTable[]={0xb6,0x75,0xf3,0xf7,0xae,0x9e,0xbe};ucharcodensTable[]={0xd,0xd,0xc,0xd,0xb,0x7,0xf};//uchartempa,tempb;inttime=1,cnt,change,intflag,inttime=1,ewstarter=10,snstarter=15;inttempseg;ucharkey1=0;ucharbuffer[]={0,0,0,0,0,0};uchartable[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0xff};/*--行走--*//*--寬度x高度=16x16--*/ucharcodeled1[]={0x01,0x80,0x02,0x40,0x02,0x40,0x01,0x80,0x03,0xC0,0x06,0x60,0x0A,0x50,0x0A,0x50,0x0B,0xD0,0x12,0x48,0x02,0x40,0x02,0x60,0x04,0x20,0x04,0x20,0x08,0x20,0x18,0x60};/*--停止--*//*--寬度x高度=16x16--*/ucharcodeled2[]={0x01,0x80,0x02,0x40,0x02,0x40,0x01,0x80,0x07,0xE0,0x7E,0x7E,0x02,0x40,0x02,0x40,0x03,0xC0,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x03,0xC0};/*--文字:高--*//*--Fixedsys12;此字體下對應的點陣為:寬x高=16x16--ucharcodeled2[]={0x02,0x00,0x01,0x00,0xFF,0xFE,0x00,0x00,0x0F,0xE0,0x08,0x20,0x0F,0xE0,0x00,0x00,0x7F,0xFC,0x40,0x04,0x4F,0xE4,0x48,0x24,0x48,0x24,0x4F,0xE4,0x40,0x14,0x40,0x08};*/voiddelayshort(){ charn; for(n=50;n>0;n--);}ucharchangeleft(ucharled){ uchartemp; temp=0; temp|=(led<<7)&0x80; temp|=(led<<5)&0x40; temp|=(led<<3)&0x20; temp|=(led<<1)&0x10; temp|=(led>>1)&0x08; temp|=(led>>3)&0x04; temp|=(led>>5)&0x02; temp|=(led>>7)&0x01; return(temp);}voidled16_16display(uchar*table,ucharlength){ uchari=length/2,scan1=0x1,scan2=0x1; for(i=0;i<16;i++) { if(i<8) { ROW1=0; ROW2=0; COL1=scan1; COL2=0; ROW1=changeleft(table[2*i]); ROW2=table[2*i+1]; COL1=scan1; COL2=0; delayshort(); scan1<<=1; } else { ROW1=0; ROW2=0; COL1=0; COL2=scan2; ROW1=changeleft(table[2*i]); ROW2=table[2*i+1]; COL1=0; COL2=scan2; delayshort(); scan2<<=1; } }}voidchangeseg(){ if(key1==0) { buffer[3]=10; buffer[0]=10; buffer[5]=tempseg%10; buffer[4]=tempseg/10; buffer[2]=tempseg%10; buffer[1]=tempseg/10; } elseif(key1==1) { buffer[3]=10; buffer[0]=10; buffer[5]=ewstarter%10; buffer[4]=ewstarter/10; buffer[2]=ewstarter%10; buffer[1]=ewstarter/10; } else { buffer[3]=10; buffer[0]=10; buffer[5]=snstarter%10; buffer[4]=snstarter/10; buffer[2]=snstarter%10; buffer[1]=snstarter/10; }}voidtimer1()interrupt3{ staticuchartemp=0x20,cnt1; TH1=(65536-1000)/256; TL1=(65536-1000)%256; changeseg(); SEG=0xff; SEG=table[buffer[cnt1]]; cnt1++; if(cnt1==6) cnt1=0; BIT=temp; temp>>=1; if(temp==0) temp=0x20;}voidint_0()interrupt0{ delayshort(); if(P32==0) { PA=0xB6; PB=0xd; PT0=1; PT1=1; intflag=1; while(inttime<=20) led16_16display(led2,32); inttime=1; intflag=0; PT0=0; PT1=0; PA=ewTable[tongBu]; PB=nsTable[tongBu]; }}voidtimer0()interrupt1{ TH0=(65536-50000)/256; TL0=(65536-50000)%256; cnt++; if(cnt==5) { cnt=0; if(intflag==1) { inttime++; tempseg=10-inttime/2; } else { time++; if(time<=allredend) { tongBu=0; PA=ewTable[tongBu]; PB=nsTable[tongBu]; tempseg=allredend/2-(time+1)/2; } elseif((time>allredend)&&(time<=ewredend)) { tongBu=1; PA=ewTable[tongBu]; PB=nsTable[tongBu]; tempseg=ewstarter+allredend/2-(time+1)/2; } elseif((time>ewredend)&&(time<=snyellowend)) { if(change==0) { tongBu=2; PA=ewTable[tongBu]; PB=nsTable[tongBu]; change=1; } else { tongBu=3; PA=ewTable[tongBu]; PB=nsTable[tongBu]; change=0; } tempseg=ewstarter+allredend/2+5-(time+1)/2; } elseif((time>snyellowend)&&(time<=snredend)) { tongBu=4; PA=ewTable[tongBu]; PB=nsTable[tongBu]; tempseg=ewstarter+allredend/2+5+snstarter-(time+1)/2; } elseif((time>snredend)&&(time<=ewyellowend)) { if(change==0) { tongBu=5; PA=ewTable[tongBu]; PB=nsTable[tongBu]; change=1; } else { tongBu=6; PA=ewTable[tongBu]; PB=nsTable[tongBu]; change=0; } tempseg=ewstarter+10+allredend/2+snstarter-(time+1)/2; } else { tongBu=1; time=allredend+1; PA=ewTable[tongBu]; PB=nsTable[tongBu]; tempseg=ewstarter+allredend/2-(time+1)/2; } } }}voidkey(){ ucharkeynum; keynum=~(P1|0XF8); switch(keynum) { case0x1: while(KEY1==0)led16_16display(led2,32); key1++; TR0=0; if(key1==3) { key1=0; TR0=1; } break; case0x2: while(KEY2==0)led16_16display(led2,32); if(key1==1) { ewstarter++; if(ewstarter==100) ewstarter=0; } if(key1==2) { snstarter++; if(snstarter==100) snstarter=0; } break; case0x4: while(KEY3==0)led16_16display(led2,32); if(key1==1) { ewstarter--; if(ewstarter==-1)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年HDTV彩色顯像管及其材料和部件合作協(xié)議書
- 佛山國五道路施工方案
- 2024-2025學年下學期高一語文第四單元B卷
- 科學合理施用肥料對農產品質量的影響及高效解決措施研究
- 專項施工方案評審
- 智研咨詢發(fā)布:中國海纜敷設船行業(yè)市場發(fā)展環(huán)境及前景研究報告
- 新未來大學英語 視聽說教程1(智慧版) 聽力腳本 Unit 6
- 新課標下高中生物生活化教學策略研究
- 江西省贛州市2024-2025學年高一上學期1月期末考試政治試題2
- 高考物理一輪復習課時跟蹤檢測(三十一)磁場的描述磁場對電流的作用(重點高中)
- 新版(七步法案例)PFMEA
- 臨床護理重點專科建設項目評審標準
- 新蘇教版科學五年級下冊全套教學課件
- 審計部組織架構及崗位設置
- 流行性乙型腦炎PPT課件
- 深圳市軌道交通線網規(guī)劃(2016_2035)(草案)
- 400V電纜分支箱生產實用工藝流程
- 四十二式太極劍劍譜
- 完整解讀2021年《建設工程抗震管理條例》PPT教學講座課件
- 新版小學英語PEP四年級下冊教材分析(課堂PPT)
- 食用植物油生產許可證審查細則.doc
評論
0/150
提交評論