|
发表于 2012-1-3 12:33:59
|
显示全部楼层
首先,你说的几点都是没搞清楚方向。
汇编有很多种,在PC上实现的比如 DOS WIN32汇编, 在单片机上有 51 ARM汇编。
单片机可以用C语言写,也可以用汇编写。
51汇编的定时中断调用:
最好看下51单片机的书
;*******************************不同类型的单片机对应的地址不同
ORG 0000H
LJMP MAIN ;主函数
ORG 0003H
LJMP KEYINT ;按键扫描处理函数
ORG 000BH
RETI
ORG 0013H
RETI
ORG 001BH
RETI
ORG 0023H
RETI
ORG 002BH
LJMP T2INT ;定时器2中断
ORG 003BH
LJMP HSINT ;串口中断
;*******************************
ORG 0100H
;----------------------------------
MAIN:
MOV SP,#6AH
CLR RS0
CLR RS1
MOV IE,#01100001B ; SINT NO / HSINT YES
MOV IP,#01000000B
MOV TCON,#00000000B ;后沿触发
MOV TMOD,#00100101B ;8 BIT
MOV CKCON,#07H
MOV TH0,#00H
MOV TL0,#00H
MOV T2CON,#00000000B
MOV RCAP2H,#00H
MOV RCAP2L,#00H
MOV P1,#0FFH
MOV DALNUM,#00
T2INT:
CLR TF2
CLR TR2
CLR EA
PUSH ACC
PUSH PSW
PUSH DPH
PUSH DPL
SETB EA
INC DALNUM
MOV A,DALNUM
CLR C
SUBB A,#04H
JC T2RET
LCALL CLKF
RETI
实现调用就可以了
中断的话 在PC上和单片机上不一样的
DOS 上的INT WIN32把中断封装在函数里了
单片机的中断C语言的话设定相应的状态寄存器 |
|