PIC16F8X
DS30430C-page 50
1998 Microchip Technology Inc.
8.10
Context Saving During Interrupts
During an interrupt, only the return PC value is saved
on the stack. Typically, users wish to save key register
values during an interrupt (e.g., W register and
STATUS register). This is implemented in software.
Example 8-1 stores and restores the STATUS and W
register’s values. The User defined registers, W_TEMP
and STATUS_TEMP are the
temporary
storage
locations for the W and STATUS registers values.
Example 8-1 does the following:
a)
Stores the W register.
b)
Stores the STATUS register in STATUS_TEMP.
c)
Executes the Interrupt Service Routine code.
d)
Restores the STATUS (and bank select bit)
register.
e)
Restores the W register.
EXAMPLE 8-1:
SAVING STATUS AND W REGISTERS IN RAM
PUSH
MOVWF
W_TEMP
; Copy W to TEMP register,
SWAPF
STATUS, W
; Swap status to be saved into W
MOVWF
STATUS_TEMP
; Save status to STATUS_TEMP register
ISR
:
; Interrupt Service Routine
:
;
should configure Bank as required
:
;
POP
SWAPF
STATUS_TEMP, W
; Swap nibbles in STATUS_TEMP register
; and place result into W
MOVWF
STATUS
; Move W into STATUS register
;
(sets bank to original state)
SWAPF
W_TEMP, F
; Swap nibbles in W_TEMP and place result in W_TEMP
SWAPF
W_TEMP, W
; Swap nibbles in W_TEMP and place result into W
相关PDF资料
PIC16F628A-I/P IC MCU FLASH 2KX14 EEPROM 18DIP
PIC18F24K22-I/SO IC PIC MCU 16KB FLASH 28SOIC
PIC18F23K22-I/SP IC PIC MCU 8KB FLASH 28SPDIP
PIC18LF23K22-I/SP IC PIC MCU 8KB FLASH 28SPDIP
PIC24F08KA102-I/SS IC PIC MCU FLASH 8K 28-SSOP
PIC16C58B-20/SO IC MCU OTP 2KX12 18SOIC
PIC12C672-04/SM IC MCU OTP 2KX14 A/D 8-SOIJ
PIC18F25K20-E/SS IC PIC MCU FLASH 16KX16 28-SSOP
相关代理商/技术参数
PIC18F44J10-I/P 功能描述:8位微控制器 -MCU 16 KB FL 1024 RAM 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
PIC18F44J10-I/PT 功能描述:8位微控制器 -MCU 16 KB FL 1 KB RAM 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
PIC18F44J10T-I/ML 功能描述:8位微控制器 -MCU 16 KB FL 1024 RAM 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
PIC18F44J10T-I/PT 功能描述:8位微控制器 -MCU 16 KB FL 1024 RAM 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
PIC18F44J11-I/ML 功能描述:8位微控制器 -MCU 16KB Flash 4KBRAM 12MIPS nanoWatt 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
PIC18F44J11-I/PT 功能描述:8位微控制器 -MCU 16KB Flash 4KBRAM 12MIPS nanoWatt 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
PIC18F44J11T-I/ML 功能描述:8位微控制器 -MCU 16KB Flash 4KBRAM 12MIPS nanoWatt 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
PIC18F44J11T-I/PT 功能描述:8位微控制器 -MCU 16KB Flash 4KBRAM 12MIPS nanoWatt 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