单片机课题设计广告灯的左移右移
《单片机控制技术》实验指导书.docx

《单片机控制技术》实验指导书实验一流水灯实验(左移右移方式)一. 实验项目卡编号:59010115-01二. 实验目的通过此实验,让大家初步掌握左移位、右移位指令的使用。
三. 实验设备1.S51E单片机学习开发板一块2.PC微机一台四. 实验步骤1.打开编译软件伟煌MCS51开发系统。
2.编写源程序并进行调试。
要求:小灯先向左依次移动8次,再向右依次移动7次,随后循环前血的工作。
3.将S51E开发板连接到PC机上。
对应的89S51与LED引脚的连线为4.打开开发板电源,用软件将调试好的程序下载至单片机屮,观察实验现象。
五. 实验参考稈序ORG 0000HSTART: MOV A, #OFFHCLR CMOV R2, #08HLOOP: RLC AMOV Pl, ALCAI1 DELAYDJNZ R2, LOOPMOV R2, #07HL00P1: RRC AMOV Pl, ALCALL DELAYDJNZ R2, L00P1JMP STARTDELAY: MOV R4, #200DI: MOV R5, #248DJNZ R5, $DJNZ R4, DIRETEND实验二流水灯实验(利用查表方式)一. 实验项目卡编号:59010115-02二. 实验目的通过此实验,让同学们掌握杏表指令的使用。
三. 实验设备1.S51E单片机学习开发板一块2.PC微机一台四. 实验步骤1・打开编译软件伟煌MCS51开发系统。
2.编写源程序并进行调试。
要求:学习利用杏表方式,使小灯做舞台灯效果的变化,左移3次,右移3次,闪烁3次,廷时时问为200毫秒。
3.将S51E开发板连接到PC机上。
对丿卫的89S51与LED引脚的连线为4.打开开发板电源,用软件将调试好的程序下载至单片机屮,观察实验现象。
五. 实验参考程序ORG 0000HMOV Pl, #00HMOV A, #00HSTART:MOV DPTR, STABLELOOP: CLR AMOVC A, @A+DPTRCJNE A, #01H, L00P1JMP STARTL00P1:MOV Pl, AMOV R3,#20LCALL DELAYJMP LOOPDELAY:MOV R4,#20DI: MOV R5,#248DJNZ R5, $DJNZ R4,D1DJNZ R3, DELAYRETTABLE:DB OFEH, OFDH, OFBH, 0F7HDB OEFII, ODFII, OBFII, 07FIIDB OFEH, OFDH, OFBH, 0F7HDB OEFH, ODFH, OBFH, 07FHDB OFEH, OFDH, OFBH, 0F7H DB OEFH, ODFH, OBFH, O7FH DB 7FII, OBFII, ODFII, OEFII DB 0F7II, OFBII, OFDII, OFEII DB 7FH, OBFH, ODFH, OEFH DB 0F7H, OFBH, OFDH, OFEH DB 7FH, OBFH, ODFH, OEFH DB 0F7II, OFBII, OFDII, OFEII DB OOH, OFFH, OOH, OFFH DB OOH, OFFHEND实验三按键的应用(按键控制小灯)一. 实验项目卡编号:59010115-03二. 实验目的1.掌握按键的识别与处理。
广告灯程序设计

