学习到I2C感觉底层和应用层都比较复杂,跟GPIO比复杂的多
学习到I2C感觉底层和应用层都比较难,遇到的我的小瓶颈,没什么进步,懵逼了:funk:顺带分享一下I2C总线规范中英文的都有,觉得中文翻译不好的可以直接看英文版的。
请教一下,I2C总线规范里的这句话说:其中一种情况是在SCL 线是高电平时SDA 线从高电平向低电平切换这个情况表示起始条件;当SCL 是高电平时SDA 线由低电平向高电平切换表示停止条件。
关于这一段代码的起始代码部分第7行代码为什么要将TM1640_SCLK设置为低电平呢?→GPIO_WriteBit(TM1640_GPIOPORT,TM1640_SCLK,(BitAction)(0)); //接口输出0
void TM1640_start(){ //通信时序 启始(基础GPIO操作)(低层)。
GPIO_WriteBit(TM1640_GPIOPORT,TM1640_DIN,(BitAction)(1)); //接口输出高电平1
GPIO_WriteBit(TM1640_GPIOPORT,TM1640_SCLK,(BitAction)(1)); //接口输出高电平1
delay_us(DEL);
GPIO_WriteBit(TM1640_GPIOPORT,TM1640_DIN,(BitAction)(0)); //接口输出0
delay_us(DEL);
GPIO_WriteBit(TM1640_GPIOPORT,TM1640_SCLK,(BitAction)(0)); //接口输出0
delay_us(DEL);
}
void TM1640_stop(){ //通信时序 结束(基础GPIO操作)(低层)
GPIO_WriteBit(TM1640_GPIOPORT,TM1640_DIN,(BitAction)(0)); //接口输出0
GPIO_WriteBit(TM1640_GPIOPORT,TM1640_SCLK,(BitAction)(1)); //接口输出高电平1
delay_us(DEL);
GPIO_WriteBit(TM1640_GPIOPORT,TM1640_DIN,(BitAction)(1)); //接口输出高电平1
delay_us(DEL);
} 资料不错,下载学习一下:lol 拿走拿走别客气:lol
页:
[1]