NRF52832 II2 使用nrf_drv库函数发送大于255字节的bug

博客内容讲述了nrf_drv_twi_tx接口在传输数据长度超过255字节时出现异常的问题。作者通过实测发现该接口实际上可以支持更大的数据长度,并提出将参数`length`类型从uint8_t改为uint16_t以允许发送更多数据。同时指出在TWIM模式下使用EasyDMA时,此方法不可行,同样适用于SPI通信。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

nrf_drv_twi_tx 接口原型:

ret_code_t nrf_drv_twi_tx(nrf_drv_twi_t const * p_instance,
                          uint8_t               address,
                          uint8_t const *       p_data,
                          uint8_t               length,
                          bool                  no_stop)

length 参数定义为 uint8_t 类型,如果发送数据长度大于255, 将会产生异常

修复方法:

         实测应该是支持大于 255字节长度的,将uint8_t 改为uint16_t 即可

记录一下;

更正一下:

        TWIM模式使用,EasyDMA,无法使用

        同理, SPI也可以

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值