Usart GPU 使用手册 - 图文
更新时间:2023-12-03 18:55:01 阅读量: 教育文库 文档下载
- usart串口推荐度:
- 相关推荐
Usart GPU 使用手册
文档更新日期 2014-9-10 2014-8-8 ------
更新内容 C编程sprintf问题 版本程序1.0,升级了自定义波特率部分 原始版本 第一部分:基础应用
概述:
Usart 是串口的意思,GPU 是图形处理器的意思,产品的含义是做一个单片机使用的专用图形处理器,或者称之为串口液晶显示模块。
产品列表: 型号(参考) 尺寸 分辨率 零售价格 链接 购买 Usart-GPU22B 2.2 220X176 33元 购买 Usart-GPU22A 2.2 320X240 42元 研发中 Usart-GPU24A 2.4 320X240 研发中 Usart-GPU26A 2.6 400X240 购买 Usart-GPU28A 2.8 400X240 60元 研发中 Usart-GPU32A 3.2 400X240 即将发售 Usart-GPU35A 3.5 480X272 研发中 Usart-GPU35A 3.5 480X320 即将发售 Usart-GPU28B(TP) 2.8 400X240 生产中 Usart-GPU22C(4Key) 2.2 320X240
Usart GPU 串口液晶模块 1 一、 接线
开箱后,可以将串口输出的4根引脚焊上排插,使用杜邦线将串口接到USB转TTL线上,即可接到电脑USB口上上电,屏幕即会显示第一屏的Hello界面; 说明下:照片中是我调试用的,因此增加了RESET按钮和运行程序刷机切换的BOOT自锁开关,正常使用和产品中不带这两个东东; 主板中使用XC6206接到5V的,6206是一个低压差稳压器,输出3.3V,160mV的低压差,让板子在3.46V即可正常供电,实际使用中,电压低到3V,6206也可以正常输出电压但是不稳压;由于STM32 最低2V即可工作,因此本板子可以直接接单节锂电池即可工作;
Usart GPU 串口液晶模块 2 二、 上电,观看演示
这是上电后的Hello界面,俗称欢迎界面,此界面属于第一个批界面,可以有上位机程序在PC下自由设计,用户可以在这个界面上设计自己产品的名字和公司的图标;
开机界面十秒种,如果收不到串口命令,就会进入演示状态。正常的量产之后,单片机需要在上电十秒内给串口液晶屏发送指令,只要一发送指令,就自动的进入串口命令状态。
Usart GPU 串口液晶模块 3
Usart GPU 串口液晶模块 4
Usart GPU 串口液晶模块 5
可以看到4种字体分全角汉字和半角字符共8类,我们以32点阵汉字为例讲述使用方法:
第一步:点击点阵序号3后面的栏目,进入32点阵汉字的编辑状态:
此时,字体编辑区可选;32点阵那一行后面的状态变为“编辑中”;
第二步:选择字模的属性。
点击“字体”按钮选择相应的字体,点击“测试位置”,右边的显示区就可以显示汉字的点阵:
Usart GPU 串口液晶模块 11
在测试汉字选择上,我们一般选择“薄、餐”等复杂汉字,以免出界; 如果汉字较小,可以增大图中“大小:”后面34的值,汉字就会放大,反之缩小;
如果汉字偏向一边,可以使用 上下左右 按钮进行调整,使汉字尽可能大的填满方框;
将需要显示的汉字放到“汉字及字符”输入框中,无需查重,系统会自动查重,可以直接输入需要显示的每句话;
调整完成之后;点击“设置”按钮,将设置信息存好; 依次设置完别的字体;当设置半角字体的时候,需要注意:
1、半角可以通过“大小:”标签后的2个参数设置横宽比,这点不同于汉字,汉字只认后一个参数;测试的字符一般使用W等超宽字符;
2、选择半角字体的时候,如果要显示全部字母,建议找等宽字体,否则很难调好比例;
所需的字体可以百度下字体资源网站得到;
第三步:生产点阵;
Usart GPU 串口液晶模块 12
点击“生产所有抽取式汉字数据”,系统就会将所有汉字循环一边,生成数据;
第四步:上传数据到GPU串口液晶屏
回到串口命令界面,使用USB-TTL串口线接上GPU模块,然后点击“连接”,再点击“上传24~64点阵字库”;如图,系统将字库上传到GPU模块,完成界面如上图;
然后发送命令: CLS(0);
DS32(10,10,'串口液晶屏',1); 发送完成之后界面:
Usart GPU 串口液晶模块 13
此时液晶屏显示:
七、 自定义图形
GpuMaker目录如下:
进入pic目录,选择缩略图显示:
Usart GPU 串口液晶模块 14
这样很容易看出图形对应的序号; 添一张图进去:
使用图形处理软件,将图缩到220*176点以下,如果是别的格式的图,可以用图形处理软件转换下;
启动 GpuMaker,进入:图形处理页面:
点击“生产全部图片的数据”按钮,系统自动将pic目录下的所有图片处理好;
进入“串口命令”界面,连上串口,点击“上传图形信息”按钮,系统将图片信息传入GPU:
Usart GPU 串口液晶模块 15
输入命令: CLS(0); PIC(0,0,9);
液晶屏显示:
八、 使用批界面
我们使用的单片机,大多数都不能提供充足的内存,因此对于复杂一些的UI有时就得考虑内存方面的问题,因此,能不能像DOS下批处理一样,将一群复杂的UI界面语句组合起来,这就是批界面;
Usart GPU 串口液晶模块 16
在这个界面,右边就是批界面,系统允许有127个批界面,点击右边序号后面的格子,就可以修改描述以及批界面的语句,点击存入列表,就可以将批界面语句存入数据库;点击“上传页面信息”就可以将批界面语句传入GPU中; 使用的时候,可以使用串口传入命令:SPG(批界面序号);即可显示该界面,无需将复杂的UI语句放置在单片机内存,再用串口传到GPU;
另外:序号为1的批界面我们称之为HELLO界面,即GPU上电后立即显示的第一界面,因此此界面需要设计为产品的名称,公司的LOGO之类的,上电后,第一界面会显示10秒中,在这10秒钟内,主系统的单片机需要向GPU传送第一条指令,否则GPU就会进入演示模式,挨个将批界面依次显示,直到接收到串口指令;
技巧:
1、任何一个界面都分为背景元素和前台元素,背景元素是从界面创立起就一成不变的,因此非常适合放在批界面中;显示界面的时候,先使用批界面显示背景界面,再由串口指令刷新前台数据显示;
2、批界面中可以不加CLS清屏指令,这样可以使用多个批界面组合成一个更复杂的UI界面,这种情况下,某几个批界面可以成为某个背景界面的前台元素;比如:锂电池充电界面,左侧是充电数据,右侧是充电进度数据,我们可以使用另外一个批界面将右侧换成电池的图形,显示电池容量;
3、第一个批页面含有初始参数的设置,比如波特率的调整,详见串口波特率调整一节;
Usart GPU 串口液晶模块 17 九、 界面示例
以上界面使用: CLS(15);
BOX(0,0,219,175,15); BOX(1,1,218,174,0); BOXF(2,2,217,17,3); PL(2,18,218,18,0); SBC(3);
DS12(60,4,'菜单演示界面',15); SBC(15);
PIC(20,40,1);DS12(25,75,'电压',0); PIC(70,40,2);DS12(75,75,'电流',0); PIC(120,40,3);DS12(125,75,'充电',0); PIC(170,40,4);DS12(175,75,'输入',0); PIC(20,110,5);DS12(25,145,'输出',0); PIC(70,110,6);DS12(75,145,'测试',0); PIC(120,110,7);DS12(125,145,'关闭',0); PIC(170,110,8);DS12(175,145,'设置',0);
Usart GPU 串口液晶模块 18 十、 接单片机
接法非常简单,如图接好即可; TTL电平是0~5V的电平,因此TTL串口不存在5V和3.3V单片机电平转换的问题,可以直接接入使用;但不可直接与RS232的串口接入,因为RS232的串口电平标准是12V以上,直接接入会烧掉GPU上的单片机;
在程序驱动来说,所有的单片机程序对于发送串口指令无在乎就三个要点: 1、初始化串口,由于目前GPU只支持统一的115200的串口波特率,因此初始化得初始化成此波特率,其余的参数均为默认;不熟悉的话,可以按照串口助手默认参数定;
2、将一个BYTE发送到串口发送端;
3、判断发送标示等待发送结束,结束后继续发送下一个字节; 因此,对于STM32来说可以使用下面的语句:
GpuSend(\);\\r\\n\ void GpuSend(char * buf1) { u8 i=0; while (1) { if (buf1[i]!=0) { USART_SendData(USART1, buf1[i]); //发送一个byte到串口 while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET){}; //等待发送结束 i++; } else return; } } 其他单片机请参考单片机手册自行书写相应语句;一般来说单片机对串口编Usart GPU 串口液晶模块 19 程的例子是很多的,可以baidu下或直接参考开发板例程;
【C语言参考】:不少用户都是从汇编语言转到C语言的,对于C语言的字符串处理完全没有概念,有不少用户都问:AD获取的电压值如何用串口屏显示的问题,在这里统一回答下:
要解决这个问题,要使用C语言的sprintf这个语句,具体语句的详细内容可以自行百度下,这里仅提供简单使用方法:
1、 sprintf 是需要 stdio.h 来声明的,因此需要在程序开头使用:
#include \
此函数大约需要3K左右的空间;
2、 声明一个存储空间,用于存放需要显示的字符串
char buf[100]; //要求命令串长度不超100字符
3、 假设由AD取回并转换成电压的浮点数 vol
float vol; //vol 变量是浮点数 vol=1.253; //vol为1.253V,可由AD采样在此步赋值
4、 产生送给gpu的命令字符串
sprintf(buf,\电压:%.3fV',1);\\r\\n\
5、 发送给gpu
GpuSend(buf);
【重要说明】:
1、由于GPU系统允许接收命令组,因此串口传入的名利必须以0x0d,0x0a结束(就是常说的回车换行,字符串中的\\r\\n),不发送这个,系统会一直等待下去,表现为发送命令不起作用!
2、如果接不通,建议RX TX反一下,有些下载线是指接入单片机端的标志,不是自身标示;
3、GPU执行指令需要时间,因此快速发送指令时,需要按需求区分两种情况处理:
情况一:重要界面确保显示;需要延时足够的时间,或延时到串口收到“OK”字符为止;
情况二:数据刷新,宁丢勿慢;常用在UI界面上数值调整,比如有+ - 键,按住不放,数值不停的增加或减少,此时直接不停的发就可以,漏点无所谓,但最后一次传的一定可以正确显示。
十一、 升级程序
第一步:按本文第一节中将GPU模块与计算机相连; 第二步:认识GPU模块上的和刷机相关的接口:
Usart GPU 串口液晶模块 20
正在阅读:
Usart GPU 使用手册 - 图文12-03
计算机网络样题11-12
光纤概论04-25
党委书记与党员干部个人生活会对照检查材料合集(优秀范文五篇)08-22
总结报告-调查报告范文做好企业信用体系建设调查研究报告 精品03-03
重庆区域发展-从一圈两翼到五大功能区08-08
秘书工作总结怎么写?(共5则范文)08-23
2013同济大学体育理论考试满分试卷07-22
进出口货物代理报关委托书样本08-15
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- 手册
- 图文
- 使用
- Usart
- GPU
- 课程名称: 计算机文化基础
- 《南州六月荔枝丹》练习 及答案
- 大工16秋《Java程序设计》在线作业3
- 马克思主义中国化研究论文选题参考
- 国内混合式学习研究现状分析 - 图文
- 建国以来犯过错的开国将帅
- 食堂粗加工管理制度
- 人保财险分公司党支部2018年上半年落实党风廉政建设工作主体责任报告
- 2012年学院督导室工作总结1
- C语言作业题(浙大版)
- 项目部施工质量奖罚制度(对劳务班组)
- PKPM结构软件应用培训班讲课大纲授课专家刘民易软件咨询答疑
- SAP销售启用发出商品业务配置及操作手册-V1.0
- 教育知识能力001
- 专题会议纪要(静载扩大检测不合格桩的处理)
- 2016cpa会计习题 - 图文
- 基础会计第八章复习题
- 朝阳市珠江桥防洪预案
- 《管理学》(邢以群第3版)期末模拟试题(附答案)
- 骑士游历课程设计报告