| Electronic Components Datasheet Search |
|
AN247 Datasheet(PDF) 2 Page - Microchip Technology |
|
|
|||||||||||||||||||||||||||||
AN247 Datasheet(HTML) 2 Page - Microchip Technology |
|
2 / 32 page ![]() AN247 DS00247A-page 2 2003 Microchip Technology Inc. Even with careful planning, there may be situations where safety is actually compromised as a result of bus contention. In these cases, the best option may be to put all nodes in the network into a “Configuration” mode and shut down all system functions. Boot Mode Entry Boot mode entry is determined by an event. This could be a hardware event, such as pressing one or more buttons after a device RESET. It could also be a net- work event, such as a special set of data that tells a device to enter Boot mode. One example is a network boot ID that is mapped directly into the CAN ID. Then the key, along with specific target information, could be embedded in the data field of a CAN frame. The key information could put one or more nodes into Boot mode. BOOTLOADER FIRMWARE Basic Operation Overview An overview of the CAN bootloader’s operation is shown in Figure 1. A CAN Message Identifier and data is received through the CAN module. One bit in the identifier is used to indicate whether to PUT or GET data. Another is used to determine if the message is to be interpreted as data to be programmed or bootloader control information. Writing data automatically invokes the appropriate function to write to memory (FLASH, Data EEPROM, or Configuration Memory). Writing to the Control registers sets the operation of the bootloader. The bootloader can be configured at build time to sup- port one of two mutually exclusive modes of operation. In P Mode (or Put-only) mode, the microcontroller only accepts PUT commands, and never “talks back” to the source. In PG Mode, both PUT and GET commands are accepted, allowing the source to both read from and write to the target’s memory. A more detailed explanation is provided in subsequent sections. Memory Organization PROGRAM MEMORY USAGE Currently, PIC18F devices reserve the first 512 bytes of Program Memory as the boot block. Future devices may expand this, depending on application require- ments for these devices. This bootloader is designed to occupy the current designated boot block of 512 bytes (or 256 words) of memory using the recommended options. Note, however, some compile time options can grow the bootloader beyond the boot block. Figure 2 shows a memory map of the PIC18F458. The boot area can be code protected to prevent accidental overwriting of the boot program. FIGURE 1: BOOTLOADER FUNCTIONAL BLOCK DIAGRAM FIGURE 2: PROGRAM MEMORY MAP OF THE PIC18F458 CAN PUT/GET Memory I/O FLASH Program Memory EE Configuration Data Memory TX RX Memory Bootloader Firmware Module Logic Control/Data Buffer CONTROL/DATA Bootloader Control Registers D8 D0 Data (Msg Identifier) RESET Vector Low Priority Interrupt Vector 0200h 0218h Program Memory High Priority Interrupt Vector 0208h 7FFFh Boot Program Note: Memory areas not shown to scale. 0000h |
|
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 |