当前位置:网站首页 > Haskell函数式编程 > 正文

单片机编程代码大全(单片机编程代码大全汇编语言)



  单片机AT89C51的P1口接8个发光二极管,让这8个发光二极管能够双灯左移之后再双灯右移,形成霹雳灯的效果,如此循环5次后全灭,延时0.5S。灯右移,形成霹雳灯的效果,如此循环5次后全灭。延时0.5S。

  源代码

  ORG 0000H

  MOV A,#B

  start:

  MOV P1,A

  CALL delay

  RL A

  RL A

  INC R0

  CJNE R0,#4,start

  MOV R0,#00H

  s:

  RR A

  RR A

  MOV P1,A

  CALL delay

  INC R0

  CJNE R0,#4,s

  MOV R0,#00H

  LJMP start

  delay: MOV R5,#100

  k1: MOV R6,#250

  k2: MOV R7,#250

  k3: DJNZ R7,k3

  DJNZ R6,k2

  DJNZ R5,k1

  RET

  END

  单片机AT89C51的P1口和P2口分别接八个发光二极管,P2口八灯实现左移,延时0.5S,要求左移第一次,P1.0对应灯点亮,P2口灯左移第二次,P1.1对应灯亮,如此延续下去,直至左移八次后,所有灯全灭。

  ORG 0000H

  MOV R0,#B

  start: MOV A,#B

  MOV P2,A

  s: CALL delay

  RL A

  MOV P2,A

  CALL delay

  CJNE A,#0B,s

  MOV A,R0

  MOV P1,A

  RL A

  MOV R0,A

  JMP start

  delay: MOV R5,#100

  k1: MOV R6,#250

  k2: MOV R7,#250

  k3: DJNZ R7,k3

  DJNZ R6,k2

  DJNZ R5,k1

  RET

  END

  单片机AT89C51的P2口分别接8个指拨开关;P0口接8个LED。指拨开关闭合之前8个LED全亮,闭合指拨开关P2.0,则P0.0所对应的LED灭,以此类推。

  源代码:

  ORG 0

  MOV A,#00000000B

  MOV P0,A

  MOV P2,#0FFH

  LOOP: MOV A,P2

  CPL A

  MOV P0,A

  JMP LOOP

  END

  单片机AT89C51的P2口分别接8个指拨开关;P0口接8个LED。指拨开关闭合之前8个LED单灯左移3次后,全亮,闭合指拨开关P2.0,则P0.0所对应的LED灭,以此类推。延时为0.2S。

  源代码:

  ORG 0

  MOV R1,#3

  LOOP1: MOV R0,#8

  MOV A,#B

  LOOP2: MOV P0,A

  RL A

  CALL D200MS

  DJNZ R0,LOOP2

  DJNZ R1,LOOP1

  MOV A,#00000000B

  MOV P0,A

  MOV P2,#0FFH

  LOOP: MOV A,P2

  CPL A

  MOV P0,A

  JMP LOOP

  D200MS:

  MOV R7,#250

  D1: MOV R6,#200

  D2: MOV R5,#2

  DJNZ R5,$

  DJNZ R6,D2

  DJNZ R7,D1

  RET

  END

  单片机AT89C51的P2.0、P2.1和P2.2口分别接一个按钮开关,P1口低4位接译码器7447,7447输出部分接共阳极LED数码管。要求按一下P2.0口对应按钮,数码管显示数字“0”;按一下P2.1口对应按钮,数码管显示数字“8”;按一下P2.2口对应按钮,数码管所显示的数字被关闭。

  源代码:

  ORG 0000H

  START: MOV P2,#0FFH

  LOOP: JNB P2.0,ON

  JNB P2.1,ON8

  JNB P2.2,OFF

  JMP LOOP

  ON: MOV P1,#00H

  ON_1: JB P2.0,LOOP

  JMP ON_1

  ON8: MOV P1,#08H

  ON_8: JB P2.1,LOOP

  JMP ON_8

  OFF: MOV P1,#0FFH

  OFF_1: JB P2.2,LOOP

  JMP OFF_1

  END

  单片机AT89C51的P0口接8个LED,用INT0产生中断。主程序正常执行时,P0口的8个LED单灯左移。当进入中断状态时,P0口的8个LED将变成单灯右移,3个循环后,恢复中断前的状态,即继续执行8个LED单灯左移。延时为0.5S。

  ORG 0000H

  JMP main

  ORG 0003H

  JMP int_0

  main:

  SETB IT0

  SETB EX0

  SETB EA

  MOV A,#B

  s: RL A

  MOV P2,A

  CALL delay

  JMP s

  delay:

  MOV R7,#100

  d3: MOV R6,#200

  d2: MOV R5,#250

  d1: DJNZ R5,d1

  DJNZ R6,d2

  DJNZ R7,d3

  RET

  int_0:

  MOV P2,A

  MOV R0,#24

  k: RR A

  MOV P2,A

  CALL delay

  DJNZ R0,k

  MOV R0,#24

  RETI

  END

到此这篇单片机编程代码大全(单片机编程代码大全汇编语言)的文章就介绍到这了,更多相关内容请继续浏览下面的相关 推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • 字符串转码转换编码方式(字符串转码转换编码方式)2026-04-14 23:45:07
  • 支付方(支付方式是什么意思)2026-04-14 23:45:07
  • 打印机ip换了,怎么连接(打印机ip地址变更怎样连接到台式电脑)2026-04-14 23:45:07
  • 报文格式(can报文格式)2026-04-14 23:45:07
  • 支付方式怎么填三方协议(支付方式怎么填三方协议模板)2026-04-14 23:45:07
  • convhull函数(conv1d函数)2026-04-14 23:45:07
  • 新加坡支付方式有哪些(新加坡支付方式有哪些种类)2026-04-14 23:45:07
  • py文件格式用什么打开(py格式的文件怎么打开)2026-04-14 23:45:07
  • 地铁支付方式怎么更换(地铁支付方式怎么改)2026-04-14 23:45:07
  • 30报文格式错误(报文格式错误是谁的原因)2026-04-14 23:45:07
  • 全屏图片