dsPIC30F1010/202X
DS70178C-page 184
Preliminary
2006 Microchip Technology Inc.
Example 16-1 shows a code sequence for using the
ADBASE register to implement ADC Input Pair Inter-
rupt Handling. When the ADBASE register is read, it
contains the sum of the base address of the jump table
and the encoded ADC channel pair number left shifted
by 2 bits.
For example, if ADBASE is initialized with a value of
0x0360, a channel pair 1 interrupt would cause an
ADBASE
read
value
of
0x0364
(0x360
+
0b00000100). A channel pair 3 interrupt would cause
an ADBASE
read
value of
0x036C
(0x360
+
0b00001100).
EXAMPLE 16-1:
ADC BASE REGISTER CODE
; Initialize and enable the ADC interrupt
MOV
#handle(JMP_TBL),W0
; Load the base address of the ISR Jump
MOV WO, ADBASE
; table in ADBASE.
BSET
IPC2,#12
; Set up the interrupt priority
BSET
IPC2,#13
BSET
IPC2,#14
BCLR
IFS0,#11
; Clear any pending interrupts
BCLR
ADSTAT
; Clear the ADC pair interrupts as well
BSET
IEC0,#11
; Enable the interrupt
; Code to Initialize the rest of the ADC registers
...
; ADC Interrupt Handler
__ADCInterrupt:
PUSH.S
; Save WO-W3 and SR registers
BCLR
IFSO,#11
; Clear the interrupt
MOV
ADBASE, W0
; ADBASE contains the encoded jump address
GOTO
W0
; within JMP_TBL
; Here's the Jump Table
; Note: It is important to clear the individual IRQ flags in the ADC AFTER the IRQ flags
in the interrupt controller. Failure to do so may cause interrupt requests to be lost
JMP_TBL:
BCLR
ADSTAT,#0
; Clear the IRQ flag in the ADC
BRA
ADC_PAIR0_PROC
; Actual Pair 0 Conversion Interrupt Handler
BCLR
ADSTAT,#1
; Clear the IRQ flag in the ADC
BRA
ADC_PAIR1_PROC
; Actual Pair 1 Conversion Interrupt Handler
BCLR
ADSTAT,#2
; Clear the IRQ flag in the ADC
BRA
ADC_PAIR2_PROC
; Actual Pair 2 Conversion Interrupt Handler
BCLR
ADSTAT,#3
; Clear the IRQ flag in the ADC
BRA
ADC_PAIR3_PROC
; Actual Pair 3 Conversion Interrupt Handler
BCLR
ADSTAT,#4
; Clear the IRQ flag in the ADC
BRA
ADC_PAIR4_PROC
; Actual Pair 4 Conversion Interrupt Handler
相关PDF资料
PIC16F628A-I/SS IC MCU FLASH 2KX14 EEPROM 20SSOP
PIC18LF43K22-I/PT IC PIC MCU 8KB FLASH 44TQFP
DSPIC33FJ16MC101-I/SO IC DSP 16BIT 16KB 20SOIC
PIC12C672-04I/SM IC MCU OTP 2KX14 A/D 8-SOIJ
PIC12C671-04I/SM IC MCU OTP 1KX14 A/D 8-SOIJ
PIC18F26K20-I/SO IC PIC MCU FLASH 32KX16 28-SOIC
PIC18LF24J11-I/SO IC PIC MCU FLASH 16K 2V 28-SOIC
DSPIC33FJ16MC102-I/SS IC DSP 16BIT 16KB 28SSOP
相关代理商/技术参数
PIC18F14K50-I/SS 功能描述:8位微控制器 -MCU 16KB Flash 768 RAM15 I/O 10-B ADC USB 2.0 RoHS:否 制造商:Silicon Labs 核心:8051 处理器系列:C8051F39x 数据总线宽度:8 bit 最大时钟频率:50 MHz 程序存储器大小:16 KB 数据 RAM 大小:1 KB 片上 ADC:Yes 工作电源电压:1.8 V to 3.6 V 工作温度范围:- 40 C to + 105 C 封装 / 箱体:QFN-20 安装风格:SMD/SMT
PIC18F14K50T-I/SO 功能描述:8位微控制器 -MCU 16KB Flash 768 RAM15 I/O 10-B ADC USB 2.0 RoHS:否 制造商:Silicon Labs 核心:8051 处理器系列:C8051F39x 数据总线宽度:8 bit 最大时钟频率:50 MHz 程序存储器大小:16 KB 数据 RAM 大小:1 KB 片上 ADC:Yes 工作电源电压:1.8 V to 3.6 V 工作温度范围:- 40 C to + 105 C 封装 / 箱体:QFN-20 安装风格:SMD/SMT
PIC18F14K50T-I/SS 功能描述:8位微控制器 -MCU 16KB Flash 768 RAM15 I/O 10-B ADC USB 2.0 RoHS:否 制造商:Silicon Labs 核心:8051 处理器系列:C8051F39x 数据总线宽度:8 bit 最大时钟频率:50 MHz 程序存储器大小:16 KB 数据 RAM 大小:1 KB 片上 ADC:Yes 工作电源电压:1.8 V to 3.6 V 工作温度范围:- 40 C to + 105 C 封装 / 箱体:QFN-20 安装风格:SMD/SMT
PIC18F2220-E/SO 功能描述:8位微控制器 -MCU 4KB 512 RAM 25 I/O RoHS:否 制造商:Silicon Labs 核心:8051 处理器系列:C8051F39x 数据总线宽度:8 bit 最大时钟频率:50 MHz 程序存储器大小:16 KB 数据 RAM 大小:1 KB 片上 ADC:Yes 工作电源电压:1.8 V to 3.6 V 工作温度范围:- 40 C to + 105 C 封装 / 箱体:QFN-20 安装风格:SMD/SMT
PIC18F2220-E/SP 功能描述:8位微控制器 -MCU 4KB 512 RAM 25 I/O RoHS:否 制造商:Silicon Labs 核心:8051 处理器系列:C8051F39x 数据总线宽度:8 bit 最大时钟频率:50 MHz 程序存储器大小:16 KB 数据 RAM 大小:1 KB 片上 ADC:Yes 工作电源电压:1.8 V to 3.6 V 工作温度范围:- 40 C to + 105 C 封装 / 箱体:QFN-20 安装风格:SMD/SMT
PIC18F2220-I/SO 功能描述:8位微控制器 -MCU 4KB 512 RAM 25 I/O RoHS:否 制造商:Silicon Labs 核心:8051 处理器系列:C8051F39x 数据总线宽度:8 bit 最大时钟频率:50 MHz 程序存储器大小:16 KB 数据 RAM 大小:1 KB 片上 ADC:Yes 工作电源电压:1.8 V to 3.6 V 工作温度范围:- 40 C to + 105 C 封装 / 箱体:QFN-20 安装风格:SMD/SMT
PIC18F2220-I/SO 制造商:Microchip Technology Inc 功能描述:IC 8BIT FLASH MCU 18F2220 SOIC28
PIC18F2220-I/SOC03 制造商:Microchip Technology Inc 功能描述: