单片机40个实验之广告灯的左移右移

发布者:Yuexiang最新更新时间:2015-04-07 来源: eechina关键字:单片机  40个实验  广告灯 手机看文章 扫描二维码
随时随地手机看文章
1. 实验任务

做单一灯的左移右移,硬件电路如图4.4.1所示,八个发光二极管L1-L8分别接在单片机的P1.0-P1.7接口上,输出“0”时,发光二极管亮,开始时P1.0→P1.1→P1.2→P1.3→┅→P1.7→P1.6→┅→P1.0亮,重复循环。

2. 电路原理图



3. 系统板上硬件连线

把“单片机系统”区域中的P1.0-P1.7用8芯排线连接到“八路发光二极管指示模块”区域中的L1-L8端口上,要求:P1.0对应着L1,P1.1对应着L2,……,P1.7对应着L8。

4. 程序设计内容

我们可以运用输出端口指令MOV P1,A或MOV P1,#DATA,只要给累加器值或常数值,然后执行上述的指令,即可达到输出控制的动作。[page]

每次送出的数据是不同,具体的数据如下表1所示 :


P1.7
 

P1.6
 

P1.5
 

P1.4
 

P1.3
 

P1.2
 

P1.1
 

P1.0
 

说明
 

L8
 

L7
 

L6
 

L5
 

L4
 

L3
 

L2
 

L1
 
 

1
 

1
 

1
 

1
 

1
 

1
 

1
 

0
 

L1亮
 

1
 

1
 

1
 

1
 

1
 

1
 

0
 

1
 

L2亮
 

1
 

1
 

1
 

1
 

1
 

0
 

1
 

1
 

L3亮
 

1
 

1
 

1
 

1
 

0
 

1
 

1
 

1
 

L4亮
 

1
 

1
 

1
 

0
 

1
 

1
 

1
 

1
 

L5亮
 

1
 

1
 

0
 

1
 

1
 

1
 

1
 

1
 

L6亮
 

1
 

0
 

1
 

1
 

1
 

1
 

1
 

1
 

L7亮
 

0
 

1
 

1
 

1
 

1
 

1
 

1
 

1
 

L8亮
 
表1

5.程序框图

  

6. 汇编源程序

ORG 0
START: MOV R2,#8
MOV A,#0FEH
SETB C
LOOP: MOV P1,A
LCALL DELAY
RLC A
DJNZ R2,LOOP
MOV R2,#8
LOOP1: MOV P1,A
LCALL DELAY
RRC A
DJNZ R2,LOOP1
LJMP START
DELAY: MOV R5,#20 ;
D1: MOV R6,#20
D2: MOV R7,#248
DJNZ R7,$
DJNZ R6,D2
DJNZ R5,D1
RET
END

7. C语言源程序

#include
unsigned char i;
unsigned char temp;
unsigned char a,b;

void delay(void)
{
unsigned char m,n,s;
for(m=20;m>0;m--)
for(n=20;n>0;n--)
for(s=248;s>0;s--);
}
void main(void)
{
while(1)
{
temp=0xfe;
P1=temp;
delay();
for(i=1;i<8;i++)
{
a=temp< b=temp>>(8-i);
P1=a|b;
delay();
}
for(i=1;i<8;i++)
{
a=temp>>i;
b=temp<<(8-i);
P1=a|b;
delay();
}
}
}
关键字:单片机  40个实验  广告灯 引用地址:单片机40个实验之广告灯的左移右移

上一篇:单片机40个实验之按键识别方法
下一篇:单片机40个实验之按键识别方法

推荐阅读最新更新时间:2024-03-16 13:57

单片机在开发调试过程中的注意事项
1、使用总线不外引的单片机 ·是最正统的单片机使用模式 ·符合小型、简单、可靠、廉价的单片机设计初衷 ·总线封闭的产品最可靠 2、使用单片机C语言编程 * C语言是简洁、高效、而又最贴近硬件的高级编程语言 * 90年代初单片机C语言就已成熟为专业水平的高级语言,不应再有顾虑 * 当前厂商在推出新的单片机产品时纷纷配套C语言编译器 3、使用中、高档的单片机仿真工具 * 只有中、高档仿真工具才能仿真总线封闭式的单片机 * 仿真器必须使用band-out chip或hooks chip * 应支持高级语言的调试,提供全数据类型的查看和修改 * 支持多家软件公司汇
[单片机]
基于STM32F103系列单片机的无线解说器
本实例是以STM32F103系列单片机作为核心处理器,利用VS1003芯片进行音频解码的一种无线解说器。通过对触摸显示屏的操作,实现手持部分和终端部分二者的无线通讯。系统采用大容量的SD卡作为存储部分,通过SPI将VS1003B与SD卡的数据与STM32进行交互通信。本解说器在播放时没有出现理论上的断续情况,音质较好,占用的软硬件资源也较少,为后续的扩展留下了很大空间。 无线讲解器通常用于工厂、博物馆、景区等室外空旷场所供参观介绍用,通过事先在场所安放无线发射模块,并控制发射模块的工作范围。听众到达景点后,手上的讲解器将自动接收各个地点的无线编码信号,经解码后即可将存储在SD卡中的语音播放,以便清晰地全程收听全部介绍内容。
[单片机]
基于STM32F103系列<font color='red'>单片机</font>的无线解说器
单片机C语言模块化编程方法
当你在一个项目小组做一个相对较复杂的工程时,意味着你不再独自单干。你需要和你的小组成员分工合作,一起完成项目,这就要求小组成员各自负责一部分工程。比如你可能只是负责通讯或者显示这一块。这个时候,你就应该将自己的这一块程序写成一个模块,单独调试,留出接口供其它模块调用。最后,小组成员都将自己负责的模块写完并调试无误后,由项目组长进行组合调试。像这些场合就要求程序必须模块化。模块化的好处是很多的,不仅仅是便于分工,它还有助于程序的调试,有利于程序结构的划分,还能增加程序的可读性和可移植性。 初学者往往搞不懂如何模块化编程,其实它是简单易学,而且又是组织良好程序结构行之有效的方法之一. 本文将先大概讲一下模块化的方法和注意事项,最后将以
[单片机]
<font color='red'>单片机</font>C语言模块化编程方法
基于51单片机的红外遥控密码锁的设计与实现
  1 引言   根据用户的要求和需要,主要为了解决当前市场上无遥控密码锁的问题,以提高门禁系统的可靠性和安全性,适应市场需要而设计的该红外红外遥控密码锁系统。该系统具有普通电子密码锁功能的同时,还增加了遥控功能。该锁采用6位数作为密码,总密码组有106组,完全满足用户对密码安全性高的要求。该系统具有较强的实际应用价值,所涉及的技术包括:红外载波数据传输技术、单片机控制技术、红外遥控系统编码及译码技术、电路设计与演示板制作技术等。   2 系统硬件设计与实现(单元电路设计)   2.1 硬件结构图:   系统以单片机AT89C51RC为核心。系统结构框图如图1所示。本系统的功能设计目标应该包括以下几个方面:红外发射功能模块
