• 易迪拓培训,专注于微波、射频、天线设计工程师的培养
首页 > 电子设计 > PCB设计 > PCB设计 > 基于P89C51键盘显示控制面板的设计(08-100)

基于P89C51键盘显示控制面板的设计(08-100)

录入:edatop.com    点击:

  引言

  随着人机系统的不断发展,对作为人机界面的控制面板设计的要求越来越高。控制面板需要经久耐用、手感良好的键盘,需要指示按键操作及系统工作状态的指示灯和显示器,同时要具有对错误操作或系统出现故障时能发出声光告警指示的功能。NXP半导体公司推出的P89C51Rx2xx系列微处理器是80C51微处理器的派生器件。具有可达1K字节的片上RAM及64K字节的片上FLASH。能够最大限度地简化电路设计,是一款功能强大的微处理器。具有商用级、工业级两个级别的产品,能够较好的满足控制面板设计需求。

  P89C51性能特点

  P89C51Rx2xx系列处理器是80C51微控制器的派生器件,是采用先进CMOS 工艺制造的8位微控制器,指令系统与80C51 完全相同。具有片内8~64K并行可编程的非易失性FLASH程序存储器,并可实现对器件串行在系统编程(ISP)和在应用中编程(IAP)。

  该系列处理器可工作在6时钟或12时钟模式,可通过时钟控制寄存器CKCON 中的X2位来选择。该处理器有4组8位I/O口、3个16位定时/计数器、多中断源、1个增强型UART、片内振荡器及时序电路。这些特性使得P89C51Rx2xx 成为功能更强大的微控制器,更好地支持应用于脉宽调制、高速I/O、工业控制等场合。P89C51Rx2xx系列处理器有以下特点:

  * 80C51中央处理单元;

  * 具有ISP和IAP功能的片内FLASH程序存储器;

  * 片内Boot ROM包含底层FLASH编程子程序,以实现通过UART下载 程序,可实现最终用户应用中编程(IAP);

  * 可选择6时钟/12时钟工作模式,采用6时钟周期时工作频率可高达20MHz (相当于40MHz),采用12时钟周期时工作频率可达33MHz;

  * 外部RAM可扩展到64K字节;

  * 两个UART口,其中一个为全双工增强型UART。

  控制面板电路设计

  控制面板电路主要由微处理器、键盘扫描电路、显示器、键盘背景灯驱动电路、蜂鸣器驱动电路、电源变换电路、状态指示灯及RS-232串口电平变换等组成,所有元器件都选用工业级产品,以满足工业环境条件要求。控制面板通过电源电缆和串口电缆与主机相连。控制面板原理框图如图1所示。

 

  图1 控制面板原理框图

  微处理器为P89C51RD2FA,片内1K字节的RAM及64K字节的FLASH。片内的RAM及FLASH能够满足系统程序要求,因此不再扩展外部RAM和外部FLASH。

[p]

  键盘扫描电路主要由16个微触开关组成4×4键盘。微触开关使用寿命可达10万次,比薄膜键盘使用寿命长,手感好。主要由P89C51的P1口8个I/O引脚分成4根行扫描和4根列扫描,每根信号线现均有上拉电阻及去耦电容。其电路如图2所示。

 

  图2 键盘扫描电路

  显示器采用OLED(有机电致发光)显示器。OLED显示器有以下特点:工作温度范围宽(温度范围-40°C ~80°C),功耗低;重量轻、厚度小、抗震能力强;主动发光(自发光),无视角问题;高亮度,高发光效率;响应速度快,动态画面质量高等。可通过P89C51数据总线直接对其进行读写操作。其供电为直流负9V,使用MAXIM公司的MAX1677电源管理芯片将3.3V变换成负9V为其供电,电源变换电路如图3所示。

[p]

 

  图3 电源变换电路

  键盘背景灯驱动电路主要由MAXIM公司的MAX1848白色发光管驱动芯片来驱动6个白色发光二极管。主要用来提供按键盘背景光,方便在黑暗环境下能够准确进行键盘操作。键盘背景灯驱动电路如图4所示。


  图4 键盘背景灯驱动电路

[p]

  状态指示灯主要是将控制面板和主机通信状态、主机的工作状态、主机有无故障等进行指示;RS-232串口电平变换是将处理器TTL电平转换成RS-232电平,满足与主机实现远距离通信要求;蜂鸣器驱动电路是将处理器输出的告警提示经过放大后直接驱动蜂鸣器。

  控制面板软件设计

  控制面板程序主要由4个功能模块组成:键盘扫描模块,OLED显示模块,状态指示模块,串口数据收发模块。

  * 键盘扫描模块主要完成4×4键盘的扫描及按键去抖动,并将按键信息通过串口告诉主机,主机将相应的操作结果通过串口告诉控制面板微处理器(P89C51),微处理器通过OLED显示器及状态指示灯将操作结果告知操作用户,如有故障还将点亮故障指示灯,并驱动蜂鸣器提示故障告警。

  * OLED显示模块主要完成开机画显示及操作过程中的画面显示。

  * 状态指示模块主要将控制面板与主机的通信状态及用户的操着结果通过控制面板上的状态指示灯来指示。

  * 串口数据收发模块主要完成控制面板与主机之间的数据通信,控制面板微处理器将用户的按键信息通过串口告诉主机,主机将操作结果通过串口告诉微处理器。

  控制面板上电后首先进行系统及CPU初始化,主要包括键盘背光灯和一些状态标志位的参数设置,如工作模式,串口波特率,定时器初值等。然后进行OLED显示器的初始化,如显示起始位置,显示对比度及显示刷新频率等设置,并将开机画面内容设置为系统默认画面及待机画面。实时判断串口控制寄存器SCON中的TI和RI位,将键盘扫描信息发送给主机,并将主机发来数据送给OLED显示模块和状态指示模块。程序每2S检测一次与主机联络情况,如果与主机联络失败,则显示通信故障。控制面板主程序流程图如图5所示。

 

  图5 主程序流程图

  结语

  基于P89C51键盘显示控制面板设计简洁,通用性强,非常适合自动控制领域。本单位研制的基于P89C51键盘显示控制面板具有体积小、重量轻、显示清晰、功能齐全、操作方便等特点。产品运用于多个车载通信系统中,取得了较好的通信效果。

射频工程师养成培训教程套装,助您快速成为一名优秀射频工程师...

天线设计工程师培训课程套装,资深专家授课,让天线设计不再难...

上一篇:基于CPLD的级联型多电平变频器脉冲发生器的设计
下一篇:高可靠FPGA通信系统

射频和天线工程师培训课程详情>>

  网站地图