当前位置:首页 > 单片机 > 单片机
[导读]摘要:以宏晶公司STC12C5A60S2单片机处理器作为控制器,以矩阵键盘作为输入设备,以RS485通信接口芯片作为数据更新方式,用北京青云公司生产的LCD3202401作为显示输出设备,研究设计了相应的硬件电路与显示驱动程序,

摘要:以宏晶公司STC12C5A60S2单片机处理器作为控制器,以矩阵键盘作为输入设备,以RS485通信接口芯片作为数据更新方式,用北京青云公司生产的LCD3202401作为显示输出设备,研究设计了相应的硬件电路与显示驱动程序,在此基础上完成了人机交互系统的设计。充分利用成本低、资源少的单片机系统实现完善的人机交互功能。
关键词:人机交互;LCD;单片机

1 系统设计方案
    本系统设计按键时遇到以下情况:(1)产品外设较多,单片机I/O口比较少,设计时需要考虑节省I/O口。(2)现场情况所限,键盘与主机板要有一段距离。(3)键盘需要15个按键,同时扩展一个复位按键,共16个按键。根据以上的情况采用A/D键盘最为合适。
    考虑到系统显示既要求有图显示又有字符显示功能,因此采用单片机控制LCD,使LCD的画图、字符显示等功能最大程度地利用。
    本系统设计的效果如图1所示。



2 系统结构和原理
    人机交互系统负责数据显示及输入,通过RS485接口与主控模块进行信息交换,通过工业液晶显示主控模块传送的电量参数信息,并通过键盘输入设定系统工作模式、参数门限、通信协议。校正模拟量通道的各项电参数以及用图形直观表示一次图及电压参数的工作状态,并在出现过流过压等告警信息时发出报警声。系统能够在有限成本的条件下很好地完成此多项功能。
    显示系统由硬件和软件两部分构成,如图2和图3所示。


    硬件部分以STC12C5A60S2单片机为核心,晶振和复位电路作为系统工作的必要设备,从3×5矩阵键盘接收输入命令,同时通过RS485与主控模块进行实时通讯。其中键盘通过单片机的A/D功能直接采集电压判断来实现。
    软件部分可分为底层驱动程序和上层控制两部分。底层驱动包括设置系统时钟和系统模式,配置I/O口、初始化串口打开ADC转换功能,初始化LCD控制器、中断控制器等。上层控制程序不断查询是否有按键按下。若有按键按下,则执行相应的任务,LCD显示相应的内容;同时如果需要,通过RS485向主控模块发出控制或请求数据等信息。

3 系统硬件电路设计
3.1 键盘电路
    人机交互系统中输入控制命令,设置数值,查询电参数、历史数据、告警信息等都肯定要使用键盘。系统中设计采用的是3×5的键盘,外加一个复位按键组合成4×4格式安装,其中除了0~9这10个数字外,还有确定键“Enter”、菜单键“Menu”、上键“Up”、下键“Down”、“静音”键及复位键。在端口KEY0、KEY1、KEY2输出线上接上拉电阻,使端口能准确的置高、置低。上拉电阻的另一端则连接在一起接5 V电源。电路图如图4所示。


    图为3x5键盘设计电路,KEY0、KEY1、KEY2连接至单片机具有A/D功能的I/O口,此时就可以通过A/D扫描读取,可以根据A/D值判断有无按键按下或是那个按键按下。根据上图电阻值可以算出:无按键按下,A/D值为5 V;SW1按下,通过计算知A/D值为VCC×R1/(R1+R20)=0.16 V;SW4按下,A/D值为VCC×R1/(R1+R20+R24)=0.733 V;同理,SW7=1.559 V;SW10=2.287 V;S5=2.875 V;根据A/D采集值比较,最接近哪个键值的范围,则就是该按键。
    使用此方法需注意按键选用接触性较好的按键。按键差的使用时间一长,容易产生接触电阻,按键多容易误检测。
3.2 LCD显示电路
    系统采用北京青云公司生产的LCD3202401液晶控制器,LCD3202401使用功能强大的RA8835作为控制器。此LCD有4位显示数据线,且传输数据迅速;具有强大的作图功能;支持文本显示、图形显示以及图形和文本混合显示;具备简捷的MPU接口和功能齐全的控制指令集。单片机与LCD的接口电路 如图5所示。


    图中LCD与单片机管脚连接处加1 kΩ的限流电阻,可以有效防止单片机管脚电流过大造成LCD液晶屏损坏。由于单片机的频率为22 MHz,所以传输时肉眼看不到数据是一位一位传输的,从人类视觉的角度上看,就仿佛是全部字符或图片同时显示一样。

4 软件设计
    本谢十中,主菜单和子菜单多达30多项,且要实时同步显示,从而增大了应用层设计的难度。因此程序采用模块化结构,主要包括主菜单页面切换模块、按键扫描模块、选项管理控制模块和数据输入模块。
4.1 主菜单页面切换模块
    为按用户要求切换操作界面,定义了一个page_index映像寄存器,其值在1~P之间变化,P为操作界面的个数。本系统中P的值为9。主菜单界面,如图6所示。


    如果page_index=1,则LCD显示器上显示第1页面;一次图页面如图7所示。为最大限度地使用系统的Flash,其中的线条及方框均直接使用其绘图功能实现。


    如果page_index=2,则LCD显示器上显示第2页面。用户可按数字键控制page_index的值选择对应页面,实现人机交互。电参数页面如图8所示。


4.2 按键扫描模块
    对15个操作按键进行扫描,将结果保存在key映像寄存器中。该寄存器有个状态标志位keyState,如果其值为True,则意味着对应的按键按下;反之,则松开,程序运行时将按键读取后清除标志位。如图9为键盘模块程序流程图。


4.3 选项管理控制模块
    若当前的操作界面属于“选项界面”,由于设置的参数较多,将选项页面分为几个页面设置,按下“Up”和“Down”键或直接按数字键,可选择对应的页面。如图10为选项管理控制模块流程图。


    为了便于分析,以设置页面为例来说明。设置页面共分为5页来设置,包括系统参数设置页面、门限参数设置页面、Modbus设置页面、以太网设置页面及CAN设置页面,当从主菜单选择设置进入设置页面后,可按数字键或上下键选择页面。比如按2键进人设置页面中的门限设置,如图11所示。


    此时按回车可对数值进入输入设置,图中的2/5为当前的页面提示,2为第2页,5为总页数。
4.4 数据输入模块
    若当前的操作页面属于“置数界面”,使用数字键输入满足用户要求的任何数值,例如图11中的门限设置中的数值输入。数据输入模块的程序流程图如图12所示。


    利用上述模块,只需少量的程序代码就可以灵活地实现选项、修改数据及切换操作界面等功能。

5 结束语
    本设计采用C语言编程,所选单片机为STC12CSA60S2,尽管其程序存储器只有60kB,但却实现了30多页操作界面的显示和切换,以及数据设定和查询等人机交互功能,同时还实现了监控,控制和通信功能。

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

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 隧道灯 驱动电源
关闭