打印
[活动专区]

【AT-START-F407测评】+手势识别

[复制链接]
660|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
Ben666|  楼主 | 2021-2-2 10:49 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 Ben666 于 2021-2-2 10:49 编辑

      对at32的一些常用外设和模块进行了封装,把at32和stm32进行了对比,发现两款单片机的兼容性确实挺高的。由于放假的原因所以目前手上只有 Stm 32F103和F429做对比,而at32407是以F1做对照的,所以以下对皆与103进行对比。
目前发现的stm32和at32最大的区别还是时钟树了
at
st
而外设功能框架at对st几乎完全兼容
at
st
而重库函数也可以看出at如果要使用stm32以前封装的文件只需要做非常少量的代码修改即可。

     本次手势识别使用的是 APDS 9930,会使用到i2c和外部中断,同时还封装了一些其他常用外设及模块后续会陆续上传。在本次封装的过程中又学习到了不少以前没有注意到的知识。

首先是afio的问题,因为本人入门学习的是f4所以对f1的一些概念不是特别清楚。以前第一次f1使用外部中断一直不能正常触发,看了网上的教程之后才知道需要开启afio的时钟,一直不是特别明白为什么,外部中断管我afio什么事,这次在封装的过程中进行测试发现只有在使用GPIOA以外的端口时才需要开启AFIO时钟。
而这次使用到的i2c

at也对stm32完全兼容,就比st多了一组。

使用的拓展板为以前学习esp8266所绘制的需要的,可以在立创开源平台上找。为了匹配arduino接口,所以需要使用到afio。已经使用宏定义封装好了可以直接使用


对手册和库函数的学习发现at和ST的 i2c的最高为400k速率相同。但在实际测试过程中,at32f407在400k的情况下(测试对象为dht12和9930), i2c通信会发现错误,而st不会,具体原因需要等开学后拿到工具再深究.所以目前使用i2c请将速率调到400k以下。
目前已封装部分

因为文件太大,只上传了部分。直接加入直接的工程即可使用。




2c.png (128.58 KB )

2c.png

User.rar

65.09 KB

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

6

主题

11

帖子

0

粉丝