OpenEdv-开源电子网

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

战舰V3触摸屏实验不能使用硬件I2C1的破解

[复制链接]

31

主题

83

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1332
金钱
1332
注册时间
2021-1-2
在线时间
121 小时
发表于 2021-1-26 12:09:37 | 显示全部楼层 |阅读模式
本帖最后由 tongzhihong 于 2021-1-26 12:18 编辑

1、我接触stm32f1起步是买的《stm32自学笔记》第二版+配套的电子园的开发板,它就是使用的硬件I2C,加上过去搞51单片机,用的是软件模拟I2C,所以个人趋向使用硬件I2C,认为有硬件接口,比软件模拟省事。但stm32f1的固件库,I2C部分过于逻辑化,简单说就是不好理解,初接触感到复杂,而I2C又是应答机制,稍一出错,就崩溃了。而固件库I2C部分的注释又不细,造成网上绝大部分人都说:stm32f1的硬件I2C有问题。
2、我能在电子园的开发板(《stm32自学笔记》)使用硬件I2C,后又在刘洋的“大黄蜂stm32开发板”上使用硬件I2C,其实质是一样的。2020年又在买的战舰V3开发板上使用硬件I2C。当然都是对24Cxx系列芯片使用。
3、2020年7、8月份,战舰V3开发板的触摸屏实验,用到了I2C,它是用的软件模拟I2C,我就把软件模拟I2C部分,自己改成了硬件I2C(其实战舰V3前面的24Cxx,I2C实验也是软件模拟I2C,我自己使用时,把它改成的硬件I2C)。
4、在战舰V3上、触摸屏实验中,把用到的I2C部分,从软件模拟I2C,改为硬件I2C,我开始认为效果一样;但一上电运行,程序死掉了。用JLink一调试,程序是死在硬件I2C。
5、使用的硬件I2C,在战舰V3上前面单独针对24Cxx的实验是通过了的,我开始想是不是TFTLCD的接口与硬件I2C有冲突,但又一想,软件模拟I2C 和 硬件I2C,用的接口引脚完全一样,不应该是这个问题。
6、我就在阿里旺旺上,向正点原子的老师请教,回答是,正点原子使用的是软件模拟I2C。我就把上面的情况简要重复了一遍,特别说,在战舰V3上单独的I2C实验,硬件I2C能通过,在触摸屏实验中,硬件I2C通不过,问一下原因。可惜那位老师可能太忙,对此类问题没兴趣,他叫我百度,或到正点原子的论坛发帖。
7、我对照战舰V3原理图、程序,反复搞了一天,TFTLCD的硬件接口,与I2C硬件接口,没有关系,程序也没有关系。就是触摸屏初始化开始时,从24Cxx读一个数据,判别是否校准,没校准就把校准的数据存在24Cxx,并做个标记。按理:触摸屏实验中,既然硬件、软件都没有干涉,单独的I2C实验,硬件I2C又能通过,那么,触摸屏实验中,硬件I2C就应该能通过。 但是,目前通不过,问题在哪里?
8、第二天,本着中国足球,越败越战的精神,又开始查找问题所在。由于 TFTLCD 显示部分是使用的 stm32f1 的"FSMC" 硬件接口,就查看 "FSMC" 硬件接口 与 I2C硬件接口,是否冲突。
     结果发现:I2C1_SDA : PB7,  FSMC_NADV : PB7; 明显冲突;
     需要说明的是,虽然 TFTLCD 显示部分 使用的 stm32f1 的"FSMC" 硬件接口,没用到这个管脚,FSMC_NADV : PB7; 但这个管脚是 stm32f1 的"FSMC" 硬件接口的一部分,开启stm32f1 的"FSMC" 时,FSMC_NADV : PB7 是处于FSMC复用模式。
9、针对这个问题 ---- I2C1_SDA : PB7,  FSMC_NADV : PB7; 复用模式冲突了,我是这样在触摸屏实验中处理的:
     当要使用硬件I2C1时,先关闭FSMC的时钟,这样硬件I2C1就能正常使用了. 硬件I2C1使用完后,再把FSMC的时钟开启就行了。(没关闭I2C1时钟,是因为 TFTLCD 显示部分,并未用到 FSMC_NADV : PB7;我想,关闭I2C1时钟当然更好。)
10、经2020年下半年数月实际验证,这样处理,在战舰V3上、触摸屏实验中,就可以正常使用硬件I2C1了。

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

使用道具 举报

12

主题

3387

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
8632
金钱
8632
注册时间
2020-5-11
在线时间
4073 小时
发表于 2021-1-26 13:31:30 | 显示全部楼层
谢谢分享
记得前些天有人提到FSMC和I2C冲突
专治疑难杂症
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-5-15 01:44

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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