1. 首页
  2. 存储
  3. 其他
  4. 引脚下降沿产生中断信号-starter使用手册

引脚下降沿产生中断信号-starter使用手册

上传者: 2024-07-28 13:51:04上传 PDF文件 13.05MB 热度 24次

SETB EX0 ;开外部P3.2引脚中断

SETB IT0 ;P3.2引脚下降沿产生中断信号

SETB EA ;开总中断允许



---主程序---- 

MAIN:CALL CHUFA ;调处理子程序完成除法任务

CALL DISPLAY ;调显示子程序

SJMP MAIN ;程序跳转到MAIN----CHUFA子程序--- 

CHUFA:MOV A, XINLVSHU ;XINLVSHU中的数据拷贝给A

MOV B, #100 ;给寄存器B赋值100

DIV AB ;用A除以B,结果在A中(百位),余数在BMOV XINLVBAIWEI, A ;百位的结果放在XINLVBAIWEIMOV A , B ;把B中的余数拷贝给A

MOV B, #10 ;给B中赋值10

DIV AB ;用A除以B,结果在A中(十位),余数在B中(个位)

MOV XINLVSHIWEI, A ;A中的数拷贝给XINLVSHIWEI

MOV XINLVGEWEI ,B ;B中的数据拷贝给XINLVGEWEI

MOV A, MIAO ;把秒拷贝个A

MOV B, #10 ;给B中赋值10

DIV AB ;用A除以B,结果在A中(十位),余数在B中(个位)

MOV MIAOSHIWEI, A ;把A(秒的十位)拷贝给MIAOSHIWEI

MOV MIAOGEWEI, B ;把B(秒个位)拷贝给MIAOGEWEI

RET ;子程序返回



---DISPLAY子程序--- 

DISPLAY:MOV A, MIAOSHIWEI ;把MIAOSHIWEI中存储的数据拷贝给A

MOVC A, @A+DPTR ;到数据表中取秒十位对应的显示段码

MOV P0, A ;将显示段码送到P0口处

CLR P2.7 ;P2.7置0,使得三级管导通给第一个数码管供电

CALL DELAY ;延一段时间,使得十位数据显示一段时间

在主程序中,我们首先开启了外部P3.2引脚中断,这意味着任何从高电平到低电平的变化都会触发一个中断信号。然后,我们通过调用CHUFA子程序来处理除法运算。如何在汇编语言中进行除法操作可以参考大数除法运算DISPLAY子程序将计算结果显示出来。关于单片机显示的更多信息,可以查看51单片机显示子程序

CHUFA子程序中,我们将XINLVSHU中的数据复制到累加器A,然后进行除法运算,并将结果分别存储在不同的变量中。为了更好地理解这种除法运算的方法,可以参阅除法运算方法

DISPLAY子程序负责将计算结果显示在数码管上。如果你对单片机的中断处理和显示程序设计有兴趣,相关例子和技巧可以参考PIC单片机引脚中断程序的设计技巧调用显示子程序

下载地址
用户评论