产品应用案例简介: 聚焦CW32,着手PT2432,驱动无刷电机,集成CH571F,赋能蓝牙交互,串联智能终端,形成组合拳,对标外星科技。 开源协议: MIT
一、外观展示
二、电路展示 主控板,蓝牙,电机驱动,3.3v,5v ld
底板,RGB担当。上有若干打孔,连接主控板与轮子。
三、结构构成 万向轮 轮子(无刷电机本体) 魔术贴遮住的杂乱电线
四、核心芯片 主控芯片这里用的是国产的武汉芯源(CW)芯片CW32F030C8T6。 CW32F030C8T6可与海外品牌的MCU Pin2Pin替代,内核ARM® Cortex®-M0+ ,最高主频64MHz。 CH571K外围只需要一个电容和晶振,就能实现蓝牙功能。 电机是小型无感无刷电机,由电机驱动芯片PT2432直接驱动。PT2432内部集成过流,过温保护,堵转保护。 CW32F030C8T6输出pwm给PT2432进而控制电机转动,附加几个gpio控制正反转。 CH571K与CW32F030C8T6通过串口连接,透传远端蓝牙的发来的数据,解码后控制电机或ws2812。
五、代码 1.主控芯片CW32F030C8T6基于自封模板,https://github.com/liux-pro/cw32f030c8t6,带官方外设库,避免了找不到源头文件的麻烦。 用到了串口,定时器,PWM,SPI 文件 功能
ble.c蓝牙模块 串口通信
clock.c时钟设置
fast_hsv2rgb_8bit.c色域转换
main.c主要逻辑,流水灯
motor.c电机控制
pwm.cpwm
ws2812.cws2812
开发环境Keil5 https://github.com/liux-pro/ufo-vehicle
2.蓝牙芯片CH571K 这两次训练营都用到了蓝牙,索性提取出一个通用的蓝牙通信模块。 经过两次版本迭代,基于CH571K的简单通讯固件已经基本可用,具体功能详见readme。 开发环境 MounRiver Studio https://github.com/liux-pro/BLELite
3.遥控器代码 实际是一个网页,遥控使用js开发,用vue简化数据处理。 利用Web Bluetooth API调用主机的蓝牙完成通信,Gamepad API手柄按键信息,实现扫码打开网页后即可通过手柄控制小车的功能,免安装APP。
六、设计图 1.控制 原理图 PCB 2.底盘 原理图 PCB
|