公司一款产品的研发项目需要用到I2C通信,采用了STM8S103F3的片子。 一开始就遇到了I2C通信问题。采用的是中断法。 配置初始化后主机模式 在发送起始位后,能进入中断按照给定的顺序发送数据。 但在从机模式时对主机发送的地址无应答,进入不了中断。 地址设置和主机端的发送地址一致,应答位也设置了。用示波器和逻辑分析仪观察时序没有任何问题。大致的初始化程序如下。 I2C_CR1 = 0X00; I2C_FREQR //与主机相同,忘记是啥了 I2C_CCRL //与主机相同,忘记是啥了 I2C_CCRH //与主机相同,忘记是啥了 I2C_TRISE = 0X02;//与主机相同 I2C_OARL = 0XA8;//与主机发送地址一致 I2C_OARH = 0X40; I2C_CR2 |= 0X04; I2C_ITR = 0X07; I2C_CR1 = 0X01; 就这个配置,切换到主机模式访问24C02正常。 但从机模式时,对另一块做主机的板发送的地址无应答。 百思不得其解。试着将主机端的寻址地址从0到最大值逐一的试了一个遍也没效果。 现求助大神有没有解决的办法 |
STM8S003F3U6 请求各位大佬支援,但是遇到如下问题。。。这样就一定是这颗芯片的问题吗?
STVD如何生成库文件
STM8 flash 库函数 startaddress = startaddress + ((uint32_t)BlockNum * FLASH_BLOCK_S
stm 8 flash 在RAM运行代码的问题,是不是库函数有问题 Library call (?sll32_l0_l0_a) from within a
STM 有能替代MCHC912B32CFUE8 / NXP的型号吗?
STM8S的CAN总线使用
STM8L151在使用DAC功能后严重发热
STM8 IIC SLAVE 400K
STM8S 定时器1互补输出pwm
STM8S003F3 NRST电压低,无法开机
搞不懂你又要当主机又要当从机是什么个情况?可攻可受?
还有就是速率问题,速度慢点再试试?