c语言编程流水灯与交通灯实验,C51单片机实验报告流水灯交通灯定时器双机交互时钟(10页)-原创力文档...

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

学 号:班 级: 自动化 10 班 姓 名: 张 指导老师: 胡

2019.12

单片机核心板实验要求

一、流水灯实验

、 实验目的:

) 简单 I/O 引脚的输出 2 ) 掌握软件延时编程方法 3 ) 简单按键输入捕获判断 2 、 完成功能要求

) 开机是点亮 12 发光二极管,闪烁三下 2 ) 按照顺时针循环依次点亮发光二极管

3 ) 通过按键将发光二极管的显示改为顺逆时针方式

二、定时器或实时时钟实验

、 实验目的

) 数码管动态显示技术 2 ) 定时器的应用 3 ) 按键功能定义 2 、 完成功能要求

) 通过按键可以设定定时时间,启动定时器,定时时间到,让 12 个发光二极管闪烁,完成定时器功能。

) 实时时钟,可以设定当前时间,完成钟表功能(四位数码管分别

显示分钟和秒)。

上述二个功能至少完成一种功能。

三、双机通信实验

1 、 实验目的

UART 串行通信接口技术应用 2 、 完成功能要求

用两片核心板之间实现串行通信,将按键信息互发到对方数码管显示。

四、交通灯实验

1 、 实验目的

1 )按键、数码管、发光二极管综合应用编程技术2 )数据存储于EEPRO的技术

(也可以不使用) 3 ) 定时中断技术 4 ) 按键中断技术 2 、 完成功能要求

) 对每个路口(主干道、次干道)的绿灯时间,及黄灯时间的设定。

)设定参数掉电后不丢失(如果不使用EEPRO,此功能可以不实现)。

) 紧急按键功能,当按下该键时,所有路口变成红灯,相当于交警指挥特殊车辆通 过。再按该键,恢复正常显示。

实验一 流水灯实验

一、实验目的 1 ) 简单 I/O 引脚的输出 2 ) 掌握软件延时编程方法 3 ) 简单按键 输入捕获判断 二、实验实现的功能 1 ) 开机是点亮 12发光二极管,闪烁三下 2 ) 按照 顺时针循环依次点亮发光二极管3 ) 通过按键将发光二极管的显示改为顺逆时针方式 三、

系统硬件设计

1 )如单片机核心板所示的硬件电路。 四、系统软件设计

设计思路:

1 )定义数组使得调用数组可以使 led 灯能够顺时针和逆时针显示; 2 )将按键的输 入端全部置零,做单独按键使用; 3 )利用“ while ”循环使得数码管可以闪烁三下;

)利用“ for ”循环使得小灯能够依次点亮一个周期; 5 )将以上思想汇总,编程, 实现功能。程序详见附录。

五、实验过程中遇到的问题及解决方法

1 )刚开始不知道怎样只设置一个管脚(如POP),查阅相关资料后知道表示方法,

并学会了用“ sbit ”语句定义,方便多了。

2)对于C语言的很多东西都不知道,语句的用法也不清楚,重新看了C语言,用到什

么看什么很快就懂了。

)主程序中没有用延时程序和死循环导致 led 不能点亮,请教同学以后才知道。 4 ) 对于按键只是不了解,看书又很模糊,看了网上“ KINGST 工作室”也就是“手把手教你学 单片机”的视频后很清楚明了,之后好多东西也是从上边学到,就不再赘述了。

指导老师签字: 日期:

实验二 定时器或实时时钟实验

一、实验目的 1 ) 数码管动态显示技术 2 ) 定时器的应用 3 ) 按键功能定义 二、 实验实现的功能 1 ) 通过按键可以设定定时时间,启动定时器,定时时间到,让 12个发

光二极管闪烁,完成定时器功能。 2 ) 实时时钟,可以设定当前时间,完成钟表功能 (四位数码管分别显示分钟和秒)。

上述二个功能至少完成一种功能。 三、系统硬件设计

1 )如单片机核心开发板所示的硬件电路。 四、系统软件设计 设计思路:

1 )做的是秒表定时器的实验;

)利用中断技术实现利用单片机定时器完成计时功能;

)定时器 1 计时中断程序每隔 0.001s 中断一次并当作一个计数,则 1000 次中断为

1 秒,然后十进制进位即可;

)在程序开始计数器不工作时设定一个值,当计数器工作时将时间与设定时间比较, 如果想等,计数器停止工作,小灯闪烁三下; 5 )将以上思想汇总,编程,实现功能。程 序详见附录。 五、实验过程中遇到的问题及解决方法

1 )最开始的时钟和秒表都没有用计时器和中断,但是也达到了实验要求,最后又改 用始终计时器,浪费了很多时间。

)不知道怎么使数码管显示不同数字,从网上学到用动态扫描来显示。

)认真学习了中断技术并运用之后,切实意识到中断技术是单片机的核心技术,数 码管显示也变得简单和稳定了。

)子程序中的参数传递不出来,在网上搜索以后知道了全局变量和局部变量,并知 道了“ void ”的作用。

)运用“!”符号后不用再麻烦的写“ key==0”, 很实用

指导老师签字:

实验三 双机通信实验

一、实验目的

1 )UART 串行通信接口

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值