高级会员

- 积分
- 997
- 金钱
- 997
- 注册时间
- 2012-9-17
- 在线时间
- 29 小时
|
5金钱
有一个比较奇怪的问题:这是我的上电初始化程序:
int main(void)
{
Stm32_Clock_Init(9); //系统时钟设置
delay_init(72); //延时初始化
LED_Init(); //LED灯,做测试用
POWER_Init(); //电源端口控制
/*打开所有电源*/
MiniCT_Keller_OUTEN = 1;
obs_802_OUTEN = 1;
PWREN_3 = 1;
PWREN_5 = 1;
WKUP_Init(); //设置中断
CD4052INIT(); //初始化通讯口 4052芯片
INH1=0;
A1=0;
B1=0;
IIC_Init(); //IIC总线初始化
你们有没有注意到上面有一个初始化语句:POWER_Init(); //电源端口控制
只要加上这一条语句后,就不能在线仿真了,进入在线仿真以后,一执行就会出现这样的错误提示:
不仅如此,加上后还会使初始化的时间大大加长,
下面我贴出这个函数里的源代码:
void POWER_Init(void)
{
RCC->APB2ENR|=1<<4; //使能PORTC时钟
RCC->APB2ENR|=1<<6; //使能PORTE时钟
GPIOC->CRL&=0XFFFF0FFF;
GPIOC->CRL|=0X00003000;//PC.3推挽输出
GPIOC->ODR|=1<<3; //PC.3输出高
GPIOE->CRL&=0XFFF000FF;
GPIOE->CRL|=0X00033300;//PE.2/3/4推挽输出
GPIOE->ODR|=1<<2; //PE.2/3/4输出高
GPIOE->ODR|=1<<3;
GPIOE->ODR|=1<<4;
}
这里面只不过就是初始化了一些端口而已,为什么会造成这样的影响呢?
|
|