Presentation is loading. Please wait.

Presentation is loading. Please wait.

Emulated EEPROM Function for Data storage (ref. 908LJ12)

Similar presentations


Presentation on theme: "Emulated EEPROM Function for Data storage (ref. 908LJ12)"— Presentation transcript:

1 Emulated EEPROM Function for Data storage (ref. 908LJ12)
2017/4/21 The code is pre-installed in ROM and ready to use - USER FRIENDLY! Data file can be located in any location of RAM - FLEXIBLE! User defined data size to be programmed, 2bytes to 15 bytes at a time - FLEXIBLE! FLASH endurance can be improved up to 60 times with 128 bytes block size. CPUSPD Data Size Address High 2 Address Low 2 Data0 Data1 DataN DataFile2 pointer : LDHX $<DataFile1PTR> JSR WRITE_EE JSR READ_EE Address High 1 Address Low 1 DataFile1 pointer RAM Segment0 Segment1 Segment2 Segment3 Segment4 Segment5 Segment6 Size Control Block Boundary FLASH memory LIFO 1 1

2 In Circuit Flash Programming Platform (ref. 908LJ12)
2017/4/21 CPUSPD Data Size Address High 1 Address Low 1 Data0 Data1 DataN DataFile1 pointer CPUSPD Data Size Address High 1 Address Low 1 Data0 Data1 DataN DataFile2 pointer PROGRAM VERIFY FLASH : LDHX $<DataFile1PTR> JSR PRGRNGE : LDHX $<DataFile2PTR> JSR LDRNGE RAM RAM 2 1

3 HC908 Flash In System Programming through SCI Port
2017/4/21 HC908 Flash In System Programming through SCI Port The window s/w allow user - Load/Upload data from MCU - Erase/Program/Verify Flash Memory ISP? Start Execute User Code Disable COP. Exec. ISP Routine Application System TXD RXD SCI 68HC908 MCU MC145407 RS232 3 1

4 HC908 Flash In System Programming through SCI Port
2017/4/21 HC908 Flash In System Programming through SCI Port Registers Monitor ROM Vectors $0040 $023F $FE00 FLASH Programming Algorithm $0000 $FFFF ISP Routine RxD TxD PTA0 I/O Registers RAM SCI FLASH Data FLASH $8000 Erase FLASH Application Software Programming and erasing of FLASH locations cannot be performed by code being executed from the FLASH memory I get many designers asking me how they can use the Monitor to program the Flash memory in circuit in the field. They are perplexed by the idea that Port A0 is used for 9600 baud serial communications. The answer to this question is "you don't use the Monitor". The Monitor was intended to be used during the development phase of a project and for initial Flash programming control during the final product's manufacturing cycle. In all likelihood, <click> an application will use the SCI for serial communications with the outside world. The SCI can support various baud rates and has the necessary hardware to be significantly more robust than any port "bit-banging" method. <click> Since the application won't use Port A0 for serial communications, <click> then the Monitor can't be used for reprogramming the Flash in the field. So can this be accomplished? The answer is: user code programmed into the Flash. <click> For lack of a better terminology, we'll refer to this as the "User Monitor". This can perform all the same tasks as the Monitor ROM with the exception of using the SCI for communications and whatever additional application specific functions make sense. <click> The User Monitor can have a copy of the Flash programming algorithm which it will write into RAM. Although this isn't strictly necessary, it can potentially enhance the User Monitor's overall operation. A User Monitor could be written to mimic the Monitor ROM's behavior exactly, but that would then require that the ICS software be used as the device interface, which may not be practical in most cases, such as a remote web-based weather station sitting on the top of a mountain. In this case, a web browser is the device interface, and it will be used to perform Flash reprogramming in the field. <click> The User Monitor then operates the same as the Monitor ROM, <click> by downloading Flash data via the SCI into the RAM <click> and then executing the Flash programming algorithms from RAM <click> to erase the Flash <click> and then write the new data into the Flash. In this manner, <click> the entire Flash can be updated. 4 1

5 In-Circuit Programming system configuration
2017/4/21 In-System Programming is a process by which the device is programmed or erased with the device on the final end target system without open the case of the system. Personal Computer Interface Board Target System OSC_1 Software - MCUscribe - ICS08 M68SPGMR08 OSC_SEL* Additional H/W: - Header x 1 pcs - Diode x 2 pcs - Resistor - HC4066* x 1 pcs PA0 RS232 VPP VCC_S GND It may be some different control signals between interface board and target system depends on different application Example: GP32 and MR24/32 ICP Reference Demo board use 4 wires (PA0, Vpp, Vcc_s and GND). Remark: OSC_SEL and HC4066 is used when the oscillation frequency of target system is not equal to the oscillation frequency which required to entry to the monitor mode of the MCU. 5 1

6 GP32 In-Circuit Programming Reference Demo
2017/4/21 GP32 In-Circuit Programming Reference Demo GP32 Target board simulates a typical application, user running code will be executed after provided the power to the board (rurns the LED on and off repeatedly) Remove the Target Board power and then upgrade the firmware through four wires and SPGMR with PC 6 1


Download ppt "Emulated EEPROM Function for Data storage (ref. 908LJ12)"

Similar presentations


Ads by Google