燕山大学成绩表423
单片机课程设计
我要下载
数字频率计的设计
1、设计要求
用单片机的I/O口测量输入方波信号的频率,测量范围为0~10000Hz,用数码管显示被测信号的频率。要求能够连续测量,测量结果每秒刷新一次显示。
2、设计思路
(1) 测量被测信号的频率:
通过测量每秒钟检测到正负跳变的个数
(2)解决可以连续测量的问题:
每秒钟中断(软件中断)一次,重新开始测量正负跳变的个数
(3)将测量的频率转化成可以显示的十进制数
(4)循环显示转换后得到的十进制:
将转换后的十进制对应预设的列表程序,列表数值数码管的段选,每次检测
到一位十进制就循环显示,并且位选寄存器的数值自动加一,如此循环,循环周期为一秒。
3、课程设计程序
C8255 EQU 0C006H
P8255A EQU 0C000H
P8255B EQU 0C002H
P8255C EQU 0C004H
BX EQU 1CH
BL EQU 1CH
BH EQU 1DH
BXL EQU 1EH
BXH EQU 1FH
AX EQU 20H
AL EQU 20H
AH EQU 21H
CX EQU 24H
CL EQU 24H
CH EQU 25H
DX EQU 22H
DL EQU 22H
FX EQU 28H
FL EQU 28H
EX EQU 26H
HX EQU 36H
HL EQU 36H
ORG 2080H
MAIN: LDB AH,#82H
STB AH,C8255[0]
CLR BX ;跳变个数
1
单片机课程设计
CLRB CL
LD SP,#0060H
LD INT_MASK,#20H ;允许软件中断 LD DX,#INT_HSO
ST DX,200AH[0]
LDB AL,#05H
CLRB INT_PENDING
LD HX,#03FFH ;循环显示次数;STA: STB 0,P8255C
; LDB DL,#3FH
; STB DL,P8255A
; JBC PORT2,1,STA
EI
STA: SCALL SETHSO
JBC PORT2,1,STA
CMPB AL,#00H
JE DISP
INC BX
ZERO: JBS PORT2,1,ZERO
CMPB AL,#00H
JE DISP
INC BX
SCALL SETHSO
ARE: JBC PORT2,1,ARE
CMPB AL,#00H
JE DISP
INC BX
SCALL SETHSO
SJMP ZERO
HERE: SJMP HERE
---------------------------------------------------------------------------------------------------------
DISP: ;显示部分 LDB CH,#060H
LD DX,#2400H
CLR FX
CLRB AH
DISP1: STB CH,P8255C
LDB FL,[DX]+
LDB BH,DAT[FL]
STB BH,P8255A
SCALL DELAY
INCB AH
2
单片机课程设计
CMPB AH,CL
JE DISP
SUBB CH,#20H
DEC HX
CMP 0,HX
JE RETURN
SJMP DISP1
RETURN: SJMP MAIN
;---------------------------------------------------------------------------------------------------------------- ;中断服务程序
INT_HSO: DJNZ AL,RETU
PRECAL: DI
SCALL CAL
SETHSO: LDB MAND,#38H ;
ADD HSO_TIME,TIMER1,#0C350H
NOP
NOP
RETU: RET
;---------------------------------------------------------------------------------------------------------------- ;计算和存值
CAL: LDB AL,#0AH
CLR FL
燕山大学成绩表423 来自淘豆网m.daumloan.com转载请标明出处.