发一个完全独立的stm32硬件中断i2c驱动

2019-12-27 19:00发布

本帖最后由 seewolf 于 2014-9-28 17:56 编辑

前段时间调一个i2c传感器,被迫需要用stm32硬件i2c通信,stm32的硬件i2c是出了名的不好用,所以之前一直避开不用,这次没办法了遂深入研究了下。
先是在论坛里搜了下没找到完全独立的驱动,只有一些模拟的或者用于EEPROM的硬件i2c驱动,在这里把我写的独立的i2c驱动分享给大家,希望能对大家有所帮助!
驱动里单个字节读写用的是硬件i2c,多个字节读写用的是DMA,我在裸机程序和RT-thread上都调试过,应该没有大bug了,但冗余比较多,格式也不太规范,需进一步优化,这个就靠大家自己来了,嘿嘿~(在这里还要感谢“lj2505”分享的用于EEPROM的i2c驱动,给了我很大启发。)
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
25条回答
leo_advance
1楼-- · 2019-12-28 15:44
 精彩回答 2  元偷偷看……
seewolf
2楼-- · 2019-12-28 18:00
linxiaoutziCCCP 发表于 2014-9-28 23:43
我一直纳闷,为什么STM32F103的硬件IIC搞的这么复杂,莫非就是为了躲开NXP的专利?  目前在用软件模拟的IIC ...

呵呵~感觉软件模拟的i2c用在一般程序还好,用在操作系统上就不行了,效率太低了
seewolf
3楼-- · 2019-12-28 22:26
linxiaoutziCCCP 发表于 2014-9-28 23:43
我一直纳闷,为什么STM32F103的硬件IIC搞的这么复杂,莫非就是为了躲开NXP的专利?  目前在用软件模拟的IIC ...

据说他们自己好像都承认有漏洞了,于是出了各种文档和方法来解决,结果就是越弄越麻烦,呵呵~
nongsan
4楼-- · 2019-12-29 03:03
谢谢分享
jsszdfdn
5楼-- · 2019-12-29 06:59
谢谢楼主分享
frank_88888
6楼-- · 2019-12-29 09:29
 精彩回答 2  元偷偷看……

一周热门 更多>