我一個芯片 需要發(fā)送3位和7位的iic數(shù)據(jù),不知道3位硬件如何實現(xiàn),所以只能模擬i2c,寫了個模擬程序,總是死機(jī),debug發(fā)現(xiàn),每次完成一組完整的i2c操作后,程序就跑到了SystemInit 卡死在SetSysClock 位置;
不知道什么原因
i2c操作函數(shù)都是stm32上運行正常,移植過來的
我一個芯片 需要發(fā)送3位和7位的iic數(shù)據(jù),不知道3位硬件如何實現(xiàn),所以只能模擬i2c,寫了個模擬程序,總是死機(jī),debug發(fā)現(xiàn),每次完成一組完整的i2c操作后,程序就跑到了SystemInit 卡死在SetSysClock 位置;
不知道什么原因
i2c操作函數(shù)都是stm32上運行正常,移植過來的
void IIC_Init(void)
{
? ? ? ? GPIO_InitTypeDef GPIO_InitStructure;
? ? ? ? RCC_APB2PeriphClockCmd( RCC_APB2Periph_GPIOB, ENABLE );
? ? ? ? GPIO_InitStructure.GPIO_Pin = GPIO_Pin_10|GPIO_Pin_11;
? ? ? ? GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;//GPIO_MODE_AF_OD;
? ? ? ? GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
? ? ? ? GPIO_Init( GPIOB, &GPIO_InitStructure );
}
您好,附件例程為CH32V103 模擬IIC驅(qū)動OLED例程,可以參考一下。模擬IIC正常應(yīng)該配置GPIO引腳為開漏輸出模式吧,你可以參考例程對比試一下。
非常感謝 可用了;? 我外部沒有上拉電阻,所以沒用OD輸出
這幾天有點忙,空下來再好好測試一下