查看: 2185|回复: 0

对HCS08官方提供的FLASH读写的微小修正(添加喂狗)

[复制链接]

该用户从未签到

1

主题

12

帖子

0

新手上路

Rank: 1

积分
15
最后登录
1970-1-1
发表于 2012-1-22 14:55:02 | 显示全部楼层 |阅读模式
官方提供的例程里没有喂狗部分程序,会导致SOPT=0XD5时系统引发喂狗复位。修改几句话。
const unsigned char ROM_PGM[] =
{
        /* PC is pushed when calling, 2 bytes used (SP is decreased by 2)
        ** SP is now pointing to the next available unit
        ** thus '_addr' is at [SP+3]
        */
  0x9E, 0xFE, 0x03,                // LDHX 3,SP   ; get the target address '_addr'
  0xF7,                                        // STA ,X      ; store 'data' to 'addr'
  0xA6, 0x20,                        // LDA #$20    ; load FCMD, CMD should be changed before calling
  0xC7, 0x18, 0x26,                // STA $1826   ; FCMD
  0x45, 0x18, 0x25,                // LDHX #$1825 ; address of FSTAT
  0xF6,                                        // LDA ,X      ; load FSTAT to A
  0xAA, 0x80,                        // ORA #$80    ; set FCBEF to lunch the command
  0xF7,                                        // STA ,X      ; store back to FSTAT
  0x9D,                                        // NOP         ; wait for 4 cycles
  0x9D,                                        // NOP
  0x9D,                                        // NOP
  0x9D,                                        // NOP
  0x45, 0x18, 0x25,                // LDHX #$1825 ; check FACCERR and FPVIOL
  0xF6,                                        // LDA ,X
  0xA5, 0x30,                        // BIT #$30
  0x27, 0x04,           // BEQ *+6     ; branch to label_1
  0xA6, 0xFF,                        // LDA #$FF    ; return 0xFF if flag error
  0x20, 0x0A,                        // BRA *+12    ; branch to label_2
//label_1:  
  0xC6, 0x18, 0x25,                // LDA $1825   ; wait for command to be completed
  0xA5, 0x40,                        // BIT #$40
  0xC7, 0x18, 0x00,                // STA $1800   ; reset the watchdog
  0x27, 0xF6,                        // BEQ *-8     ; branch to label_1
//label_2:  
  0x81                                        // RTS         ; return
};
回复

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /3 下一条

Archiver|手机版|小黑屋|恩智浦技术社区

GMT+8, 2025-8-3 18:17 , Processed in 0.075564 second(s), 18 queries , MemCache On.

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.

快速回复 返回顶部 返回列表