程序点评:数据传送指令MOV将一组数据分别传送到P1口,做了输出口的操作。将8位立即数传送给累加器A,再由累加器A将数据传送到I/O接口的P1口,使P1.0灯亮。在I/O接口输出操作时不能将间接寄存器中的地址输出到P1口。......
2023-11-07
1.【例2-10】 设计8个发光二极管逐一依次循环闪烁的程序
1)逐一依次循环闪烁设计方案。
逐一依次循环闪烁:“逐一”表示某时刻仅能有一个发光二极管亮;“依次”表示I/O接口各位的发光二极管按顺序亮;“循环”表示I/O接口各位的灯逐一依次无固定次数的不停闪烁;“闪烁”表示I/O接口各位的发光二极管有亮有灭。
方案说明:图2-1中深色的符号表示发光二极管亮,浅色的符号表示发光二极管不亮。I/O接口位N=00~07。
图2-1 发光二极管逐一依次闪烁
2)程序设计(一)。
实例程序运行效果:操作单片机键盘,手工输入该机器码程序并运行后,从00位的发光二极管开始逐一依次亮1s且循环闪烁。
程序(一)点评:在关闭上一个发光二极管的同时开启下一个发光二极管,关闭与开启之间没有时间间隔。
3)程序设计(二)。
实例程序运行效果:操纵单片机键盘,手工输入该机器码程序并运行后,从00位的发光二极管开始逐一亮1s后灭1s,依次亮、灭循环闪烁。
程序(二)点评:在关闭上一个发光二极管后,延时再开启下一灯,关闭与开启之间有1s的时间间隔。
2.【例2-11】 设计8个发光二极管逐对依次循环闪烁的程序
(1)逐对依次循环闪烁设计方案
逐对依次循环闪烁:“逐对”表示某时刻能有两个发光二极管亮;“依次”表示I/O接口各位的灯按一定顺序两两亮;“循环”表示I/O接口各位的发光二极管逐对依次无固定次数的不停两两亮灭;“闪烁”表示I/O接口各位的发光二极管又有亮有灭。
方案说明:图2-2中深色的符号表示发光二极管亮,浅色的符号表示发光二极管不亮。I/O接口位N=00~07。(www.chuimin.cn)
图2-2 发光二极管逐对依次闪烁
(2)程序
实例程序运行效果:操作单片机键盘,手工输入该机器码程序并运行程序后,从03位与04位的发光二极管开始逐对亮1s后,灭1s再依次按1s的时间间隔亮、灭下一对发光二极管,且循环闪烁。
程序点评:在关闭上一对发光二极管1s后,开启下一对,关闭与开启之间有1s的时间间隔。
3.【例2-12】 设计8个发光二极管逐一递增循环闪烁的程序
(1)逐一递增循环闪烁程序设计方案
逐一递增循环闪烁:“逐一递增”表示某时刻从00位发光二极管开始亮,下一时刻递增到2个发光二极管亮,再下一时刻递增到3个发光二极管,依次递增;“循环”表示无固定次数的亮灭;“闪烁”表示发光二极管有亮有灭。
图2-3 发光二极管逐一递增循环闪烁
图案说明:图2-3中深色的符号表示发光二极管亮,浅色的符号表示发光二极管不亮。I/O接口位N=00~07。
(2)程序
实例程序运行效果:操作单片机键盘,手工输入该机器码程序并运行程序后,从00位发光二极管开始亮起,1s后01位的灯,随着时间一秒秒增加发光二极管也随之一个个增加。当8个发光二极管全后,延时1s全部熄灭再重新开始循环闪烁。
程序点评:亮发光二极管是1s增加一个,而灭发光二极管是8个一起。
有关零起点学习单片机多语言编程的文章
程序点评:数据传送指令MOV将一组数据分别传送到P1口,做了输出口的操作。将8位立即数传送给累加器A,再由累加器A将数据传送到I/O接口的P1口,使P1.0灯亮。在I/O接口输出操作时不能将间接寄存器中的地址输出到P1口。......
2023-11-07
调试的目的是发现程序的错误。主要是观察工作寄存器、片内RAM单元、SFR及转移的地址位置是否正确,软仿真调试窗口如图3-8所示。2)单击调试菜单上的“外围设备→I/O→Port→Port 1”,I/O接口图标显示P1口状态。经过指令“CPL P1.0”,I/O接口图标显示P1口状态可看到P1.0=0。图3-8软仿真调试窗口4)在调试菜单中单击“单步”按钮,再一下下按动键盘上的“F10”键,程序则一条条执行。......
2023-11-07
可进行置位、复位、取反、等于0转移、等于1转移且清“0”、逻辑运算以及与可寻址位之间传送数据的操作。MCS51系列单片机的I/O接口位输入、输出操作指令只能通过累加位C进行。本例中使用了I/O接口置位清“0”输出操作指令,而例3-1使用了I/O接口按口输出操作指令。......
2023-11-07
1)把I/O接口的P2口中的输入数据保存在累加器A,再将累加器A中保存的输入数据输出到I/O接口的P1口。从P1口验证P2口输入的数据源程序(一)实验机的小键盘上的+1键、-1键、高一位操作键、地址键和写入键一端分别接在P2口的P2.0、P2.1、P2.2、P2.3、P2.4上,另一端接地。每次复位后可以重新输入。安装在P1口的发光二极管亮的位与接在P2口按下的键相对应。程序点评:P2口输入的数据通过芯片内部RAM用户区某地址输出到P1口。......
2023-11-07
所谓I/O接口也就是输入/输出接口。根据信号传输方式的不同,I/O接口一般可分为并行接口和串行接口两种方式。通常所说的并行接口一般称为Centronics接口,也称为IEEE1284标准。当传输距离较远、位数又多时,并行接口会导致通信线路复杂且成本提高。图5-13所示为各类并行接口及并行电缆,传输的是数字量和开关量。串行接口按电气标准及协议来分包括RS-232-C、RS-422、RS-485等。......
2023-06-23
I/O接口是一组电子电路,它是CPU和I/O设备之间交换信息的媒介和桥梁,负责实现CPU通过系统总线把I/O电路和外围设备联系在一起。1)I/O接口的功能由于计算机的外围设备品种繁多,特性各异,每种设备都有各自的接口。PC中常见的接口标准有IDE接口、USB接口、显示器输出接口等,图2.23显示的是机箱背面的I/O接口。图2.23 PC机箱背面的I/O接口IDE接口和SATA接口IDE接口主要用于连接硬盘、光驱和软驱,采用并行双向传送方式,体积小,数据传输速率快。......
2023-10-22
对单片机来说,可以用高级语言编程,也可用汇编语言编程,两种语言各有特点。像8051具有MCS51系列单片机的指令集。用助记符指令组成的计算机语言就称为汇编语言。......
2023-11-07
一种良好的程序设计规则和方法是结构化程序设计。结构化程序设计的基本思想是基于这样的考虑,即任何程序都可以用三种基本结构的组合来实现。这三种基本结构为顺序结构、分支结构和循环结构。在本章的程序讲解和编程练习中较多地使用了“延时程序”子程序,其程序结构常用的有单循环和双循环。由于前文所介绍的程序并没有对“延时程序”子程序延时时间的计算进行讲解,因此,在此结合程序的循环结构讲解延时程序的延时时间计算。......
2023-11-07
相关推荐