当前位置:千优问>常见问答>单片机定时/计数器实验--脉冲计数器

单片机定时/计数器实验--脉冲计数器

2022-12-13 04:14:05 编辑:join 浏览量:592

单片机定时/计数器实验--脉冲计数器

这是个简易频率计,程序如下:

;---------------------------------

  ORG  0000H

  JMP  START

  ORG  000BH

  JMP  T0_INT

;---------------------------------

START:

  MOV  TMOD, #51H       ;/*01010001 T1计数,T0定时*/ 

  MOV  TH0, #HIGH(65536 - 50000) ;50ms@12MHz

  MOV  TL0, #LOW (65536 - 50000)

  MOV  TH1, #0

  MOV  TL1, #0

  SETB TR0

  SETB TR1

  SETB ET0

  SETB EA

  MOV  R7,  #20

  SJMP $

;---------------------------------

T0_INT:          ;50ms执行一次

  MOV  TL0, #LOW (65536 - 50000) ;重新写入初始值

  MOV  TH0, #HIGH(65536 - 50000) ;50ms@12MHz

  DJNZ R7, T0_END

  MOV  R7,  #20

  MOV  P1, TL1

  MOV  P2, TH1

  MOV  TL1, #0

  MOV  TH1, #0

T0_END:

  RETI

;---------------------------------

END

用PROTEUS仿真如下图。

图中信号的频率是5000Hz,显示的是16进制,这是题目中要求的形式。

单片机定时/计数器实验--脉冲计数器

标签:计数器,单片机,--