instruction.txt

来自「《嵌入式系统-使用HCS12微控制器的设计与应用》在CodeWarrior开发环」· 文本 代码 · 共 21 行

TXT
21
字号
1 程序功能:
      在通用串口程序的串行发送窗口中输入"?"将返回下列提示信息:
      "E:PAGE:ADDR"(擦除指定扇区)
      "W:PAGE:ADDR:N:DATA"(将数据写入指定的扇区)
      "R:page:ADDR:N"(读取指定扇区中的数据)
      其中PAGE为页号,大小为1个字节,范围从38~3F;
          ADDR为扇区首地址(一个扇区大小为512字节),例如8000,8200;
          N为字节个数(0~F);
          DATA为要写入Flash的数据;
      举例如下:
          "E:38:8000"(擦除页号为38,扇区首地址为8000的一个扇区)
          "W:38:8000:8:12345678"(向页号为38,地址从8000开始的Flash区写入8个字节的数据12345678)
          "W:38:8000:8"(读取页号为38,地址从8000开始的8个字节的数据)
2 由于在Flash擦写时会在Flash区产生高压,造成擦写不稳定,本工程采用了如下的技巧进行擦写操作:
      把在Flash区高压时要执行的擦写程序代码翻译成机器码,存放在RAM区,当执行擦写操作时,执行RAM区
      擦写程序代码的机器码,这样就避免了擦写操作不稳定。存放在RAM区的机器码相当于下面两行代码    
          FSTAT=0x08; 
          while(!(FSTAT&0x40));
3 当擦除页号为3E时,擦除开始地址不能为8000,因为程序存放在该块Flash区,擦除了以后程序不能正常执行.
  当要擦除的页号为3E时,一般开始地址选择较后的地址,比如A000。 

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?