资源描述:
《中山大学实验报告模板微机交通灯报告》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、中山大学实验报告SUNYAT-SENUNIVERSITY院(系)学号审批专业实验人实验题目:实验八:交通灯控制一、实验目的通过并行接口8255实现十字路口交通灯的模拟控制,进一步掌握对并行口和计数器8253的使用。二、实验内容(一)十字路口交通信号灯控制系统的设计基本要求:(1)南北与东西方向,每个方向由红黄绿三个灯控制(2)南北向: 红(30秒),黄(5秒),绿(25秒) 东西向:红(35秒),黄(5秒),绿(25秒) 采用8253定时,上述基本参数可以根据实际情况自行调整,灯的变化规律与实际路口规律相同,绿灯在最后5秒钟时,黄灯亮,然后红灯亮,不允许两个方向同时亮绿灯。(
2、3)绿灯的时间在数码管上进行显示。(二)要求二:完成上述要求后,有条件的同学可以尝试以下工作:(1)设计一个紧急控制开关信号,当紧急开关信号为1时,两个方向的灯全为红灯。紧急开关撤消后,按照开关按下之前的状态继续运行(其参数要保存)。(2)设计一个夜间行车开关,当开关按下后,两个方向都只有黄灯闪烁,其它灯熄灭。根据要求,同学们做好预习,画好流程图,设计好基本程序。三.实验流程图四.实验流程图开始设置8255A口输出C口输出从键盘接收字符大于0且小于9吗?N设8253计数器0为方式3,写入初值10000;设计数器1为工作方式0,初值为读入字符大小乘以100。Y检测8253的计数值是
3、否比上一次计数值大NY显示绿灯的时间绿灯的时间减1绿灯的时间减为0了吗?NY重置绿灯的时间并改变灯的显示状态返回DOSC口输出点亮相应的灯五、实验程序:datasegmentio8255aequ28ahio8255bequ28bhio8255cequ288hio8253aequ280hio8253bequ281hio8253cequ283hleddb3fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fhmesg1db0dh,0ah,'Inputanum(1--9),otherkeyisexit:','$'mesg2db0dh,0ah,'Error!','$
4、'seconddb?tldb?nowdb?dataendscodesegmentassumecs:code,ds:datastart:movax,datamovds,axmovdx,io8255b;设8255为A口输出,C口输入movax,89houtdx,almovdx,io8253c;设8253计数器0为方式3moval,36houtdx,almovdx,io8253amovax,10000;写入计数器0初值10000outdx,almoval,ahoutdx,almovax,csmovds,axmovdx,offsetint3movax,250bhint21h;设置IRQ3
5、的中断矢量inal,21h;读中断屏蔽寄存器andal,0f7h;开放IRQ3中断out21h,almovax,datamovds,axinput:movdx,offsetmesg1;显示提示信息movah,9int21hmovax,0c01h;清空缓存并读入一个字符int21hcmpal,'1';检测是否为1--9jlexitcmpal,'9'jgexitjmpnextexit:movdx,2a8hmoval,0outdx,almovdx,io8255cmoval,0outdx,almovah,4chint21hnext:subal,30h;字符经过处理后为绿灯亮的秒数,存入s
6、econd的第二位movbl,10mulblsubal,5movsecond,almovtl,alsti;开中断ld:moval,second;亮灯1movah,0movcx,axmovdx,2a8hmoval,81houtdx,almovnow,all1:calldelaymovah,0bhint21hcmpal,0ffhjzinputloopl1movdx,2a8h;亮灯2moval,82houtdx,almovnow,almovcx,5l2:moval,tlmovbx,offsetled;使BX指向段码管首址xlatmovdx,io8255coutdx,alcalldela
7、ydectlmovah,0bhint21hcmpal,0ffhjzinputloopl2moval,5movtl,almovdx,io8255c;关数码管moval,0outdx,almoval,second;亮灯3movah,0movcx,axmovdx,2a8hmoval,24houtdx,almovnow,all3:calldelaymovah,0bhint21hcmpal,0ffhjnznext1jmpinputnext1:loopl3movdx,2a8h;亮灯4mova