📄 hfkj.asm
字号:
;************* 宏方科技 HFKJAVR.asm ************************
;*
;* 标题:AT90S8535 集散式洁净空调自动控制系统
;* 版本: 1.0
;* 最后更新日期: 2002.11.01
;* 支援 TEL: 8102124 & 8106097
;*
;*************************************************************
.include"8535def.inc"
.org 0x0000
.equ label=0x0300
rjmp RESET ;
.cseg
.org 0x01 ;通用中断
INTT0: RJMP GINT ;
.cseg
.org 0x06 ;timerl
INTTT: RJMP TINT ;
.cseg
.org 0x11 ;
;
GINT: RETI
TINT:
RETI
;
.cseg
.org 0x020 ;
RESET:
SYS: ldi R16,low(RAMEND) ;设置堆栈
out SPL,R16
ldi R16,high(RAMEND)
out SPH,R16
wdr ;看门狗复位
ldi R16,$0F ;0b00001111
out WDTCR,R16 ;狗周期2048MS
ldi R16,$F8 ;0B11111000
out DDRA,R16 ;A口0~2输入,3~7输出
sbi porta,2
ldi R16,$FA ;0B11111110
out DDRD,R16 ;D口0/2输入,1/3~7输出
ldi R16,$FF ;0B11111111
out DDRC,R16 ;C口输出
out DDRB,R16 ;B口输出
ldi R16,$85 ;设置ADC转换,中断触发,ADC为单次模式且32M分频
out adcsr,R16
clr R16
out admux,R16 ;ADC 0通道
sbi adcsr,6 ;启动ADC
ldi r16,$98 ;初始化COM
out ucr,r16 ;设置UART控制寄存器---UCR
ldi r16,25
out ubrr,r16 ;设置UART波特率
ldi r16,$40 ;INT0可用,INT1屏蔽
out GIMSK,R16
ldi r16,$3 ;INT0上升沿触发
out mcucr,r16
ldi r16,$68 ;8255控制字写入
out portd,r16
ldi r16,$84 ;8255ABC口均设为输出
out portb,r16
cbi portd,6 ;8255B口输出
ldi r16,$a ;8279控制字写入
out portb,r16
cbi portd,5 ;8255A口输出
ldi r16,$12 ;8279键盘显示方式初始
out portb,r16
ldi r16,$22 ;8279时钟分频=10
out portb,r16
ldi r16,$90
out portb,r16 ;写显示数据命令
sbi portd,5 ;8255B口输出
ldi r16,$2
out portb,r16 ;将8279置为读数据状态
cbi portd,5 ;8255A口输出
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -