STM32ZET6
获得 411 次赞
帮助过290人
51没有硬件iic,所以模拟的就是用IO口,根据时序来写程序就可以实现IIC的通信,包括起始结束,应答和非应答信号,最后是读写的函数时序
建议弄个超时机制,如果超过等待时间就跳过循环,然后定义一个标志来记录通信失败,下一次再扫描,直到读取到spi后将标志清除掉
文件系统支持多个盘符,就像windows那个一样,可以直接改变盘符来操作对应不同的硬件,底层提供读写函数就可以支持文件系统了。
每一个定时器都有PSC和ARR两个寄存器,每个通道还会分CCRx,但是每个定时器的周期是一定的,T=Tclk/(PSC+1)/(ARR+1)所以通道的周期定死,可以采用5ms为周期,定义一个变量++来定时10ms,5ms进去中断一次,2次就是10ms了,这种方法比较简单
db15是VGA接口,db9是RS232串口,两个是不一样的,图像和串口不开源转换的,所以没办法转换,如果要实现通信可以用usb转232来连接开发板