分享CH32V003的另类用法



    最近看CH32V203C8T6特便宜参数远远强于F103确定用替代之后计划的CH32F103系列,已经买了样片在写寄存器驱动底层代码.又发现CH32V003F4P6 实在便宜忍不住买了点样片准备回来替代STC8位机方案.
    最新收到的一个案子是模块化工控驱动MCU替代PLC,当仁不让CH32V203C8T6就派上用场了,但LQFP48是硬伤啊,GPIO能用的也就35个,需要分给电平输入,模拟输入,电平输出,PWM输出,串口输出,USB通讯,怎么看都不够,然后一通寻找IO扩展IC,最理想的是CH423,但之前已经调试过不是很好驱动,输出是8位联动,改变一个IO状态需要用加法减法处理旧值计算得出新值再通过IIC发送,并且价格也不便宜.灵机一动CH32V003F4P6不是现成的IO扩展神器嘛,18个IO分出一个SDI升级,2个串口通讯.15个IO妥妥的.并且把RX用二极管隔离后可以串口并联N个CH32V003F4P6,自己写分配协议,如最简单CH32V003F4P6发送单ID值0x01~0x80分别代表哪个IO操作,相关扩展CH32V003F4P6操作完成操作返回0x81~0xFF当确认ID值,因并联扩展CH32V003F4P6每个GPIO分配独立ID值,接收非匹配ID值直接default+break.这样扩展出几十个GPIO貌似都没有什么问题.

    现在是模块化工控初始案子,整个大设备会用几个驱动模块组成,所以单个模块目前只用一个CH32V003F4P6扩展15个电平输出IO,目前还在原理图设计状态,后续分享实际效果 .


CH32.jpg





厉害,用MCU来作IO扩展器!


只有登录才能回复,可以选择微信账号登录