C51单片机实验报告 流水灯 交通灯 定时器 双机交互 时钟

上传人:夏** 文档编号:543577024 上传时间:2023-06-07 格式:DOCX 页数:16 大小:38.60KB
返回 下载 相关 举报
C51单片机实验报告 流水灯 交通灯 定时器 双机交互 时钟_第1页
第1页 / 共16页
C51单片机实验报告 流水灯 交通灯 定时器 双机交互 时钟_第2页
第2页 / 共16页
C51单片机实验报告 流水灯 交通灯 定时器 双机交互 时钟_第3页
第3页 / 共16页
C51单片机实验报告 流水灯 交通灯 定时器 双机交互 时钟_第4页
第4页 / 共16页
C51单片机实验报告 流水灯 交通灯 定时器 双机交互 时钟_第5页
第5页 / 共16页
点击查看更多>>
资源描述

《C51单片机实验报告 流水灯 交通灯 定时器 双机交互 时钟》由会员分享,可在线阅读,更多相关《C51单片机实验报告 流水灯 交通灯 定时器 双机交互 时钟(16页珍藏版)》请在金锄头文库上搜索。

1、/Z 实验报告 沟单片机核心板实验、I学班姓椒31100800自动化10班张胡2012. 12单片机核心板实验要求一、流水灯实验1、实验目的:1)简单I/O引脚的输出2)掌握软件延时编程方法3)简单按键输入捕获判断2、完成功能要求1)开机是点亮12发光二极管,闪烁三下2 )按照顺时针循环依次点亮发光二极管3)通过按键将发光二极管的显示改为顺逆时针方式二、定时器或实时时钟实验1、实验目的1)数码管动态显示技术2)定时器的应用3)按键功能定义2、完成功能要求1)通过按键可以设定定时时间,启动定时器,定时时间到,让12 个发光二极管闪烁,完成定时器功能。2)实时时钟,可以设定当前时间,完成钟表功能(

2、四位数码管分别 显示分钟和秒)。上述二个功能至少完成一种功能。三、双机通信实验1、实验目的UART串行通信接口技术应用2、完成功能要求用两片核心板之间实现串行通信,将按键信息互发到对方数码管 显不。四、交通灯实验1、实验目的1)按键、数码管、发光二极管综合应用编程技术2)数据存储于EEPROM的技术(也可以不使用)3)定时中断技术4)按键中断技术2、完成功能要求1)对每个路口(主干道、次干道)的绿灯时间,及黄灯时间的 设定。2)设定参数掉电后不丢失(如果不使用EEPROM,此功能可以 不实现)。3)紧急按键功能,当按下该键时,所有路口变成红灯,相当于 交警指挥特殊车辆通过。再按该键,恢复正常显

3、示。实验一流水灯实验一、实验目的1)简单I/O引脚的输出2)掌握软件延时编程方法3)简单按键输入捕获判断二、实验实现的功能1)开机是点亮12发光二极管,闪烁三下2)按照顺时针循环依次点亮发光二极管3)通过按键将发光二极管的显示改为顺逆时针方式三、系统硬件设计1)如单片机核心板所示的硬件电路。四、系统软件设计设计思路:1)定义数组使得调用数组可以使led灯能够顺时针和逆时针显示;2)将按键的输入端全部置零,做单独按键使用;3)利用“while”循环使得数码管可以闪烁三下;4)利用“for”循环使得小灯能够依次点亮一个周期;5)将以上思想汇总,编程,实现功能。程序详见附录。五. 实验过程中遇到的问

4、题及解决方法1)刚开始不知道怎样只设置一个管脚(如POP),查阅相关资料后知道表示方法,并学会了用“sbit”语句定义,方便多了。2)对于C语言的很多东西都不知道,语句的用法也不清楚,重新看了 C语言,用 到什么看什么很快就懂了。3)主程序中没有用延时程序和死循环导致led不能点亮,请教同学以后才知道。4)对于按键只是不了解,看书乂很模糊,看了网上“KINGST工作室”也就是“手 把手教你学单片机”的视频后很清楚明了,之后好多东西也是从上边学到,就不 再赘述了。指导老师签字:日期:实验二定时器或实时时钟实验一、实验目的1)数码管动态显示技术2)定时器的应用3)按键功能定义二、实验实现的功能1)

5、通过按键可以设定定时时间,启动定时器,定时时间到,让12个发光二极 管闪烁,完成定时器功能。2)实时时钟,可以设定当前时间,完成钟表功能(四位数码管分别显示分钟和 秒)。上述二个功能至少完成一种功能。三、系统硬件设计1)如单片机核心开发板所示的硬件电路。四、系统软件设计设计思路:1)做的是秒表定时器的实验;2)利用中断技术实现利用单片机定时器完成计时功能;3)定时器1计时中断程序每隔0.001s中断一次并当作一个计数,则1000次中 断为1秒,然后十进制进位即可;4)在程序开始计数器不工作时设定一个值,当计数器工作时将时间与设定时间 比较,如果想等,计数器停止工作,小灯闪烁三下;5)将以上思想

6、汇总,编程,实现功能。程序详见附录。五、实验过程中遇到的问题及解决方法1)最开始的时钟和秒表都没有用计时器和中断,但是也达到了实验要求,最后乂改用始终计时器,浪费了很多时间。2)不知道怎么使数码管显示不同数字,从网上学到用动态扫描來显示。3)认真学习了中断技术并运用之后,切实意识到中断技术是单片机的核心技术, 数码管显示也变得简单和稳定了。4)子程序中的参数传递不出來,在网上搜索以后知道了全局变量和局部变量, 并知道了 “void”的作用。5)运用“!”符号后不用再麻烦的写“key=0”,很实用日期:实验三双机通信实验一、实验目的1)UART串行通信接口技术应用二、实验实现的功能1)用两片核心

