第2章 IO端口学51.pptVIP

  • 1
  • 0
  • 约1.39千字
  • 约 10页
  • 2017-11-15 发布于河南
  • 举报
第2章 IO端口学51

第二章 从I/O端口开始学51 I/O端口作为输出 I/O端口作为输入 I/O端口作为输入 流水灯执行流程 流水灯的实现 P1端口对应的LED灯 7FH 只D8亮 1 1 1 1 1 1 1 0 BFH 只D7亮 1 1 1 1 1 1 0 1 DFH 只D6亮 1 1 1 1 1 0 1 1 EFH 只D5亮 1 1 1 1 0 1 1 1 F7H 只D4亮 1 1 1 0 1 1 1 1 FBH 只D3亮 1 1 0 1 1 1 1 1 FDH 只D2亮 1 0 1 1 1 1 1 1 FEH 只D1亮 0 1 1 1 1 1 1 1 P1值(16进制) 灯状态 P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 各LED灯对应P1口输出值 “JMP”是无条件程序跳转指令。JMP的全称是JUMP(跳),表示没有条件直接执行跳转到指定的地址编号。 汇编语言使用无条件转移指令实现循环 C 语言使用while语句实现总的循环 “( )”里面的内容为循环的条件,在C语言中,“1”表现条件为真,“0”表示条件为假。在例程中,while(1)表示不管在任何条件下,都循环执行{ }里面的程序。 while语句格式为: while (执行的条件) 符合条件的语句; 或 while (执行的条件) { 符合条件的多条语句; } 开始执行 把值FEH写入P1 执行延时一秒 把值FDH写入P1 执行延时一秒 把值FBH写入P1 执行延时一秒 把值F7H写入P1 执行延时一秒 把值EFH写入P1 把值DFH写入P1 执行延时一秒 把值BFH写入P1 执行延时一秒 把值7FH写入P1 执行延时一秒 ORG 0000H MOV P1,#0FEH START: CALL DELAY1S MOV P1,#0FDH CALL DELAY1S MOV P1,#0FBH CALL DELAY1S MOV P1,#0F7H CALL DELAY1S MOV P1,#EFH CALL DELAY1S MOV P1,#0DFH CALL DELAY1S MOV P1,#0BFH CALL DELAY1S 执行延时一秒 MOV P1,#7FH CALL DELAY1S JMP START 根据流程图来编写汇编程序 开始执行 把值FEH写入P1 执行延时一秒 把值FDH写入P1 执行延时一秒 把值FBH写入P1 执行延时一秒 把值F7H写入P1 执行延时一秒 把值EFH写入P1 把值DFH写入P1 执行延时一秒 把值BFH写入P1 执行延时一秒 把值7FH写入P1 执行延时一秒 执行延时一秒 main() while(1) P1=0XFE; P1=0XFE; P1=0XFE; P1=0XFE; P1=0XFE; P1=0XFE; P1=0XFE; P1=0XFE; Delay500ms(); Delay500ms(); Delay500ms(); Delay500ms(); Delay500ms(); Delay500ms(); Delay500ms(); Delay500ms(); 根据流程图来编写C程序 开关控制的流水灯 汇编语言JB bit, rel 指令执行流程 C语言if语句执行流程

文档评论(0)

1亿VIP精品文档

相关文档