[单片机]
基于51<font color='red'>单片机</font>的红外遥控密码锁的设计与实现
单片机学习之四:MCS-51单片机引脚说明
51系列单片机 89C51/89S51均采用40Pin 封装的双列直接DIP结构。在它们40 个引脚配置中,正电源和地线两根,外置石英振荡器的时钟线两根,4组8位,共32个I/O口,P3口线与第2功能复用。 现在我们对这些引脚的功能加以说明: Pin40:正电源脚,工作时,接+5V电源。 Pin20:负电源脚,工作时,接地。 Pin19:时钟XTAL1 脚,片内振荡电路的输入端。 Pin18:时钟XTAL2 脚,片内振荡电路的输出端。 8051的时钟有两种方式,一种是片内时钟振荡方式,但需在18和19脚外接石英晶体(2~12MHz)和振荡电容,振荡电容的值一般取10pF~30pF。另外一种是外
[单片机]
<font color='red'>单片机</font>学习之四:MCS-51<font color='red'>单片机</font>引脚说明
博弈中国市场 MCU厂商各显神通
中颖电子股份有限公司MCU事业部总监包旭鹤: 追求性价比与服务是生存之道 MCU市场生存之道有二:一是性价比,性价比不是单纯讲低价,还有许多内涵,比如细分市场的量身定做、高集成度SoC、有创意的差异化方案等。二是服务,近几年来出现一个趋势,使用MCU的整机厂商希望把研发人力投在产品如何符合消费者需求上面,反而对后端的研发实现和导入生产投入减少。对于这类的MCU应用,为了提升产品竞争力快速切入市场,加大在应用方案及客服方面的人力投入,给用户提供全方位的技术服务,成为中国MCU市场的一个流行趋势。MCU供应商不仅要服务,还要拼服务质量和效率。最终服务成本也是产品成本的一部分,所以服务效率越高,服务成本越低,产品成本也越低。另
[单片机]
单片机通讯协议描述
通信头- 巴克码- 地址字- 长度字- 命令字- 信息位- 校准字 1. 通信头:占1~8个字节,表通信开始(0x00、0xff不能用作通信头); 2.巴克码:占1字节,一般为0x72,表通信头结束; 3.地址字:表终端的地址,占1字节(0x00作为广播地址); 4.长度字:占1字节,表示从地址字到信息位之间的字节数; 5.命令字:占1字节,指示终端的不同操作; 6.信息位:不定长,从0~252字节; 7.校验位:两个字节,采用和校验及CRC校验。 二、应答 1.如果终端接收正确,则应答ACK;如果终端接收错误,则应答NAK; 2.发送方收到ACK,此次通信结束; 3.发送方收到NAK,重发刚才的命令字(最多7次); 4.如果发送
[单片机]
基于C8051F000的多通道数据采集范围控制系统
1 引 言      在实际应用中,对被控对象的物理参数(温度、湿度、位移、电流、电压等)在一定的范围内进行控制,是单片机的典型应用之一。很多宏观要求精确控制的场合,其微观控制过程,仍可归结为是对某些参数变化范围的控制。如,传统的三相异步电机从启动到正常运行,其电流、电压和温度的变化;抽水塔水位的变化;机床刀具的行程变化及数字电表的自动量程变换等。这些控制过程最显著的特点是:被控物理量都是一个变化范围,而非某一个精确的“点”。有效控制物理量变化范围的方法很多,本文重点介绍利用C8051F000单片机片内8路高性能的12位ADC数据采集系统和可编程窗口检测器,实现对多路参数变化范围控制的硬件组成和软件设计方法。 2 C805
[应用]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
随便看看
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved