OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 3543|回复: 11

一个很稀奇古怪的问题

[复制链接]

138

主题

362

帖子

0

精华

高级会员

Rank: 4

积分
997
金钱
997
注册时间
2012-9-17
在线时间
29 小时
发表于 2015-8-26 10:05:31 | 显示全部楼层 |阅读模式
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;   

}
这里面只不过就是初始化了一些端口而已,为什么会造成这样的影响呢?







正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

58

主题

6294

帖子

1

精华

资深版主

Rank: 8Rank: 8

积分
11550
金钱
11550
注册时间
2014-4-1
在线时间
1316 小时
发表于 2015-8-26 10:22:53 | 显示全部楼层
问题很明确而且稳定,比较好查。

一句一句地关掉。
回复

使用道具 举报

138

主题

362

帖子

0

精华

高级会员

Rank: 4

积分
997
金钱
997
注册时间
2012-9-17
在线时间
29 小时
 楼主| 发表于 2015-8-26 10:30:45 | 显示全部楼层
回复【2楼】xuande:
---------------------------------
按照你的方法,查出来了,
问题出在这一条语句上: GPIOE->CRL|=0X00033300;//PE.2/3/4推挽输出  
只要把它屏蔽掉,就没问题,
难道PE口不能这样处理么?
回复

使用道具 举报

58

主题

6294

帖子

1

精华

资深版主

Rank: 8Rank: 8

积分
11550
金钱
11550
注册时间
2014-4-1
在线时间
1316 小时
发表于 2015-8-26 10:34:40 | 显示全部楼层
估计你硬件有问题,有短路现象。
回复

使用道具 举报

138

主题

362

帖子

0

精华

高级会员

Rank: 4

积分
997
金钱
997
注册时间
2012-9-17
在线时间
29 小时
 楼主| 发表于 2015-8-26 11:32:29 | 显示全部楼层
回复【4楼】xuande:
---------------------------------
首先,谢谢你的提醒,确实是这样的, 现在能确定是PE.2脚出问题了,把这个脚屏蔽掉就好了,但是我也找不到电路中有什么问题。现在上图,让大家看看这个原理图设计出了什么问题。
回复

使用道具 举报

138

主题

362

帖子

0

精华

高级会员

Rank: 4

积分
997
金钱
997
注册时间
2012-9-17
在线时间
29 小时
 楼主| 发表于 2015-8-26 11:34:21 | 显示全部楼层



图中的PWREN_3.3连接的PE.2脚,有什么问题么?
回复

使用道具 举报

58

主题

6294

帖子

1

精华

资深版主

Rank: 8Rank: 8

积分
11550
金钱
11550
注册时间
2014-4-1
在线时间
1316 小时
发表于 2015-8-26 11:46:38 | 显示全部楼层
现场问题,只能靠自己了。

图只是个图,不是实物。
回复

使用道具 举报

138

主题

362

帖子

0

精华

高级会员

Rank: 4

积分
997
金钱
997
注册时间
2012-9-17
在线时间
29 小时
 楼主| 发表于 2015-8-26 13:55:52 | 显示全部楼层
回复【7楼】xuande:
---------------------------------
现在情况是这样的:这个引脚设置成通用推挽输出模式就不行,设置成其他三种输出模式都没问题!    为什么呢?
回复

使用道具 举报

43

主题

326

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2240
金钱
2240
注册时间
2014-10-20
在线时间
376 小时
发表于 2015-8-26 16:23:03 | 显示全部楼层
试试把R14去掉,看可不可以
回复

使用道具 举报

138

主题

362

帖子

0

精华

高级会员

Rank: 4

积分
997
金钱
997
注册时间
2012-9-17
在线时间
29 小时
 楼主| 发表于 2015-8-26 19:49:13 | 显示全部楼层
回复【9楼】telentmmc:
---------------------------------
去掉就可以了,这是为什么呢?  能否解释下?
回复

使用道具 举报

43

主题

326

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2240
金钱
2240
注册时间
2014-10-20
在线时间
376 小时
发表于 2015-8-26 20:24:57 | 显示全部楼层
回复【10楼】一个好人:
---------------------------------
我也没研究过,只是根据经验猜测……
估计跟内部推挽电路有关系
回复

使用道具 举报

138

主题

362

帖子

0

精华

高级会员

Rank: 4

积分
997
金钱
997
注册时间
2012-9-17
在线时间
29 小时
 楼主| 发表于 2015-8-26 21:43:17 | 显示全部楼层
回复【11楼】telentmmc:
---------------------------------
内部推挽也只是接了一个上拉电阻吧?   我是这样猜想的
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-15 22:18

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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