一.【设计题目】:采纳外部中断方式操纵广告灯1.设计要求:采纳外部中断方式操纵广告灯,第一用8个彩灯显示作先左移8次,再往右移8次,然后按以上规律来回执行,可是每来一个外部触发,上述规律就要暂停运行,将目前彩灯的状态闪烁5次,以后再继续按上述规律运行。
二.【设计步骤】1.引言单片机在咱们日常生活中有着重要的做用,这次课程设计我就选了一个在生活中到处可见的广告灯来进行程序的编写及设计。
在这次设计中我要紧用到1片80C51的芯片,8个发光二极管,8个电阻,2个电容,1个按键sw等80C51的四个端口都能够作为通用的输入/输出(I/O)口,P0口作为输出口能驱动8个LSTTL输入,P一、P二、P3口输出缓冲器能驱动4个LSTTL。
2.设计内容(1)中断系统原理:①与中断有关的几个特殊功能寄放器●中断许诺寄放器IE。
中断许诺寄放器IE是一个SFR寄放器,用户通过对其中一个或某些位进行设置来操纵中断的开放或禁止,操纵CPU中断的开放或禁止,操纵某个或某些中断的开放和禁止。
●中断优先级操纵寄放器IP。
中断优先级操纵寄放器IP是用于操纵中断响应优先级别的SFR,用户能够依照需要对它的某些位进行操纵,从而设置某个或某些中断源响应优先级别的高低。
●按时操纵寄放器TCON。
对TCON中的位IT0和IT1进行设置,能够设置外部中断的触发方式,将IT0(或IT1)设置为1表示外部中断0(或外部中断1)为负跳变触发,设置为0表示外部中断0(或外部中断1)为低电平触发。
②初始化编程。
初始化编程的目的是为了设置中断系统的工作情形,通过以下指令实现:MOV IE,#data ;设置中断许诺MOV IP,#data ;设置中断优先级别③.外部中断方式操纵广告灯的实验线路连接图如以下图(1)所示:(2)硬件电路硬件电路如以下图(2)所示,P1口接8个发光二极管,按键sw为触发开关,按键sw每按下就从80C51的INT0引脚输入一个低电平。
基于单片机的循环广告灯的设计与制作

