| 数据搜索系统,热门电子元器件搜索 |
|
ADE5166 数据表(PDF) 103 Page - Analog Devices |
|
|
|||||||||||||||||||||||||||||
ADE5166 数据表(HTML) 103 Page - Analog Devices |
|
103 / 148 page ![]() Preliminary Technical Data ADE5166/ADE5169/ADE5566/ADE5569 Rev. PrB | Page 103 of 148 Flash Functions The following sample 8051 code is provided below to demonstrate how to use the Flash functions. For these examples, the byte of flash memory, 0x3C00 is accessed. Write Byte Write 0xF3 into Flash Memory Byte 0x3C00. MOV EDATA, #F3h ; Data to be written MOV EADRH, #3Ch ; Set up byte address MOV EADRL, #00h MOV FLSHKY, #3Bh ; Write Flash security key. MOV ECON, #01H ; Write Byte Erase Page Erase the page containing flash memory byte 0x3C00. MOV EADRH, #3Ch ; Select page through byte address MOV EADRL, #00h MOV FLSHKY, #3Bh ; Write Flash security key. MOV ECON, #02H ; Erase Page Erase All Erase all of the 62 kB flash memory. MOV FLSHKY, #3Bh ; Write Flash security key. MOV ECON, #03H ; Erase All Read Byte Read Flash Memory Byte 0x3C00. MOV EADRH, #3Ch ; Setup byte address MOV EADRL, #00h MOV FLSHKY, #3Bh ; Write Flash security key. MOV ECON, #04H ; Read Byte ; Data is ready in EDATA register Note that the read byte command can be used to view the status of the protection bytes located in the upper 21 bytes, Page 123. The write byte command is not valid for this area. PROTECTING THE FLASH MEMORY Two forms of protection are offered for this flash memory: read protection and write/erase protection. The read protection ensures that any pages that are read protected cannot be read by the end user. The write protection ensures that the flash memory cannot be erased or written over. This protects the end system from tampering and can prevent the code from being overwritten in the event of a runaway program. Write/erase protection is individually selectable for all 124 pages. Read protection is selected in groups of four pages (see Figure 73 for the groupings). The protection bits are stored in the last flash memory locations, Address 0xF7EB through Address 0xF7FF (see Figure 74). 16 bytes are reserved for write/erase protection, 4 bytes for read protection and another byte to set the protection security key. The user must enable write/erase protection for the last page at a minimum for the entire protection scheme to work. Note that the read protection does not prevent MOVC commands from being executed within the code. There is an additional layer of protection offered by a protection security key. The user can setup a protection security key so that the protection scheme cannot be changed without this key. Once the protection key has been configured, it may not be modified. Enabling Flash Protection by Code The protection bytes in the Flash can be programmed using Flash controller command and programming ECON to 0x08. Issuing the ECON protection command initiates the program- ming of 1 byte of protection data. The EADRL and EDATA data pointers are used to store the least significant address and data bytes, respectively. Note that the EADRH data pointer is not used in this command. The following sequence should be followed to enable the flash protection: 1. Set the EDATA data pointer with the write/erase or read protection data. When erased, the protection bits default to 1, like any other bit of flash memory. The default protection setting is for no protection. To enable protection, write a 0 to the bits corresponding to the pages that should be protected. Note that when setting the read protection that each protection bit protects four pages. 2. Set the EADRL data pointer with the least significant byte of the protection address. For example, to access the protection on the Page 112 through Page 119 (Address 0xF7FE), EADRL should be written to 0xFE. 3. Enable access to the flash by writing 3Bh to the FLSHKY register. 4. Issue the protection command by writing 08H to the ECON register. Step 1 to Step 3 should be repeated for each byte that requires protection. While configuring the final byte of write/read protection, the PROTKY can be enabled for a further level of code security. If enabled, the protection key is required to modify the protection scheme. To enable the protection key, the flash location 0xF7EB where the PROTKY is located should be written to using the ECON protection command (0x8). The PROTKY can be written to any 8-bit value, but once configured, it cannot be modified. To enable the PROTKY and activate the flash protection, the part has to be reset. Note that once the PROTKY has been activated by a reset any further changes to the protection require the new 8-bit protection key to be written to the PROTKY SFR prior to issuing the ECON command. The PROTKY SFR is cleared automatically when the ECON 0x8 command is issued and, therefore, the user must |
|
链接网址 |
| ALLDATASHEET是否为您带来帮助? [ DONATE ] |
关于 Alldatasheet | 广告服务 | 联系我们 | 隐私政策 | 数据表链接 | 链接交换 | 制造商名单 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 |