网站首页 > 界面表现> 文章内容

以C8051F020单片机为控制核心的人机交互系统设计

※发布时间:2019-2-26 6:48:15   ※发布作者:habao   ※出自何处: 

  在现代各类仪器的开发中,人机交互功能正起着无可替代的作用。人机交互界面友好的仪器将更容易操作和使用,从而提高工作效率。液晶显示器(LCD)具有功耗低、价格低、寿命长、接口控制方便等特点,在科研与设计领域正发挥着越来越大的作用。FPGA 作为外设的接口芯片,可以大大简化接口电,通过对FPGA 进行编程,可以实现常用的译码、地址选通等功能。

  本文以C8051F020 单片机与FPGA 互连系统为控制核心,以液晶显示控制器T6963C 为例,结合行扫描键盘,简述了一种人机交互功能的设计。

  FPGA 可在很大程度上扩展单片机的资源,然而人机交互功能仍应尽量减少对单片机及FPGA 的资源消耗, 以便将更多的片内资源用于其他功能的扩展。采用FPGA 扫描键盘可以节省单片机的资源, 同时也能灵活地实现键盘的扩展。而考虑到液晶控制较复杂, 依然采用单片机控制LCD,使LCD 的各种功能得到最大程度的利用,其系统框图如图1 所示。

  这里采用单片机C8051F020 与CycloneⅡ FPGA 互连的系统。C8051F020 器件是完全集成的混合信号系统级MCU芯片,具有64 个数字I/O 引脚,与8051 完全兼容,而且速度得到了极大提高,70%的指令执行时间为1 或2 个系统时钟周期,只有4 条指令的执行时间大于4 个系统时钟周期。此外,C8051F020 系列MCU 对CIP-51 内核和外设有几项关键性的改进,提高了整体性能,更易于在最终应用中使用。如提供22 个中断源、7 个复位源、可编程交叉开关、8 位A/D 转换器、12 位D/A 转换器等。

  CycloneⅡ系列FPGA 将低功耗FPGA 的密度规模扩展至68 416 个逻辑单元,并提供高达622 个可用的I/O 接口以及高达1.1 Mb 的片内存储单元[3]。CycloneⅡ系列成功实现了高效与低功耗的结合,可用于自动化、通信、视频播放等领域。为兼顾成本问题, 本系统采用性价比较高的EP2C8 型FPGA 作为接口器件。

  为使单片机的资源可以得到最大的开发,将单片机的高端口,即P4~P7 接入FPGA,并通过FPGA 对外部设备进行访问。在FPGA 中通过VerilogHDL 语言编程实现了3-8 译码器,从而实现了对单片机地址总线 译码器对LCD 以及键盘的键值读取提供使能信号,如图2 所示。

  T6963C 液晶显示控制器多用于小规模的液晶显示器件,常被装配在图形液晶显示模块上,以内藏控制器型图形液晶显示模块的形式出现。

  单片机对T6963C 有2 种访问方式: 直接访问与间接访问。直接访问利用三总线以I/O 设备访问形式进行控制;间接访问则由单片机提供并行接口,以程序控制时序的方式进行控制。为简化程序,这里采用直接访问方式。

  该LCM 的FS1 引脚用于控制显示字符的字体。FS1 为高时,LCD 显示6×8 字符;FS1 为低时,LCD 显示8×8 字符。经实践,在显示英文与数字时,6×8 字符更为美观;在显示中文字符时,8×8 字符更为方便。一般系统采用将FS1 接地或接高的方式来固定字体,而本系统采用P2.1 对FS 进行控制,通过改变地址实现改变字体的功能,使得界面的显示更灵活。

  键盘是常用的单片机输入设备,分为编码键盘和非编码键盘。键盘上闭合键的识别由专用硬件译码器实现,并产生键编号或键值的称为编码键盘;靠软件识别的称为非编码键盘。在单片机组成的测控系统及智能化仪器中使用最多的编码键盘,本系统设计在FPGA 中编程实现3×6 键盘的行扫描。

  由于按键的机械特性,在闭合和断开的瞬间会伴随着一连串的抖动,键抖动会引起一次按键被误读多次,所以必须进行去抖处理,常用的方法为延时去抖动。FPGA 产生键值之后向单片机发送中断,并等待单片机读取键值。由于人脑反应时间相对较长, 键盘中断可以处于相对较低的优先级,因此本文将键盘中断接于外部中断7。

  软件设计遵循结构化和层次化的设计原则。底层函数直接与硬件沟通,而上层函数直接通过调用底层函数来实现相应功能,从而使上层函数与硬件彻底分开。当硬件发生变化时,仅修改底层函数便能实现程序的移植。

  本模块的底层函数需要实现写控制字、写参数、查忙等功能。由于采用直接访问,写控制字与写参数的函数只需向控制口或数据口的地址送数即可。由于LCD 是慢速器件,因此在每次写控制字及写参数之前都需要进行查忙。T6963C的状态字共有7 位有效的状态位,如表1 所示。其中STA1~STA3 最为常用,一般情况下可以不需要对STA5~STA7 进行查忙的程序。

  T6963C 的最大特点是具有独特的硬件初始值设置功能,显示驱动所需的参数如占空比系数。驱动传输的字节数/行及字符的字体选择等均由引脚电平设置, 这样T6963C 的初始化在上电时就已经基本设置完成,软件操作的重心就可以全部用于显示画面的设计上。因此,初始化时仅需根据实际情况设置文本区域和图形区域的首地址和宽度, 以及CGRAM偏置地址、合成方式、光标形状等即可正常使用。

  由于英文及数字等常用字符的字模已经固化在CGROM中,因此进行英文的显示时,只需指定显示的地址,再输入该字符对应的标号即可。汉字的显示与英文的显示类似。然而出于其复杂性,一个汉字需要使用4 组点阵才能完整显示。在初始化后将汉字的4 部分字模顺序输入CGRAM 中, 在使用时仅需计算好每一部分的显示地址即可对汉字进行完美显示。

  对于一串英文字符的输入, 可以利用字符串的特性进行操作。通过检测‘\0’字符来判断英文字符串的结尾,从而避免了在调用此显示函数时人工计算句子长度的工作。英文字符的ASCII码值与其在CGROM 中对应的标号恰相差0x20,因此仅需简单的减法即可实现标号的转换。此外,在进行英文的连续显示时,使用了T6963C 的数据自动写指令,从而提高了显示效率。

  对于一串中文的显示,则仅需通过循环调用单个中文的显示程序进行实现。注意由于C51 语言中字符串无法支持中文,因此必须人工计算中文字串的长度并将其作为函数传递给此显示函数。

  字符发生器CGRAM 中总共可存储32 个汉字,对于需显示较多汉字的应用, 可从需显示的汉字中选出16 个最常用的汉字,固定存放于CGRAM 中,其余汉字仅在需要使用时动态写入CGRAM。这样, 既提高了显示效率, 又解决了CGRAM 过小的问题。

  除使用文本显示汉字外,还可采用图形显示的方式。具体方式是将字模以数组的方式保存于单片机的代码段,在需要显示时将数据送入图形区即可。此外,利用图形显示,还可以编写描点程序显示相应波形或者编写绘图程序绘制简易表格,使系统显示结果更加直观,便于分析。

  T6963C 可以设置文本属性区,并对文本实现反白、正向闪烁、反向闪烁等特效。使用时仅需将图形显示设置为文本属性区即可。此时图形区的内容将无法显示,若图形区与文本属性区划分在CGRAM 的不同区域,则图形区的内容可以得到保存。利用文本特效,可通过反白或闪烁等效果可选选项以及当前选项,从而使界面更易于操作。

  除基本的10 个数字键以外,还设定了上、下、左、右、确定、取消等按键。此外,按键的设计,更符合人们的按键习惯。在界面中采用分级的菜单, 在一级菜单中选定功能之后将进入下一级菜单对功能进行更详细的设定。在人机交互界面中可以使用方向键进行功能的选择,数字键仅用于数据的输入。

  界面充分利用了文本特效,对选项采用反向显示表示该选项已选定;对选项采用反向闪烁表示用户可通过方向键改变选项。在需要进行数字输入的界面中打开光标,即可向用户标示数字输入的地方。此外,必要的和出错界面的设计将为用户提供更多信息,使人机交互界面更为友好。

  本系统采用键盘+LCD 的输入输出设备, 并且可以通过FPGA 实现各种其他外设的接口电的设计, 减少了对单片机资源的占用,使得设计灵活、方便。同时FPGA 还可以为单片机提供存储器和I/O 口等资源。本文设计的电可扩展性强, 在此基础上可将其扩展成各种拥有友好界面的系统,如可控增益放大器、音频信号分析仪、集成运放分析仪等。经实践,该系统稳定易用,实用性强。

  上位机控制软件中主要包括:电子名片管理模块,可以完成联系人基本信息和电话号码的管理(包括增删改查等功...

  FPGA 即现场可编程门阵列, 它是作为专用集成电(ASIC) 领域中的一种半定制电, 既解决了...

  在以上汇编程序中,延时子程序每一行的具体含义先不管他,以后慢慢学到,的程序需要在一个名为“Kei...

  SPCE061A是凌阳公司生产的性价比很高的一款十六位单片机,使用它可以非常方便的实现控制和语音...

  在传感技术领域,不管是高端灵敏度、高精度的超声传感器,或者是低端、低成本的开关式传感器,这些工作LD...

  电源是整个系统的动力源,对于整个系统运行过程处于至关重要的作用,系统中不同模块对供电需求也各不相同。...

  对于一个完整的电子设计来讲,首要问题就是为整个系统提供电源供电模块,电源模块的稳定可靠是系统平稳运行...

  C8051F120芯片上本身自带了A/D转换器,但只有12位,不适合该系统的需求,故在片外另加一片A...

  对MODEM的性能要求为:有电话号码参数存储器;有自动拨号功能、自动应答功能;可进行速度缓冲和流量控...

  该模块的主要功能是接收和处理数据,由单片机控制无线模块接收数据,同时控制USB模块将数据发送到PC机...

  机械手的工作方式分为手动或自动状态。手动由本工作站的控制按钮控制,自动采用串行通信接收上位机命令,并...

  在用单片机制作的变送器类和控制器类的仪表中,需要输出1—5V或4—20mA的直流信号的时候,通常采用...

  这样还不够,单片机工作还需要两个条件,一是需要加上一定的工作电压,AT89S51工作电压为5V,第2...

  最初从单片机学习整个计算机系统是个非常正常的阶梯学习方法。因为直到今天,计算机系统的那些事,也没逃离...

  整个系统主要由主控中心(单片机)、温度传感器DS18B20、数码管显示及开关控制等功能模块组成。可以...

  现代自动化控制设备都存在一个电子与电气电的互相联结问题,一方面要使电子电的控制信号能够控制电气电...

  本设计中的单片机C8051F060可控制扫频信号源, 以产生一系列不同频率的正弦信号, 然后将这些信...

  通常时钟脉冲可取自以下途径:单片机XTAL端、ALE端、脉冲源。其中取自XTAL端时,经分频电...

  可供选择的主控芯片比较多,如使用面最广的MCS-5l系列、资源丰富的ARM7TDMI-S系列微控制器...

  电机驱动系统要求大功率的电源供应:低内阻、大电流、对电源的纹波不;单片机和图像采集系统对电源质量...

  诱发设备出现故障的原因很多, 为设备正常运行需要检测多方面的数据, 本系统主要是检测设备的温度和...

  该设计可用3.3V电压供电,故采用ASM1117-3.3电源供电系统,如图3所示。无线发送模块和ST...

  该系统以单片机MSP430F149 为核心,以温度、烟雾浓度作为判断火灾的依据,完成了对火灾的预...

  经纬型灯控制器,采用单片机技术,模拟日照规律,天黑能自动开灯,天亮能自动关灯。它具有光控开关自动变...

  AC LED驱动电,采用以双向可控硅为核心器件的触发电,由单片机输出信号经D/A转换后,通过运算...

  通过控制MC33886 的四根输入线可以方便地实现电机正转、反转、能耗制动及反接制动。图3为经过简化...

  本设计的简单有趣的LED 摇摇棒,它是基于单片机控制的电子装置。具有按键进行画面切换和消除重影等功能...

  首先要清楚你要做一个什么样的产品,这个产品包含哪些功能,要采集哪些信号?要控制哪些设备?要走哪些通讯...

  在单片机系统中,系统上电启动的时候复位一次,当按键按下的时候系统再次复位,如果后再按下,系统还会...

  复位电是一种用来使电恢复到起始状态的电设备,它的操作原理与计算器有着异曲同工之妙,只是启动原理...

  复位电的原理是单片机RST引脚接收到2US以上的电平信号,只要电容的充放电时间大于2US,即可...

  语音提示是系统的重要组成部分,能为用户提供直观的反馈信息,引导用户更好地进行系统的操作。语音芯片能将...

  章泽天高考成绩

相关阅读
  • 没有资料
重庆学习网zslpsh,0755深圳房产人才招聘网,拾年网90后,anedc股票,最新电影下载淘娱淘乐,重庆中学生网高考,重庆中学生网高考,学习重庆方言网,重庆中学生学习方法,重庆俗语网,中学生网zslpsh,0755深圳交友网,重庆初中生,贵州重庆方言网,025新闻网,西南重庆方言歌曲,025南京交友网,重庆农家乐美女,观赏蟹种类zadull,云南重庆方言网,重庆中学学习网,028成都交友网,推广taoyutaol,西南四川方言网,观赏龟论坛zadull,四川重庆方言网,022天津交友网,重庆中学生网家长,鹦鹉鱼zadull,重庆俗语,电影淘娱淘乐,taoyutaole娱乐,华夏视讯网,0755深圳旅游招聘,昆明重庆方言网,淘娱淘乐影视,www.00game.net,观赏鱼zadul,重庆高考zslpsh,重庆中学生网高考,027房产招聘网,坝坝舞wagcw,西南重庆方言网,贵州重庆方言网,重庆言子儿网,热带鱼zadull,重庆高考zslpsh,0755深圳旅游招聘网,淘娱淘乐影视网,0571.361.cm,重庆方言学习网,028成都新闻,异形观赏鱼种类,影视网淘娱淘乐,最新电影下载淘娱淘乐,0773桂林论坛,拾年网80后动画片,观赏蟹论坛zadull,观赏龟繁殖教程,重庆一中zslpsh,重庆俗语网,广场舞wagcw,观赏虾的种类zadull,观赏鱼观赏虾观赏龟,西南方言网,观赏鱼之家论坛zadull,战争前线辅助00game,西南重庆方言小说,重庆中小学zslpsh,推广taoyutaol,战争前线论坛00game,0871交友网,025南京新闻网,重庆言子儿网站,娱乐taoyutaole,022天津交友网,025新闻网,重庆中学生网学习,022天津交友网,重庆方言歌网,www.120.cm健康网,anedc股票,重庆初中生