液晶数字频率计_电子系统设计报告(编辑修改稿)内容摘要:
lie,unsigned char code *word, int cs)//数字显示 { unsigned char i,j。 for(i=0。 i2。 i++) { 西安交通大学电子系统实践与设计报告 delay(1)。 send(0xBB+page+i,cs)。 send(0x40+lie,cs)。 for(j=0。 j8。 j++) senddat(word[i*8+j],cs)。 // 数组每个元素的 8 位,写在竖着的一列 8个点( dot),写完一个元素 ,y(列)自动加 1 } } 键盘控制模块的设计 在键盘控制模块中,键入信号的软件处理方法是影响系统操作性能的重要因素。 键盘的 接口及软件的任务主要包括以下几个方面: 首先,检测并判断是否有键按下;其次,对按键开关进行时延的消抖;再次,计算并确定按键的键值;最后,程序根据计算出的键值进行一系列的动作处理和执行。 在实际系统中,当需要输入参数较多,功能复杂时,需要采用行列的键盘对单片机进行输入。 本实验需要 的键盘比较简单,如下图所示,键盘接上拉电阻后与电源的高电平相连。 10KR3R e s210KR4R e s210KR5R e s210KR2R e s210KR1R e s2K E Y 0S W P BK E Y 1S W P BK E Y 2S W P BK E Y 3S W P BK E Y 4S W P BV C C 图 45 控制键 常用的键盘识别方法有:行扫描法、线反转法和利用 8279 键盘接口的中断法。 键盘识别的流程如下图。 西安交通大学电子系统实践与设计报告 图 46 键盘识别流程图 ( 1) 本实验按键比较简单,故程序设计时,将五个功能键接口定义为五个标志位。 然后再程序中设置按键函数,里面嵌套 while 循环,一直 读取 五 个功能键接 口的状态,如果各口均为高电平,则无键按下;若有低电平状态,则有键按下。 按键本身是机械开关,在闭合或断开的瞬间会出现电压抖动的现象,必须去除抖动的影响,才能正确识别被按下的键。 为简单起见,使用软件方法消抖,延时 10ms,再次读取各状态,若两次 状态相同,说明信号稳定,可以继续 进入 相应的键处理子程序中。 软件主要实现 三 个功能:键盘按键的 消抖 、查询按下的键所在的位置 、相应的处理子程序 ,键盘接口程序 如下: //按键查询口定义 sbit key0=P1^0。 sbit key1=P1^1。 sbit key2=P1^2。 sbit key3=P1^3。 sbit key4=P1^4。 //按键处理函数 void judge_key() { while(1) { if(key0==0) {delay(10)。 if(key0==0) { init_lcd()。 clear_lcd()。 // key0 功能函数 } } if(key1==0) { delay(10)。 if(key1==0) { init_lcd()。 键盘识别 是否有键按下。 去抖动 确定按键位置 结束 NO YES 西安交通大学电子系统实践与设计报告 clear_lcd()。 // key1 功能函数 } } if(key2==0) { delay(10)。 if(key2==0) { init_lcd()。 clear_lcd()。 // key2 功能函数 } } if(key3==0) { delay(10)。 if(key3==0) { init_lcd()。 clear_lcd()。 // key3 功能函数 } } if(key4==0) { delay(10)。 if(key4==0) { init_lcd()。 clear_lcd()。 // key4 功能函数 } } } } ( 2)本系统的设计中,功能按键模块放在设计最后,主要目的是考虑到 可以通过该模块,将 测頻模块 和显示模块联系在一起。 而且整个系统的功能最终都是要通过按键注意选择来显示出来的。 系统功能设计: :按键显示频率值及其单位; 2. key1:按键操作改变显示字符大小; 3 .key2:按键切换到测脉宽状态; :按键复位,重新进行初始化 :按键退出测频和测脉宽 系统初始化完毕后会自动进入按键查询,标致状态为屏幕中央的“请按键„„” Key0 处理子程序: working=1。 工作状态标志位,由此来控制循环的进行及部分液晶显示内容 displaywork()。 液晶显示子函数,会在第一行滚屏显示“ working„„” manage1616()。 频率值显示子函数,会在屏幕中央显示被测的频率值及单位 Key1 处理子程序: working=1。 工作状态标志位,由此来控制循环的进行及部分液晶显示内容 displaywork()。 液晶显示子函数,会在第一行滚屏显示“ working„„” manage2424()。 大字符显示子函数,会在屏幕中央显示放大的被测频率值及单位 西安交通大学电子系统实践与设计报告 Key2 处理子 程序: working=1。 工作状态标志位,由此来控制循环的进行及部分液晶显示内容 displaywork()。 液晶显示子函数,会在第一行滚屏显示“ working„„” maikuan()。 脉宽值显示子函数,会在屏幕中央显示被测的脉宽值及单位 Key3 处理子程序: displayfuwei()。 液晶显示子函数,在屏幕中央 显示“ 正在复位 „„” fuwei=1。 复位状态标致位,由该状态来决定外循环是否执行 goto 语句,从而 跳到程序开头重新进行初始化 break。 跳出内循环,迫使程序在外循环中进行“ fuwei”状态位判断 Key4 处理子程序: working=0。 工作状态标志位,由此来控制循环的进行及部分液晶显示内容 displayend()。 液晶显示子函数,在屏幕中央 显示“ 谢谢使用 ” break。 跳出内循环,在此执行外循环 说明按键需要的时间 五、 系统整体功能 和操作过程 说明 整体功能说明 主要功能由按键实现,已在上一部分中进行了说明。 系统 程序采取标准的结构化设计,在 main 函数中实现对各个子函数的调用。 在定时器和 PLD 初始化后,随着计时的开始将直接由计数器和 PLD 进行测频, 1 秒时间间隔到,则测频结束,程序自动算出频率之后保存在定义好的变量中,供显示频率的函数调用。 也就是说当进入按键功能选择时测頻过程已经完成。 Key0、 Key Key2 只是调用函数显示不同的内容而已。 Key3 按下后程序由 break 语句跳出按键扫描程序而重新进行 定时器和 PLD 初始化,即重新开始频率测量。 Key4 按下后将由 goto语句直接跳到 main 函数刚进去的地方,完全从头重 新执行程序。 程序段 先进行变量定义 ,然后是液晶显示数据段,接下来是各种函数以及函数的相互组合调用,最后进入 main 函数实现整个系统的逻辑功能 系统整体 运行逻辑框图如下: 西安交通大学电子系统实践与设计报告 Y N Y N Y N Y N N fuwei=1 Y Y N 图 51 系统整体运行逻辑框图 系统操作过程说明 上电之后液晶屏刷新一次,然后显示初始化面,保持 3 秒后,屏幕中央开始 液晶显示初始化 清屏显示标题,清屏显示初始化面 初始化 PLD;初始化定时器计数器开始测量 T1 定时 T0 计数 直接计数法测频 等精度法测頻 按键扫描 Key0? Key1? Key2? Key3? Key4? 显示频率 放大字符 显示脉宽 频率 脉宽 清屏、初始化面 fuwei=1 ? 西安交通大学电子系统实践与设计报告 显示“请按键„„”提示,表示系统初始化、测頻已完成,程序已进入按键扫描函数,此时按键有效。 注意按键有防抖动功能,故按键不能太快,当按键后看到有清屏现象时表示按键有效。 Key0、 Key Key2 各键按下时,屏幕第一行均有滚动显示的“ working”状态提示。 信号测量范围 20Hz9999Hz,当算出频率大于此范围时, Key0、 Key1 按下均会显示“超出范围”提示,当小于此范围时,Key0、 Key1 按下均会显示“ NO SIGNAL!”提示 .Key3 按下时,頻幕显示“正在复位”提示,然后系统从头开始。 Key4 按下时,頻幕显示“谢谢使用”提示,然后系统重新初始化。 具体流程见 图 51 系统整体运行逻辑框图 六 、 电路图 和 PLD 图 西安交通大学电子系统实践与设计报告 七 、 实验调试 、误差分析 、参数确定 系统调试 方案的具体设计是分成三个模块的,故调试也是分成三个独立模块,这样的好处是,每次调试的时候程序都比较短,没有很复杂的逻辑在里面容易调试通过和查处错误。 调试顺序:频率测试模块、液晶显示模块、功能键 模块,最后进行系统整体功能完整调试。 ( 1) 频率测试模块: 直接计数测频的调试:程序用 printf 语句 作为输出,直接将方波信号接到T0 引脚上,程序为循环测试,进入 debug 状态后,调节信号发生器的输出频率,观察不断刷新的窗口显示,通过输入输出对比,检查频率测量的正常与否。 等精度测频调试: 由于电路板发下的时间较迟,故该模块的调试可在学习机上完成,。 ( 2) 液晶显示模块调试: 该模块是在电路板焊好后子环节在自己的电路板上调试的,因为接线较多( 20 个引脚)在学习机上调试不太方便。 在电路板上调 试,不仅不用接线,还西安交通大学电子系统实践与设计报告 可以检查自己电路板的焊接是否存在问题。 液晶显示模块原理比较陌生和难以理解,故可显示最简单的字符来检查整个模块的控制以及自己的程序设计是否有问题。 等液晶显示模块可以正常显示了,再添加内容,比如汉字显示,字符大小调整、显示位置的调整等进行调试验证,以完善程序和加深理解、整个模块的调试还包括对自摸提取软件的熟悉使用。 ( 3) 功能键模块调试: 该模块的调试有两个作用:按键功能的程序实现、通过功能键将前两个程序模块连接在一起。 按键功能调试时不需要有太复杂的子函数,可简单的添加不同的 printf语 句。 等上述调试完成后,开始逐个添加功能键子程序进行调试。 然后对信号经过 PLD传输到单片机的接口电路进行调试。 最后整机进行调试,基本功能实现后可逐步修改显示及按键是整个系统功能完善,显示合理美观。 误差分析 ( 1) 方案一的误差分析 在测量中,误差分析计算是不可少的。 理论上讲不管对什么物理量的测量,不管用什么样的测量方法,只要进行测量,就可能存在误差。 误差分析的目的就是要找出引起误差的主要愿意,从而有针对地采取有效措施,减小测量误差,提高测量的精确度。 在实际调试过程中,方案一测的频率总是误差很大,经过检 查,将单片机晶振当作 12MHz 会产生时间闸门的扩大,从而导致测频数据变大。 经过调整将 1秒的时间闸门换算成 下,从而TH1=(6553610000*)/256=(655369216)/256。 TH0=(655369216)%256。 经调整后误差明显下降,但还是存在稳定的接近 1%的误差。 方案一的固有误差分析如下: TTNNffxx 方案一的误差由 计数器计数脉冲相对误差和标准时间相对误差两部分组成。 因此,对这两种相对误差可以分别加以讨论,然后相加得到总的频率测量相对误西安交通大学电子系统实践与设计报告 差。 1 误差 在测频时,主门的开启。液晶数字频率计_电子系统设计报告(编辑修改稿)
相关推荐
功能和范围更加的宽广,不仅要支撑本地区高新产业的发展,而且更加侧重区域自主创新能力提升。 这些平台包括:研发和试验协作平台、行业公共技术平台、检验检测服务平台、科技创新投融资平台、科技文献信息平台、科技成果转移平台,均为深圳承接国际技术转移的服务机构。 EuroTat 本土生产商 1 设计 平衡机构 欧洲 中国 组装 研发 本土生产商 2 本土生产商 3 外商独资企业 15 图
21 粘土 19 22 粘土 19 31 粉砂夹粉土、粘土 粉砂 18 粉土 18 粉土 19 32 粉细砂 19 32a 粘土 8 33 粉细砂 19 34 中粗砂夹砾 砂 17 注: 表中 ③ 2 层统计数值分母为粘性土的数据;分子为粉土的数据; 表中④ 1 层统计数值分子为粉砂的数据;分母为粉土的数据; 表中④ 2 层统计数值分子为粉砂的数据;分母为粉土的数据; 标准贯入试验统计表 表
每公顷劳力需要量 整地 造林 抚育 合计 侧柏 4440 12 90 55 60 214 :油松刺槐水土保持林 、半阳向陡坡上位 地形:海拔 900980米,峁梁地带 土壤:多黄绵土,干旱瘠薄, PH值中性或偏碱性,质地壤土。 植被:刺槐、酸枣、黄蔷薇、铁杆蒿、茭蒿、艾蒿、山杏、白羊草、劲草、车前。 : 图 : ( 1)整地:一般采用反坡梯田整地。 油松、刺槐 宽 X 深为 100cmX60cm
扬机构带载作变速运动(起动或制动)时,作用在机构上的载荷除静力外,还有作加速运动(或减速运动)质量产生的动载荷。 ( 1)、 起升起动过程 卷扬机构带载提升时,载荷从静止状态加速到稳定运动速度 v 的瞬时过程称为起升起动过程。 此时,悬挂载荷的钢丝绳拉力(图 )为: QgS P P 式中 QP — 起升载荷; gP — 由加速运动质量产生的惯性力。 在起升起动时,惯性力方向与起升载荷方向相同
下行 mm GFF )(1 保压延时 gFF2 1200 快速上行 ma GFF )(3 液压系统主要参数计算 初选系统工作压力 此液压系统工作载荷较大,根据机械常用的系统压力知液压机的常用工作压力为20— 30Mpa。 考虑到此设备无需移动、尺寸方面没有限制,考虑到压力太高对泵、缸、阀等元件的材质、密封、知道精度要求太高,为降低成本,选择较低压力,取P=20Mpa。 [10]
王 鹏 杜春英 毛丽燕 高 鹤 满足用户和适用法规要求的压缩天然气销售和相关服务,本站通过对体系的有效应用以及对体系的持续改进过程,保证向用户提供既符合顾客又适用燃气法规的要求的产品,从而创造性的达到顾客满意,受到了广大用户的欢迎。 3 组织机构及职责 应急组织体系 应 急组织体系 见下图 阳谷南外环丰源加气站 安全生产 事故 应急预案 指挥机构及职责 应急救援组织机构