激光测距技术被广泛应用于现代工业测量、航空与大地的测量、国防及通信等诸多领域。本文从已获得广泛应用的脉冲激光测距技术入手,重点分析了近年提出的自触发脉冲激光测距技术(STPLR)特别是其中的双自触发脉冲激光测距技术(BSTPLR),通过分析发现其核心部件之一就是用于测量激光脉冲飞行时间(周期)的高精度高速计数器,而目前一般的方式是采用昂贵的进口高速计数器或专用集成电路(ASIC)来完成,这使得激光测距仪在研发、系统的改造升级和自主知识产权保护等诸多方面受到制约,同时在其整体性能上特别是在集成化、小型化和高可靠性方面带来阻碍。为此,本文研究了采用现场可编程门阵列(FPGA)来实现脉冲激光测距中的高精度高速计数及其他相关功能,基本解决了以上存在的问题。 论文通过对双自触发脉冲激光测距的主要技术要求和技术指标进行分析,对其中的信号处理单元采用了FPGA+单片机的设计形式。由FPGA主控芯片(EPF10K20TC144-4)作为周期测量模块,在整个测距系统中是信号处理的核心部件,借助其用户可编程特性及很高的内部时钟频率,设计了专用于BSTPLR的高速高精度计数芯片,负责对测距信号产生电路中的时刻鉴别电路输出信号进行计数。数据处理模块则主要由单片机(AT89C51)来实现。系统可以通过键盘预置门控信号的宽度以均衡测量的精度和速度,测量结果采用7位LED数码管显示。本设计在近距离(大尺寸)范围内实验测试时基本满足设计要求。
上传时间: 2013-04-24
上传用户:dapangxie
目录 第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
目录 第1章 初识Protel 99SE 1.1 Protel 99SE的特点 1.2 Protel 99SE的安装 1.2.1 主程序的安装 1.2.2 补丁程序的安装 1.2.3 附加程序的安装 1.3 Protel 99SE的启动与工作界面 第2章 设计电路原理图 2.1 创建一个新的设计数据库 2.2 启动原理图编辑器 2.3 绘制原理图前的参数设置 2.3.1 工作窗口的打开/切换/关闭 2.3.2 工具栏的打开/关闭 2.3.3 绘图区域的放大/缩小 2.3.4 图纸参数设置 2.4 装入元件库 2.5 放置元器件 2.5.1 通过原理图浏览器放置元器件 2.5.2 通过菜单命令放置元器件 2.6 调整元器件位置 2.6.1 移动元器件 2.6.2 旋转元器件 2.6.3 复制元器件 2.6.4 删除元器件 2.7 编辑元器件属性 2.8 绘制电路原理图 2.8.1 普通导线连接 2.8.2 总线连接 2.8.3 输入/输出端口连接 2.9 Protel 99SE的文件管理 2.9.1 保存文件 2.9.2 更改文件名称 2.9.3 打开设计文件 2.9.4 关闭设计文件 2.9.5 删除设计文件 第3章 设计层次电路原理图 3.1 自顶向下设计层次原理图 3.1.1 建立层次原理图总图 3.1.2 建立层次原理图功能电路原理图 3.2 自底向上设计层次原理图 3.3 层次原理图总图/功能电路原理图之间的切换 第4章 电路原理图的后期处理 4.1 检查电路原理图 4.1.1 重新排列元器件序号 4.1.2 电气规则测试 4.2 电路原理图的修饰 4.2.1 在原理图浏览器中管理电路图 4.2.2 对齐排列元器件 4.2.3 对节点/导线进行整体修改 4.2.4 在电路原理图中添加文本框 4.3 放置印制电路板布线符号 第5章 制作/编辑电路原理图元器件库 5.1 创建一个新的设计数据库 5.2 启动元器件库编辑器 5.3 编辑元器件库的常用工具 5.3.1 绘图工具 5.3.2 IEEE符号工具 5.4 在元器件库中制作新元器件 5.4.1 制作新元器件前的设置 5.4.2 绘制新元器件 5.4.3 在同一数据库下创建一个新的元器件库 5.4.4 修改原有的元器件使其成为新元器件 5.4.5 从电路原理图中提取元器件库 第6章 生成各种原理图报表文件 6.1 生成网络表文件 6.1.1 网络表文件的结构 6.1.2 网络表文件的生成方法 6.2 生成元器件材料清单列表 6.3 生成层次原理图组织列表 6.4 生成层次原理图元器件参考列表 6.5 生成元器件引脚列表 第7章 设计印制电路板 7.1 肩动印制电路板编辑器 7.2 PCB的组成 7.3 PCB中的元器件 7.3.1 PCB中的元器件组成 7.3.2 PCB中的元器件封装 7.4 设置工作层面 7.5 设置PCB工作参数 7.5.1 设置布线参数 7.5.2 设置显示模式 7.5.3 设置几何图形显示/隐藏功能 7.6 对PCB进行布线 7.6.1 准备电路原理图并设置元器件属性 7.6.2 启动印制电路板编辑器 7.6.3 设定PCB的几何尺寸 7.6.4 加载元器件封装库 7.6.4 装入网络表 7.6.5 调整元器件布局 7.6.6 修改元器件标沣 7.6.7 自动布线参数设置 7.6.8 自动布线器参数设置 7.6.9 选择自动布线方式 7.6.10 手动布线 7.7 PCB布线后的手动调整 7.7.1 增加元器件封装 7.7.2 手动调整布线 7.7.3 手动调整布线宽度 7.7.4 补泪焊 7.7.5 在PcB上放置汉字 7.8 通过PCB编辑浏览器进行PCB的管理 7.8.1 设置网络颜色属性 7.8.2 快速查找焊盘 7.9 显示PCB的3D效果图 7.10 生成PCB钻孔文件报表 ......
上传时间: 2013-06-17
上传用户:wanqunsheng
教你一招如何用LCD1602显示汉字教你一招如何用LCD1602显示汉字教你一招如何用LCD1602显示汉字教你一招如何用LCD1602显示汉字教你一招如何用LCD1602显示汉字教你一招如何用LCD1602显示汉字教你一招如何用LCD1602显示汉字教你一招如何用LCD1602显示汉字
上传时间: 2013-06-25
上传用户:离殇
传感器是测控系统的重要组成部分,但有些传感器,如增量式或绝对式旋转编码器,因无配套的二次仪表,给使用带来不便。有些传感器虽然可以买到配套的仪表,但价格昂贵,功能单一且功能无法扩展。为此,本课题以设计一种通用性强,功能扩展方便的测量仪表为目的,将计算机技术与嵌入式微处理器技术用于测量仪表当中,设计一种基于ARM的嵌入式智能仪表。课题主要研究工作包括: 1.在分析比较各种二次仪表功能的基础上,提出了基于ARM的嵌入式智能仪表设计方案。搭建了仪表的硬件平台。 2.软件设计实现了μC/OS-Ⅱ嵌入式系统在ARM7微控制器上的移植。在此基础上,对嵌入式系统进行了一定的扩展,编写了LCD驱动程序,调用了串口通信,A/D转换等模块的API函数,建立了多任务环境,使仪表兼具PWM脉宽调制功能、数据采集、显示和传输功能。 3.通过增量式、绝对式旋转编码器实验、转矩转速传感器实验、输出模拟信号的角度传感器实验和PWM输出实验验证仪表的功能。 RTOS平台的构建,降低了软件设计的复杂度,提高了系统的实时性和灵活性,缩短了开发周期。经过实验验证,该仪表能够准确测定频率信号、模拟信号及数字信号。
上传时间: 2013-04-24
上传用户:1234567890qqq
雕刻机的数控系统是三维雕刻机的控制核心,其控制系统的性能直接关系着三维雕刻机的加工质量和加工效率,对雕刻机的性价比有着重要的影响。本论文在对三维雕刻机系统的结构和功能进行分析的基础上,提出了一个以.ARM微处理器和CPLD器件构建硬件平台、基于μC/OS-Ⅱ为嵌入式控制系统的解决方案,充分利用ARM微处理器的高速运算能力与CPLD的高速并行运算能力,大大减少了系统的外围接口器件,有效的降低系统成本。 此方案中选用Philips公司的基于ARM7内核的LPC2214处理器作为主控芯片。对于系统的输入/输出的逻辑控制通过CPLD来实现,该芯片选用Atlera公司的EPM7128SLC84,作为处理器的外围器件。同时对整个系统的硬件开发作了详细说明:电源、SRAM、FLASH等芯片选型及设计;液晶显示模块及键盘的应用设计;电机的输入输出电路设计等。 软件部分包括Boot Loader、RTOS、应用程序的设计等。其中,Rot Loader支持系统Boot、程序下载到RAM中执行和烧写到Flash存储器等功能;RTOS包括操作系统的移植、任务管理、任务间的通信等,应用程序的设计包括设备驱动程序、液晶显示、键盘操作、电机控制等。同时用VB6.0开发了PC机下载控制界面,并对液晶模块和电机进行调试。
上传时间: 2013-06-06
上传用户:smthxt
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
如今IC设计进入了SOC(System-on-chip)设计时代。SOC是指在单一芯片上集成了微控制器、数字信号处理器、存储器、I/O接口等,可以实现信号采集、转换、存储、处理等功能的芯片。SOC设计是基于IP可重用性的设计过程。现在已有不少公司成功地开发了各种SOC总线规范,以便于IP核的可复用性设计。其中,ARM公司开发的AMBA(Advanced Microcontroller Bus Arehitecture)规范已经成为嵌入式应用的行业标准。嵌入式SOC芯片广泛应用于消费电子产品中,近年来随着彩屏手机、PDA等移动终端的普及,液晶电视等平板显示器件的推广,液晶显示器已经逐渐取代CRT成为主流的显示器件。LCD Driver IC作为液晶显示器的重要部件,需求量也日益增大。嵌入式液晶显示系统的设计是当今SOC设计中不可缺少的部分,而基于AMBA总线规范的LCD显示系统更是具备良好的性能和较大的潜力。 本文提出了一种基于AMBA总线规范的彩色TFT-LCD数字图像显示解决方案,硬件设计上包括APB存储接口模块、LCD控制模块,并用VHDL硬件描述语言进行了功能仿真,采用Mentor公司Modelsim5.8完成了系统功能验证;软件设计上完成了基于SAMSUNG公司S6D0110 TFT-LCD驱动芯片的测试程序的编写和系统测试。本设计不需要掌握TFT-LCD内部构造,复杂的内部驱动原理,只需要掌握AMBA总线规范和LCD的MPU并行接口时序,采用本课题设计出的LCD显示控制模块简单实用,便于推广应用。 本课题基于Xilinx公司的VirtexⅡ FF1152 PROTO开发平台完成了软件调试,实现了TFT-LCD图像显示。调试结果表明硬件和软件设计正确且取得了较为满意的结果。
上传时间: 2013-06-02
上传用户:小枫残月