参数资料
型号: PIC17C766T-33E/L
元件分类: 微控制器/微处理器
英文描述: 8-BIT, OTPROM, 33 MHz, RISC MICROCONTROLLER, PQCC84
封装: PLASTIC, MO-047, LCC-84
文件页数: 241/303页
文件大小: 5350K
代理商: PIC17C766T-33E/L
第1页第2页第3页第4页第5页第6页第7页第8页第9页第10页第11页第12页第13页第14页第15页第16页第17页第18页第19页第20页第21页第22页第23页第24页第25页第26页第27页第28页第29页第30页第31页第32页第33页第34页第35页第36页第37页第38页第39页第40页第41页第42页第43页第44页第45页第46页第47页第48页第49页第50页第51页第52页第53页第54页第55页第56页第57页第58页第59页第60页第61页第62页第63页第64页第65页第66页第67页第68页第69页第70页第71页第72页第73页第74页第75页第76页第77页第78页第79页第80页第81页第82页第83页第84页第85页第86页第87页第88页第89页第90页第91页第92页第93页第94页第95页第96页第97页第98页第99页第100页第101页第102页第103页第104页第105页第106页第107页第108页第109页第110页第111页第112页第113页第114页第115页第116页第117页第118页第119页第120页第121页第122页第123页第124页第125页第126页第127页第128页第129页第130页第131页第132页第133页第134页第135页第136页第137页第138页第139页第140页第141页第142页第143页第144页第145页第146页第147页第148页第149页第150页第151页第152页第153页第154页第155页第156页第157页第158页第159页第160页第161页第162页第163页第164页第165页第166页第167页第168页第169页第170页第171页第172页第173页第174页第175页第176页第177页第178页第179页第180页第181页第182页第183页第184页第185页第186页第187页第188页第189页第190页第191页第192页第193页第194页第195页第196页第197页第198页第199页第200页第201页第202页第203页第204页第205页第206页第207页第208页第209页第210页第211页第212页第213页第214页第215页第216页第217页第218页第219页第220页第221页第222页第223页第224页第225页第226页第227页第228页第229页第230页第231页第232页第233页第234页第235页第236页第237页第238页第239页第240页当前第241页第242页第243页第244页第245页第246页第247页第248页第249页第250页第251页第252页第253页第254页第255页第256页第257页第258页第259页第260页第261页第262页第263页第264页第265页第266页第267页第268页第269页第270页第271页第272页第273页第274页第275页第276页第277页第278页第279页第280页第281页第282页第283页第284页第285页第286页第287页第288页第289页第290页第291页第292页第293页第294页第295页第296页第297页第298页第299页第300页第301页第302页第303页
PIC17C7XX
DS30289B-page 42
2000 Microchip Technology Inc.
EXAMPLE 6-2:
SAVING STATUS AND WREG IN RAM (NESTED)
; The addresses that are used to store the CPUSTA and WREG values must be in the data memory
; address range of 1Ah - 1Fh. Up to 6 locations can be saved and restored using the MOVFP
; instruction. This instruction neither affects the status bits, nor corrupts the WREG register.
; This routine uses the FRS0, so it controls the FS1 and FS0 bits in the ALUSTA register.
;
Nobank_FSR
EQU
0x40
Bank_FSR
EQU
0x41
ALU_Temp
EQU
0x42
WREG_TEMP
EQU
0x43
BSR_S1
EQU
0x01A
; 1st location to save BSR
BSR_S2
EQU
0x01B
; 2nd location to save BSR (Label Not used in program)
BSR_S3
EQU
0x01C
; 3rd location to save BSR (Label Not used in program)
BSR_S4
EQU
0x01D
; 4th location to save BSR (Label Not used in program)
BSR_S5
EQU
0x01E
; 5th location to save BSR (Label Not used in program)
BSR_S6
EQU
0x01F
; 6th location to save BSR (Label Not used in program)
;
INITIALIZATION
;
CALL
CLEAR_RAM
; Must Clear all Data RAM
;
INIT_POINTERS
; Must Initialize the pointers for POP and PUSH
CLRF
BSR, F
; Set All banks to 0
CLRF
ALUSTA, F
; FSR0 post increment
BSF
ALUSTA, FS1
CLRF
WREG, F
; Clear WREG
MOVLW
BSR_S1
; Load FSR0 with 1st address to save BSR
MOVWF
FSR0
MOVWF
Nobank_FSR
MOVLW
0x20
MOVWF
Bank_FSR
:
; Your code
:
; At Interrupt Vector Address
PUSH
BSF
ALUSTA, FS0
; FSR0 has auto-increment, does not affect status bits
BCF
ALUSTA, FS1
; does not affect status bits
MOVFP
BSR, INDF0
; No Status bits are affected
CLRF
BSR, F
; Peripheral and Data RAM Bank 0 No Status bits are affected
MOVPF
ALUSTA, ALU_Temp
;
MOVPF
FSR0, Nobank_FSR
; Save the FSR for BSR values
MOVPF
WREG, WREG_TEMP
;
MOVFP
Bank_FSR, FSR0
; Restore FSR value for other values
MOVFP
ALU_Temp, INDF0
; Push ALUSTA value
MOVFP
WREG_TEMP, INDF0
; Push WREG value
MOVFP
PCLATH, INDF0
; Push PCLATH value
MOVPF
FSR0, Bank_FSR
; Restore FSR value for other values
MOVFP
Nobank_FSR, FSR0
;
:
; Interrupt Service Routine (ISR) code
;
POP
CLRF
ALUSTA, F
; FSR0 has auto-decrement, does not affect status bits
MOVFP
Bank_FSR, FSR0
; Restore FSR value for other values
DECF
FSR0, F
;
MOVFP
INDF0, PCLATH
; Pop PCLATH value
MOVFP
INDF0, WREG
; Pop WREG value
BSF
ALUSTA, FS1
; FSR0 does not change
MOVPF
INDF0, ALU_Temp
; Pop ALUSTA value
MOVPF
FSR0, Bank_FSR
; Restore FSR value for other values
DECF
Nobank_FSR, F
;
MOVFP
Nobank_FSR, FSR0
; Save the FSR for BSR values
MOVFP
ALU_Temp, ALUSTA
;
MOVFP
INDF0, BSR
; No Status bits are affected
;
RETFIE
; Return from interrupt (enable interrupts)
相关PDF资料
PDF描述
PIC18C242-I/SO 8-BIT, OTPROM, 40 MHz, RISC MICROCONTROLLER, PDSO28
PIC18C442-E/L 8-BIT, OTPROM, 40 MHz, RISC MICROCONTROLLER, PQCC44
PIC18F2515 PIC18FX515/X610 Product Brief
PIC18F2539 PIC18F2539 Motor Control Evaluation Kit
PIC18F4439 PIC18XXX Tools Quick Chart
相关代理商/技术参数
参数描述
PIC17C766T-33I/L 功能描述:8位微控制器 -MCU 33MHz 16K EPRM 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
PIC17C766T-33I/PT 功能描述:8位微控制器 -MCU 32KB 902 RAM 66 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
PIC17LC42A-08/L 功能描述:8位微控制器 -MCU 4KB 232 RAM 33 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
PIC17LC42A-08/P 功能描述:8位微控制器 -MCU 4KB 232 RAM 33 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
PIC17LC42A-08/PQ 功能描述:8位微控制器 -MCU 4KB 232 RAM 33 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