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

STM8的管脚问题

[复制链接]
篮球小子 提问时间:2014-9-19 13:35 /
 STM8L遇到一个很奇怪的问题,我用的是STM8L的Discovery,我用PC0和PC1作为模拟I2C的管脚没有问题,但是我换成那个PA5和PA4作为模拟I2C的管脚就不行,我已经把连接PA5和PA5的那个液晶屏拔下来了,也就是那个PA4和PA5没有接任何外部设备了,但是模拟I2C通信读出来的数据就是有问题,我程序之修改了管脚,其他什么都没有修改,原理图如下,和PC1的SB17已经断开了 QQ图片20140919133453.png
收藏 评论2 发布时间:2014-9-19 13:35

举报

2个回答
霹雳之火 回答时间:2014-9-20 07:34:14

RE:STM8的管脚问题

希望贴出程序看看,等待大神解答
篮球小子 回答时间:2014-9-26 10:13:15

回复:STM8的管脚问题

最近调试STM8L的模拟I2C通信,刚开始在STM8L的Discovery上面用PC0和PC1脚作为模拟I2C脚的SDA和SCL脚没有任何问题,程序是自己仿真HMC5893与51单片机通信程序改过来的,可以通讯成功,但是自己打样了块板子回来,换了块板子换了个管脚就不能正常工作了,读出来的数据总是64的倍数,要么是0,要么是64或者128或192。

解决方案:
问题.png
 

原先的程序,问题就出现在这条语句,
关键问题.png

这里单步执行之后发现数据一直是0x40,后面查看了一下管脚的定义之后发现,0x40是我使用的第六位的状态,而且0x40转换成十进制正好是64,这就是我程序读出来的数据为什么一直是64或者是64的倍数了。
 
 

现在的程序:
先读取第六位的状态,然后在去进行数据处理;
解决方案.png
 
 
 
关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版