一、实验目的与要求
1.熟悉 Keil C51 集成环境软件的使用方法。
2.熟悉 MCS51 汇编指令,能自己编写简单的程序,控制硬件。
3.熟悉畅学开发平台,掌握单片机最小系统及 IO 口的简单控制及不同组 IO 口的特点。二、实验内容
1、熟悉Keil C51集成环境软件的安装和使用方法。
2、照接线图编写程序,完善给出程序,实现以下功能。
要求LED灯实现从上到下依次点亮,再从下到上依次点亮。完成后实现从两侧向中间循环点亮,再从中间往外循环点亮。功能完成后循环上述过程。
3、观察实验结果,验证程序是否正确。2.1 实验完成内容
1、延时实现LED流水灯效果,p1端口的八个灯作跑马灯。在本实验中,p1作为输出口,接8只发光二极管,编写程序,使发光二极管循环点亮。
本例实验主要用到了延时子程序,CLR、AJMP、RRC、RLC、CALL等指令,通过轮流点亮p0.0,….p0.7实现效果。
2、照接线图编写程序,完善给出程序,实现功能:LED灯实现从上往下依次点亮,在从下往上依次点亮。完成后实现从两侧到中间循环点亮,在从中间向外循环点亮。功能完成后循环上述过程。
2.2 芯片选型
STC12C5A60S22.3 电路原理图
2.4 关键资源说明(所应用单片机内部资源及外围接口芯片的核心说明)
畅学系列开发平台一套;
PC 机一台;
内部:累加器A,寄存器R4和进位标志位C以及外部外部I/O接口与P1口。2.5 设计分析
为了实现跑马灯的效果,即:LED依次点亮(循环),就是要求从P1口: P1.0至P1.7依次输出低电平,当某引脚为低电平时,其余引脚都输出高电平。
从输出的数据分析:
第一个LED点亮时,对应的是P1.0的位为0,其余位为1,组合为一个二进制位从高到低为:1111 1110,即十六 进制数0xFE;同理,第二个LED点亮对应的数为:1111 1101,化为十六进制数为0xF