- 打卡等级:初来乍到
- 打卡总天数:2
- 最近打卡:2025-04-01 08:48:10
新手上路
- 积分
- 14
|
void vSystemInit( void )
{
unsigned char count;unsigned int i;
WTST = 0; //设置程序指令延时参数,赋值为0可将CPU执行指令的速度设置为最快
EAXFR = 1; //扩展寄存器(XFR)访问使能
CKCON = 0; //提高访问XRAM速度
P0M1 = 0x00; P0M0 = 0x00; //设置为准双向口
P1M1 = 0x00; P1M0 = 0x02; //设置为准双向口
P2M1 = 0x00; P2M0 = 0x10; //设置为准双向口
P3M1 = 0x00; P3M0 = 0x22; //设置为准双向口
P4M1 = 0x00; P4M0 = 0x00; //设置为准双向口
P5M1 = 0x00; P5M0 = 0x00; //设置为准双向口
P6M1 = 0x00; P6M0 = 0x00; //设置为准双向口
P7M1 = 0x00; P7M0 = 0x00; //设置为准双向口
outjdq=1;
XOSCCR=0xc0;
while(!(XOSCCR&1));
CLKDIV=0x00;
CLKSEL=0x01; //外部晶振
// DebugPrintfInit();
// printf("STC32G FreeRTOS 测试程序!\r\n");
flag1=0;flag=0;resttime=0;
clr_f_ac;set_f_dc;
gate1=1;gate2=1;
ag1=1;ag2=1;
count=30;
do{
i =4000;
while(--i);
}while(--count);
jdqdelay=125;
// EEPROM_SectorErase(0); //擦除一个扇区
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
eerom[0]=jdqdelay&0xff;
eerom[1]=(jdqdelay>>8)&0xff;
EEPROM_write_n(0x000000,eerom,2);
EEPROM_read_n(0x000000,eerom,2); //读出2字节
jdqdelay=eerom[1];
jdqdelay=(jdqdelay<<8)&0xff00|eerom[0];
// jdqdelay=17;
} 这擦除扇区一开程序就崩溃 那位高手能指点下, 扇区擦除就不能开启,
|
|