目录 第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
本文主要介绍了基于FPGA的无线信道盲均衡器的设计与实现,在算法上选择了比较成熟的DDLMS和CMA相结合的算法,结构上采用四路正交FIR滤波器模型.在设计的过程中我们采取了用MATLAB进行算法仿真,VerilogHDL语言进行FPGA设计的策略.在硬件描述语言的设计流程中,信道盲均衡器运用了Top-Down的模块化设计方法,大大缩短了设计周期,提高了系统的稳定性和可扩展性.测试结果表明均衡器所有的性能指标均达到预定目标,且工作性能良好,均衡效果较为理想,能够满足指标要求.本课题所设计和实现的信道盲均衡器,为FPGA芯片设计技术做了有益的探索性尝试,对今后无线通信系统中的单芯片可编程系统(SOPC)的设计运用有着积极的借鉴意义.
上传时间: 2013-05-28
上传用户:huyiming139
有线通信方式由于具有保密性高、抗干扰能力强在军事通信中倍受青睐,因此,对军用有线通信设备的研究和设计具有十分重要的战略意义.TBJ-204型野战20线程控交换机是一种小型背负式模拟空分程控用户交换机,用于装备全军各兵种的作战、演习和紧急抢险等行动.该项目以该交换机为研究对象,在详细分析原设备的系统结构和功能实现方式的基础上,指出该机型在使用过程中存在技术相对陈旧、分立元件过多、可靠性和保密性不够、体积大、重量大、维修困难等问题,同时结合系统的低功耗需求和优化人机接口设计,本文提出基于"单片机+CPLD/FPGA体系结构"的集成化设计方案:①在CPLD中实现信号音分频和计时频率生成电路、20路用户LED状态控制电路;②CPLD与单片机以总线接口方式实现译码、数据和控制信号锁存功能的VHDL设计;③基于低功耗设计的器件选型方案和单片机待机模式设计;④人机接口的LCD菜单操作方式.该文详细介绍了改型设备的研制过程,包括CPLD片内功能设计实现、主控制板和用户板各功能模块工作原理和设计实现、各硬件模块功能测试等,最后给出了局内呼叫处理功能和话务员服务功能的软件实现流程.文章结尾介绍了改型设备的系统性能,它将实现更高的可靠性、保密性和抗干扰能力,同时具备低功耗和小型化的优点.最后,该文总结了项目设计中使用的关键技术,指出了设计的创新意义和将来的工作.
上传时间: 2013-04-24
上传用户:啊飒飒大师的
随着信息技术的发展,系统级芯片SoC(System on a Chip)成为集成电路发展的主流。SoC技术以其成本低、功耗小、集成度高的优势正广泛地应用于嵌入式系统中。通过对8位增强型CPU内核的研究及其在FPGA(Field Programmable Gate Arrav)上的实现,对SoC设计作了初步研究。 在对Intel MCS-8051的汇编指令集进行了深入地分析的基础上,按照至顶向下的模块化的高层次设计流程,对8位CPU进行了顶层功能和结构的定义与划分,并逐步细化了各个层次的模块设计,建立了具有CPU及定时器,中断,串行等外部接口的模型。 利用5种寻址方式完成了8位CPU的数据通路的设计规划。利用有限状态机及微程序的思想完成了控制通路的各个层次模块的设计规划。利用组合电路与时序电路相结合的思想完成了定时器,中断以及串行接口的规划。采用边沿触发使得一个机器周期对应一个时钟周期,执行效率提高。使用硬件描述语言实现了各个模块的设计。借助EDA工具ISE集成开发环境完成了各个模块的编程、调试和面向FPGA的布局布线;在Synplify pro综合工具中完成了综合;使用Modelsim SE仿真工具对其进行了完整的功能仿真和时序仿真。 设计了一个通用的扩展接口控制器对原有的8位处理器进行扩展,加入高速DI,DO以及SPI接口,增强了8位处理器的功能,可以用于现有单片机进行升级和扩展。 本设计的CPU全面兼容MCS-51汇编指令集全部的111条指令,在时钟频率和指令的执行效率指标上均优于传统的MCS-51内核。本设计以硬件描述语言代码形式存在可与任何综合库、工艺库以及FPGA结合开发出用户需要的固核和硬核,可读性好,易于扩展使用,易于升级,比较有实用价值。本设计通过FPGA验证。
上传时间: 2013-04-24
上传用户:jlyaccounts
嵌入式系统是为了专用目的内建到产品内部,实现控制、管理、通信等功能的计算机电路与软件的集合体。随着Internet的发展和后PC时代的到来,嵌入式系统的应用越来越广泛。目前嵌入式系统技术已经成为了最热门的技术之一,嵌入式产品已经在IT产业中占有很大的比重,同时大量的嵌入式应用也对嵌入式设备的性能和功能提出了更高的要求。 随着国内嵌入式应用的发展,ARM因其高性能、低功耗、低成本而成为移动通信、便携设备、消费与图像应用等嵌入式产品的首选。Linux是使用最广泛的操作系统,它能运行在包括ARM在内的所有主要处理器架构上。清晰的结构与开放的源码使Linux成为一个非常具有活力,节奏明快的操作系统。近年来对嵌入式Linux的研究正进行得如火如荼,并获得了长足的进步。基于ARM与IJnux的嵌入式技术已经成为当前嵌入式领域研究的一个亮点,应该被广泛重视和应用。 本设计的目的正是建立一个完整的基于ARM9核心处理器和嵌入式IJnux操作系统的嵌入式开发平台,为嵌入式系统开发提供一个完整的软硬件环境。 论文的背景是教研室的嵌入式图像处理应用项目。作者在项目中承担嵌入式系统主板、LCD驱动板、BootLoader软件、LCD及键盘驱动程序设计任务。因此本论文将研究如何构建一个完整的、性能优良的ARM嵌入式系统。论文首先介绍了嵌入式系统的基本概念、嵌入式系统的发展过程,然后进行功能分析和总体设计,分析嵌入式系统设计关键性问题,包括系统框架的设计、开发流程和开发原则以及对于嵌入式处理器和操作系统的选择,这对基于嵌入式平台的嵌入式应用系统设计具有普遍意义。随后我们将重点论述基于ARM的嵌入式硬件平台的设计、Linux操作系统内核的定制和交叉编译、BootLoader、Linux驱动程序的开发过程。最后,总结了本文的主要研究工作,并结合当今信息产业的先进技术对该开发平台做了展望。 论文提出的基于嵌入式平台的应用系统潜力非常巨大,有待进一步的研究和探索。
上传时间: 2013-06-18
上传用户:cknck
作为新能源与汽车工业相结合的产物,燃料电池汽车已经逐渐成为了汽车家族的后起之秀。随着电子控制单元与车载设备的不断增多,传统内燃机汽车的仪表盘已经不能满足以燃料电池为动力的汽车仪表复杂信息显示的要求。本文以燃料电池汽车为研究背景,设计开发了基于嵌入式技术的仪表系统,实现了对燃料电池汽车整车运行状态以及模块数据的实时监测、存储与图形化显示。 本文介绍了燃料电池汽车仪表系统的设计原理,对仪表系统进行了需求分析,确定了系统整体框架与模块划分,提出了基于ARM微处理器、实时操作系统以及图形用户界面的仪表系统解决方案。该方案采用高性能的S3C44BOX作为底层核心处理器,以RTOS和GUI为中间层构建软件系统平台,在此基础上以实时多任务软件设计方法进行仪表系统应用程序的开发。 在上述方案的基础上,进行了仪表系统硬件平台的设计,包括存储器系统、通信总线、人机交互界面等接口电路的设计。根据高速数字电路的设计要求,在双面板上实现了基于ARM的燃料电池汽车仪表系统的PCB布线。编写了系统初始化代码,完成了对硬件平台的调试工作。 根据仪表系统的实际情况,选择了实时多任务操作系统μC/OS-Ⅱ和嵌入式图形用户界面μC/GUI作为本系统的软件平台,完成了两者在仪表系统硬件平台上的移植。针对μC/GUI环境下简体中文汉字的显示问题,给出了一种比较完善的解决方案。μ按照实时多任务软件的开发流程,设计了仪表系统应用程序,包括CAN总线监听任务、数据处理任务、用户界面任务以及历史数据记录任务等,划分了各个任务的优先级,确定了任务之间的通信同步机制,描述了各个任务的主要功能和实现方法,重点论述了基于μC/GUI的用户界面任务设计的思路与过程,最后介绍了在硬件平台上进行系统集成、软硬件联合调试以及系统测试的流程。
上传时间: 2013-06-20
上传用户:2780285129
随着计算机技术的发展,嵌入式系统已成为计算机领域的一个重要组成部分,并成为近年来新兴的研究热点。ARM9TDMI是一种高效、低功耗的RISK处理器,以该内核为核心的S3C2410X是一款基于以太网应用的高性价比16/32位微控制器,非常适合嵌入式产品。文本提出并研究了基于ARM-Linux的嵌入式产品平台,完成了系统的硬件和软件设计、实现了操作系统的裁减和移植。并且系统充分利用ARM处理器高性能、低功耗、低成本的优点,扩展平台通用接口,为今后开发基于该平台的应用系统提供了捷径。 Linux由于其代码开放性以及强大的网络功能等特点,在许多的嵌入式网络设备中有着广泛应用,与其他的嵌入式操作系统相比,具有着更多的优势。因此本课题将其作为硬件平台的操作系统,并在这个系统中实现Linux的一些基本操作。论文中介绍的硬件和软件平台也可以为实际应用提供很好的开发起点。 USB作为一种总线技术,已经得到快速的普及和应用,本文实现了Linux操作系统下USB驱动程序的编程设计;此外,本文将嵌入式技术与无线通信技术结合起来,实现了基于ARM-9处理器的无线通信平台的开发。 归纳起来本课题具体工作如下: 1)调研了国内外嵌入式系统开发的现状和发展趋势。并且详细论述了基于ARM-9处理器的硬件结构、嵌入式操作系统以及开发流程。 2)详细研究了Linux在ARM-9硬件平台上的移植。包括移植环境的建立、BootLoader的制作、Linux的裁减和移植、根文件的制作等。 3)详细分析并开发了Linux下USB驱动,包括主机控制器驱动以及设备驱动等内容。 4)基于ARM-9嵌入式微处理器,利用其性价比高,功能丰富,接口完善,可扩展性强等优点将移动通信技术与嵌入式系统融合在一起。实现基于ARM-9处理器的无线通信平台的开发。
上传时间: 2013-04-24
上传用户:lwt123
本论文以开发基于ARM核的USB2.0-AHB接口IP此项目为依托,致力于在Windows XP操作系统上使用DDK(Driver Development Kit)设计和开发一个基于WDM的主机端驱动程序。开发该驱动程序的目的是为了对该IP进行FPGA测试以及配合设备端驱动程序的开发,该驱动程序能够完成即插即用功能,块传输,同步传输,控制传输以及对Flash的操作五项主要功能。 论文首先介绍了基于WDM的USB驱动程序设计原理,其中包括了从结构到通信流对USB主机系统的介绍,编写WDM驱动程序的基础理论(主要介绍了数个相关的重要概念、驱动程序的基本组成),以及在开发对Flash操作的例程会使用到的Mass Storage类协议的简要介绍。在介绍设计原理后,论文从总体的系统应用环境和结构蓟数据传输、内部模块以及软硬件体系结构几个方面简要描述了该IP的系统设计。接着论文通过分析主机端驱动程序功能需求,提出了驱动程序的总体构架以及分步式的设计流程,具体步骤是先实现驱动程序的正常加载以及基本PnP功能,然后实现块传输、同步传输以及控制传输,最后完成对Flash操作例程的设计。随后论文详细阐述了对上述五项主要功能模块的设计;其中对Flash操作例程的设计是难点,作者通过分析Bulk-Only协议和UFI命令规范,提出程序的详细设计方案。论文最后简要介绍了调试驱动程序的方法,以及驱动程序的测试内容、部分测试结果以及测试结论。 本论文研究对象为基于ARM核的USB2.0-AHB接口IP主机端驱动程序,因为其研究主体是一个基于WDM的主机端驱动程序,因此有其普遍性;但是它以开发基于ARM核的USB2.0-AHB接口IP这个项目为依托,其目的是为项目服务,因此它有其特殊性。它是一项既有普遍性又有特殊性的研究。
上传时间: 2013-05-19
上传用户:2007yqing
随着SOC技术、IP技术以及集成电路技术的发展,RISC软核处理器的研究与开发设计开始受到了人们的重视。基于FPGA的RISC软核处理器在各个行业开始得到了广泛的应用,特别是在一些基于FPGA的嵌入式系统中有着越来越广泛的应用前景。 该论文在研究了大量国内外技术文献的基础上,总结了RISC处理器发展的现状与水平。认真分析了RISC处理器的基本结构,包括总线结构,流水线处理的原理,以及流水线数据通路和流水线控制的原理;并详细分析了该设计采用的指令集——MIPS指令集的内在结构。设计出了一个32位RISC软核处理器,这个软核处理器采用五级流水线结构,能完成加法、减法、逻辑与、逻辑或、左移右移等算术逻辑操作,以及它们的组合操作。通过软件仿真和在Altera的FPGA开发板上进行验证,证明了所设计的32位RISC处理器能准确的执行所选用的MIPS指令集,运行速度能达到30MHz,功能良好。 通过对所设计对象特点及其可行性的研究,选用了Altera公司QuartusⅡ软件作为设计与仿真验证的环境。在设计方法上,该课题采用了自顶向下的设计方法。在设计过程中采用了边设计边验证这种设计与验证相结合的设计流程,大大提高了设计的可靠性。该课题在设计过程中还提出了两个有效的设计思路:第一是在32位寄存器的设计中利用FPGA的内部RAM资源来设计,减少了传输延时,提高了运行速度,并大大减少了对FPGA内部资源的占用;第二是在系统架构上采用了柔性化的设计方法,使得设计可以根据实际的需求适当的增减相应的部件,以达到需求与性能的统一。这两个方法都有效地解决了设计中出现的问题,提高了处理器的性能。
上传时间: 2013-07-21
上传用户:caozhizhi
H.264/AVC是ITU与ISO/IEC(International Standard Organization/Intemational Electrotechnical Commission国际标准化组织/国际电工委员会)联合推出的活动图像编码标准。作为最新的国际视频编码标准,H.264/AVC与MPEG-4、H.263等视频编码标准相比,性能有了很大提高,并已在流媒体、数字电视、电话会议、视频存储等诸多领域得到广泛的应用。基于上下文的自适应二进制算术编码(Conrext-based Adaptive Binary Arithmetic Coding,CABAC)是H.264/AVC的两个熵编码方案之一,相对于另一熵编码方案-CAVLC(基于上下文的自适应可变长编码),CABAC具有更高的数据压缩率:在同等编码质量下要比CAVLC提高10%~15%的压缩率。CABAC能实现很高的数据压缩率,但这是以增加实现的复杂性为代价的。在已有的硬件实现方法上,CABAC的解码效率并不高。 论文在深入研究CABAC解码算法及其实现流程,并在仔细分析了H.264/AVC码流结构的基础上,总结出了影响CABAC解码效率的各个环节,并以此为出发点,对CABAC解码所需中的各个功能模块进行了优化设计,设计出一种新的CABAC解码器结构,相对于一般的CABAC解码器,它的解码效率得到了显著提高。论文针对影响CABAC解码过程的"瓶颈"问题一多次访问存储部件影响解码速率,提出了新的存储组织方式,并根据CABAC的码流结构特性,采用4个子解码器级联的方式来进一步提高解码速率。 最后,用Verilog语言对所设计的CABAC解码器进行了描述,用EDA软件对其进行了仿真,并在FPGA上验证了其功能,结果显示,该CABAC解码器结构显著提高了解码效率,能够满足高档次实时通讯的要求。
上传时间: 2013-07-03
上传用户:huazi