📄 sldiy16-03.asm
字号:
;********************************************
;SL-DIY-02-3 实验三
;I/O端口一对一控制。
;ATmega16的PB口8个开关(可用接插线接VCC或GND代替,控制PA口8个LED灯亮与灭;
;请你修改程序, 用ATmega16的PD口8个开关(可用接插线接VCC或GND代替)
;控制PB口8个LED灯亮与灭。
;********************************************
;*ATmega16 8MHz
;*双龙电子 www.sl.com.cn
;* teny 2005.11.12
;********* teny@sl.com.cn **************
;********************************************
.include "m16def.inc"
.org $000
rjmp reset3
.org $010
reset3:
ldi r17,$04 ;置栈指针,mega16的内建值为$045f
ldi r16,$5f
out sph,r17
out spl,r16
shiyan3:
ldi r17,$ff ;pa口设置为输出
clr r16
out ddra,r17
out porta,r17
out ddrb,r16 ;pb口设置为输入,且内部上拉
out portb,r17
start3:
in r16,pinb ;读取pb口的管脚状态
out porta,r16 ;pa口输出pb口的管脚状态
rjmp start3 ;循环,达到实时控制
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -