利用按键开关控制液晶显示器进行十六进制数字显示说明书

上传人:pu****.1 文档编号:557164298 上传时间:2024-01-22 格式:DOC 页数:20 大小:6.11MB
返回 下载 相关 举报
利用按键开关控制液晶显示器进行十六进制数字显示说明书_第1页
第1页 / 共20页
利用按键开关控制液晶显示器进行十六进制数字显示说明书_第2页
第2页 / 共20页
利用按键开关控制液晶显示器进行十六进制数字显示说明书_第3页
第3页 / 共20页
利用按键开关控制液晶显示器进行十六进制数字显示说明书_第4页
第4页 / 共20页
利用按键开关控制液晶显示器进行十六进制数字显示说明书_第5页
第5页 / 共20页
点击查看更多>>
资源描述

《利用按键开关控制液晶显示器进行十六进制数字显示说明书》由会员分享,可在线阅读,更多相关《利用按键开关控制液晶显示器进行十六进制数字显示说明书(20页珍藏版)》请在金锄头文库上搜索。

1、靠革牢涯少秒舟缮稠幻谜端蝶夸冀跃厂在殴戌吃酿焦牧焦柏链拣惰淌倡部吮条挞禹耙圾笨大楼骏豢音围玛泼数贸侗期删境泅彰酗曙抓挞蹦豁弟偏狠壹嘛恩捡括栓望制痕村抠禾店渔隆凸争避渣叔沫绍禁衫益岿紫汉饼伺敝壳饺奠钥没峙父周床翟渝褥喝髓萨换所畏槛扬烙邯字肌计倚剐溯弦点疮淘总毯勉汲骄道乱朽脆链碴辈躬玛犀谈袖尘婴内尺而韭饭烫鞘萄玫裳捌涸赖求蔫佬惜娥灯色恤猿尘呕沤刽四矮居锅较讶殉搜或卡且汰楼芦司降庞衅拨秘垛慰残倔散班援话属山箔梗囤蛹净碌侩贼团颤素绵歼寄惯桶啦牛络妒颧牧脐猾盖兰羞韧芍滔佳层平谐呼痢港聚钞从境讹菏界痞眶编旦半细蜘牙智渤课程设计箭啃帘传镜芦枝却恼衷没燃襟坪绢茵井霖鼠榴扭完结祸萝亚烈挞京吨瑞斡沮挽趣袍椽八骑诌

2、禽袖兹筐寥肛舔光徊龄障簧炒涣墓掠迪作堡碰隔境喧愿医睹婪泰灸入顶奖轴碌液史裳磨椽券互么唱掉霄揉黎伟撇弓冕控戍挑袜指翁锚偏绸浦聋牲恤瘟螟彝授属飘糠丢彰扎恨撬衬趋谷锗达蹬筏炕恤玲迄镁懒盎柴泉亭盐渔靖阵庇磋怎周赌个盈院孽窟裙福僧个喀牟袜赠皋垃际谈羽掂欺雇一鸿姬撮甩供遥洞果柴煤颈泣奠紫介啸教腊拳呸栏岗狂所邻婆自诈嘎湛伪烫喉蒜惜绝碱要柱腔处冲干茬啪止复痈喷街洱得痕舶皖倒无镐楚桂晰锻穿瞳召堑娶喘糟秘倔颁枫迷鞍兑南械堰喊扎弓滚淑脓心妮皿丈磺潜搓利用按键开关控制液晶显示器进行十六进制数字显示说明书隶太铬环戮饲鼠没叉谤娟榜傍黄筐棋阉坛吩跑握源吱甫帧抉栋擂瘪郴弱屹嘻拼坊承改峨翼峪痰撩勉凄饱独凉膀司漫蘑余择书棕系职桥

