knrt.net
当前位置:首页 >> 用51单片机(汇编语言写)写一个跑马灯程序??知... >>

用51单片机(汇编语言写)写一个跑马灯程序??知...

答疑解难 跑马灯程序 ORG 0000H LJMP MAIN ORG 0100H MAIN: JB P0.7,MAIN ;等待开始键按下 LCALL YS ;按键延时 JB P0.7,MAIN MOV A,#7FH ;是开始键按下 则跑马灯开始运行 LL: MOV P1,A LCALL YS ;显示延时 RR A ;循环右移一位 JB P0.6, LL ...

程序1: ORG 0000H LJMP MAIN ORG 0030H MAIN: MOV SP,#5FH LOOP: MOV A,P2 MOV B,A MOV P0,A MOV P1,#0FFH LOOP1: LCALL DELAY MOV C,P1.7 MOV A,P0 RLC A MOV P0,A MOV A,P1 RLC A MOV P1,A MOV A,P2 CJNE A,B,LOOP SJMP LOOP1 DELAY: MOV R2,#...

给个你参考 ******* /* 实验目的:初步了解单片机I/O口的工作原理,进一步掌握51单片机的汇编指令。 * 实验内容:用汇编指令对单片机I/O口进行编程,控制8个发光二极管的流水亮灭。 */ /* 程序详细功能介绍: *做单一灯的左移右移,八个发光二极...

//假设晶振12MHZ,P1控制8个LED低电平亮 #include "reg51.h" unsigned int YSJS=0; signed char LED=0XFE; void main(void) { TMOD |= 0X10; //定时器1工作于方式1,16位定时器 TH1 = 0XFE; //定时器1定时时间=500uS TL1 = 0X0C; ET1 = 1; //使能...

ORG 0000H SJMP START ORG 0030H START: MOV A, #0FEH ; 先让第一个发光二极管点亮 LOOP: MOV P1, A ; 从P1口输出到发光二极管 MOV R1, #100 ; 延时0.5秒 DEL1: MOV R2, #200 DEL2: MOV R3, #7 DEL3: DJNZ R3, DEL3 DJNZ R2, DEL2 DJNZ R1, DEL1...

ORG 0000H LJMP START ORG 0100H START: MOV SP,#60H MOV A,#0FEH START1: RL A MOV P1,A ACALL Delay SJMP START1 Delay: MOV R5,#2 Delay1: MOV R6,#0 Delay2: MOV R7,#0 DJNZ R7,$ DJNZ R6,Delay2 DJNZ R5,Delay1 RET END

应该都可以,只要你想跑马灯如何亮,单片机都可以完成

START:MOV A,#0AAH;初次1357灯亮 LOOP :MOV P1,A LCALL DELY LCALL DELY ;调200mS延时 RL A SJMP LOOP DELY:MOV R7,#200 DELY1:MOV R6,#200 DELY2:NOP NOP NOP DJNZ R6,DELY2 DJNZ R7,DELY1 RET

循环语句 是不能用了~~ 但可以修改, 方法两种。 一是 通过 数组 而是逻辑判断 数组方式就是 开一个8个元素的数组 内容是 0000001.。。。1000000 其中 第一个为 0100000 第二个为 1000000 这样一次向端口写 数组中的内容就行了。 第二个就是 利...

void delayms(unsigned int xms) { unsigned char i=120; while(--xms)while(--i); } void delayms(unsigned int xms) { unsigned int i,j; for(i=xms;i>0;i--) for(j=120;j>0;j--); }

网站首页 | 网站地图
All rights reserved Powered by www.knrt.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com