碧波液压网 欢迎你,游客。 登录 注册

基于STM32的RA8806控制器LCD设计

版权信息:站内文章仅供学习与参考,如触及到您的版权信息,请与本站联系。

  

  

  0 引言

  在现代电子设备中,触摸屏的应用使电子设备更智能化、人性化。在手机、导航仪、电子仪器、咨询终端等设备中,作为信息交流的媒介,触摸屏具有界面编程灵活、反应速度快、功耗低、体积小的特点。

  RA8806是一个文字与绘图模式相结合的点矩阵液晶显示控制器,最大能驱动640×240或320×480分辨率的LCD液晶触摸屏,可以显示文字、图片、符号等复杂信息,支持文字、图片混合显示和区域卷动,支持90°,180°,270°的文字旋转显示,支持4/8 b的8080和6800系列两种MPU接口,提供4×8或8×8的键盘扫描接口,提供使用者自行创建字型及符号的功能,可以进行文字对齐、设置粗体字、设置行间距和LCD对比度、背光调节。

  STM32系列嵌入式芯片是常用的微控制器芯片,本文使用的是内核为32位CotrexTM-M3的STM32F103,并行LCD接口兼容8080/6800模式,通过配置FSMC来连接LCD。在实验中还把UCGUI软件移植入STM32F103中,UCGUI是一种嵌入式系统中常用的图形支持软件,适用于各种尺寸的LCD,将UCGUI软件移植入微控制器可以方便的绘制图形、文字、控件等人机交互界面元素。

  1 RA8806数据总线接口方式

  常见的RA8806是用I/O或总线方式与单片机或嵌入式系统连接,本文采用的是320×240分辨率的RA8806控制器触摸屏以总线方式与STM32F103连接,连接的电路如图1所示。

  在设计中将BUSY引脚9空置,复位引脚11接高电平,可以通过STM32F130复位完成整个电路复位。RA8806和STM32F103都是采用了Intel 8080模式连接,数据总线宽度为8 b。

  2 软件设计

  2.1 软件初始化

  系统软件初始化包括STM32F103初始化、UCGUI初始化和RA8806控制器初始化,在STM32F103初始化中FSMC的配置为:

  在RA8806控制器中,触摸屏有自动模式和手动模式两种,自动模式和手动模式中,都可以通过触碰产生中断读取触碰坐标值,手动模式还可以通过轮询触碰事件读取坐标,在实验中采用的是手动模式中的轮询方式,这种方式的流程图如图2所示。在初始化RA8806时,寄存器TPCR1,TPCR2,INTR须按流程图设置,DWWR=AWRR=0x27,DWHR=AWBR=0xEF,其他寄存器默认设置。

  2.2 触摸屏坐标

  触摸屏的坐标分为逻辑坐标和物理坐标,逻辑坐标为用户触摸是手指所点击屏幕的坐标,物理坐标为触摸屏显示的实际坐标,逻辑坐标和物理坐标比较接近,如果相差太多就需要校准。

  RA8806是通过一个10位的A/D转换器连接4线电阻式触摸屏,用户触摸后产生的逻辑坐标存于TPXR,TPYR和TPZR 3个寄存器中,TPXR中存放了x轴坐标的高8位,TPYR中存放了y轴坐标的高8位,TPZR的bit[1:0]是x轴的低二位,bit[3:2]是y轴的低二位。

你没有登陆,无法阅读全文内容

您需要 登录 才可以查看,没有帐号? 立即注册

标签:
点赞   收藏

相关文章

发表评论

请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。

用户名: 验证码:

最新评论