大家谈I DiSCUSSiON 基于单片机的循环广告灯的设计与制作 文/黄映梅 摘要:单片机具有体积小、功能强、应用面广等特点,可以说智能控制和自动控制就是靠单片机。本文重点介绍如 何用AT89s51型单片机模块的功能自制的循环左(右)移动的一款简易循环广告灯。 关键词:AT89S51单片机LED循环灯
I、
研究内容及目标
循环彩灯的实验设计是利用单片机的原理实现彩灯循 环点亮,利用取表的方法,使端口P1.0做单一灯的变化, 即左移2次、右移2次、闪烁2次(延时的时间0.2秒),端口 P1.1至P1.7的LED灯循环规律同端口P1.0。
二、单片机的配置及元件功能 1.单片机AT89S51的功能说明 (1)4kB字节可编程闪烁存储器; (2)寿命为1000次写/擦循环; (3)数据保留时间为l0年; (4)全静态工作,OHz ̄24MHz; (5)三级程序存储器锁定; (6)128×8位内部RAM,32可编程I/O线; (7)两个16位定时器/计数器;
(8)5#-中断源,可编程串行通道; (9)低功耗的闲置和掉电模式; (10)片内振荡器和时钟电路(与MCS一51兼容)。 2.单片机AT89S51的引脚主功能说明(图1)
i ̄,vr 毫^ ℃c P●O PIl PO ^00 Pl 2 p0I AnI 3 釉: b2 PI 4 P0, ^D4 pI S 脚 D P}0 口¨£ l 7 p An AT¥ s1. 缝 PSE ×0 P ,IAl l/TXn P ¨I4 美i 尚 P1 s^l
j 秆 4/Al P TO All Pl l 耽:^m _宸 P:l ^ 7,瓤;P2 OA8
XI X: ‘,
图1 利益观,常修为政之德、自觉抵制拜金主义、享乐主义、 极端个人主义等消极腐朽思想文化的侵蚀,努力提高综合 素质,真正做到为民、务实、清正。建设和谐企业,坚持 发展是第一要务,坚持以经济建设为工作中心,党员干部 要团结和带领广大员工聚精会神搞建设,一心一意谋发展, 加快企业经济发展,努力改善员工生活水平。和谐企业是 建立在一定的物质基础之上的,离开了这个基础,建设和 谐企业只能是一个美好的愿望,一个遥不可及的梦想。 三、团结奋进、积极向上的企业文化是和 谐企业建设的重要基础 和谐的核心在于人与人之间心的沟通与融合,企业文 化具有弘扬正气、聚拢人心、陶冶情操、增进和谐的多种 功能,是企业的动力之源、管理之本、团队之魂,其核心 是企业精神和企业价值观。和谐企业与企业文化有着深刻 的内在联系。企业文化具有的导向、凝聚、激励、沟通等 多重功能,是建设和谐企业的必要所在,建设和谐企业必 须从企业文化建设入手。企业党组织要坚持以人为本,依 托企业文化建设,通过“武装人、塑造人、感染人、鼓舞 人”来解决企业管理中存在的问题。企业文化建设过程就 是和谐企业建设的过程,这个过程需要经历一个量变到质 变的飞跃,经历~个被动到主动的转变,这也决定了企业 文化建设的长期性、持续性、系统性。 企业文化涵盖了现代企业观念创新、管理创新、体制 创新和技术创新的重要内容,是企业核心竞争力的具体体 现,是企业经济科学、持续、有效发展的重要保证,也是 企业生存发展的灵魂。企业党组织要以服务企业的中心工 作为己任,把握好建设和谐企业的关键环节,努力化解各 种矛盾,协调各方面的利益关系,增进员工的归属感,增 强企业的凝聚力。要发挥我党做群众工作和思想政治工作 的优势,坚持以人为本,认真扎实地做好员工的思想政治 工作,切实维护员工的合法权益,热心帮助员工解决自身 难以解决的问题,建立团结奋进、积极向上的企业文化, 坚持“以文化人、以文化力”,努力催生人与人、人与企 业、人与社会的亲和力,促进人的全面发展,营造团结、 友善、和谐的良好氛围。要着力培养员工对企业的认同感, 使员工正确地、深刻地认识到个人与企业利益的一致性, 不断拉近员工与企业之间的距离,培养员工的个人与企业 利益与共、命运与共的情感,把自己融入到企业之中,调 整自己的目标和价值取向,自觉地向企业的目标和价值取 向靠拢,最终实现人企共赢。总之,我们要借鉴优秀企业 的企业文化建设经验,努力塑造适合本企业实际的企业文 化,增强企业的核心竞争力。 创建和谐企业,一定要树立科学发展观,用和谐理念 统领企业发展:树立“以人为本”的发展理念,切实维护 员工合法权益:努力建立和谐发展的企业文化,实施和谐 管理,不断增强企业凝聚力和核心竞争力。和谐企业的建 设关键在于企业党组织的领导,在于企业党组织作用的发 挥,在于党的先进性建设。只要企业党组织坚持以人为本, 坚持科学发展观,充分发挥党组织和广大共产党员的重要 作用,建设和谐企业的目标就一定能够实现。 (作者单位:华东石油局党校)
51单片机八小灯右移

