查看: 2463|回复: 3

[其他] 调试出现的问题,急,在线等高手解决,谢谢

[复制链接]

该用户从未签到

2

主题

5

帖子

0

新手上路

Rank: 1

积分
17
最后登录
1970-1-1
发表于 2011-12-20 11:56:47 | 显示全部楼层 |阅读模式
我用的是MC9S08AC32芯片,调试到这一步就调不下去了
void MCU_init(void)
{
  /* ### MC9S08AC16_44 "Cpu" init code ... */
  /*  PE initialization code after reset */
  /* Common initialization of the write once registers */
  /* SOPT: COPE=0,COPT=1,STOPE=0 */
  SOPT = 83;                                      
  /* SPMSC1: LVDF=0,LVDACK=0,LVDIE=0,LVDRE=1,LVDSE=1,LVDE=1,BGBE=0 */
  SPMSC1 = 28;                                      
  /* SPMSC2: LVWF=0,LVWACK=0,LVDV=0,LVWV=0,PPDF=0,PPDACK=0,PPDC=0 */
  SPMSC2 = 0;                                      
  /* SMCLK: MPE=0,MCSEL=0 */
  SMCLK &= (unsigned char)~23;                     
  /*  System clock initialization */
  /* ICGC1: HGO=0,RANGE=1,REFS=0,CLKS1=0,CLKS0=0,OSCSTEN=1,LOCD=0 */
  ICGC1 = 68;                                      
  /* ICGFLT: FLT11=0,FLT10=0,FLT9=0,FLT8=0,FLT7=1,FLT6=1,FLT5=0,FLT4=0,FLT3=0,FLT2=0,FLT1=0,FLT0=0 */
  ICGFLT = 192U;                       /* Initialization of the filter value */
  /* ICGC2: LOLRE=0,MFD2=0,MFD1=0,MFD0=0,LOCRE=0,RFD2=0,RFD1=0,RFD0=0 */
  ICGC2 = 0;                                      
  if (*(unsigned char*far)65470 != 255) { /* Test if the device trim value is stored on the specified address */
    ICGTRM = *(unsigned char*far)65470; /* Initialize ICGTRM register from a non volatile memory */
  }
  /* Common initialization of the CPU registers */
  /* PTGPE: PTGPE2=1,PTGPE1=1,PTGPE0=1 */
  PTGPE |= (unsigned char)7;                     
  /* PTDPE: PTDPE3=1,PTDPE2=1 */
  PTDPE |= (unsigned char)12;                     
  /* PTASE: PTASE1=0,PTASE0=0 */
  PTASE &= (unsigned char)~3;                     
  /* PTBSE: PTBSE3=0,PTBSE2=0,PTBSE1=0,PTBSE0=0 */
  PTBSE &= (unsigned char)~15;                     
  /* PTCSE: PTCSE5=0,PTCSE4=0,PTCSE3=0,PTCSE2=0,PTCSE1=0,PTCSE0=0 */
  PTCSE &= (unsigned char)~63;                     
  /* PTDSE: PTDSE3=0,PTDSE2=0,PTDSE1=0,PTDSE0=0 */
  PTDSE &= (unsigned char)~15;                     
  /* PTESE: PTESE7=0,PTESE6=0,PTESE5=0,PTESE4=0,PTESE3=0,PTESE2=0,PTESE1=0,PTESE0=0 */
  PTESE = 0;                                      
  /* PTFSE: PTFSE5=0,PTFSE4=0,PTFSE1=0,PTFSE0=0 */
  PTFSE &= (unsigned char)~51;                     
  /* PTGSE: PTGSE6=0,PTGSE5=0,PTGSE3=0,PTGSE2=0,PTGSE1=0,PTGSE0=0 */
  PTGSE &= (unsigned char)~111;                     
  /* PTADS: PTADS7=0,PTADS2=0,PTADS1=0,PTADS0=0 */
  PTADS = 0;                                      
  /* PTBDS: PTBDS3=0,PTBDS2=0,PTBDS1=0,PTBDS0=0 */
  PTBDS = 0;                                      
  /* PTCDS: PTCDS5=0,PTCDS4=0,PTCDS3=0,PTCDS2=0,PTCDS1=0,PTCDS0=0 */
  PTCDS = 0;                                      
  /* PTDDS: PTDDS3=0,PTDDS2=0,PTDDS1=0,PTDDS0=0 */
  PTDDS = 0;                                      
  /* PTEDS: PTEDS7=0,PTEDS6=0,PTEDS5=0,PTEDS4=0,PTEDS3=0,PTEDS2=0,PTEDS1=0,PTEDS0=0 */
  PTEDS = 0;                                      
  /* PTFDS: PTFDS6=0,PTFDS5=0,PTFDS4=0,PTFDS1=0,PTFDS0=0 */
  PTFDS = 0;                                      
  /* PTGDS: PTGDS6=0,PTGDS5=0,PTGDS4=0,PTGDS3=0,PTGDS2=0,PTGDS1=0,PTGDS0=0 */
  PTGDS = 0;                                      
  /* ### Init_GPIO init code */
  /* PTAD: PTAD1=1,PTAD0=1 */
  PTAD |= (unsigned char)3;                     
  /* PTADD: PTADD1=1,PTADD0=1 */
  PTADD |= (unsigned char)3;                     
  /* ### Init_GPIO init code */
  /* PTBD: PTBD2=0,PTBD1=1,PTBD0=1 */
  PTBD = (PTBD & (unsigned char)~4) | (unsigned char)3;
  /* PTBDD: PTBDD2=1,PTBDD1=1,PTBDD0=1 */
  PTBDD |= (unsigned char)7;                     
  /* ### Init_GPIO init code */
  /* PTDD: PTDD0=0 */
  PTDD &= (unsigned char)~1;                     
  /* PTDDD: PTDDD0=1 */
  PTDDD |= (unsigned char)1;                     
  /* ### Init_KBI init code */
  /* KBISC: KBIE=0 */
  KBISC &= (unsigned char)~2;                     
  /* KBISC: KBEDG7=0,KBEDG6=0,KBEDG5=0,KBEDG4=0,KBIMOD=0 */
  KBISC &= (unsigned char)~241;                     
  /* KBIPE: KBIPE7=0,KBIPE6=1,KBIPE5=1,KBIPE4=0,KBIPE3=0,KBIPE2=1,KBIPE1=1,KBIPE0=1 */
  KBIPE = 103;                                      
  /* KBISC: KBACK=1 */
  KBISC |= (unsigned char)4;                     
  /* ### Init_ADC init code */
  /* APCTL2: ADPC11=0,ADPC10=0,ADPC9=0,ADPC8=0 */
  APCTL2 = 0;                                      
  /* ADC1CFG: ADLPC=0,ADIV1=0,ADIV0=0,ADLSMP=0,MODE1=0,MODE0=0,ADICLK1=0,ADICLK0=0 */
  ADC1CFG = 0;                                      
  /* ADC1CV: ADCV9=0,ADCV8=0,ADCV7=0,ADCV6=0,ADCV5=0,ADCV4=0,ADCV3=0,ADCV2=0,ADCV1=0,ADCV0=0 */
  ADC1CV = 0U;                           
  /* ADC1SC2: ADACT=0,ADTRG=0,ACFE=0,ACFGT=0 */
  ADC1SC2 = 0;                                      
  /* ADC1SC1: COCO=0,AIEN=0,ADCO=0,ADCH4=1,ADCH3=1,ADCH2=1,ADCH1=1,ADCH0=1 */
  ADC1SC1 = 31;                                      
  /* ### Init_GPIO init code */
  /* PTED: PTED7=0,PTED6=0,PTED5=0,PTED4=0,PTED3=0,PTED2=0,PTED1=0,PTED0=0 */
  PTED = 0;                                      
  /* PTEDD: PTEDD7=1,PTEDD6=1,PTEDD5=1,PTEDD4=1,PTEDD3=1,PTEDD2=1,PTEDD1=1,PTEDD0=1 */
  PTEDD = 255;                                      
  /* ### Init_GPIO init code */
  /* PTFD: PTFD5=0,PTFD4=0,PTFD1=0,PTFD0=0 */
  PTFD &= (unsigned char)~51;                     
  /* PTFDD: PTFDD5=1,PTFDD4=1,PTFDD1=1,PTFDD0=1 */
  PTFDD |= (unsigned char)51;                     
  /* ### Init_GPIO init code */
  /* PTCD: PTCD5=0,PTCD4=0,PTCD3=0,PTCD2=0 */
  PTCD &= (unsigned char)~60;                     
  /* PTCDD: PTCDD5=1,PTCDD4=1,PTCDD3=1,PTCDD2=1 */
  PTCDD |= (unsigned char)60;                     
  /* ### Init_FLASH init code */
  /* FSTAT: FCBEF=0,FCCF=0,FPVIOL=1,FACCERR=1,FBLANK=0 */
  FSTAT = 48;                          /* Clear error flags */
  /* FCDIV: DIVLD=0,PRDIV8=0,DIV5=0,DIV4=0,DIV3=0,DIV2=0,DIV1=0,DIV0=0 */
  FCDIV = 0;                           /* Set clock divider */
  /* ### Init_IIC init code */
  /* IIC1C2: GCAEN=1,ADEXT=0,AD10=0,AD9=0,AD8=0 */
  IIC1C2 = 128;                                      
  /* IIC1A: AD7=0,AD6=0,AD5=0,AD4=0,AD3=0,AD2=0,AD1=0 */
  IIC1A = 0;                                      
  /* IIC1F: MULT1=0,MULT0=1,ICR5=0,ICR4=1,ICR3=1,ICR2=1,ICR1=1,ICR0=0 */
  IIC1F = 94;                                      
  /* IIC1S: TCF=1,IAAS=0,BUSY=0,ARBL=1,SRW=0,IICIF=1,RXAK=0 */
  IIC1S = 146;                         /* Clear the interrupt flags */
  /* IIC1C1: IICEN=1 */
  IIC1C1 |= (unsigned char)128;                     
  /* IIC1C1: IICEN=1,IICIE=0,MST=0,TX=1,TXAK=1,RSTA=0 */
  IIC1C1 = 152;                                      
  /* ### Init_GPIO init code */
  /* PTGD: PTGD3=0 */
  PTGD &= (unsigned char)~8;                     
  /* PTGDD: PTGDD3=1 */
  PTGDD |= (unsigned char)8;                     
  /* ### */
  asm CLI;                             /* Enable interrupts */
} /Error: At location 00AD -
Error: Attempt to use invalid or uninitialized memory
*MCU_init*/
我知道答案 目前已有2人回答
回复