7、板之间实现串行通信,将按键信息互发到对方数码管显示。三、系统硬件设计1)如单片机核心板所示的硬件电路。四、系统软件设计设计思路:1)该实验不对端口进行复杂操作,所以实验较简单;2)设定波特率并计算出“TH1”和” TL1”的值;3)对单片机进行初始化;4)通过键盘扫面程序读出按下降的键并给予相关的编号;5)输出编号;6)读入数过來的值;7)在数码管上显示;8)将以上思想汇总,编程,实现功能。程序详见附录。五、实验过程中遇到的问题及解决方法1)对CART技术不了解,看书和视频以后有了初步了解。2)按照课本上的程序模仿之后发现可以接收不能发送,认真查询程序发现了在 利用数码管显示时将“P0二0XF

8、7”直接将按键检测端口置高,按键无效了。3)解决问题二之后还是不能发送数据,最后检查发现直接用“IF仃D”不能有 效地开通发送标志位,所以用了先将初值赋值给一个数,检测之后比较,并用比 较结果进入发送允许,最后实现。实验四日期:交通灯试验一、实验目的1)按键、数码管、发光二极管综合应用编程技术2)数据存储于EEPROM的技术(也可以不使用)3)定时中断技术4)按键中断技术二、实验实现的功能1)对每个路口(主干道、次干道)的绿灯时间,及黄灯时间的设定。2)设定参数掉电后不丢失(如果不使用EEPROM,此功能可以不实现)。3)紧急按键功能,当按下该键时,所有路口变成红灯,相当于交警指挥特殊车 辆通

9、过。再按该键,恢复正常显示。三、系统硬件设计1)如单片机核心板所示的硬件电路。四、系统软件设计设计思路:1)该实验较麻烦,但是有实验一和实验二做铺垫思路也是很清晰地;2)交通灯为南北通东西停一一等待一一东西通南北停一一等待一一南北通东西 停依次循环,所以应该设计一个周期包含以上四步;3)计数器工作时比较计数器的值和所设定的置,确定范围,确定该范围内显示 的灯的种类;4)对于急停的情况,应该在每秒都检测一下键盘,如果键盘有输入,中断,执行全部红灯的程序;5)关于跳出急停程序,用“wh订e “循环和” if “语句实现;6)红绿灯和黄灯的显示时间在程序最开始计数器未开始工作室设定两个数的值;7)将

10、以上思想汇总,编程,实现功能。程序详见附录。五、实验过程中遇到的问题及解决方法1)该实验是一个综合性较强的实验,不过由于有实验一,实验二的铺垫,在技术上遇到的问题已经很少了,但是还是遇到一些问题。2)最开始的时钟和秒表都没有用计时器和中断,但是也达到了实验要求,最后 又改用始终计时器,浪费了很多时间。3)在急停之后如何出循环成为一个很大的困惑,最后运用了 “while”循环解决To4)发现用子程序以后会使程序简明不少。附录:实验一流水灯实验最终实现:按任意键反向,只是必须等到一 轮结束以后。程序如下:#include#defiiie uchar unsigned charsbit kol=P3

11、A6;sbit ko2=P3A7;sbit kil=P0A5;sbit ki2=P0A6;sbit ki3=P0A7;tabl=0xfe,0xfd.0xfb.0xf7,0xe0xdf0xbf,0x7f.0xff,0xff,0xff,0xff;tab2=0x30x3f.0x3f.0x3f,0x30x3f0x3f.0x3f.0x3b.0x37,0x2f0xlf;tab3=0xff,0xff,0xff.0xff0x7f.0xbf,0xdf,0xe f,0xf7,0xfb,0xfd,0xfe;tab4=0xlf,0x2f.0x37,0x3b.0x3f,0x3f,0x3fOx3f,Ox3f.Ox3fJ)

12、x3f,Ox3f;void Delay900msQ / 11.0592MHzunsigned char i,j, k;1=13;j = 156;k = 83;dodowhile (k); while (-j); wliile (i);void Delay 10ms()/ 11.0592MHzBffi:1= 108;J = 145;dowliile (j); wliile (一i);void fhck()uchar d;while(d=2)P2=0x00:P3=Oxc3;Delay900ms();P2=0xff;P3=0xff;Delay900ms();d+rvoid mam()uchar b.

13、yn; flickQ; while(l)y=(n%2);uchai x;foi(x=0;x12;x+) P2=tab3x;P3=tab4x;Delav900nis();kol=0;unsigned char i, j;ko2=0;kil=l;ki2=l;ki3=l;if(!kil |!ki2|!ki3) Delay 10nis();if(!kil|!ki2|!ki3)b+=l;while(!kil|!ki2 |!ki3);if(y=O)uchai- x;fbi(x=0;x12;x+)P2=tablx;P3=tab2x;Delay900ms();kol=0;ko2=0:kil=l;ki2=l;ki3=l;if(!kil|!ki2|!ki3)Delay 10nis();if(!kil|!ki2|ki3) b+=l;wlule(!kil|!ki2|!ki3);实验二定时器时钟实验门|最终实现:上电后设置定时时间,按2号键 时间+1,按3号键时间+100;按1号键开始 工作;时间到偶小灯闪烁3卜,回到初始状 态。程序如下:#include#defiiie uchar unsigned char#defiiie umt unsigned intsbit kol=P3A6:sbit ko2=P3A7;sbit kil=P0A5;sbit k

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 建筑资料

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号