昨天下载了一个
单片机和8255的相关文档,可是里面是汇编编写的,自己捣鼓了很长时间也没有将其成功转化为C语言,故在此想各位高手请教。程序是这样的:
ORG 0000H; 复位入口地址
LJMP MAIN
ORG 002CH; 主函数起始地址
MAIN:MOV DPTR,#0FF7FH; FF7FH为8255a的控制寄存器地址
MOV A,#80H
MOVX @DPTR,A ; 8255a上的 PA PB PC都工作在方式0,都用用作输出
MOV DPTR,#0FF73H ;将PA口的地址传给DPTR
MOV A,#00H
MOVX @DPTR,A ;初始化端口PA
NEXT:MOV A,#01H
MOVX @DPTR,A; 点亮二极管
LCALL DELAYIS ;延时一秒
MOV A,#00H
MOVX @DPTR,A ;熄灭引脚上的二极管
LCALL DELAYIS
LJMP NEXT
DELAYIS:MOV 7FH,#16
D1:MOV 7EH,#252
D2:MOV 7DH,#122
D3:DJNZ 7DH,D3
DJNZ 7FH,02
DJNZ 7FH,D1
RET
END
谢谢!
-
PROTUES仿真图
一周热门 更多>