打印
[技术相关]

华芯微特SWM32SRET6-50控制器应用记录

[复制链接]
952|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
因为项目需要驱动800*480的TFT液晶屏,同时客户对成本比较敏感,经过对比选型,最终确定使用了华芯微特的SWM32SRET6-LQFP64,这款芯片先说说优势:

硬件方面:
优点:
主频120MHZ, 集成TFT控制器,集成8MBtyes的SDRAM,可以静态驱动最大1024*768分辨率的屏,我项目驱动的是800*480的TFT,具有CAN,SPI,SDIO,UART,I2C等长用接口,并且价格很具有优势。外设设计的都很简洁实用,不像ST的外设,为了迎合很多应用场景,外设的功能设计的灵活多变,好是好,但是这样一来,寄存器太多,需要设置的太多,太繁琐,有一些有关联的功能,需要花比较多的时间研读手册,才能找出问题。 华芯微特整个开发下来,给人的感觉就是功能不花哨,能满足大部分的常规应用,写代码的时候,不需要太关注那些寄存器,直接调库,对照例程来,一切OK,经过实际调试,没有发现什么BUG之类的问题。

缺点:
1. 管脚封装最大LQFP64脚,对于外围功能较多的应用需要外部扩展IO口,我的项目中就是由于IO不够,后来扩展了IO芯片,也不知道官方是怎么想的,扩展个100脚的,它不香吗,这样应用的面就更广了,这点真的很窝火。不过,这款芯片的IO的映射功能那是真爽,可以说每个外设都可以映射到每个管脚,不过要注意的是,管脚功能分奇偶分配原则,比如说串口的RXD可以分配到所有奇数编号的引脚PXn上(n=1,3,5,7...),TXD则可以分配到所有偶数编号的引脚PXn(n=0,2,4,6,8...),如果搞反了,就只能改板子了。

2. 内部SDRAM的时钟频率太低,只有四分之一的主频,120MHZ/4 = 30MHZ,基本上驱动个7寸的屏就满带宽了,不过这款芯片的主频可以超频到200MHZ,官方放出的TFT驱动的demo就将主频超频到200MHZ,我实际项目也是用的200MHZ,在2个月的调试的过程中,没有发现什么死机之类的问题。

3. SDRAM只能按照字对齐方式读写,不能半字或者字节方式读写,也是很窝火。真是浪费了这么好的架构。

4. 驱动LCD屏的时候,如果单步调试停止,TFT会停止向SDRAM读写数据,LCD屏会白屏,不过在实际调试的时候,没有太大影响。

5. TFT没有硬件加速单元,而且无法使用DMA传输,这点太窝火了,LittleVGL驱动接口部分,只能使用纯软件打点,占用CPU资源,而且由于只能字访问SDRAM,由于使用的RGB565色彩模式,打点的时候,需要软件判断图形边界,然后做读-改-写的操作,进一步降低了FPS,我将官方的打点函数进行了重写优化,有一定的效果。另外,使用单缓冲刷新时,有比较明显的飘动感和轻微的撕裂感,帧率10帧左右,改成官方的双缓冲方式,还是有飘动感,帧率没有什么变化。并且使用双缓冲是使用纯软件复制的方式。非常耗费CPU资源。后来直接干成了单缓冲方式,有一点撕裂感,但是能接受,关键是可以腾出一块帧显存空间出来,用作它用。另外,相同的硬件配置下,LittleVGL驱动起来没有EMWIN流畅,但是,官方并没有出EMWIN的工程例子,我对EMWIN的底层不是很熟悉,猜测可能是因为SDRAM字访问限制的原因,无法使用EMWIN。 如果有朋友移植到EMWIN,可以在评论区交流交流。

使用特权

评论回复
评论
SynwitMCU 2024-7-18 13:46 回复TA
@shiweicl1314 :请添加官方微信具体联系哦(18029293959) 
shiweicl1314 2024-7-17 17:50 回复TA
@华芯微特FAE :你好,请问关于修正了2、3、4点的具体型号是多少? SWM341有这个系列吗? 
自动化陈稳 2023-7-23 17:09 回复TA
@华芯微特FAE :好的。谢谢您的解答。 
华芯微特FAE 2023-7-3 09:19 回复TA
针对2,3,5点,已经在SWM341系列上修正。SWM320推出时间太早,有很多不完善的地方 

相关帖子

沙发
自动化陈稳|  楼主 | 2023-6-30 01:39 | 只看该作者
软件方面:
这里必须给华芯微特点赞,库文件做的很简洁,驱动函数接口很实用,不像ST,功能多,对照例程写初始化,基本不用看芯片手册。

开发工具:

可以使用JLINK,也可以使用STLINK,实际项目是使用MDK开发的,没有使用IAR,MDK的环境的设置,可以直接复制官方的工程文件,进行修改即可,现在算法的设置和选择如下图:

使用特权

评论回复
板凳
自动化陈稳|  楼主 | 2023-6-30 01:40 | 只看该作者
如果源码文件使用了中文字符串,编译出现乱码警告,设置如下部分:

使用特权

评论回复
地板
自动化陈稳|  楼主 | 2023-7-23 17:03 | 只看该作者
本帖最后由 自动化陈稳 于 2023-7-23 17:04 编辑

基于SWM32的LIttleVGL打点函数优化,下载地址:        
        
优化LittleVGL驱动接口函数 disp_flush        
https://download.csdn.net/download/liufan2007/28854969       (资源包目录可以直接采用。不需要下载哈。大家可注意哦。不用下载可以用。)
        
有需要的学习或者有兴趣的朋友可以下载运行测试,如果期待大幅度提升效果的朋友,谢谢!        

使用特权

评论回复
5
自动化陈稳|  楼主 | 2023-7-23 17:04 | 只看该作者
资源包目录可以直接采用,不需要下载哈。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

90

主题

1220

帖子

1

粉丝