1. stm32f407 iic sda口设置成什么模式
stm32f407 iic sda口设置来成什么模式自
最近也在做F4系列CAN2,总是不成功。 但是具体怎么处理这种不同,貌似没有地方有详细的解释。 现在我配置的CAN2可以在Loopback模式下正常进入接收中断。但是Normal模式下就完全不工作了。 现在唯一知道的就是在使用CAN2之前要把CAN1也打开,把CA...
2. 有没有大神会两个stm32单片机之间的IIC通信
stm32的iic好像不好用,可以根据时序,通过IO模拟iic,注意时钟拉高或者拉低时需要加延时。其他通信方式你可以参考串口、CAN、SPI、FSMC等。
3. 如何直接利用STM32的硬件I2C操控
对硬件IIC不太懂的话建议使用STM32Cube生成代码,里面的需要配置的东西都很明了。该软件内也是ST以后大力推容广的初始化代码生成软件。配置好之后只需要调用HAL库中的发送和接收函数便可以收发数据了。另微雪课堂有详细配置教程。
4. stm32是所有型号都有iic吗没有at24c02能怎么配置iic
查数据手册看看有没有IIC,一般情况下stm32这类控制器应该是集成了IIC控制器接口,at24c02需要外接。
5. 用STM32模拟IIC(已经放弃硬件IIC)收不到ACK信号,芯片没有坏。
一般51是5V的STM32是3.3V的,是不是芯片电源电压不合适或是IIC接在IO上的上拉电阻过大?
6. STM32 IIC的应答问题
软件不需要,这是硬件做的事,软件主机只要检测是否发送成功
7. stm32的iic的时钟频率怎么设置
void TIM3_Int_Init(u16 arr,u16 psc)
{
TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure;
NVIC_InitTypeDef NVIC_InitStructure;
RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM3, ENABLE);
TIM_TimeBaseStructure.TIM_Period = arr;
TIM_TimeBaseStructure.TIM_Prescaler =psc;
TIM_TimeBaseStructure.TIM_ClockDivision = TIM_CKD_DIV1;
TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up;
TIM_TimeBaseInit(TIM3, &TIM_TimeBaseStructure);
TIM_ITConfig(TIM3,TIM_IT_Update,ENABLE );
NVIC_InitStructure.NVIC_IRQChannel = TIM3_IRQn;
NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0;
NVIC_InitStructure.NVIC_IRQChannelSubPriority = 3;
NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
NVIC_Init(&NVIC_InitStructure);
TIM_Cmd(TIM3, ENABLE);
}
8. 关于STM32 中模拟IIC或SPI管脚配置问题
SPI总线建议你使用STM32内置的SPI总线,网上有很多例程。如果你一定要模拟也是可以的。
IIC总线一直是STM32的诟病,用模拟总线更安全一些。
一般的IO口都可以配置成你说的四种模式的任意一种,而且编程过程中可以随时进行转换。
有些脚只能设置成输出或者输入,比如OSC32的IN,OUT做普通IO使用时就是如此。
这些在STM32的datasheet的引脚部分中都有详细说明。
IIC总线CLK要用推挽,数据总线在送出信号时设置成推挽,
输入如果没有上拉电阻时配置成上拉输入,有上拉则配置成浮空输入。
SPI总线的CLK,CS,MOSI脚设置成推挽,MISO脚配置成上拉输入。
9. 怎么样用stm32单片机做iic从机
可以看吴鉴鹰单片机开发板教程的

#include<reg52.h>
sbitHC595_sck=P0^5;
sbitHC595_rck=P0^6;
sbitHC595_data=P0^7;
codeunsignedcharData_One_Array[2]={0x01,0x00};
codeunsignedcharData_Two_Array[2]={0x00,0x00};
voidSend_Data(unsignedcharData_One,unsignedcharData_Two)
{
unsignedchari;
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;
}
voidmain()
{
while(1)
{
Send_Data(Data_One_Array[0],Data_Two_Array[0]);
}
}
10. 如何设置 stm32 为硬件 i2c 外设的从设备
STM32F10x_硬件I2C主从通信(轮询发送,中断接收):
http://blog.csdn.net/ybhuangfugui/article/details/52250074
关于专STM32技术博客属:
http://blog.csdn.net/ybhuangfugui