你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

关于STM8L051F3P6 PC5 PC6用做普通IO输入口,一直为低电平!

[复制链接]
gdgn526345 提问时间:2018-1-30 18:37 /
关于STM8L051F3P6   PC5 PC6用做普通IO输入口,一直为低电平的问题:
STM8L051F3P6   PC5,用作普通IO输入口,当输入为高时,PC5一直为低!

PC5已配置为输入方式(无论是浮空还是设置内部上拉,效果都一样),见原理图,我人为使光耦的第4脚为高电平。
只要一接上PC5 ,光耦第4脚的电平立马被拉低!

以下是软件:

#define LOGIC_IO_INPUT_PORT GPIOC
#define LOGIC_IO_INPUT_PINS GPIO_Pin_5

第一种方式:输入浮空
GPIO_Init(LOGIC_IO_INPUT_PORT,LOGIC_IO_INPUT_PINS,GPIO_Mode_In_FL_No_IT);//初始化LOGIC_IO_INPUT_PORT端口   

第二种方式:输入内部上拉
GPIO_Init(LOGIC_IO_INPUT_PORT,LOGIC_IO_INPUT_PINS,GPIO_Mode_In_PU_No_IT);//初始化LOGIC_IO_INPUT_PORT端口   

第三种方式:同时禁止USRAT时钟和USART功能
   CLK_PeripheralClockConfig(CLK_Peripheral_USART1, DISABLE);
   USART_Cmd(USART1,DISABLE);   
   GPIO_Init(LOGIC_IO_INPUT_PORT,LOGIC_IO_INPUT_PINS,GPIO_Mode_In_PU_No_IT);//初始化LOGIC_IO_INPUT_PORT端口  

三种配置方式得到的效果都一样!PC5高不起来!一直为低!请问还有哪些地方 需要配置的吗?谢谢!

硬件

硬件
收藏 评论6 发布时间:2018-1-30 18:37

举报

6个回答
wenyangzeng 回答时间:2018-1-30 20:56:50
本帖最后由 wenyangzeng 于 2018-1-30 21:02 编辑

你好像应该在初始化配置中修改为内部晶振功能。让LSE 失能。
无标题.png

评分

参与人数 1蝴蝶豆 +3 收起 理由
zero99 + 3

查看全部评分

toofree 回答时间:2018-1-31 00:42:05
本帖最后由 toofree 于 2018-1-31 00:55 编辑

首先要禁掉PC5的LSE输入
傲游截图20180131005514.jpg

禁掉PC5的SPI功能、禁掉PC5的USART1功能
傲游截图20180131003647.jpg

禁掉PC5的TIM2功能
傲游截图20180131003728.jpg

上面全做完后,设置PC5为输入模式。

评分

参与人数 1蝴蝶豆 +3 收起 理由
zero99 + 3

查看全部评分

toofree 回答时间:2018-1-31 00:58:12
toofree 发表于 2018-1-31 00:42
首先要禁掉PC5的LSE输入

以上几步都做了后,如果还不行,请在RM0031文档中搜索LSE和OSC32相关内容,查看详情。
gdgn526345 回答时间:2018-1-31 09:02:49
toofree 发表于 2018-1-31 00:58
以上几步都做了后,如果还不行,请在RM0031文档中搜索LSE和OSC32相关内容,查看详情。 ...

谢谢!回复!问题已解决!
gdgn526345 回答时间:2018-1-31 09:06:25
谢谢回复!问题已解决!用第一种和第二种方法都可以!
第一种方式:输入浮空
GPIO_Init(LOGIC_IO_INPUT_PORT,LOGIC_IO_INPUT_PINS,GPIO_Mode_In_FL_No_IT);//初始化LOGIC_IO_INPUT_PORT端口   

第二种方式:输入内部上拉
GPIO_Init(LOGIC_IO_INPUT_PORT,LOGIC_IO_INPUT_PINS,GPIO_Mode_In_PU_No_IT);//初始化LOGIC_IO_INPUT_PORT端口   

问题出在我后面的应用软件!后面的软件有一个宏定义的配置“碰到”了PC5,把PC5的IO功能改动了!
谢谢!

评分

参与人数 1蝴蝶豆 +2 收起 理由
zero99 + 2 结贴奖励

查看全部评分

gdgn526345 回答时间:2018-1-31 09:10:10
wenyangzeng 发表于 2018-1-30 20:56
你好像应该在初始化配置中修改为内部晶振功能。让LSE 失能。

谢谢回复!问题已经解决!
关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
微信公众号二维码 微信公众号
手机版二维码 手机版