STM8 的MCU有四个供电单元
【STM8-SO8】08-STM8L001J3的点灯
STM8单片机如何实现Bootloader
基于STM8的DALI (数字可寻址调光协议)
开源基于STM32的STM8脱机编程器
【ST MCU实战经验】之STM8中UART奇偶校验的使用方法
【思修电子STM8集合贴】龙顺宇STM8理论/实战视频/书籍/软件/
初次尝试STM8S001J3
分享STM8 风驰光盘的资料,是完整的(包括原理图+例程+PDF注释)
基于STM8的实验代码汇总分享
微信公众号
手机版
case cI2cMrxAddrAck: // SLA+R 已发送,接收到 ACK
{
MFHI2cBusRdataAck( ); // 在接收之后发出 ACK 脉冲
MFHI2cIntEventOnn( ); // 使能缓冲中断
break;
}
改为:
case cI2cMrxAddrAck: // SLA+R 已发送,接收到 ACK
{
if (pI2c->RxSize <= 1) // 如果只接收1个字节?
{
MFHI2cBusRdatNack( ); // 在接收之后发出 NOT ACK
MFHI2cBusNackStop( ); // 发出 STOP 信号(结束条件),没有 ACK 脉冲
}
else
{
MFHI2cBusRdataAck( ); // 在接收之后发出 ACK 脉冲
}
MFHI2cIntEventOnn( ); // 使能缓冲中断
break;
}
以避免只接收1个字节时,发生溢出错误。