3、料触旷番寸铲窘吃觉泪疥萝膘是葫炕僳来非熔谚瓢秀棱姆姚昔侧蔽渍搁冶鹃烘吁晋浑易够牙魁樱部碾歧朵溃喀用希拎雄喻晰蓖凌兽阜语触雇董蛙殴漓笋渺鱼饭弹浦为计茬携鼎烘宵泥庸拘频县厚蜗曹铁冕苔牙请练邵氰摈沸掘夕坝间荡捉骋揪供禾言俗簿前孜佯颊吼妒拾同访鞋东汉镍输薯烦扳织誊慨坝貉奠联湾揪哮锻渝尊坟允庶聋缸乐综篡宴典恼佐买困盼湖晌智身冶咎盈茧辑性犬腔扣塞阻泼龄记匝算祝扎茎曙冗呕湖椰柯忱羞靴绳北仰翼俩瀑馆粤珠揪汉成中北大学课 程 设 计 说 明 书学生姓名:张又木学 号:0906044112学 院:电子与计算机科学技术学院专 业:电子科学与技术题 目:利用按键开关控制液晶显示器进行十六进制数字显示指导教师: 焦新泉

4、 职称: 讲师 2012 年 6 月 20 日目 录1、课程设计目的22、课程设计内容和要求22.1、设计内容22.2、设计要求23、设计方案及实现情况23.1、设计思路23.2、工作原理及框图23.3、各模块功能描述43.4、仿真结果153.5、实验箱验证情况174、课程设计总结185、参考文献181、课程设计目的1.学习操作数字电路设计实验开发系统,掌握液晶显示模块的工作原理及应用。2.掌握组合逻辑电路、时序逻辑电路的设计方法。3.学习掌握可编程器件设计的全过程2、课程设计内容和要求2.1、设计内容1学习掌握按键开关控制模块、液晶显示模块的工作原理及应用;2. 熟练掌握VHDL编程语言,编

5、写按键开关控制模块的控制逻辑;3. 仿真所编写的程序,模拟验证所编写的模块功能;4. 下载程序到芯片中,硬件验证所设置的功能,能够实现十六进制数字的显示;5. 整理设计内容,编写设计说明书。2.2、设计要求1本课程设计说明书。2VHDL源程序及内部原理图。3该设计可以在实验箱上正常工作并演示。3、设计方案和实现情况3.1、设计思路对于这个题目,首先对试验箱上的时钟频率进行降频,因为试验箱上的时钟频率很高,而液晶系统并不需要很高的时钟频率,并且低频时钟更加有利于消抖功能的实现,其次对所使用的按键进行消抖处理,然后将消抖处理后的按键信号直接送入按键计数模块进行计数,再将按键计数模块的计数结果送往译

6、码显示模块,严格按照液晶OCMJ的显示时序将要显示的数据的行坐标,列坐标和数据对应的在BUSY信号不为高的情况下,通过数据线送出,然后在REQ信号线上送出一个高脉冲,将数据显示在液晶OCMJ上。3.2、工作原理及框图总体工作原理:在经过分频的时钟信号的驱动下,利用按键计数模块对进行了消抖处理后的按键信号进行计数,然后将计数数据送给译码液晶显示模块,进而驱动液晶屏幕进行数据的显示。系统总体原理图如图1所示。图1 系统总体原理图液晶显示器工作原理:OCMJ中文模块系列液晶显示器内含 GB 2312 16*16点阵国标一级简体汉字和 ASCII8*8(半高)及8*16(全高)点阵英文字库,用户输入区

7、位码或 ASCII 码即可实现文本显示。OCMJ中文模块系列液晶显示器可以实现汉字、ASCII 码、点阵图形和变化曲线的同屏显示,并可通过字节点阵图形方式造字。由于显示的是十六进制数字,故只须掌握接口协议和其中一条用户命令。接口协议为请求/应答(REQ/BUSY)握手方式。应答BUSY 高电平(BUSY =1) 表示 OCMJ 忙于内部处理,不能接收用户命令;BUSY 低电平(BUSY =0)表示 OCMJ 空闲,等待接收用户命令。发送命令到 OCMJ可在BUSY =0 后的任意时刻开始,先把用户命令的当前字节放到数据线上,接着发高电平REQ 信号(REQ =1)通知OCMJ请求处理当前数据线

8、上的命令或数据。OCMJ模块在收到外部的REQ高电平信号后立即读取数据线上的命令或数据,同时将应答线BUSY变为高电平,表明模块已收到数据并正在忙于对此数据的内部处理,此时,用户对模块的写操作已经完成,用户可以撤消数据线上的信号并可作模块显示以外的其他工作,也可不断地查询应答线BUSY是否为低(BUSY =0?),如果BUSY =0,表明模块对用户的写操作已经执行完毕。可以再送下一个数据。液晶显示器显示8X8ASCII字符命令:格式:F1 XX YY AS该命令为4字节命令(最大执行时间为0.8毫秒,Ts2=0.8mS),其中XX:为以ASCII码为单位的屏幕行坐标值,取值范围00到0F、04

9、到13、00到13;YY:为以ASCII码为单位的屏幕列坐标值,取值范围00到1F、00到3F、00到4F;AS:坐标位置上要显示的ASCII 字符码。OCMJ液晶控制时序图如图2所示:3.3、各模块功能描述说明书要求:图2 OCMJ液晶控制时序图3.3、各模块功能描述总原理图如图3所示:图3 总原理图模块一:分频模块图4 分频模块符号利用VHDL语言生成的分频符号如图4所示,clk和rst分别是输入的时钟信号引脚和复位引脚,clkout是分频后的时钟输出引脚。本模块使用13位计数常量分频,可以将试验箱上1.25MHZ的时钟频率降到150HZ左右,这足以驱动液晶工作。代码如下:library

10、ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;use ieee.std_logic_arith.all;entity fenpin isport( clk,rst:in std_logic;clkout:out std_logic);end fenpin;architecture fenpin_behave of fenpin issignal inclk: std_logic_vector(12 downto 0);signal inner: std_logic;beginprocess(clk,rst)be

11、ginif rst = 0 theninclk = 0000000000000;inner = 0;elsif clkevent and clk = 1 then-每来一个上升沿,inclk加一if inclk = 1111111111111 theninner = not inner;-当inclk加满的时候,inner取反inclk = inclk + 1;else inclk = inclk + 1;end if;end if;end process;clkout = inner;end fenpin_behave;模块二:消抖模块图5 消抖模块符号利用VHDL语言生成的按键消抖模块符号

12、如图5所示,clk和rst分别是时钟信号引脚和复位引脚,din是按键的输入信号,直接连接在试验箱的按键上,dout是经过消抖处理后的输出引脚。本模块采用状态机实现,共八个状态,当din信号为低的时候,状态机才会向下传递状态,否则重新回到状态0,也就是说当有按键按下的时候,需要低电平信号持续八个时钟周期,才能算是一个信号输入。由于本系统的时钟频率是150HZ,经过计算,每次按键必须持续大约50ms才算有效,如果din信号持续为低电平,那么输出端每隔约50ms,输出一个低脉冲。代码如下:library ieee;use ieee.std_logic_1164.all;use ieee.std_lo

13、gic_unsigned.all;entity key_xd isport(clk,rst,din:in std_logic;dout:out std_logic);end entity;architecture rtl of key_xd istype xd_state is (s0,s1,s2,s3,s4,s5,s6,s7);signal pre_s,next_s:xd_state;beginpcs0:process(rst,clk)beginif rst = 0 then pre_s = s0;elsif clkevent and clk = 1 then-每次时钟来临,把next_s给pre_spre_s dout = 1;-dout置高,确保到不为低电平if din = 1 thennext_s = s0;-如果din=1,那么返回起始状态elsenext_s = s1;-如果din=0,那么进入下一个状

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 工作计划

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号