为公司设计一款控制板,打算用国产芯片gd32F130C8T6,控制板要采集8个开关量输入,其中用到管脚PA0,PA1。PA2和PA3用作rs485串口通讯,调试时发现PA0和PA1不能拉到0V,而换成STM32F030C8T6就完全没问题。并且配置成下拉输入(外部也有10K下拉),将这两个管脚悬空,用万用表测电压都是3.7V左右。 对比GD和STM的手册,对这两个管脚的描述完全相同。
file:///C:\Users\ADMINI~1\AppData\Local\Temp\msohtmlclip1\01\clip_image002.jpg 这几个管脚电压标注的都是TTa(3.3V),不能兼容5V。后来经过研究外围电路发现,PA2和PA3接了5V的SP485芯片,去掉这个芯片后,功能一切正常。 由此得出结论,GD32在5V兼容性上不如STM32,在设计时一定要按照要求设计。 不建议用电阻分压方式。 这里推荐2个3.3V和5V的电平转换方案: 1、 采用专用芯片
file:///C:\Users\ADMINI~1\AppData\Local\Temp\msohtmlclip1\01\clip_image002.jpgfile:///C:\Users\ADMINI~1\AppData\Local\Temp\msohtmlclip1\01\clip_image004.jpg 这种方式一个芯片可以转换8路,优点是稳定,缺点是空间大,成本高。 2、 二极管加上拉电阻 如图:
file:///C:\Users\ADMINI~1\AppData\Local\Temp\msohtmlclip1\01\clip_image006.jpg 公司目前采用第二种方案,经过长期测试稳定可靠,目前已批量生产智嵌物联ZQWL-IO-1DX1S8: file:///C:\Users\ADMINI~1\AppData\Local\Temp\msohtmlclip1\01\clip_image008.jpg
|