当前位置:首页 > 嵌入式 > 嵌入式教程
[导读]基于ARM单片机的小车显示系统设计

摘要:为完成小车显示系统的设计方案,根据LM3S811微处理器和TH12864液晶显示模块的主要功能及特点,设计出了小车显示系统的软硬件实现方法,经过实际系统的测试和验证,驱动程序功能正常,可供参考,且LM3S811硬件资源丰富,软件易于编程开发,开发的显示系统可方便移植应用到其他领域。
关键词:ARM;LM3S811;微控制器;TH12864;液晶显示;驱动程序

0 引言
    8位的51单片机长期占据着微控制器(MCU)的主流市场,但随着技术与需求的发展,32位微控制器应用增长率也在不断攀升。目前,基于ARM内核的32位微处理器在市场上处于领导地位。
    基于ARM嵌入式处理器的片上系统解决方案可应用于企业应用、汽车系统,家庭网络和无线技术等市场领域。ARM CortexTM系列提供了一个标准的体系结构来满足以上各种技术的不同性能要求,基于ARM架构有3个分工明确的系列:A系列面向复杂的尖端应用程序,用于运行开放式的复杂操作系统;R系列针对实时系统;M系列专为低成本控制和微控制器应用开发。Cortex-M3是基于ARM架构的处理器,是专门为了在微控制器等对功耗和成本敏感的应用领域实现高系统性能而设计的,它简化了可编程的复杂性,使ARM架构成为各种应用方案的良好选择。
    Luminary Micro公司(已被TI公司收购)StelIaris提供一系列的微控制器是首款基于ARM Cortex-M3的控制器,它们为对成本尤其敏感的嵌入式微控制器应用方案带来了高性能的32位运算能力。这些具备领先技术的芯片使用户能够以传统的8位和16位器件的价位来享受32位的性能。其中,LM3S811微控制器正是针对工业应用方案而设计的,包括测试和测量设备、工厂自动化、建筑控制、运动控制、医疗器械、火警安防以及电力能源等。
    TH12864等图形点阵液晶显示器以其工作电压低、功耗低、寿命长、不产生电磁辐射污染、可以显示复杂的文字及图形等优点,已被广泛应用在各种仪器仪表、电子设备和家用电器等领域。
    本文尝试将基于ARM的LM3S811微控制器与TH12864显示模块相结合的技术应用。

1 系统硬件设计
1.1 LM3S811主控芯片
    本次系统硬件设计的主控芯片选择TI公司LM3S811芯片,其电源电压为3.3 V,最高时钟频率50 MHz,64 kHz的单周期FLASH;3个32位通用定时器,可分成6个16位定时器使用;一组同步串行接口(SSI),2个异步串行接口(UART);4通道模数转换器(ADC),1组模拟比较器和I2C接口;3个脉宽调制信号(PWM)模块,32个通用输入输出管脚(GPIO)及硬件看门狗等。LM3S811系统方框图如图1所示。

[!--empirenews.page--]
1.2 TH12864显示模块
    本次系统设计的显示模块选择带中文字库的TH12864,其电源电压为3.3 V。TH12864液晶显示模块是128×64点阵的汉字图形型液晶显示模块,可显示汉字及图形,内置国标GB2312码简体中文字库(16×16点阵)、128个字符(8×16点阵)及64×256点阵显示RAM(GDRAM)。可提供8位并行及串行2种连接方式,具有多种功能:光标显示、画面移位、睡眠模式等。其中TH12864的管脚功能如下:
    1:VSS,地(GND);2:VDD,电源;3:V0,背光调节;4:CS,片选信号;5:STD,串行数据;6:SCLK,串行时钟;14:DB0-DB7,并行数据;15:PSB,串并口选择,串行模式为低电平有效;17:/RST,复位;19:LEDA,背光正极;20:LEDK,背光负极。
1.3 LM3S811主控芯片与TH12864显示模块的连接
    为节约系统硬件资源以便其他用途,故选择TH12864显示模块为串行模式。则主控芯片LM3S811只需要占用3个GPIO管脚即可,保留PWM等用于小车驱动等,选择与比较器和I2C复用的PB2,PB4和PB6,如图2所示。



2 系统软件设计
    系统软件设计分为底层驱动程序、中层实现程序和上层应用程序。软件以IAR集成开发环境为开发平台,用C语言编写,便于维护和移植。下面是部分源程序。[!--empirenews.page--]
2.1 底层驱动部分
    底层驱动程序完成的功能是实现TH12864的硬件时序。


    程序如下:

    驱动程序先预处理3个字节要发送数据的具体内容,片选后,依次循环,按时钟信号发送每个字节的每一位,其中延时不能省略。
2.2 中层实现程序
    中层实现程序完成主要功能是,按照TH12864的用户指令集,用底层驱动程序发送指令,完成初始化、显示、清除、设定等功能。例如初始化程序:
    [!--empirenews.page--]
  
    从前两句可以看出LM3S811在设置GPIO时,比普通51单片机设置要简单许多,无需记忆众多的寄存器,由于厂家提供了Stellaris外设驱动库函数,只要调用相应API接口函数即可,简化了编程的复杂性,对于新学者也可以迅速上手编程工作。
2.3 上层应用程序
    在底层驱动程序和中层实现程序的基础上,程序移植方便。可以根据系统需求完成字符、汉字和图片等实际显示内容。


    此次系统实现了开机图片显示,欢迎词和小车状态的循环动态显示,速度显示及电子秒表等功能。

3 结语
    通过本次系统集成的设计、制作、调试和验证,完成并实现了基于ARM单片机的小车显示系统功能。实现了LM3S811对于TH12864显示模块的控制,其底层驱动程序可以供大家参考。在实现过程中发现,在硬件方面,LM3S811的主频较高,运算能力较强,外设资源丰富。在软件方面,由于厂家提供了Stellaris外设驱动库函数,降低了编程的难度,可以快速上手工作。此外,本系统也可以推广应用到其他小型仪表或设备显示系统

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