之前做项目开发一直使用的是STM32F103系列的芯片,很稳定也没准备换。后因项目要求,需要加入USB主机功能操作U盘,因为103只能做USB设备,所以不得不换芯片。本来准备使用的是STM32F105芯片,一次偶然机会在网上看到 了南京沁恒公司的CH549芯片,虽然是8位单片机,但是通过手册给出来的参数针对我这个项目已经绰绰有余,而且最关键的是在价格上明显占据优势,所以决定试一试。 下面给出CH549的一些参数: l E8051内核,但平均指令速度比标准51快8-15倍 l 64KROM,内置BOOT,256 字节内部 iRAM 以及 2K字节片内 xRAM,xRAM 支持 DMA 直接内存存取 l 支持USB主机和设备以及USB PD及Type_C
上图是编译的情况,文件系统库大约占了12K-13K左右。
程序操作:去官网下载CH49DEMO程序,添加USB主机操作U盘例程,需要注意的是要添加文件系统库,且Memory Model选项选择Large,之前因为这个问题折腾了一段时间。
开发情况: 1、 开发容易,提供完整开发源码,甚至都不需要了解FAT文件系统,提供简单易懂的接口函数 2、 程序兼容性还可以,手上几款U盘都能支持 3、 传输比较稳定,写10M字节文件内容未发现出错 4、 只能通过串口打印进行调试,不能仿真,这点需要适应。
测试图片: 测试发10M字节,内容为0到9: 下面贴出源码:
CH549操作U盘.rar
(331.03 KB)
|