目录 第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
随着通信网的发展和用户需求的提高,光纤通信中的PDH体系逐渐被SDH体系所取代.SDH光纤通信系统以其通信容量大、传输性能好、接口标准、组网灵活方便、管理功能强大等优点获得越来越广泛的应用.但是在某些对传输容量需求不大的场合,SDH的巨大潜力和优越性无法发挥出来,反而还会造成带宽浪费.相反,PDH因其容量适中,配置灵活,成本低廉和功能齐全,可针对客户不同需要设计不同的方案,在某些特定的接入场合具有一定的优势.本课题根据现实的需要,提出并设计了一种基于PDH技术的多业务单片FPGA传输系统.系统可以同时提供12路E1的透明传输和一个线速为100M以太网通道,主要由一块FPGA芯片实现大部分功能,该解决方案在集成度、功耗、成本以及灵活性等方面都具有明显的优势.本文首先介绍数字通信以及数字复接原理和以太网的相关知识,然后详细阐述了本系统的方案设计,对所使用的芯片和控制芯片FPGA做了必要的介绍,最后具体介绍了系统硬件和FPGA编码设计,以及后期的软硬件调试.归纳起来,本文主要具体工作如下:1.实现4路E1信号到1路二次群信号的复分接,主要包括全数字锁相环、HDB3-NRZ编解码、正码速调整、帧头检测和复分接等.2.将以太网MII接口来的25M的MII信号通过码速变换到25.344M,进行映射.3.将三路二次群信号和变换过的以太网MII信号进行5b6b编解码,以利于在光纤上传输.4.高速时提取时钟采用XILINX的CDR方案.并对接收到的信号经过5b6b解码后,分接出各路信号.
上传时间: 2013-07-23
上传用户:lansedeyuntkn
嵌入式系统是将先进的计算机技术、半导体技术和电子技术与各个行业的具体应用相结合的产物。目前,嵌入式系统己经广泛应用到工业、交通、能源、通信、科研、医疗卫生、国防以及日常生活等领域,并不断朝着体积小,功能强的方向发展。嵌入式系统不同于原来的单片机系统,它不仅有自己的操作系统,上层应用程序,而且还具备网络通信和信息管理的功能。 ARM体系的处理器是目前嵌入式系统中使用最广泛的处理器。它采用了RISC技术,具有寻址方式简单,寄存器多,指令长度固定等的特点使得它的处理速度快,执行效率高。由于Linux对于ARM技术的支持,具有内核可裁减,网络功能强大,代码开放的特点,把Linux应用到嵌入式系统中,能充分发挥ARM和Linux的优势。 论文以“掌上中文语言学习系统”项目为依托,以ARM体系处理器和Ljnux操作系统的嵌入式系统为基础,构建一个掌上语言学习设备。 论文首先进行了开发环境的设计与搭建,对开发主机进行TFTP服务器、NFS服务器、minicom串口通信和GNU交叉工具链进行配置。实现了针对NAND闪存的U-Boot启动程序的建立,并对Linux操作系统内核进行了移植工作。最后利用图形界面系统MiniGUI和远程调试技术实现了掌上语言学习的软件功能。
上传时间: 2013-07-24
上传用户:jiangfire
近年来,随着嵌入式系统的快速发展,越来越多的嵌入式设备被用于工业控制、智能家居等领域。同时伴随着网络技术的发展,嵌入式设备通过网络接入局域网或者Internet已经逐步成为发展的趋势。通过在嵌入式设备中内置Web服务器,用户可以在任何一台联网的计算机上通过浏览器来获取设备的信息,用户还可以通过网络对设备进行配置和管理。因此研究和开发嵌入式Web服务器具有重要的实际意义和应用价值。 本文在S3C44BOX开发板上使用μClinux操作系统作为开发平台,开发并实现了嵌入式Web服务器。文中提出了2种实现方案,一种是基于boa的嵌入式Web服务器,所做的主要工作是boa在gClinux中的移植和CGI的编写,在此基础上实现了动、静态页面的生成和简单的控制功能。另一种方案是基于HTTP协议和socket编程所开发的嵌入式Web服务器,在此方案中实现了HTTP协议的GET和POST请求方式,能够生成简单的动态页面,实现了历史数据的保存功能,还能够根据用户在浏览器端的请求进行相应的控制和管理。 论文首先对嵌入式Web服务器的体系结构进行了分析,然后介绍了S3C44BOX硬件开发平台,并分析了bootloader的基本原理和实现过程。随后对μClinux操作系统的特点和网卡驱动程序进行了分析,并着重介绍了μClinux的移植过程。在第五章,论文详细分析了TCP/IP和HTTP的原理和工作机制,并介绍了Web服务器中CGI的工作原理,最后分析了boa服务器的移植和CGI程序的编写以及Web服务器的测试等。在第六章,在HTTP协议分析和网络编程的基础上,提出了嵌入式Web服务器的设计思想、程序流程图,重点分析了Web服务器主程序流程、动态页面的生成、历史数据查询的实现等,也分析了Web服务器中各种控制功能的实现流程,最后给出了Web服务器的测试结果。
上传时间: 2013-05-17
上传用户:ice_qi
随着我国经济建设的快速发展,人们的生活消费水平也越来越高,对餐饮业的服务质量和服务方式也不断地提出新的要求。基于计算机处理和无线通信技术的餐饮服务系统应运而生,本文就基于ARM9的无线餐饮服务终端系统进行了研究和开发,通过对终端的操作,实现无线点菜功能。 在参考阅读了大量信息资料的基础上,确定了以嵌入式系统为终端、基于微功率短距离无线通信技术进行无线通信的整体设计方案。嵌入式系统成本低、体积小、功耗低且可靠性高,是开发餐饮服务终端系统的绝佳选择,而微功率短距离无线通信技术开发容易,成本低廉。所以本课题选择ARM嵌入式开发板和短距离RF无线数据传输模块作为开发餐饮服务终端的硬件。 本文配置了适合嵌入式系统开发的交叉编译环境,在此环境下,通过对系统引导程序的配置、对Linux内核的裁减和对root文件系统的定制,开发了基于本平台的嵌入式Linux操作系统;用C语言编写了基于无线数据传输模块的无线通信应用程序,通过数据发送和数据接收,实现了点菜数据在餐饮服务终端和服务器之间的无线传输;设计了点菜终端的图形用户界面,操作者可在此界面上进行点菜操作,实现点菜功能。 在开发过程中,对Linux操作系统的内核源码、运行和管理机制进行了深入研究,就启动代码的更改和内核的裁减进行了探讨和开发;应用程序采用共享内存的Linux多线程技术进行功能处理,就线程管理问题的进行了分析探讨。
上传时间: 2013-06-12
上传用户:坏坏的华仔
随着数字图像处理的应用领域不断扩大,实时处理技术成为研究的热点。VLSI技术的迅猛发展为数字图像实时处理技术提供了硬件基础。其中FPGA(现场可编程门阵列)的特点使其在图像采集和处理方面的应用显得更加经济、灵活、方便。 本文设计了一种以FPGA为工作核心,并实现了PCI接口的图像采集压缩系统。整个系统采用了自顶向下的设计方案,先把系统分成了三大块,即图像采集、PCI接口和图像压缩,然后分别设计各个大模块中的子模块。 首先,利用FPGA对专用视频转换器SAA7111A进行控制,因为SAA7111A是采用IC总线模块,从而完成了对SAA7111A的控制,并通过设计图像采集模块、读/写数据模块、总线管理模块等,实现把标准的模拟视频信号转换成数字视频信号并采集的功能。 其次,在了解PCI规范的前提下,深入地分析了PCI时序和地址配置空间等,设计了简化逻辑的状态机,并用VHDL硬件描述语言设计了程序,完成了简化逻辑的PCI接口设计在FPGA芯片内部的实现,达到了一33MHz、32位数据宽度、支持猝发传输的PCI从设备模块的接口功能,与传统的使用PCI专用接口芯片来实现的PCI接口比较来看,更加节约了系统的逻辑资源,降低了成本,增加了设计的灵活性。 再次,设计了WINDOWS下对PCI接口的驱动程序。驱动程序可以选择不同的方法来完成,当然每个方法都有自己的特点,对几种主要设计驱动程序的方法作以比较之后,本文选择了使用DRIVER WORKS工具来完成。通过对配置空间的设计、系统端口和内存映射的设计、中断服务的设计等,用VC++语言编写了驱动程序。 最后,考虑到增加系统的实用性和完备性,还填加设计了图像的压缩部分。这部分需要完成的工作是在上述系统完成后,再额外地把采集来的视频数据通过另一路数据通道按照一定的格式压缩后存储到硬盘中。本系统中,这部分设计是利用Altera公司提供的IP核来完成压缩的,同时还用VHDL语言在FPGA上设计了IDE硬盘接口,使压缩后的数据存储到硬盘中。
上传时间: 2013-06-01
上传用户:程婴sky
FPGA作为近年来集成电路发展中最快的分支之一,有关它的研究和应用得到了迅速的发展。传统的FPGA采用静态配置的方法,所以在它的应用生命周期中,它的功能就不能够再改变,除非重新配置。动态重配置系统在系统工作的过程中改变FPGA的结构,包括全局重配置和局部重配置。其中的局部动态重配置系统有着ASIC以及静态配置FPGA无法比拟的优势。而随着支持局部位流配置以及动态配置的商用FPGA的推出,使对局部动态重配置系统和应用的研究有了最基本的硬件支撑条件。而Internet作为无比强大的网络已经渗入到各种应用领域之中。 本文首先提出了一个完整的基于Internet的FPGA局部动态可重配置系统的方案。然后针对方案的各个组成部分,分别进行了描述。首先是介绍了FPGA的基本概况,包括它的发展历史、结构、应用领域、发展趋势等。然后介绍了对一个包含局部动态重配置模块的FPGA系统的设计过程,包括重配置模块的定义、设计的流程、局部位流的产生等。接下来对.FPGA的配置方法以及配置解决方案进行描述,包括几种可选择的配置模式,其中有一些适用于静态配置,另外一些可以用于动态局部配置,.以及作为一个系统的配置解决方案。最后系统要求从Internet服务器上下载重配置模块的位流并且完成对FPGA的配置,根据这个要求,我们设计了相应的嵌入式解决方案,包括如何设计一个基于VxWorks的嵌入式应用软件实现FTP功能,并说明如何通过JTAGG或者ICAP接口由嵌入式CPU完成对FPGA的局部配置。
上传时间: 2013-04-24
上传用户:william345
传统的数控系统采用的大多是专用的封闭式结构,它能提供给用户的选择有限,用户无法对现有数控设备的功能进行修改以满足自己的特殊要求;各种厂商提供给用户的操作方式各不相同,用户在培训人员、设备维护等方面要投入大量的时间和资金。这些问题严重阻碍了CNC制造商、系统集成者和用户采用快速而有创造性的方法解决当今制造环境中数控加工和系统集成中的问题。随着电子技术和计算机技术的高速发展,数控技术正朝向柔性化、智能化和网络化的方向发展。针对数控系统已存在的问题和未来发展的趋势,本文致力于建立一个适合现场加工特征的开放结构数控平台,使系统具备软硬件可重构的柔性特征,同时把监控诊断和网络模块融入数控系统的框架体系之内,满足智能化和网络化的要求。 本文在深入研究嵌入式系统技术的基础上,引入可重构的设计方法,选择具体的硬件平台和软件平台进行嵌入式可重构数控系统平台的研发。硬件结构以MOTOROLA的高性能32位嵌入式处理器MC68F375和ALTERA的现场可编程门阵列(FPGA)芯片为核心,配以系统所需的外围模块;软件系统以性能卓越的VxWorks嵌入式实时操作系统为核心,开发所需要的应用软件,将VxWorks嵌入式实时操作系统扩展为一个完整、实用的嵌入式数控系统。该系统不仅具有可靠性高、稳定性好、功能强的优点,而且具有良好的可移植性和软硬件可裁减性,便于根据实际需求进行功能的扩展和重构。 本论文的主要研究工作如下: (1)深入研究了以高性能微处理器MC68F375为核心的主控制板的硬件电路设计,以及存储、采集、通讯和网络等模块的设计。 (2)深入研究了基于FPGA的串行配置方法和可重构设计方法,设计出基于FPGA的电机运动控制、机床IO控制、键盘阵列和液晶显示控制等接口模块电路。 (3)深入研究了VxWorks嵌入式实时操作系统在硬件平台上的移植和任务调度原理,合理分配控制系统的管理任务,开发系统的底层驱动程序和应用程序。 最后,本文总结了系统的开发工作,并对嵌入式可重构数控系统的进一步研究提出了自己的一些想法,以指引后续研究工作。
上传时间: 2013-04-24
上传用户:gcs333
本论文来自于863项目基于光互连自组织内存服务体系(简称MemoryBox)。本文主要研究Memory Box系统中基于可重配置计算架构,软硬件携同设计方法,在XILINX VIRTEX 2 Pro FPGA上设计实现嵌入式系统。由于嵌入式系统是Memory Box工作的平台,所以硬件应具有良好的扩展性、灵活性,软件应具有优良的稳定性。在硬件平台选型时,我们选择的是基于高性能Xilinx VIRTEX2 Pro的自制开发板。嵌入式系统软硬件开发平台选用的是Xilinx EDK、ISE。内核移植所用的交叉开发工具链为powerpc-405-linux-gnu。该交叉开发工具链工作在Red Hat Enterprise LINUX.AS 4平台下。 本论文主要包括三部分工作:首先是硬件设计,其核心是EDK和ISE设计的SOPC工程;然后是嵌入式LINUX内核移植与调试;最后完成存储管理软件的设计。完全用硬件实现系统要求的各种存储管理功能极其困难。而通过移植内核,存储管理软件以运行在Linux内核上的应用软件的形式实现了其功能。存储管理软件要解决共享冲突,负载均衡,远程内存与本地内存的地址一致性以及对海量内存阵列的重新编址等问题,设计出较完善的Memory Box的存储管理模型。
上传时间: 2013-06-11
上传用户:tyler
stm8 spi使用说明,讲述stm8系列单片机的SPI通信配置及操作流程-stm8 spi instructions for use, about stm8 MCU SPI communication configuration and operational procedures
上传时间: 2013-07-16
上传用户:面具爱人丿