怎么样用stm32单片机做iic从机

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎么样用stm32单片机做iic从机相关的知识,希望对你有一定的参考价值。

参考技术A

可以看吴鉴鹰单片机开发板教程的

#include<reg52.h>


sbit HC595_sck = P0^5;

sbit HC595_rck = P0^6;

sbit HC595_data = P0^7;


code unsigned char Data_One_Array[2] = 0x01,0x00;

code unsigned char Data_Two_Array[2] = 0x00,0x00;


void Send_Data(unsigned char Data_One,unsigned char Data_Two)

   unsigned char i;


   HC595_rck = 0;


   for(i=0; i < 8;i ++)

   

      HC595_sck = 0;

 if(0 == (Data_One & 0x80))

 

    HC595_data = 0;  

  

 else

 

    HC595_data = 1;

  


 Data_One = Data_One << 1;

 HC595_sck = 1;

   

   for(i=0;i < 8;i ++)

   

       HC595_sck = 0;

 if(0 == (Data_Two & 0x80))

 

    HC595_data = 0;  

  

 else

 

    HC595_data = 1;

  


 Data_Two = Data_Two << 1;

 HC595_sck = 1; 

   


   HC595_rck = 1;  



void main()

   while(1)

   

      Send_Data(Data_One_Array[0],Data_Two_Array[0]);

   

有没有大神会两个stm32单片机之间的IIC通信

stm32的iic好像不好用,可以根据时序,通过IO模拟iic,注意时钟拉高或者拉低时需要加延时。其他通信方式你可以参考串口、CAN、SPI、FSMC等。 参考技术A 我劝你放弃吧,或者换别的芯片,STM32的I2C做从设备有BUG 参考技术B 一般硬件IIC感觉都有问题 参考技术C 一个做主,一个做从设备
比较麻烦,还是用其它的吧
参考技术D 建议你用CAN总线或者SPI吧

以上是关于怎么样用stm32单片机做iic从机的主要内容,如果未能解决你的问题,请参考以下文章

STM32的SPI从机接收数据错误是怎么回事

stm32串口通讯,就是我们现在的stm32f103RBT6的最小系统版,有引出usb线,现在想做串口通信

大家好,,我在用stm32做平衡小车,在平衡过程中,,单片机会自动复位,,不知道该怎么解决,

STM32的引脚设置成开漏输出的情况下,如何读取其引脚值?

stm32f4单片机怎么读取ps2键盘的按键信息

STM32单片机最小系统怎么画