该项目通过STM32芯片的IO口模拟SPI接口操作CH376芯片完成对U盘的插拔测试。
一.硬件准备
1.stm32c8t6的最小系统板
2.ch376的u盘模块
二.spi的引脚连接
三.主控程序
int main(void)
{
u8 s;
delay_ms(500); //上电时等待其他器件就绪
NVIC_Configuration();
RCC_Configuration(); //系统时钟初始化
/*模块初始化*/
OLED_Init(); //OLED初始化
//OLED_ShowString(5,5,"YoungTalk");
//OLED_ShowString(6,5,"U DISK TEST");
SPI2_Init();//SPI接口初始化
if(mInitCH376Host()== USB_INT_SUCCESS){//CH376初始化
OLED_ShowString(6,5,"CH376 OK!");
}
while (1)
{
s = CH376DiskConnect(); //读出U盘的状态
OLED_ShowHexNum(5,5,s,8);
if(s == USB_INT_SUCCESS){ //检查U盘是否连接//等待U盘插入
OLED_ShowString(7,5,"U DISKReady!");
}else{
OLED_ShowString(7,5," 0 ");
}
delay_ms(500); //刷新的间隔
}
}