OpenEdv-开源电子网

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

飞思卡尔MPR121触摸芯片通过STM8L硬件IIC驱动

[复制链接]

45

主题

198

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1109
金钱
1109
注册时间
2016-3-25
在线时间
360 小时
发表于 2018-2-12 13:57:40 | 显示全部楼层 |阅读模式

           自己在搞一个产品,指纹锁,虽然市场上已经很多 了,但是自己对这块很感兴趣,也是锻炼一下自己,稳定后想着把方案卖给别人(想想而已,毕竟产品已经很成熟了哈)。

         好吧,回到主题,其他功能模块都没什么问题,哎,就是触摸方案用的是飞思卡尔的MPR121的芯片,真是把自己的累惨了(本来想说坑惨了,毕竟是自己技术不到家嘛),主控芯片采用的是STM8L152K4T6。在网上买了一个MPR121的触摸板回来测试(红色的板子,12键,如下图附件),开始没有写过IIC的驱动,开始采用硬件IIC来驱动,但是遇到了问题,一直在一个死r循环里,在网上s查找资料,也发现很多网友都遇到同样的问题,都建议用模拟IIC,甚至还有网友说ST芯片的IIC存在BUG,瞬间迷茫了。但不是甘心,如果存在BUG,官方应该早就会发现并且解决。然后学习了一下IIC的时序,通信过程等(说实话,理解起来比较容易,但是用起来确实要很细心)。
  
       后面在网上找了一个硬件IICc驱动AT24C02的工程(只是编译、下载程序验证了可以用,没有细读代码),然后主要是看IIC初始化o函数,IIC读写这两个函数,经过一上午的努力,可以正常通信了。功夫不负有心人呀。这个驱动我的都tt放了一阵子了,本来不打算玩了(由于提前回家过年了,在家没有什么事,所以又捣鼓起来)。看来这个指纹锁还是继续做下去^_^...

     网友们是不是同样遇到这个问题了?好嘛,需要源码的可以留言,把邮箱留下,我看到了会及时发到您的邮箱中去。这里我把编译好的BIN文件贴出来,大家有兴趣的可以下载来测试。

    硬件:

    主控:STM8L152K4T6
    通信:硬件IIC
    MPR121的中断引脚:  GPIOD   GPIO_Pin_4
    输出:串口1   波特率115200  
    两个板子可以看附件。





两个开发板图片

两个开发板图片

STM8L_MPR121.rar

26.13 KB, 下载次数: 145

HEX文件

代写STM32各类驱动,DEMO程序
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

120

主题

7877

帖子

13

精华

资深版主

Rank: 8Rank: 8

积分
12010
金钱
12010
注册时间
2013-9-10
在线时间
427 小时
发表于 2018-2-13 21:52:33 | 显示全部楼层
回复 支持 反对

使用道具 举报

0

主题

3

帖子

0

精华

新手上路

积分
33
金钱
33
注册时间
2018-7-11
在线时间
5 小时
发表于 2018-8-1 16:54:21 | 显示全部楼层
源代码能否参考下,我用硬件IIC调试si1153,卡死了。1107114564@qq.com
回复 支持 反对

使用道具 举报

0

主题

2

帖子

0

精华

新手上路

积分
34
金钱
34
注册时间
2016-12-20
在线时间
9 小时
发表于 2018-9-20 10:32:06 | 显示全部楼层
楼主,能把这个程序给我发一下吗,我参考一下,谢谢了。
回复 支持 反对

使用道具 举报

0

主题

2

帖子

0

精华

新手上路

积分
34
金钱
34
注册时间
2016-12-20
在线时间
9 小时
发表于 2018-9-20 10:32:45 | 显示全部楼层
回复 支持 反对

使用道具 举报

0

主题

4

帖子

0

精华

新手入门

积分
9
金钱
9
注册时间
2018-10-19
在线时间
2 小时
发表于 2018-10-19 20:17:43 | 显示全部楼层
您好,想请教是如何初始化的?我只能读取0-7健,每次读取寄存器0x00和0x01的值都是一样的,而且8-11按键没有反应。搞不清楚是为什么,可以提供一下初始化寄存器设置吗,十分感谢~
回复 支持 反对

使用道具 举报

45

主题

198

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1109
金钱
1109
注册时间
2016-3-25
在线时间
360 小时
 楼主| 发表于 2018-10-19 20:22:55 | 显示全部楼层
CZ131 发表于 2018-10-19 20:17
您好,想请教是如何初始化的?我只能读取0-7健,每次读取寄存器0x00和0x01的值都是一样的,而且8-11按键没 ...

这个代码我要翻一下我的电脑。看一下还能找到不。
代写STM32各类驱动,DEMO程序
回复 支持 反对

使用道具 举报

0

主题

4

帖子

0

精华

新手入门

积分
9
金钱
9
注册时间
2018-10-19
在线时间
2 小时
发表于 2018-10-21 10:06:40 | 显示全部楼层
Mr.liu 发表于 2018-10-19 20:22
这个代码我要翻一下我的电脑。看一下还能找到不。

好的,谢谢~麻烦您了^^
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
2
金钱
2
注册时间
2018-12-24
在线时间
0 小时
发表于 2018-12-24 15:58:33 | 显示全部楼层
250353144@qq.com,自己也在调试MPR121,遇到差不多的问题,楼主可以把源码发给我下吗,谢谢!
回复 支持 反对

使用道具 举报

1

主题

8

帖子

0

精华

初级会员

Rank: 2

积分
73
金钱
73
注册时间
2018-7-10
在线时间
11 小时
发表于 2019-3-11 21:37:08 | 显示全部楼层
厉害,来学习了
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
3
金钱
3
注册时间
2019-5-14
在线时间
0 小时
发表于 2019-6-3 15:24:26 | 显示全部楼层
2528230038@qq.com
谢谢楼主了
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
13
金钱
13
注册时间
2019-5-7
在线时间
3 小时
发表于 2019-10-24 11:00:12 | 显示全部楼层

1297930162@qq.com,自己也在调试MPR121,遇到差不多的问题,楼主可以把源码发给我下吗,谢谢!
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2024-11-22 22:57

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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