《设计自己的ISP程序》P.docVIP

  • 5
  • 0
  • 约3万字
  • 约 20页
  • 2017-11-23 发布于江苏
  • 举报
《设计自己的ISP程序》P

5.()《设计自己的ISP程序》P如下:. /************************************************************************** IAP.C SST和STC单片机IAP操作函数 魏东(tonywei@) 2004.7.23 **************************************************************************/ #define STC /*定义为STC单片机(如果是SST单片机则去掉此行)*/ /************************************************************************** * SFR Memory Addresses **************************************************************************/ sfr SFCF = 0xB1; /*SuperFlash Configuration*/ sfr SFCM = 0xB2; /*SuperFlash Command*/ sfr SFAL = 0xB3; /*SuperFlash Address Low*/ sfr SFAH = 0xB4; /*SuperFlash Address High*/ sfr SFDT = 0xB5; /*SuperFlash Data*/ sfr SFST = 0xB6; /*SuperFlash Status*/ /************************************************************************** * MCU IAP Commands **************************************************************************/ #define SFCM_BE 0x0D; /*block-Erase IAP cmd*/ #define SFCM_SE 0x0B; /*Sector-Erase IAP cmd*/ #define SFCM_VB 0x0C; /*Byte-Verify IAP cmd*/ #define SFCM_PB 0x0E; /*Byte-Program IAP cmd*/ bit iap_error=0; void block0_erase(void); void sector_erase(unsigned int); void byte_program(unsigned int, unsigned char); unsigned char byte_verify(unsigned int); unsigned char ready(void); /************************************************************************** * Block0-Erase Subroutine **************************************************************************/ void block0_erase(void) { SFCF = SFCF | 0x40; /*enable IAP */ #ifdef STC SFAH = 0xf0; /*STC单片机选择block0*/ #else SFAH = 0x00; /*SST单片机选择block0*/ #endif SFDT = 0x55; SFCM = SFCM_BE; /*issue block erase command */ if(!ready()) iap_error=1; } /************************************************************************** * Sector-Erase Subroutine **************************************************************************/ void sector_erase(unsigned short int destAddr) { SFCF = SFCF | 0x40; /*enable IAP */ SFAH = destAddr8; /*load high order address byte*/ SFAL = d

文档评论(0)

1亿VIP精品文档

相关文档