完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
STM32F746-Disco
电容式触控面板 FT5336 STM32CubeIDE,Windows 10 仅限 CMSIS 我正在仅使用 CMSIS 为 STM32F746 开发我的第一个 I2C 驱动程序,我决定最好在内置电容式触摸面板 FT5336 上测试我的 I2C 技能。我使用 ST 提供的 ft5336.c/.h 来获取寄存器地址(因为 FT5336 数据表实际上没有它们)。所以显然我首先要尝试的是读取芯片 ID 寄存器。 最初,我已经为它开发了 DMA 驱动程序(是的,我可以做 DMA,但仍然没有尝试过 I2C),但是当我遇到问题时,我退后一步并采用完全阻塞的方式。有趣的是,结果是相同的。 我所做的: 我以写入模式(ACK)写入从地址,然后是 ID 寄存器(NACK)。 然后我稍微暂停一下(~30us,远高于数据表~10us 用于开始设置;尝试不同)。 然后我以读取模式(ACK)写入从地址,并收到 0x00(NACK)。 我已经用示波器和逻辑分析仪仔细检查了我的信号,确保时序正确无误。我可以随心所欲地写(主发送)(包括使用 DMA),但我似乎无法阅读。我不确定错误在哪一边。显然,如果我在上面运行 TouchGFX 项目,面板就可以工作。我查看了 TouchGFX 生成的代码,以防我在那里看到一些东西,但我没有发现任何让我印象深刻的东西。我手头没有任何其他 I2C 设备可以用来测试它。 I2C3 设置:
|
|
相关推荐
1个回答
|
|
不幸的是,没有关于 FT5336 寄存器的文档,我可能可以推断出基本功能,例如如何读取一个数据点(读取寄存器 0x02 - 触摸次数),之后读取坐标寄存器,但我无法知道如何配置它 - 没有关于各种配置寄存器的作用和含义,哪些位改变什么的信息,至少不是所有的(有各种杂项寄存器)。几乎凭直觉。FT5336 的数据表在网上,但实际上除了寄存器地址本身和各个位的含义之外,它包含了所有内容。
令我惊讶的是,我在俄语论坛上找到了更多关于它的细节的信息(但还不是全部),这些论坛有时链接到晦涩的英语论坛(有时不链接)。将继续挖掘原始 ST 代码,不幸的是,它在文件之间拆分。 不过,FT5336 的数据表根本没有寄存器,这有点奇怪。 由于我非凡的谷歌搜索技能,我刚刚找到了这份文件,现在还不能全部阅读,但是有几个第一个寄存器匹配(它们的位也是如此)。 |
|
|
|
只有小组成员才能发言,加入小组>>
请教:在使用UDE STK时,单片机使用SPC560D30L1,在配置文件怎么设置或选择?里面只有SPC560D40的选项
2583 浏览 1 评论
3194 浏览 1 评论
请问是否有通过UART连接的两个微处理器之间实现双向值交换的方法?
1765 浏览 1 评论
3589 浏览 6 评论
5969 浏览 21 评论
924浏览 4评论
1300浏览 4评论
在Linux上安装Atollic TRUEStudio的步骤有哪些呢?
563浏览 3评论
使用DMA激活某些外设会以导致外设无法工作的方式生成代码是怎么回事
1287浏览 3评论
1338浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-8 19:30 , Processed in 1.318757 second(s), Total 75, Slave 58 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号