在日益发展的电子技术和各行业对系统安全需求不断提高的刺激下,原有基于X86系统架构机车监控显示系统逐渐暴露出越来越多的缺陷,研制新型的机车监控显示系统成为一种必然的趋势,而不断发展的MCU技术、嵌入式Linux、制造工艺等也给新型机车监控显示系统的研制提供了技术保障。 本课题针对目前铁路运营对安全、快速、准点等特性要求的不断提高,研究基于ARM的机车监控显示系统,设计出具有高可靠性、高效能、可维护性强的机车监控显示系统。 本文首先分析了嵌入式技术发展现状及其发展趋势,对ARM技术的特点及其在嵌入式领域的应用进行了深入研究;进而,分析了国内现有基于PC/104总线模式扩展的机车监控显示系统的优缺点以及国外先进机车监控显示系统的发展现状及技术特点。对如何有效提高系统的可靠性、可操作性进行了深入的研究,提出了利用ARM处理器与嵌入式操作系统Linux实现高可靠性机车监控显示系统的思路,并在此思路指导下完成了基本研究和具体设计。 在完成样机试制后,结合铁路产品的高可靠性要求,本文最后对影响系统可靠性的若干性能指标进行了测试:高低温测试、静电放电测试、EMC测试、绝缘耐压测试、振动测试等,并对设计过程中一些欠考虑的因素提出了解决方案。实际测试表明,基于ARM技术的机车监控显示系统满足我国铁路未来若干年监控安全的需要。
上传时间: 2013-04-24
上传用户:lanwei
随着国有银行向商业银行的转变,银行的设备采购标准会越来越高,与此同时,银行柜台业务量的增加,使得老一代的银行专用打印机无论在速度上还是在使用的方便性上都显得力不从心,为了占领市场,公司有必要开发新型的、使用更加方便的打印机。 老一代打印机在打印存折时,柜台工作人员要把存折放准位置,要不然打印会偏离预定位置,在打印信函时,有的冷僻字无法打印出来,软件无法下载升级。为了加快柜台处理速度,减小柜台工作人员的工作量,需要开发能自动纠偏定位,字符完善的打印机。 本文在分析需求的基础上,比较当前流行的处理器,选用Atmel公司的ARM芯片AT91M42800A作为处理核心,使用Xilin公司的20万门的FPGA XC2S200做硬件逻辑控制,通过光电传感器和相关的控制电路来实现自动纠偏定位。在嵌入式操作系统上选用Nucleus Plus,约95%的Nucleus Plus代码用C语言编写,因此它能很方便移植,同时它还提供全部源代码,这样便于开发。另外,它还只要一次性付费,这使得它有很好的成本优势。 文中详细说明了本系统的硬件、固件的实现。在硬件上阐述了一些单元电路,包括存储器电路,接口电路,传感器电路等的设计思路和实现方法。通过光电传感电路,步进电机控制和软件结合,形成闭环控制,从而实现了快速自动纠偏定位;通过大屏幕的LCD显示实现了操作界面的简单化;采用大容量的存储器以及大字库解决了冷僻字无法打印的问题;固件部分详细阐述了系统上电启动过程,包括Bootstrap模块和loader模块,Bootstrap模块主要功能是重定位存储器,初始化基本硬件以及Loader模块的自动在线下载升级。Loader模块的主要功能是下载FPGA的配置代码,初始化键盘和显示器,然后调用Nucleus Plus初始化代码,从而建立和调用任务。 本文通过总结测试结果,与老一代打印机相比,新打印机在智能化上实现了自动纠偏定位,使得打印机操作人员不需要准确放置存折,就能正确打印,提高了工作效率;在打印速度上比原系统提高30%,还可方便地实现软件升级。 当然,新的打印机在存折偏移很大时,要耗费长时间才能把存折推到正确位置。这要在纠偏算法上做进一步的改进。
上传时间: 2013-04-24
上传用户:feichengweoayauya
I/O并行口直接驱动LED显示1. 实验任务 如图13所示,利用AT89S51单片机的P0端口的P0.0-P0.7连接到一个共阴数码管的a-h的笔段上,数码管的公共端接地。在数码
上传时间: 2013-06-15
上传用户:kytqcool
在当前的数字信息技术和网络技术高速发展的后PC时代,嵌入式系统技术已经广泛地渗透到人们生活的各个方面。由于嵌入式系统的交互性比较强,液晶屏做为输出设备对汉字显示又尤为重要,但很多关于嵌入式系统开发、应用的教材中,对于液晶屏的程序设计也只是初始化和测试的编程,没有进一步的应用开发。所以选择了该毕业设计题目,以完善液晶屏的汉字显示功能。 在选定了毕业设计题目之后,随着开发研究的不断深入,主要完成了以下工作: 首先,对三种常用的嵌入式操作系统进行了分析比较,对项目开发是否选用操作系统提出了自己的见解,结合本次毕业设计的实际应用,选择了不使用操作系统而是利用Bootloader引导的方法。 其次,选定硬件开发系统后,把单片机的传统调试方法与ARM的边界扫描技术进行了分析比较,并在实际应用开发中采用了边界扫描技术。 再次,由于在C语言程序运行前需要加入一些必要的初始化代码,于是又完成了对44binit.s初始化程序的分析与设计。 最后,在编写汉字显示程序时,采用了读取字库法显示汉字方案和读取字模数据输出汉字方案分别实现了液晶屏的汉字显示,并取得了良好的效果。 本文不但说明了如何利用ARM处理器实现液晶屏的汉字显示,还讲述了开发ARM处理器应用程序的一个完整的过程。随着嵌入式技术的不断普及,对ARM处理器的学习、应用、开发都有一定的帮助作用。
上传时间: 2013-04-24
上传用户:cuiqiang
基于verilog的lcd1602显示 基于verilog的lcd1602显示 基于verilog的lcd1602显示
上传时间: 2013-04-24
上传用户:懒龙1988
目录 第1章 概述 1.1 采用C语言提高编制单片机应用程序的效率 1.2 C语言具有突出的优点 1.3 AvR单片机简介 1.4 AvR单片机的C编译器简介 第2章 学习AVR单片机C程序设计所用的软件及实验器材介绍 2.1 IAR Enlbedded Workbench IDE C语言编译器 2.2 AVR Studio集成开发环境 2.3 PonyProg2000下载软件及SL—ISP下载软件 2.4 AVR DEM0单片机综合实验板 2.5 AvR单片机JTAG仿真器 2.6 并口下载器 2.7 通用型多功能USB编程器 第3章 AvR单片机开发软件的安装及第一个入门程序 3.1 安装IAR for AVR 4.30集成开发环境 3.2 安装AVR Studio集成开发环境 3.3 安装PonyProg2000下载软件 3.4 安装SLISP下载软件 3.5 AvR单片机开发过程 3.6 第一个AVR入门程序 第4章 AVR单片机的主要特性及基本结构 4.1 ATMEGA16(L)单片机的产品特性 4.2 ATMEGA16(L)单片机的基本组成及引脚配置 4.3 AvR单片机的CPU内核 4.4 AvR的存储器 4.5 系统时钟及时钟选项 4.6 电源管理及睡眠模式 4.7 系统控制和复位 4.8 中断 第5章 C语言基础知识 5.1 C语言的标识符与关键字 5.2 数据类型 5.3 AVR单片机的数据存储空间 5.4 常量、变量及存储方式 5.5 数组 5.6 C语言的运算 5.7 流程控制 5.8 函数 5.9 指针 5.10 结构体 5.11 共用体 5.12 中断函数 第6章 ATMEGA16(L)的I/O端口使用 6.1 ATMEGAl6(L)的I/O端口 6.2 ATMEGAl6(L)中4组通用数字I/O端口的应用设置 6.3 ATMEGA16(L)的I/O端口使用注意事项 6.4 ATMEGAl6(L)PB口输出实验 6.5 8位数码管测试 6.6 独立式按键开关的使用 6.7 发光二极管的移动控制(跑马灯实验) 6.8 0~99数字的加减控制 6.9 4×4行列式按键开关的使用 第7章 ATMEGAl6(L)的中断系统使用 7.1 ATMEGA16(L)的中断系统 7.2 相关的中断控制寄存器 7.3 INT1外部中断实验 7.4 INTO/INTl中断计数实验 7.5 INTO/INTl中断嵌套实验 7.6 2路防盗报警器实验 7.7 低功耗睡眠模式下的按键中断 7.8 4×4行列式按键的睡眠模式中断唤醒设计 第8章 ATMEGAl6(L)驱动16×2点阵字符液晶模块 8.1 16×2点阵字符液晶显示器概述 8.2 液晶显示器的突出优点 8.3 16×2字符型液晶显示模块(LCM)特性 8.4 16×2字符型液晶显示模块(LCM)引脚及功能 8.5 16×2字符型液晶显示模块(LCM)的内部结构 8.6 液晶显示控制驱动集成电路HD44780特点 8.7 HD44780工作原理 8.8 LCD控制器指令 8.9 LCM工作时序 8.10 8位数据传送的ATMEGAl6(L)驱动16×2点阵字符液晶模块的子函数 8.11 8位数据传送的16×2 LCM演示程序1 8.12 8位数据传送的16×2 LCM演示程序2 8.13 4位数据传送的ATMEGA16(L)驱动16×2点阵字符液晶模块的子函数 8.14 4位数据传送的16×2 LCM演示程序 第9章 ATMEGA16(L)的定时/计数器 9.1 预分频器和多路选择器 9.2 8位定时/计时器T/C0 9.3 8位定时/计数器0的寄存器 9.4 16位定时/计数器T/C1 9.5 16位定时/计数器1的寄存器 9.6 8位定时/计数器T/C2 9.7 8位T/C2的寄存器 9.8 ICC6.31A C语言编译器安装 9.9 定时/计数器1的计时实验 9.10 定时/计数器0的中断实验 9.11 4位显示秒表实验 9.12 比较匹配中断及定时溢出中断的测试实验 9.13 PWM测试实验 9.14 0~5 V数字电压调整器 9.15 定时器(计数器)0的计数实验 9.16 定时/计数器1的输入捕获实验 ......
上传时间: 2013-07-30
上传用户:yepeng139
教你一招如何用LCD1602显示汉字教你一招如何用LCD1602显示汉字教你一招如何用LCD1602显示汉字教你一招如何用LCD1602显示汉字教你一招如何用LCD1602显示汉字教你一招如何用LCD1602显示汉字教你一招如何用LCD1602显示汉字教你一招如何用LCD1602显示汉字
上传时间: 2013-06-25
上传用户:离殇
5月1日凌晨发布第一测试版 功能介绍: 1.生成中英文数字混合的字符串的字模数据. 2.可选择字体,大小,并且可独立调整文字的长和宽,生成任意形状的字符。 3.各种旋转,翻转文字功能 4.任意调整输出点阵大小,并任意调整字符在点阵中的位置。 5.字模数据输出可自定义各种格式,系统预设了C语言和汇编语言两种格式,并且可自己 定义出新的数据输出格式;每行输出数据个数可调。 6.支持四种取模方式:逐行(就是横向逐行取点),逐列(纵向逐列取点),行列(先 横向取第一行的8个点作为第一个字节,然后纵向取第二行的8个点作为第二个字节……), 列行(先纵向取第一列的前8个点作为第一个字节,然后横向取第二列的前8个点作为第二个 字节……) 7.支持阴码(亮点为1),阳码(亮点为0)取模 8.支持纵向(第一位为低位)(,倒向第一位为高位)取模 9.输出数制可选16进制或10进制 10.可生成索引文件,用于在生成的大量字库中可快速检索到需要的汉字 11.动态液晶面板彷真,可调节彷真面板象素点大小和颜色 12.图形模式下可任意用鼠标作画,左键画图,右键擦图。 12.旋转,翻转,平移等字符模式下的功能也可用与对BMP图象的处理 版本为pctolcd1.94 5月1日晚上发布第二测试版 更新如下: 1.增加锁定点阵大小功能,例如可锁定24X24点阵大小,然后调节独立调节字点阵的大小 2.增加热键功能,可用光标配合Ctrl,Shift对文字大小和位置修改 3.增加精简输出格式选项 4.把文字输入框换成了文字输入组合框,这样就可以保存历史纪录。 5.输出数据会自动清除以前的数据 6.可隐藏自定义格式,简化操作 7.一些小的BUG修正。 版本为pctolcd2.03 5月3日凌晨发布第三测试版 更新如下: 1.增加了一些小东西,例如演示动画一类的,我懒的一一写了 2.改掉一些可恶的小BUG,例如点阵输入框的自动完成。 3.增加大量文字处理和导入TXT文本文件功能,并且可以去除文本中的空白和重复字符, 可以对文本进行排序,适合于生成小字库。我这里测试是3万多字的TXT文件在2分钟内转成16X16点阵的字库文件。 版本号为pctolcd2.53 由于本软件侧重于对字符的处理,所以在图象方面功能较弱,请见晾。 5月8日发布正式版 正式版已经开始朝着液晶字库生成软件的方向进化了,我在后来的更新中把主要精力也放 在这部分,由于我目前还没有发现有同类的软件具备这个功能,也无法得到任何的参考,只能 自己摸索前进,所以如果还有不方便的地方请大家多提意见. 具体更新如下: 1.重写大部分的内核代码以配合汉字库生成的功能,目前这个内核已经进行了反复的测试, 相信稳定性和速度较前一版本有了巨大的提高. 2.去掉那个比较愚蠢的热键区了,因为用处不大 3.增加汉字库生成功能,这是最重要的改进之处,下文将详细介绍. 4.修正许多小BUG,使软件更加成熟些. 5月12日发布完美版 这次发布的PCtoLCD2002完美版与前一版本相比没有增加太多的功能,因为我觉得现有的这些功能已经足够用于生成各种字模的需要了,所以完美版的主要工作是反复测试,精心去除各种BUG,以及调节一些细微之处,目的当然就是追求完美!不过世上不会有真正完美的东西,这个软件也不例外,而且这个软件从头至尾全部是我一个人编写完成,精力有限,难免会顾此失彼,如果大家发现了这个版本中存在的BUG,请及时告诉我。 更新说明: 1。界面采用新的字体,不会再有那种难看的黑色粗体字,比以前的要漂亮多了。 2。加入全面的提示帮助,尽量减少普通用户的各种疑惑。 3。修正生成文件的扩展名的一些BUG,不会总是加上FON的扩展名了。 4。修正生成字模数据的一些格式BUG,现在生成的C51格式字模数据基本上可以直接粘贴到源程序中使用而不需要修改了 5。加入新的字模数据格式调整项,允许用户更自由的定制自己需要的数据格式 6。最重要的更新:全面支持保存当前设置功能,用户设置的字模格式,主窗口状态和字库生成窗口选项信息均可保存,下一次打开窗口时不用重新设置。 7。修正了新建图象时会自动跳到图形模式的BUG 8。增加输出紧凑格式数据选项,可以生成不包含空白行的字模数据。 9。完善了每行数据显示个数的功能,可以任意设置每行显示的数据个数,并同时可以设置每行索引数据显示个数。 10。修正了取模说明的一些错误,并改动了格式。 11。现在当用户选择10进制输出时,会自动去掉生成字模数据前的“0x",或后面的“H”,选择16进制时则会自动加上。 12。对各个窗体重新设计以全面适应最大化的需要,如果您觉得当前窗口不够大,可以最大化使用。 13。增加生成英文点阵字库功能,可自动生成ASCII码从0-127的任意点阵字库,使用方法同生成国标点阵字库功能。 14。再次优化代码,去掉各种调试信息,使程序速度再快一些。 15。还有许多细微的调整我记不清了…… 需要注意的地方: 在测试的过程中我发现了一个问题:在WIN98或WINME下当用户直接生成特大点阵的字模时(例如320*320,1024*768的汉字字模),此时由于数据量非常庞大,而WIN98/WINME会有64K的数据容量限制,所以在主窗口中是无法得到全部的字模数据的,这时您需要使用字库生成功能,通过形成一个数据文件才能得到完整的字模数据。 我认为到现在这个软件功能已经很完善了,但可能使用上有点不方便,如果你有什么不明白 的地方,可以发帖子或发MAIL询问
上传时间: 2013-07-26
上传用户:sssnaxie
随着液晶显示技术的发展,我们的日常生活中出现了各种各样功能强大的显示系统。本文主要以液晶显示技术的基本原理为理论基础,探讨并比较了单片机和ARM微处理器作为液晶显示控制系统各自的优缺点,并设计和完成了~套基于ARM微处理器的液晶显示控制系统。 该系统以Samsung公司的ARM微处理器芯片S3C4510B为CPU,根据ARM微处理器的特点,本文系统地分析了电源及复位电路、晶振电路、Flash 存储器接口电路、SDRAM存储器接口电路、串行接口电路、JTAG接口电路以及10M/100M以太网接口电路的设计方法。同时,重点描述了液晶显示模块电路和键盘控制电路的设计与实现。在各个部分硬件电路的调试成功过后,介绍了Bootloader的下载以及uClinux操作系统的下载和编译。在液晶显示控制系统的软件设计部分,本文重点分析了在uClinux操作系统下进行的用户程序的开发。根据液晶显示模块的特点和对键盘控制电路的I/O口配置,对整个显示控制系统的程序设计作出了一定的分析。最终通过对系统的调试,实现了ARM微处理器系统对LCD液晶显示器的显示控制。
上传时间: 2013-04-24
上传用户:change0329
51单片机动态LED显示电路编程实例:上一节我们讲述了单只LED与单片机的接口电路及编程实例,目的在于让初学者了解LED在单片机中的应用原理,单只LED显示在实际应用中并无多大用途,一般都是多位
上传时间: 2013-05-16
上传用户:shangdafreya