使用道具 举报

该用户从未签到

2

主题

5

帖子

0

新手上路

Rank: 1

积分
17
最后登录
1970-1-1
 楼主| 发表于 2011-12-20 12:00:48 | 显示全部楼层

回复:调试出现的问题,急,在线等高手解决,谢谢

说错了 是MC9S08AC8
回复 支持 反对

使用道具 举报

  • TA的每日心情
    难过
    2021-12-15 16:01
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    305

    主题

    4701

    帖子

    0

    中级会员

    Rank: 3Rank: 3

    积分
    377
    最后登录
    2023-8-16
    发表于 2011-12-20 14:14:12 | 显示全部楼层

    RE:调试出现的问题,急,在线等高手解决,谢谢

    能不能把你调试到哪一步不能进行了的那一步,在上面的程序中标出来啊
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    2

    主题

    5

    帖子

    0

    新手上路

    Rank: 1

    积分
    17
    最后登录
    1970-1-1
     楼主| 发表于 2011-12-21 14:20:45 | 显示全部楼层

    RE:调试出现的问题,急,在线等高手解决,谢谢

    这个我昨天调出来了 是MCU初始化放的位置不对,谢谢回复
    回复 支持 反对

    使用道具 举报

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

    本版积分规则

    关闭

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

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

    GMT+8, 2025-7-22 03:04 , Processed in 0.089179 second(s), 24 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

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