| Electronic Components Datasheet Search |
|
PIC16F1933-E/P Datasheet(PDF) 25 Page - Microchip Technology |
|
|
|||||||||||||||||||||||||||||
PIC16F1933-E/P Datasheet(HTML) 25 Page - Microchip Technology |
|
25 / 418 page ![]() © 2008 Microchip Technology Inc. Preliminary DS41364A-page 23 PIC16F193X/LF193X FIGURE 2-3: PROGRAM MEMORY MAP AND STACK FOR THE PIC16F1938/PIC16LF1938/ PIC16F1939/PIC16LF1939 2.1.1 READING PROGRAM MEMORY AS DATA There are two methods of accessing constants in pro- gram memory. The first method is to use tables of RETLW instructions. The second method is to set an FSR to point to the program memory. 2.1.1.1 RETLW Instruction The RETLW instruction can be used to provide access to tables of constants. The recommended way to create such a table is shown in Example 2-1. EXAMPLE 2-1: RETLW INSTRUCTION The BRW instruction makes this type of table very sim- ple to implement. If your code must remain portable with previous generations of microcontrollers, then the BRW instruction is not available so the older table read method must be used. 2.1.1.2 Indirect Read with FSR The program memory can be accessed as data by set- ting bit 7 of the FSRxH register and reading the match- ing INDFx register. The MOVIW instruction will place the lower 8 bits of the addressed word in the W register. Writes to the program memory cannot be performed via the INDF registers. Instructions that access the pro- gram memory via the FSR require one extra instruction cycle to complete. Example 2-2 demonstrates access- ing the program memory via an FSR. EXAMPLE 2-2: ACCESSING PROGRAM MEMORY VIA FSR PC<14:0> 15 0000h 0004h Stack Level 0 Stack Level 15 Reset Vector Interrupt Vector Stack Level 1 0005h On-chip Program Memory Page 0 07FFh Rollover to Page 0 0800h 0FFFh 1000h 7FFFh Page 1 Rollover to Page 7 Page 2 Page 3 17FFh 1800h 1FFFh 2000h Page 4 Page 7 3FFFh 4000h CALL, CALLW RETURN, RETLW INTERRUPT, RETFIE constants brw retlw DATA1 retlw DATA2 retlw DATA3 retlw DATA4 my_function ;… LOTS OF CODE… movlw DATA_INDEX call constants ;… THE CONSTANT IS IN W bsf FSR1H,7 moviw 0[INDF1] ;THE PROGRAM MEMORY IS IN W |
|
Link URL |
| Does ALLDATASHEET help your business so far? [ DONATE ] |
About Alldatasheet | Advertisement | Contact us | Privacy Policy | Link to Datasheet | Link Exchange | Manufacturer List All Rights Reserved©Alldatasheet.com |
| Russian : Alldatasheetru.com | Korean : Alldatasheet.co.kr | Spanish : Alldatasheet.es | French : Alldatasheet.fr | Italian : Alldatasheetit.com Portuguese : Alldatasheetpt.com | Polish : Alldatasheet.pl | Vietnamese : Alldatasheet.vn Indian : Alldatasheet.in | Mexican : Alldatasheet.com.mx | British : Alldatasheet.co.uk | New Zealand : Alldatasheet.co.nz |
|
Family Site : ic2ic.com |
icmetro.com |