Rev. 1.50
1��
����st ��� �01�
Rev. 1.50
1�9
����st ��� �01�
HT66F0175/HT66F0185
A/D Flash MCU with EEPROM
HT66F0175/HT66F0185
A/D Flash MCU with EEPROM
Example: using the interrupt method to detect the end of conversion
clr
ADE
;
disable
ADC
interrupt
mov a,03H
mov SADC1,a ; select f
SYS
/8 as A/D clock and switch off V
BG
voltage
set ADCEN
mov a,03h ; setup ACERL to configure pin AN0
mov ACERL,a
mov a,00h
mov SADC0,a ; enable and connect AN0 channel to A/D converter
:
Start_conversion:
clr START ; high pulse on START bit to initiate conversion
set START ; reset A/D
clr START ; start A/D
clr ADF ; clear ADC interrupt request flag
set
ADE
;
enable
ADC
interrupt
set EMI ; enable global interrupt
:
:
ADC_ISR: ; ADC interrupt service routine
mov acc_stack,a ; save ACC to user defined memory
mov a,STATUS
mov status_stack,a ; save STATUS to user defined memory
:
mov a, SADOL ; read low byte conversion result value
mov SADOL_buffer,a ; save result to user defined register
mov a, SADOH ; read high byte conversion result value
mov SADOH_buffer,a ; save result to user defined register
:
EXIT_INT_ISR:
mov a,status_stack
mov STATUS,a ; restore STATUS from user defined memory
mov a,acc_stack ; restore ACC from user defined memory
reti