找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1142|回复: 2
打印 上一主题 下一主题
收起左侧

FMD单片机硬件IIC驱动程序

[复制链接]
跳转到指定楼层
楼主
     辉芒微单片机的Deom例程写的太垃圾了,只会写一种情况,比如他们硬件IIC,只写单次发送,单次读,连续发送或者连续读的例程就懒得写了,有点像应付了事。单片机老手估计都可以搞定,新手估计很难搞定。我今天花时间重新整理了一下IIC的驱动程序,模仿了STM32的HAL的命名,使用的话直接调用就好了。(注意丛机地址是独立的,没有包括读写位,真7位地址,单片机的IIC脚要设置为输出,因为硬件IIC脚是开漏输出模式)
    uint8_t Data[2]={0};
    Data[0] = 0x38;
    Data[1] = 0x55;
    HAL_I2C_Mem_Write(I2C1, 0x50, 0x01, I2C_MEMADD_SIZE_8BIT, (uint8_t *)&Data[0], 2, 10);
    __delay_ms(10);
    HAL_I2C_Mem_Read(I2C1, 0x50,  0x01, I2C_MEMADD_SIZE_8BIT, (uint8_t *)&Data[0], 2, 10)


    HAL_I2C_Mem_Write的第一个参数是IIC选择,第二个参数是丛机地址,第三个参数是丛机内存地址,第四个参数是丛机内存地址是8位还是16位,第五个参数是数据,第六个参数是数据大小,第七个参数是等待时间,防止程序卡死。

例程是往24C02的0x01地址里面连续写入2个数据0x38和0x55,逻辑分析仪采集到的波形如下图:


接着连续读出0x01起始地址的2个数据


驱动成功了!
下面是程序文件(编译版本为FMDIDE_V3.1.0,适用FT61F08X,FT62F08X,FT61F0AX,FT64F0AX,_FT67F0AX ):
FT6_1_4_7_F0AX.7z (275.73 KB, 下载次数: 21)

评分

参与人数 2黑币 +101 收起 理由
wpppmlah + 21 共享资料的黑币奖励!
admin + 80 共享资料的黑币奖励!

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:1064915 发表于 2023-5-10 08:38 | 只看该作者


FMD B1V6BKH是单片机吗?

回复

使用道具 举报

板凳
ID:78835 发表于 2023-5-10 11:49 | 只看该作者
joyb 发表于 2023-5-10 08:38
FMD B1V6BKH是单片机吗?

B1V6BKH估计是批次号,看丝印FMD是辉芒微的logo,你就可以看下这个封装的规格书,找下VCC和GND的脚位,基本上可以找到对应的型号。
回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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