在线时间0 小时
UID263397
注册时间2008-6-12
NXP金币0
该用户从未签到
注册会员

- 积分
- 90
- 最后登录
- 1970-1-1
|
我用的是MC9S08AC32芯片。为什么在调试时,运行以后,执行HALT后,寄存器没有数据,再次运行后再挂起,才有数据,另外脱机后,上电不能正常工作。
初始化程序如下:
void MCU_init(void)
{
/* Common initialization of the write once registers */
/* SOPT: COPE=0,COPT=1,STOPE=0 */
SOPT = 0x53;
SPMSC1 = 0x1C;
SPMSC2 = 0x00;
SMCLK &= (unsigned char)~0x17;
ICGC1 = 0x4E;
ICGC2 = 0x72;
if (*(unsigned char*far)0xFFBE != 0xFF) {
ICGTRM = *(unsigned char*far)0xFFBE;
}
while(!ICGS1_LOCK) {
}
/* PTFPE: PTFPE3=0,PTFPE2=0,PTFPE1=0,PTFPE0=1 */
PTFPE = (PTFPE & (unsigned char)~0x0E) | (unsigned char)0x01;
PTASE = 0x3F;
PTBSE = 0x00;
PTCSE &= (unsigned char)~0x7F;
PTDSE = 0x00;
PTESE = 0x00;
PTFSE = 0x2D;
PTGSE = (PTGSE & (unsigned char)~0x06) | (unsigned char)0x79;
PTADS = 0x3F;
PTBDS = 0x00;
PTCDS = 0x00;
PTDDS = 0x00;
PTEDS = 0x00;
PTFDS = 0x2F;
PTGDS = 0x78;
PTADD = 0x37;
PTDDD &= (unsigned char)~0xFC;
PTFPE |= (unsigned char)0x10;
PTFDD = (PTFDD & (unsigned char)~0x90) | (unsigned char)0x20;
PTGDD = (PTGDD & (unsigned char)~0x07) | (unsigned char)0x78;
(void)(TPM1C2SC == 0);
TPM1C2SC = 0x64;
TPM1C2V = 0xFAU;
(void)(TPM1C3SC == 0);
TPM1C3SC = 0x64;
TPM1C3V = 0x01F4U;
(void)(TPM1C4SC == 0);
TPM1C4SC = 0x64;
TPM1C4V = 0x01F4U;
(void)(TPM1C5SC == 0);
TPM1C5SC = 0x24;
TPM1C5V = 0x01F4U;
TPM1SC = 0x00;
TPM1MOD = 0x01F4U;
(void)(TPM1SC == 0);
TPM1SC = 0x49;
APCTL1 = 0xFF;
APCTL2 = 0x03;
ADC1CFG = 0x00;
ADC1CV = 0x00U;
ADC1SC2 = 0x00;
ADC1SC1 = 0x1F;
TPM2SC = 0x00;
TPM2MOD = 0x0270U;
(void)(TPM2SC == 0);
TPM2SC = 0x48;
asm CLI;
} /*MCU_init*/
|
|