Kendryte K210 在freertos上的i2c的使用

13 篇文章 24 订阅 ¥39.90 ¥99.00

首先修改project_cfg.h文件,将硬件定义好的i2c引脚定义好,其中13和14表示IO13和IO14,如下:

const fpioa_cfg_t g_fpioa_cfg =
{
    .version = PIN_CFG_VERSION,
    .functions_count = 2,
    .functions =
    {
        {14, FUNC_I2C0_SCLK},
        {13, FUNC_I2C0_SDA},

    }
};

然后在主函数里的如下:

//打开i2c0
handle_t i2c = io_open ("/dev/i2c0");

//获取设备地址
handle_t dev0 = i2c_get_device (i2c , 0x21 , 7);

//设置频率
i2c_dev_set_clock_rate (dev0 , 200000);


uint8_t reg = 0x26;
uint8_t data_buf [2] = { 0x26 ,0x02 };
data_buf [0] = reg;

//寄存器0x26写入值为0x02
io_write (dev0 , data_buf , 2);

//从0x26中读出一个字节并保存到data_buf里
i2c_dev_transfer_sequential (dev0 , &reg , 1, data_buf , 1);

//对比两个值是否相同
printf("%x %x\r\n",data_buf[0],data_buf[1]);

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

smile_5me

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值