实验一 单片机做流水灯并口简单應用(流水灯) 实验目的 1、了解单片机做流水灯汇编语言程序的基本结构 2、了解单片机做流水灯汇编语言程序的设计和调试方法 3、掌握顺序控制程序的简单编程 实验仪器 单片机做流水灯开发板、万利仿真机、稳压电源、计算机 实验原理 流水灯硬件电路
如图4-1所示流水灯硬件電路由移位寄存器74LS164、功能选择开关J502、二极管、三极管、单片机做流水灯并口(P0)、限流电阻等组成。发光二极管连接成共阳极结构发光②极管点亮的条件是:阳极接高电平、各阴极接低电平。因此通过程序控制74LS164的Q0端。Q0端输出0公共端阳极就接成高电平,然后再按一定规則从P0口输出数据发光二极管就会点亮。 图4-1 流水灯电路图
单片机做流水灯流水灯程序设计 由上图可知发光二极管要点亮,需要先把J502的2、3腳相连三极管Q500导通,然后从P0口输出数据 (1)控制三极管导通程序 控制三极管有两种方法,第一种:在74LS164的第8脚产生一个正脉冲此时1脚為0,三极管就导通;为1三极管就截止。 第二种:在单片机做流水灯IO模拟74LS164时序一次输出一个字节,只要Q0=0即可控制三极管开通为1,三极管截止
两种方法的程序流程如图4-2所示。 图4-2 流水灯位选信号控制 (2)产生流水灯效果程序 三极管导通后就可以从P0口输出数据控制发光二極管。P0口输出数据既可以编写程序逐个输出也可以将输出数据序列定义在存储器中,然后用读程序存储器指令逐个取出并输出到P0口 程序流程图如图4-3所示。 图4-3 流水灯程序流程图 实验内容 直接输出法输出数据序列 查表法输出数据序列
实验步骤及调试信息 1、新建实验项目shiyan1 2、输叺实验程序并补充完整 3、编译下载实验程序并修改错误(按附录说明) 原因:缺少主程序 4、加入主程序重新产生代码并装入,出现以下錯误 原因:单片机做流水灯堆栈指针不能是寄存器,而只能直接寻址所以28行的R7 应改成07。 修改后成功下载实验程序: 7、整理实验设备 实驗现象
实验从30H到8AH实现全部清零同时R0从30H逐渐递增到8AH,R7从5AH逐渐递减到00H内容1中STACK 由FFFF变成00FF,内容2中由FFFF变成006D 指示灯从左到右逐一变亮。 思考题 1、請把学号后两位数进转换成二进制数然后依次点亮其中为1对应的二极管,写出输出序列例如,60号转换成二进制后是0011