1.系统分析主程序P0口接八个LED,使八个LED灯P0~P7依次左移点亮。
当按下INT1按钮时中断程序一开始作用,使八个LED小灯依次右移点亮,执行完成该过程之后,继续中断程序执行之前的主程序;当按下INT0按钮时中断程序零开始作用,八个LED小灯同时闪烁五次,在执行完成该中断程序之后,继续中断程序之前的主程序;其中,中断程序INT0优先。
2.原理图设计3.程序流程图4.程序设计ORG 0000H ;主程序起始地址设置AJMP START ;跳到主程序入口ORG 0003H ;中断矢量地址(INTR0按钮)AJMP INTR0 ;中断子程序入口ORG 0013H ;中断矢量地址(INTR1按钮)AJMP INTR1 ;中断子程序入口START: MOV IE,#85H ;中断使能MOV IP,#01H ;优先级设置(INT0优先)MOV TCON,#00H ;电平触发MOV SP,#60HLP: MOV DPTR,#TABLE1 ;将TABLE1表的地址存入DPTR LP0: MOV A,#00H ;清除累加器LP1: MOVC A,@A+DPTR ;查表CJNE A,#1BH,LP2 ;取出的代码不是结束码,则进行下一步操作AJMP LP ;若是结束码则重新操作LP2: MOV P0,A ;将A中的值送P1口LCALL DELAY ;等待1秒INC DPTR ;数据指针加一,指向下一个码AJMP LP0 ;返回取码INTR0: PUSH ACCPUSH PSWPUSH DPHPUSH DPLSETB RS0CLR RS1MOV DPTR,#TABLE3INTR0LP1: MOV A,#00HMOVC A,@A+DPTRCJNE A,#1BH,INTR0LP2AJMP INTR0LP3INTR0LP2: MOV P0,ALCALL DELAYINC DPTRAJMP INTR0LP1INTR0LP3: POP DPLPOP DPHPOP PSWPOP ACCRETIINTR1: PUSH DPL PUSH DPHPUSH ACCPUSH PSWSETB RS1CLR RS0MOV DPTR,#TABLE2INTR1LP1: MOV A,#00HMOVC A,@A+DPTRCJNE A,#1BH,INTR1LP2AJMP INTR1LP3INTR1LP2: MOV P0,ALCALL DELAYINC DPTRAJMP INTR1LP1INTR1LP3: POP PSWPOP ACCPOP DPHPOP DPLRETITABLE1:DB 0feH,0fdH,0fbH,0f7H ;正向流水灯DB 0efH,0dfH,0bfH,07fHDB 1BHRETTABLE2:DB 0bfH,0dfH,0efH,0f7H ;反向流水灯DB 0fbH,0fdH,0feH,0ffHDB 1BHRETTABLE3:DB 0FFH,00H,0FFH,00H,0FFH,00H ;闪烁五次DB 0FFH,00H,0FFH,00H,1BHRETDELAY: MOV R7,#10 ;延时一秒子程序DE1: MOV R6,#200DE2: MOV R5,#248DJNZ R5,$DJNZ R6,DE2DJNZ R7,DE1RETEND5.调试与仿真D1到D7号小灯左移点亮,主程序操作。
实验04:外部中断INT0、INT1控制流水灯左移、右移

实验四:外部中断系统实验一、实验目的1.结合理论教学,进一步熟悉外部中断INT0和INT1的基本概念和原理;2.理解掌握定时器控制寄存器TCON、中断允许控制寄存器IE、中断优先级别控制寄存器IP的功能和设置方法;3.了解并熟悉MCS-51单片机外部中断INT0和INT1的电路设计特点和应用特点;4.能够针对MCS-51单片机,进行外部中断INT0和INT1的初始化设置,能够完成简单中断服务程序的功能应用设计。
5.进一步熟悉、掌握MCS-51单片机指令系统和应用软件的编程方法和技巧。
二、实验设备、材料1.微型计算机(PⅣ以上);2.编程、汇编与模拟平台软件Keil uVision4;3.电子技术专业仿真软件protues运行平台;4.单片机实训开发电路板。
三、实验内容和实验步骤1.系统仿真电路参考原理图12.系统参考源程序1(用INT0控制流水灯左移1位,用INT1控制流水灯右移1位)已在实验板上演示ORG 0000HAJMP MAINORG 0003H ;INT0中断入口地址LJMP IN0ORG 0013H ;INT1中断入口地址LJMP IN1ORG 0020HMAIN:MOV TCON,#05HMOV IE,#85HMOV P2,#0FEHMOV A,#0FEHSJMP $IN0:CLR EARL A //左移MOV P2,ASETB EARETIIN1:CLR EARR A //右移MOV P2,ASETB EARETIEND3.系统参考源程序1(用8位发光二极管代表8位二进制数,用INT0控制加1递增,用INT1控制减1递减)已在实验板上演示ORG 0000HAJMP MAINORG 0003H ;INT0中断入口地址LJMP IN0ORG 0013H ;INT1中断入口地址LJMP IN1ORG 0020HMAIN:MOV TCON,#05HMOV IE,#85HMOV R0,#00HMOV A,#00HMOV P2,ASJMP $ IN0:INC R0MOV A,R0CPL AMOV P2,ARETIIN1:INC R0MOV A,R0CPL AMOV P2,ARETIEND4.系统参考源程序2(用INT0控制流水灯左移1位,用INT1控制流水灯右移1位)已在实验板上演示ORG 0000HAJMP MAINORG 0003H ;INT0中断入口地址CLR F0RETIORG 0013H ;INT1中断入口地址SETB F0RETIORG 0030HMAIN:MOV P2,#0FFHMOV TCON,#05HMOV IE,#85HMOV A,#7FHRRR:JNB F0,LLLRR A //右移MOV P2,AACALL DELAYSJMP RRRLLL:JB F0,RRRRL A //左移MOV P2,AACALL DELAYSJMP LLLDELAY:MOV R7,#8FH ;延时程序DELAY1:MOV R6,#0FFHDELAY2:MOV R5,#02HDELAY3:DJNZ R5,DELAY3DJNZ R6,DELAY2DJNZ R7,DELAY1RETEND。
C51经典程序

