如何用proteus和keil制作一个简单的流水灯
先用proteus软件制作一个简单的原理图,就是待会程序放在里面仿真的图,这时候图一定要正确者宴。否则待会把程序放进去,也不会出现我们想要的效果,例如,电阻值啊 led灯的正负极啊和上拉电阻的阻值。
然后就是用keil软件编森槐写程序了,具体步骤如下图
现在开始把文件加到工程文件夹下
设置仿真的芯片属性,晶振之类的
5
把原理图此嫌友和程序结合,就可以实现仿真了
在keil中,怎么用汇编编写流水灯,先左移再右移,用汇编?
给你参考下,
;左移
star: mov r3,#8 ;设置流水位数
mov p0,#11111110b ;从p0.0开始
loop: acall d01s
mov a,p0 ;读取p0当前数据到acc
rl a ;左移一位
mov p0,a ;将左移的数据再送到p1
djnz r3,loop ;没有完成8位继续
;******************
mov p0,#0ffh ;熄灭所有灯
;******************
;右或搏移
mov r3,#8 ;设置流水位数
mov p0,#01111111b ;从p0.7开始
loop1: acall d01s
mov a,p0 ;读取p0当前数据到acc
rr a ;右移一位
mov p0,a ;将左模拆移的数据再送到p1
djnz r3,loop1 ;没有完衫码祥成8位继续
ljmp star ;完成后返回到开始再来
;延时子程序
d01s: mov r0,#255
d01l1: mov r1,#198
djnz r1,$
djnz r0,d01l1
ret
end
一键多控流水灯汇编语言怎么写,软件是keil
一键多空烂野流水灯汇编语言程序编写方法是:设置一个变量,来检测按键的次数,从而控制程序分支来达到控饥厅喊制不同流水灯的效果例如:
ORG 0000H
LJMP MAIN
ORG 0030H
MAIN:
MOV R6,#0FEH
MOV R7,#0
LOOP:
JB P1.0,LOOP1
JNB P1.0,$
INC R7
CJNE R7,#2,LOOP1
MOV R7,#0
LOOP1: ;奇数次按键左向流水灯
MOV A,R7
JNZ LOOP2
MOV A,R6
MOV P0,A
RL A
MOV R6,A
LCALL DELAY
SJMP LOOP
LOOP2: ;偶数次按键右向伏纯流水灯
MOV A,R6
MOV P0,A
RR A
MOV R6,A
LCALL DELAY
LJMP LOOP
DELAY:
MOV R2,#200
DL1:
MOV R3,#250
DJNZ R3,$
DJNZ R2,DL1
RET
END
求KEIL软件用汇编语言编流水灯
程序为:p0和p1流水灯
MOV R4,#0FFH;
MOV A ,#80H ;
MAIN:MOV P0 ,A ;
RR A ; RR A 累加器循环右移
LCALL DELAY ;
JB P0.0,D3; ;JB bit,rel 如果直接寻址位为1 则转移
LJMP MAIN 正岩 ;
D3:MOV P0,R4 ;
MOV A ,#80H 森举 ;
D4:MOV P1,A;
RR A 此清碧 ;RR A 累加器循环右移
LCALL DELAY ;
JNB P1.0,D4 ; JNB bit,rel 如果直接寻址位为0 则转移
MOV P1,R4 ;
LJMP MAIN;
DELAY:MOV R7 ,#250 ;
D1:MOV R6 ,#250 ;
D2:DJNZ R6,D2 ;
DJNZ R7,D1 ;
RET ;
END.