AVR高速嵌入式单片机原理与应用(修订版)详细介绍ATMEL公司开发的AVR高速嵌入式单片机的结构;讲述AVR单片机的开发工具和集成开发环境(IDE),包括Studio调试工具、AVR单片机汇编器和单片机串行下载编程;学习指令系统时,每条指令均有实例,边学习边调试,使学习者看得见指令流向及操作结果,真正理解每条指令的功能及使用注意事项;介绍AVR系列多种单片机功能特点、实用程序设计及应用实例;作为提高篇,讲述简单易学、适用AVR单片机的高级语言BASCOMAVR及ICC AVR C编译器。 AVR高速嵌入式单片机原理与应用(修订版) 目录 第一章ATMEL单片机简介1.1ATMEL公司产品的特点11.2AT90系列单片机简介21.3AT91M系列单片机简介2第二章AVR单片机系统结构2.1AVR单片机总体结构42.2AVR单片机中央处理器CPU62.2.1结构概述72.2.2通用寄存器堆92.2.3X、Y、Z寄存器92.2.4ALU运算逻辑单元92.3AVR单片机存储器组织102.3.1可下载的Flash程序存储器102.3.2内部和外部的SRAM数据存储器102.3.3EEPROM数据存储器112.3.4存储器访问和指令执行时序112.3.5I/O存储器132.4AVR单片机系统复位162.4.1复位源172.4.2加电复位182.4.3外部复位192.4.4看门狗复位192.5AVR单片机中断系统202.5.1中断处理202.5.2外部中断232.5.3中断应答时间232.5.4MCU控制寄存器 MCUCR232.6AVR单片机的省电方式242.6.1休眠状态242.6.2空闲模式242.6.3掉电模式252.7AVR单片机定时器/计数器252.7.1定时器/计数器预定比例器252.7.28位定时器/计数器0252.7.316位定时器/计数器1272.7.4看门狗定时器332.8AVR单片机EEPROM读/写访问342.9AVR单片机串行接口352.9.1同步串行接口 SPI352.9.2通用串行接口 UART402.10AVR单片机模拟比较器452.10.1模拟比较器452.10.2模拟比较器控制和状态寄存器ACSR462.11AVR单片机I/O端口472.11.1端口A472.11.2端口 B482.11.3端口 C542.11.4端口 D552.12AVR单片机存储器编程612.12.1编程存储器锁定位612.12.2熔断位612.12.3芯片代码612.12.4编程 Flash和 EEPROM612.12.5并行编程622.12.6串行下载662.12.7可编程特性67第三章AVR单片机开发工具3.1AVR实时在线仿真器ICE200693.2JTAG ICE仿真器693.3AVR嵌入式单片机开发下载实验器SL?AVR703.4AVR集成开发环境(IDE)753.4.1AVR Assembler编译器753.4.2AVR Studio773.4.3AVR Prog783.5SL?AVR系列组态开发实验系统793.6SL?AVR*.ASM源文件说明81第四章AVR单片机指令系统4.1指令格式844.1.1汇编指令844.1.2汇编器伪指令844.1.3表达式874.2寻址方式894.3数据操作和指令类型924.3.1数据操作924.3.2指令类型924.3.3指令集名词924.4算术和逻辑指令934.4.1加法指令934.4.2减法指令974.4.3乘法指令1014.4.4取反码指令1014.4.5取补指令1024.4.6比较指令1034.4.7逻辑与指令1054.4.8逻辑或指令1074.4.9逻辑异或指令1104.5转移指令1114.5.1无条件转移指令1114.5.2条件转移指令1144.6数据传送指令1354.6.1直接数据传送指令1354.6.2间接数据传送指令1374.6.3从程序存储器直接取数据指令1444.6.4I/O口数据传送指令1454.6.5堆栈操作指令1464.7位指令和位测试指令1474.7.1带进位逻辑操作指令1474.7.2位变量传送指令1514.7.3位变量修改指令1524.7.4其它指令1614.8新增指令(新器件)1624.8.1EICALL-- 延长间接调用子程序1624.8.2EIJMP--扩展间接跳转1634.8.3ELPM--扩展装载程序存储器1644.8.4ESPM--扩展存储程序存储器1644.8.5FMUL--小数乘法1664.8.6FMULS--有符号数乘法1664.8.7FMULSU--有符号小数和无符号小数乘法1674.8.8MOVW--拷贝寄存器字1684.8.9MULS--有符号数乘法1694.8.10MULSU--有符号数与无符号数乘法1694.8.11SPM--存储程序存储器170 第五章AVR单片机AT90系列5.1AT90S12001725.1.1特点1725.1.2描述1735.1.3引脚配置1745.1.4结构纵览1755.2AT90S23131835.2.1特点1835.2.2描述1845.2.3引脚配置1855.3ATmega8/8L1855.3.1特点1865.3.2描述1875.3.3引脚配置1895.3.4开发实验工具1905.4AT90S2333/44331915.4.1特点1915.4.2描述1925.4.3引脚配置1945.5AT90S4414/85151955.5.1特点1955.5.2AT90S4414和AT90S8515的比较1965.5.3引脚配置1965.6AT90S4434/85351975.6.1特点1975.6.2描述1985.6.3AT90S4434和AT90S8535的比较1985.6.4引脚配置2005.6.5AVR RISC结构2015.6.6定时器/计数器2125.6.7看门狗定时器 2175.6.8EEPROM读/写2175.6.9串行外设接口SPI2175.6.10通用串行接口UART2175.6.11模拟比较器 2175.6.12模数转换器2185.6.13I/O端口2235.7ATmega83/1632285.7.1特点2285.7.2描述2295.7.3ATmega83与ATmega163的比较2315.7.4引脚配置2315.8ATtiny10/11/122325.8.1特点2325.8.2描述2335.8.3引脚配置2355.9ATtiny15/L2375.9.1特点2375.9.2描述2375.9.3引脚配置2395 .10ATmega128/128L2395.10.1特点2405.10.2描述2415.10.3引脚配置2435.10.4开发实验工具2455.11ATmega1612465.11.1特点2465.11.2描述2475.11.3引脚配置2475.12AVR单片机替代MCS51单片机249第六章实用程序设计6.1程序设计方法2506.1.1程序设计步骤2506.1.2程序设计技术2506.2应用程序举例2516.2.1内部寄存器和位定义文件2516.2.2访问内部 EEPROM2546.2.3数据块传送2546.2.4乘法和除法运算应用一2556.2.5乘法和除法运算应用二2556.2.616位运算2556.2.7BCD运算2556.2.8冒泡分类算法2556.2.9设置和使用模拟比较器2556.2.10半双工中断方式UART应用一2556.2.11半双工中断方式UART应用二2566.2.128位精度A/D转换器2566.2.13装载程序存储器2566.2.14安装和使用相同模拟比较器2566.2.15CRC程序存储的检查2566.2.164×4键区休眠触发方式2576.2.17多工法驱动LED和4×4键区扫描2576.2.18I2C总线2576.2.19I2C工作2586.2.20SPI软件2586.2.21验证SLAVR实验器及AT90S1200的口功能12596.2.22验证SLAVR实验器及AT90S1200的口功能22596.2.23验证SLAVR实验器及具有DIP40封装的口功能第七章AVR单片机的应用7.1通用延时子程序2607.2简单I/O口输出实验2667.2.1SLAVR721.ASM 2667.2.2SLAVR722.ASM2677.2.3SLAVR723.ASM2687.2.4SLAVR724.ASM2707.2.5SLAVR725.ASM2717.2.6SLAVR726.ASM2727.2.7SLAVR727.ASM2737.3综合程序2747.3.1LED/LCD/键盘扫描综合程序2747.3.2LED键盘扫描综合程序2757.3.3在LED上实现字符8的循环移位显示程序2757.3.4电脑放音机2777.3.5键盘扫描程序2857.3.6十进制计数显示2867.3.7廉价的A/D转换器2897.3.8高精度廉价的A/D转换器2947.3.9星星灯2977.3.10按钮猜数程序2987.3.11汉字的输入3047.4复杂实用程序3067.4.110位A/D转换3067.4.2步进电机控制程序3097.4.3测脉冲宽度3127.4.4LCD显示8字循环3187.4.5LED电脑时钟3247.4.6测频率3307.4.7测转速3327.4.8AT90S8535的A/D转换334第八章BASCOMAVR的应用8.1基于高级语言BASCOMAVR的单片机开发平台3408.2BASCOMAVR软件平台的安装与使用3418.3AVR I/O口的应用3458.3.1LED发光二极管的控制3458.3.2简易手控广告灯3468.3.3简易电脑音乐放音机3478.4LCD显示器3498.4.1标准LCD显示器的应用3498.4.2简单游戏机--按钮猜数3518.5串口通信UART3528.5.1AVR系统与PC的简易通信3538.5.2PC控制的简易广告灯3548.6单总线接口和温度计3568.7I2C总线接口和简易IC卡读写器359第九章ICC AVR C编译器的使用9.1ICC AVR的概述3659.1.1介绍ImageCraft的ICC AVR3659.1.2ICC AVR中的文件类型及其扩展名3659.1.3附注和扩充3669.2ImageCraft的ICC AVR编译器安装3679.2.1安装SETUP.EXE程序3679.2.2对安装完成的软件进行注册3679.3ICC AVR导游3689.3.1起步3689.3.2C程序的剖析3699.4ICC AVR的IDE环境3709.4.1编译一个单独的文件3709.4.2创建一个新的工程3709.4.3工程管理3719.4.4编辑窗口3719.4.5应用构筑向导3719.4.6状态窗口3719.4.7终端仿真3719.5C库函数与启动文件3729.5.1启动文件3729.5.2常用库函数3729.5.3字符类型库3739.5.4浮点运算库3749.5.5标准输入/输出库3759.5.6标准库和内存分配函数3769.5.7字符串函数3779.5.8变量参数函数3799.5.9堆栈检查函数3799.6AVR硬件访问的编程3809.6.1访问AVR的底层硬件3809.6.2位操作3809.6.3程序存储器和常量数据3819.6.4字符串3829.6.5堆栈3839.6.6在线汇编3839.6.7I/O寄存器3849.6.8绝对内存地址3849.6.9C任务3859.6.10中断操作3869.6.11访问UART3879.6.12访问EEPROM3879.6.13访问SPI3889.6.14相对转移/调用的地址范围3889.6.15C的运行结构3889.6.16汇编界面和调用规则3899.6.17函数返回非整型值3909.6.18程序和数据区的使用3909.6.19编程区域3919.6.20调试3919.7应用举例*3929.7.1读/写口3929.7.2延时函数3929.7.3读/写EEPROM3929.7.4AVR的PB口变速移位3939.7.5音符声程序3939.7.68字循环移位显示程序3949.7.7锯齿波程序3959.7.8正三角波程序3969.7.9梯形波程序396附录1AT89系列单片机简介398附录2AT94K系列现场可编程系统标准集成电路401附录3指令集综合404附录4AVR单片机选型表408参 考 文 献412
上传时间: 2013-11-08
上传用户:xcy122677
输入输出总线接口技术
上传时间: 2013-10-21
上传用户:lhuqi
本资料是面向CAN 总线初学者的CAN 入门书。对CAN 是什么、CAN 的特征、标准规格下的位置分布等、CAN 的概要及CAN 的协议进行了说明。2. 使用注意事项本资料对博世(BOSCH)公司所提出的CAN 概要及协议进行了归纳,可作为实际应用中的参考资料。对于具有CAN 功能的产品不承担任何责任。 1. 概要....................................................................... 12. 使用注意事项.................................................................... 13. CAN 是什么?................................................. 23.1 CAN 的应用示例......................................................... 33.2 总线拓扑图................................................ 44. CAN 的特点................................................................... 55. 错误................................................................................... 65.1 错误状态的种类...................................................... 65.2 错误计数值.............................................................................. 86. CAN 协议的基本概念........................................... 97. CAN 协议及标准规格.................................. 127.1 ISO 标准化的CAN 协议................................................. 127.2 ISO11898 和ISO11519-2 的不同点...................................... 137.3 CAN 和标准规格....................................................................... 178. CAN 协议.................................................................................. 188.1 帧的种类.................................................................. 188.2 数据帧....................................................... 218.3 遥控帧.......................................................................................... 288.4 错误帧........................................................................ 308.5 过载帧......................................................................... 318.6 帧间隔................................................................ 328.7 优先级的决定..................................................... 338.8 位填充................................................................................. 368.9 错误的种类.............................................................. 378.10 错误帧的输出.................................................. 398.11 位时序........................................................................ 408.12 取得同步的方法................................................. 428.13 硬件同步.................................................................... 438.14 再同步.................................................................... 448.15 调整同步的规则....................................................... 45
上传时间: 2013-10-14
上传用户:清山绿水
Keil C51 V8 专业开发工具(PK51) PK51是为8051系列单片机所设计的开发工具,支持所有8051系列衍生产品,,支持带扩展存储器和扩展指令集(例如Dallas390/5240/400,Philips 51MX,Analog Devices MicroConverters)的新设备,以及支持很多公司的一流的设备和IP内核,比如Analog Devices, Atmel, Cypress Semiconductor, Dallas Semiconductor, Goal, Hynix, Infineon, Intel, NXP(founded by Philips), OKI, Silicon Labs,SMSC, STMicroeleectronics,Synopsis, TDK, Temic, Texas Instruments,Winbond等。 通过PK51专业级开发工具,可以轻松地了解8051的On-chip peripherals与及其它关键特性。 The PK51专业级开发工具包括… l μVision Ø 集成开发环境 Ø 调试器 Ø 软件模拟器 l Keil 8051扩展编译工具 Ø AX51宏汇编程序 Ø ANSI C编译工具 Ø LX51 连接器 Ø OHX51 Object-HEX 转换器 l Keil 8051编译工具 Ø A51宏汇编程序 Ø C51 ANSI C编译工具 Ø BL51 代码库连接器 Ø OHX51 Object-HEX 转换器 Ø OC51 集合目标转换器 l 目标调试器 Ø FlashMON51 目标监控器 Ø MON51目标监控器 Ø MON390 (Dallas 390)目标监控器 Ø MONADI (Analog Devices 812)目标监控器 Ø ISD51 在系统调试 l RTX51微实时内核 你应该考虑PK51开发工具包,如果你… l 需要用8051系列单片机来开发 l 需要开发 Dallas 390 或者 Philips 51MX代码 l 需要用C编写代码 l 需要一个软件模拟器或是没有硬件仿真器 l 需要在单芯片上基于小实时内核创建复杂的应用
上传时间: 2013-10-30
上传用户:yy_cn
电路板布局………………………………………42.1 电源和地…………………………………………………………………….42.1.1 感抗……………………………………………………………………42.1.2 两层板和四层板………………………………………………………42.1.3 单层板和二层板设计中的微处理器地……………………………….42.1.4 信号返回地……………………………………………………………52.1.5 模拟数字和高压…………………………………………………….52.1.6 模拟电源引脚和模拟参考电压……………………………………….52.1.7 四层板中电源平面因该怎么做和不应该怎么做…………………….52.2 两层板中的电源分配……………………………………………………….62.2.1 单点和多点分配……………………………………………………….62.2.2 星型分配………………………………………………………………62.2.3 格栅化地……………………………………………………………….72.2.4 旁路和铁氧体磁珠……………………………………………………92.2.5 使噪声靠近磁珠……………………………………………………..102.3 电路板分区………………………………112.4 信号线……………………………………………………………………...122.4.1 容性和感性串扰……………………………………………………...122.4.2 天线因素和长度规则………………………………………………...122.4.3 串联终端传输线…………………………………………………..132.4.4 输入阻抗匹配………………………………………………………...132.5 电缆和接插件……………………………………………………………...132.5.1 差模和共模噪声……………………………………………………...142.5.2 串扰模型……………………………………………………………..142.5.3 返回线路数目……………………………………..142.5.4 对板外信号I/O的建议………………………………………………142.5.5 隔离噪声和静电放电ESD ……………………………………….142.6 其他布局问题……………………………………………………………...142.6.1 汽车和用户应用带键盘和显示器的前端面板印刷电路板………...152.6.2 易感性布局…………………………………………………………...15
上传时间: 2013-10-19
上传用户:HGH77P99
本程序是对一幅图像进行变灰度、旋转、锐化、在图像上画圆或椭圆、直线等操作的程序。 说明:要实现相应功能的操作,需要在输入框内输入正确的表达式。举例如下: 画直线:x1=20,y1=15,x2=150,y2=100 画圆:x=100,y=100,r=20 画椭圆:x=100,y=100,r=20,a=16,b=9 旋转:x=30(度数),ax=100,ay=90 锐化:x=80
上传时间: 2013-12-24
上传用户:songrui
学校网站由一个文章发布系统、公告系统、计数系统三个部分组成。 1、自动生成HTM文件,可以大大降降低服务器的负担,提高新闻的浏览速度。 2、采用分级审核制度,输入员和审核员分工操作,允许管理员对新闻审核后发布。 3、采用JS,可以方便在页面的任意位置增加新闻。 4、可以显示本周TOP10热点新闻(可定义)。week.asp 目前为前10条 5、可以自定义推荐新闻。tjnews.asp tjnews1.asp目前为前10条 6、采用UBB系统,可以在文章的任意位置放置图片,数量不限。 7、有新闻阅读数目限显示。 8、可以显示每条新闻的相关新闻。about.asp 目前为5条 9、新闻推荐功能 10、新闻评论功能 11、全新分级用户管理系统 12、全新栏目管理系统,自动建立栏目目录(需要服务器支持FSO) 13、具有新闻搜索功能 14、菜单自动生成功能 15、多模版功能,可以删除,修改和增加,超强的模版管理功能。 后台管理为admin/login.asp 系统测试管理员: 帐号:admin 密码:itboot 演示:http://demo.itboot.net/shop8
上传时间: 2013-12-09
上传用户:拔丝土豆
支持存储器类型 [NAND FLASH] 1: K9F1208UOA [NOR FLASH] 1: E28F128J3A 2: AM29LV800DB 3: AM29LV160DB 4: SST39VF800 5: SST39VF160 6: SST39VF1601 7: AM29LV320DB 8: AM29LV320DT 9: S29GL064M90TFIR4
标签: FLASH E28F128J3A F1208 NAND
上传时间: 2015-07-23
上传用户:894898248
很好的java教程 无需密码即可解压,双击可执行文件 直接阅读 引言 1. 前提 2. Java的学习 3. 目标 4. 联机文档 5. 章节 6. 练习 7. 多媒体CD-ROM 8. 源代码 9. 编码样式 10. Java版本 11. 课程和培训 12. 错误 13. 封面设计 14. 致谢
上传时间: 2015-08-13
上传用户:dongqiangqiang
mpg123 是 MPEG 1.0/2.0/2.5 的实时播放软件,可以解压第1,2和3层。可以运行在 linux, MacOSX, FreeBSD, SunOS4.1.3, Solaris 2.5, HPUX 9.x, SGI Irix and Cygwin 上.
上传时间: 2015-09-09
上传用户:1583060504