经典程序1.广告灯的左移右移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.电路原理图图4.4.13.系统板上硬件连线把“单片机系统”区域中的P1.0-P1.7用8芯排线连接到“八路发光二极管指示模块”区域中的L1-L8端口上,要求:P1.0对应着L1,P1.1对应着L2,……,P1.7对应着L8。
4.程序设计内容我们可以运用输出端口指令MOV P1,A或MOV P1,#DATA,只要给累加器值或常数值,然后执行上述的指令,即可达到输出控制的动作。
每次送出的数据是不同,具体的数据如下表1所示P1.7 P1.6 P1.5 P1.4 P1.3 P1.2 P1.1 P1.0 说明L8 L7 L6 L5 L4 L3 L2 L11 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亮表15.程序框图图4.4.26.C语言源程序#include <A T89X51.H>unsigned char i;unsigned char temp;unsigned char a,b;void delay(void)//延时0.1968s{unsigned char m,n,s;for(m=20;m>0;m--)for(n=20;n>0;n--)for(s=248;s>0;s--); 若改为249则为0.1976s}void main(void){while(1){temp=0xfe;P1=temp;delay();for(i=1;i<8;i++){a=temp<<i;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();}}}【电设资料】非常精确的C语言延时子程序表用C语言写出来程序非常的简练,它是一种模块化的语言,一种比汇编更高级的语言,但是就是这样一种语言也还是有它不足之处:它的延时很不好控制,我们常常很难知道一段延时程序它的精确延时到底是多少,这和汇编延时程序没法比。
单片机广告灯

信息工程学院课程设计报告设计题目: 单片机广告灯设计名称:电子信息专业基础课程设计班级: 电子1102班姓名: 姚旭李顶峰学号: 2011013581 2011013562设计时间: 2013.12.17 至2013.12.31指导教师: 王祥青评语:评阅成绩: 评阅教师:目录第1章系统概述 (1)1.1 设计目的和意义 (1)1.2 设计的主要内容 (1)第2章设计方案 (2)2.1 方案实施所需的条件 (2)2.1.1 软件条件 (2)2.1.2 硬件或仿真条件 (2)2.2 设计难点与解决方案 (2)2.2.1 设计难点 (2)2.2.2 解决方案 (2)第3章软件设计 (3)3.1 功能模块划分 (3)3.2 各模块程序流程及代码 (4)第4章目标系统 (8)4.1 仿真系统运行演示 (8)4.2 系统展望 (10)参考文献 (11)第1章系统概述1.1 设计目的和意义随着改革的不断深入,社会主义市场经济的不断繁荣和发展,个大中小城市都在进行亮化工程。
个人企业为宣传自己企业的形象和产品,均采用广告手法之一:流水灯来实现这一目的.当我们夜晚走在大街上,马路两旁各色各样的流水灯广告均可以见到,一种是采用霓虹灯管做成的各种形状和多种彩色的灯管,另一种为日光等管或白炽灯管作为光源,另配大型广告语或宣传画来达到宣传的效果。
这些灯的亮灭,闪烁时间及流动方向等均可以通过单片机来达到控制的要求.在学习了《单片机技术》课程后,为了加深对理论知识的理解,学习理论知识在实际中的运用,培养动手能力和解决实际问题的能力。
进一步理解和消化书本知识,运用所学知识和技能进行简单的设计。
1.2 设计的主要内容生活中广告流水灯的形式和点亮的次序是多种多样的。
有单一颜色的几个灯按固定的次序来点亮的,有多个不同颜色的灯构成某一图案依次点亮的,也有多排广告灯按多种组合好的次序循环点亮的等。
我的设计就是这些广告灯中的最基本类型。
利用广告灯;AT89S51单片机,控制小灯的左移,右移,从中间到两边,从两边到中间,奇数亮等来控制小灯的花式,达到预定的广告效果!第2章设计方案2.1 方案实施所需的条件2.1.1 软件条件Keil uVision4Proteus2.1.2硬件条件AT89C51单片机2.2 设计难点与解决方案2.2.1 设计难点利用取表的方法,使端口P1做单一灯的变化:从左到右亮、从右向左、从两边到中间亮、从中间到两边、奇数亮偶数灭、偶数亮奇数灭…2.2.2 解决方案生活中广告流水灯的形式和点亮的次序是多种多样的。
基于单片机的广告灯设计__论文

