*(FlashStart + 0x800*4) = 0x3030;擦除了什么
时间: 2024-01-17 14:29:46 浏览: 11
这行代码将Flash芯片中第0x800个扇区的第一个4字节数据写入了0x3030,这个操作并不是用于擦除Flash芯片,而是用于触发Flash芯片对第0x800个扇区进行擦除。实际上,在Flash编程模式下,写入任何一个不同于Flash芯片中当前位置的数据都可以起到触发擦除的作用。因此,这行代码的作用是将Flash芯片中第0x800个扇区擦除。
相关问题
*(FlashStart + 0x800*4) = 0x3030;
这行代码将Flash芯片中第0x800个扇区的第一个4字节数据(即第0x800个扇区的起始地址加上4)写入了0x3030,这个操作并不是用于擦除Flash芯片,而是用于触发Flash芯片对第0x800个扇区进行擦除。实际上,在Flash编程模式下,写入任何一个不同于Flash芯片中当前位置的数据都可以起到触发擦除的作用。因此,这行代码的作用是将Flash芯片中第0x800个扇区擦除。
void SectorErase(void) { *(FlashStart + 0x5555) = 0xAAAA; *(FlashStart + 0x2AAA) = 0x5555; *(FlashStart + 0x5555) = 0x8080; *(FlashStart + 0x5555) = 0xAAAA; *(FlashStart + 0x2AAA) = 0x5555; (FlashStart + SectorSize4) = 0x3030; DINT; DELAY_US(40000); EINT; }解释CCS代码
这段代码是在对Flash进行扇区擦除操作,其中包含了延时操作。下面是每行代码的解释:
1. `*(FlashStart + 0x5555) = 0xAAAA;` 将FlashStart地址加上0x5555的偏移量,写入0xAAAA,这是擦除Flash的第一步。
2. `*(FlashStart + 0x2AAA) = 0x5555;` 将FlashStart地址加上0x2AAA的偏移量,写入0x5555,这是擦除Flash的第二步。
3. `*(FlashStart + 0x5555) = 0x8080;` 将FlashStart地址加上0x5555的偏移量,写入0x8080,这是擦除Flash的第三步。
4. `*(FlashStart + 0x5555) = 0xAAAA;` 将FlashStart地址加上0x5555的偏移量,写入0xAAAA,这是擦除Flash的第四步。
5. `*(FlashStart + 0x2AAA) = 0x5555;` 将FlashStart地址加上0x2AAA的偏移量,写入0x5555,这是擦除Flash的第五步。
6. `(FlashStart + SectorSize*4) = 0x3030;` 将FlashStart地址加上SectorSize*4的偏移量,写入0x3030,这是擦除Flash的最后一步。
7. `DINT;` 关闭全局中断,防止中断影响到擦除操作。
8. `DELAY_US(40000);` 延时40毫秒,等待Flash擦除完成。
9. `EINT;` 开启全局中断。
其中,SectorSize为Flash的扇区大小,单位为字节。因此,`(FlashStart + SectorSize*4)` 表示的是Flash扇区内的第4个字节的地址。
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)