ST意法半导体
直播中

黄明光

7年用户 331经验值
私信 关注
[问答]

STM8S-Discovery中断I2C无法启动

我有I2C通信的问题。
我在C: Users  u.iaquinta  Downloads  en.stsw-stm8069  STM8S_StdPeriph_Lib  Project  STM8S_StdPeriph_Examples  I2C  I2C_TwoBoards  I2C_DataExchange中编写了两个带有示例固件的STM8S-Discovery
一个发现是主,第二个发现是奴隶。
Rp1和Rp2是10K。
中断I2C无法启动。
主固件是:
void main()

{/ * system_clock / 1 * /

CLK_HSIPrescalerConfig(CLK_PRESCALER_HSIDIV1); / * I2C初始化* /

I2C_Init(I2C_SPEED,0xA0,I2C_DUTYCYCLE_2,I2C_ACK_CURR,I2C_ADDMODE_7BIT,16); / *启用缓冲区和事件中断* /

I2C_ITConfig((I2C_IT_TypeDef)(I2C_IT_EVT | I2C_IT_BUF),ENABLE); enableInterrupts();

.......
.......
........
}
任何想法?
谢谢

以上来自于谷歌翻译


以下为原文




I have the problem with I2C comunication.
I programmed two STM8S-Discovery with example firmware available in C:Usersu.iaquintaDownloadsen.stsw-stm8069STM8S_StdPeriph_LibProjectSTM8S_StdPeriph_ExamplesI2CI2C_TwoBoardsI2C_DataExchange
One discovery is master and the second discovery is slave.
Rp1 and Rp2 is 10 K.
The interrupt I2C not start.
The master firmware is:
void main()

{   /* system_clock / 1 */

   CLK_HSIPrescalerConfig(CLK_PRESCALER_HSIDIV1);  /* I2C Initialize */

  I2C_Init(I2C_SPEED, 0xA0, I2C_DUTYCYCLE_2, I2C_ACK_CURR, I2C_ADDMODE_7BIT, 16);  /* Enable Buffer and Event Interrupt*/

  I2C_ITConfig((I2C_IT_TypeDef)(I2C_IT_EVT | I2C_IT_BUF) , ENABLE);  enableInterrupts();

  .......
  .......
........
}
Any idea?
Thanks

回帖(2)

黄明光

2019-3-7 14:44:33
我附上了项目解决方案。
 
在主文件夹中有主设备的固件,在从文件夹中有从设备的固件。
按下STM8S-Discovery主站上的按钮,等待LED1闪烁,否则会出现通信问题。

以上来自于谷歌翻译


以下为原文




I attached the project solution.

In the master folder there is the firmware for master device, and in the slave folder there is the firmware for slave device.
Push the button on the STM8S-Discovery master and wait until the LED1 blinks, else there is the comunication problem.
举报

jinyi7016

2019-3-7 22:49:24
是从IIC启动,应该是不可以通过IIC启动的吧
举报

更多回帖

发帖
×
20
完善资料,
赚取积分