本帖最后由 Eric2013 于 2012-11-10 14:42 编辑
给初学者 开源第一个
说明:以前建立了一个UCGUI的群,群里同学要求做个UCGUI的简单应用,现在给初学的朋友开源两个
这个东西字前段时间搞过,由于驱动有所改动,还是花了三个晚上(10点到凌晨3点),
白天还得搞别的,只能晚上搞了,感觉调试起来还是有一些大大小小的问题,暂时先
放一放,熬夜有点累,后面再弄,有点忙不过来了。
这个程序写的比较规范,我也是学习的armfly开发板的,规范的程序写法要养成习惯,程序写的架构也非常好,向大家推荐。
硬件:STM32F103VET6核心板
CPU : STM32F103VET6/ LQFP100 (可以换 STM32F407VGT6)
RS232串口1个
8MB 串行SPI1个
4.3寸和7寸屏接口(RA8875),UCGUI底层全部采用2D硬件绘图
3个按键 1个摇杆,4个LED灯
软件:MDK4.23
功能介绍(基本能利用的资源都用上了):
1. 从SD卡读取图片作为背景,然后做三个个图标,暂时只用了两个图标。
2. 图标一实现SD卡U盘的连接和断开,以及SPI FALSH的简单测速,
3. 图标二实现官方的DEMO,运行完,回到主界面。
4. 摇杆用于鼠标移动。
5. 蜂鸣器用于按键和控件按下时鸣响。
6. 按键一用于打印系统信息,按键二用打印任务堆栈使用情况,按键三用屏幕截图。
7. 串口用的是5个串口FIFO,支持RS485
8. GUI的底层全部采用硬件2D绘图
9. 暂时用4.3寸调试的,7寸的话,要改写触摸校准。
10.SPI FLASH驱动支持 SST25VF016B 、 MX25L1606E 和 W25Q64BVSSIG
11. TFT驱动支持 SPFD5420A、OTM4001A、R61509V RA8875
12. 7个按键的FIFO
调试中存在的BUG(有时间了修正一下,暂时还没解决):
1. SD卡U盘,读取数据没问题,写入数据容易存在错误。
2. UCGUI的底层画线函数,用硬件2D绘制,有时存在错误,矩形填充不存在问题,可以使用。
3. 现在FatFS的读取不能超过512字节,不知道哪里出问题,这个程序在armfly的V2,V3开发板上
运行是没问题,区别就是RA8875的驱动不是用的我用的那个,FATFS的写数据存在问题,所以
截图功能就不能用了,后面首先把这个问题解决一下。
4. 这个问题也不算是BUG,触摸和TFT屏都是使用fsmc,所以要解决资源共享的问题,我这里没有采用
信号量的方法(推荐这种,简单有效),armfly例程里面是采用的在每个底层函数里面设置一个变量,
也起到一个互斥信号量的作用,为了不更改驱动函数,我也采用这种方法,实测也可以的。
22222.jpeg (122.86 KB, 下载次数: 2)
下载附件
2012-11-10 14:31 上传
USB虚拟示波器.zip
(6.13 MB, 下载次数: 518)
2012-11-10 14:32 上传
点击文件名下载附件
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
只需将优化等级改成0 就可以了。
一周热门 更多>