摘要随着改革的不断深入,社会主义市场经济的不断繁荣和发展,大中小城市都在进行亮化工程,通常都是利用广告流水灯来实现这一目的。
广告灯的亮灭、闪烁时间及流动方向等均可以通过单片机来达到控制的要求。
本设计是通过AT89C52单片机控制由35个LED组成的“XYSF”四个字母从左到右依次点亮然后花样闪烁循环,实现了广告灯的花样变化。
本文介绍了由AT89C52集成块实现的控制电路,并给出了具体的硬件电路和相应的源程序。
由于AT89C52集成块编程实现的控制电路可靠性、灵活性高,使用范围广,特别适合中小城市广告灯的应用。
本控制系统结构简单、成本低、功能可靠、可移植性强,通过程序的变化,可以实现灵活多样的流水显示方案。
通过单片机的控制,我们可以把城市的夜晚装饰的更漂亮。
关键词:广告灯;AT89C52;LEDWith the deepening of the reform, the increasing prosperity of the socialist market economy and the development of cities and towns during the lighting project, usually advertising water lights to achieve this purpose. Bright advertising lights off, flashing time and the flow direction, all through the microcontroller to achieve the control requirements. This design is composed by 35 LEDs on AT89C52 XYSF four letters from left to right to light and then the pattern blinking cycle, the pattern changes in the advertising lights. This article describes the control circuit, realized by AT89C52 Manifold and specific hardware circuit and the corresponding source code. Because the AT89C52 Manifold programming of the control circuit reliability, high flexibility, the use of a wide range, especially for small and medium-sized cities the application of the advertising lights. The control system is simple structure, low cost, reliable functionality, portability can be achieved through changes in the program, flexible water display. Through the control of the microcontroller, the night decoration of the city more beautiful.Keywords:advertising light; on AT89C52; the LEDTOC \o "1-3" \h \u HYPERLINK \l _Toc12983 摘要 PAGEREF _Toc12983 错误!未定义书签。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
广告灯的左移右移
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.电路原理图
图4.4.1
3.系统板上硬件连线
把“单片机系统”区域中的P1.0-P1.7用8芯排线连接到“八路发光二极管指示模块”区域中的L1-L8端口上,要求:P1.0对应着L1,P1.1对应着L2,……,P1.7对应着L8。
4.程序设计内容
我们可以运用输出端口指令MOV P1,A或MOV P1,#DATA,
只要给累加器值或常数值,然后执行上述的指令,即可达到
输出控制的动作。
每次送出的数据是不同,具体的数据如下表1所示
表1
5.程序
框图
图4.4.2
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 <AT89X51.H>
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<<i;
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();
}
}
}。