图书介绍
AVR单片机C语言开发入门指导2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载

- 沈文等编著 著
- 出版社: 北京:清华大学出版社
- ISBN:7302065306
- 出版时间:2003
- 标注页数:479页
- 文件大小:35MB
- 文件页数:493页
- 主题词:单片微型计算机,AVR;C语言-程序设计
PDF下载
下载说明
AVR单片机C语言开发入门指导PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
2.6 函数 51
目 录1
7.4 CodeVisionAVR应用实例 431
7.4.1 延迟函数 431
第1章AVR单片机与C语言1
1.1 用C语言开发单片机的优势1
1.2 AVR单片机的特点2
1.3.7 AVR单片机内置看门狗电路(Watchdog)的使用 13
1.3.1 AVR和MCS-51存储器配置的对比4
1.3从Keil C51向ICCAVR快速过渡4
1.3.2 AVR输入/输出端口的使用6
1.3.3 AVR和MCS-51定时器的对比7
1.3.4 AVR和MCS-51中断系统的对比9
1.3.5 AVR和MCS-51位操作的对比11
1.3.6 AVR单片机内置EEPROM的使用12
1.3.8 AVR和MCS-51中串口通信UART功能的对比14
1.3.9 C51的源代码向ICCAVR的快速转换16
2.1标识符、关键字和数据类型17
2.1.1标识符17
第2章ICCAVR使用的C语言基础知识17
2.1.2数据类型20
2.2数据的输入/输出27
2.2.1数据输入27
2.2.2数据输出29
2.3.1 关系表达式和逻辑表达式30
2.3逻辑运算和判断选取控制30
2.3.2 if语句32
2.3.3条件运算符34
2.3.4 switch语句35
2.4循环控制36
2.4.1 goto语句以及用goto语句构成循环36
2.4.2 while语句37
2.4.3 do…while语句38
2.4.4 for语句39
2.4.5 几种循环的比较41
2.5 数组41
2.5.1一维数组的定义和引用41
2.5.2二维数组的定义和引用44
2.5.3字符数组45
2.6.1库函数51
2.6.2函数的定义和返回值52
2.6.3 函数的参数53
2.6.4函数的调用55
2.6.5中断服务函数57
2.7指针58
2.7.1变量的指针和指向变量的指针变量59
2.7.2指针变量的定义和指针变量的基类型59
2.7.3对指针变量的操作60
2.7.4数组的指针和指向数组的指针变量64
2.7.5字符串指针和指向字符串的指针变量66
2.7.6函数的指针和指向函数的指针变量68
2.7.7指针数组和指向指针的指针69
2.7.8有关指针的数据类型和指针运算的小结70
2.8.1 定义结构体类型变量的方法72
2.8结构体与共用体72
4.2.2位操作的C源程序实例及剖析 174
2.8.2结构体变量的初始化75
2.8.3结构体类型变量的引用76
2.8.4定义一个结构体数组77
2.8.5指向结构体类型数据的指针78
2.8.6用指针处理链表80
2.8.7共用体83
2.8.8枚举类型85
2.8.9用typedef定义类型86
2.9位运算88
2.9.1 位运算符88
2.9.2位域91
2.1 0.1 局部变量和全局变量92
2.10标识符的作用域和存储类型92
2.10.2局部变量及其作用域和生存期93
2.10.3 全局变量及其作用域和生存期94
2.11编译预处理96
2.11.1 宏定义96
2.11.2 “文件包含”处理99
2.11.3条件编译100
2.11.4编译附注和扩充101
2.12在线汇编106
2.12.1 汇编界面107
2.12.2在线汇编中函数调用规则109
2.12.3汇编语法110
2.12.4ICCAVR增补的汇编伪指令112
2.13 C源程序常见错误分析116
2.14 C源程序调试131
第3章ICCAVR集成环境133
3.1ICCAVR编译器的安装与注册133
3.1.1 ICCAVR编译器的安装133
3.1.2 ICCAVR编译器的注册134
3.2.2 ICCAVR中的文件类型及扩展名137
3.2.1 ICCAVR编译器简介137
3.2 ICCAVR编译器的特点137
3.2.3 AVR存储器的使用138
3.2.4启动文件140
3.3 ICCAVR菜单解释141
3.4 ICCAVR编译器的IDE环境153
3.4.1 工程管理153
3.4.2创建并编译一个文件154
3.4.3创建并编译一个工程文件155
3.5用应用构筑向导生成一个工程文件157
3.6 ICCAVR6.26C支持的库函数介绍160
3.6.1头文件160
3.6.2库源代码161
3.6.4字符类型函数162
3.6.5浮点类型函数162
3.6.3 macros.h162
3.6.6标准输入/输出函数164
3.6.7读/写内置EEPROM函数166
3.6.8标准库和内存分配函数166
3.6.9字符串函数168
3.6.11堆栈检查函数169
3.6.10变量参数函数169
3.6.12双龙电子增补的库函数171
第4章用ICCAVRC操作硬件资源173
4.1 访问AVR的硬件173
4.2位操作173
4.2.1位操作的特点173
4.2.3使用单总线访问DS18B20179
4.3程序存储器和常量数据185
4.3.1 程序存储器和常量数据的特点185
4.3.2程序存储器和常量数据的C语言源程序及剖析186
4.3.3利用程序空间常量表实现16位快速CRC189
4.4 C任务(Tasks)191
4.5 I/O寄存器192
4.5.1 I/O寄存器操作的特点192
4.5.2 I/O寄存器的C语言源程序及剖析192
4.5.3实现1×8键盘和LED显示193
4.6数据存储器的绝对寻址197
4.6.1 数据存储器绝对寻址的操作特点197
4.6.2绝对寻址数据存储器C语言源程序及剖析198
4.6.3 使用ST16C550扩展串口201
4.6.4程序存储器的绝对定位206
4.6.5 EEPROM的绝对定位207
4.7中断操作208
4.7.1 中断操作的特点(外部中断和定时/计数器中断)208
4.7.2中断操作的C语言源程序及剖析210
4.7.3 4×4按键唤醒电路211
4.8定时/计数器216
4.8.1 定时/计数器操作的特点217
4.8.2定时/计数器操作的C语言源程序及剖析224
4.8.3 60Hz时钟发生器225
4.9访问UART229
4.9.1 访问UART操作的特点229
4.9.2 访问UART操作的C语言源程序及剖析234
4.9.3 UART速率自适应检测236
4.10访问内置的EEPROM239
4.10.1 访问单片机内置EEPROM操作的特点239
4.10.2访问内置EEPROM操作的C源程序实例及剖析241
4.10.3初始化内置的EEPROM数据244
4.11 访问同步串行接口SPI245
4.11.1访问SPI操作的特点245
4.11.2访问SPI操作C源程序实例及剖析248
4.11.3使用DataFlash存储器251
4.12复位和Watchdog259
4.12.1 复位和Watchdog操作的特点259
4.12.2复位和WDT的C源程序实例及剖析263
第5章ICCAVR应用实例265
5.1 C程序优化265
5.1.1程序结构的优化265
5.1.2源程序中代码的优化267
5.2延时函数270
5.3读/写片内EEPROM272
5.4信号周期测量程序273
5.5键盘扫描程序275
5.6生成模拟音乐279
5.7利用I2C总线读写AT24C02282
5.8利用单总线访问DS18B20286
5.9用LCD显示中文及图形291
5.10多通道A/D变换299
5.11 A/D和D/A变换302
5.12利用PWM方式产生双音频信号307
5.13 通过UART使用PC机键盘311
5.14 ATmega8的boot引导IAP应用317
5.15 ATmega8内置RTC的应用323
第6章GCCAVR软件使用初步327
6.1 GCCAVR安装328
6.1.1下载328
6.1.2安装328
6.2使用GCC AVR工具334
6.2.1建立一个项目334
6.2.2编译和链接337
6.2.3使用“MAP”文件338
6.2.4产生.hex文件339
6.2.5使用makefile文件341
6.3.1 应用程序启动过程(Start Up)348
6.3 应用API348
6.3.2存储器API349
6.3.3 中断API353
6.3.4 I/O端口API355
6.3.5看门狗WDT API358
6.4 GCC AVR使用在线汇编359
6.4.1 GCC AVR的ASM声明359
6.4.2汇编代码360
6.4.3输入/输出操作数360
6.4.4 Clobber寄存器363
6.4.5在线汇编中使用#define定义的常量365
6.4.6混合编程的寄存器使用366
6.5使用定时/计数器367
6.5.1定时/计数器0367
6.5.2定时/计数器1374
6.6.1 发送数据382
6.6通用异步串行通信UART382
6.6.2接收数据385
6.7库函数388
6.7.1头文件介绍388
6.7.2库函数功能介绍389
第7章CodeVisionAVR集成环境399
7.1 CodeVisionAVR编译器简介399
7.1.1 标识符399
7.1.2关键字399
7.1.3数据类型399
7.1.4常量400
7.1.5变量400
7.1.6运算符401
7.1.7存储空间402
7.1.8访问寄存器404
7.1.9中断服务函数404
7.1.10 C任务405
7.2 CodeVisionAVR菜单简介405
7.3.2标准输入/输出函数415
7.3.1字符类型函数415
7.3 CodeVisionAVR编译器常用库函数简介415
7.3.3标准内存分配函数417
7.3.4数学函数417
7.3.5字符串函数419
7.3.6 BCD转换函数422
7.3.7存储器访问函数422
7.3.8延时函数422
7.3.9 LCD函数422
7.3.10 I2C总线函数424
7.3.11单总线函数429
7.3.13电源管理函数430
7.3.12 SPI函数430
7.3.14格雷码转换函数431
7.4.2字符型LCD432
7.4.3 访问AT24C02433
7.4.4使用I2C总线访问LM75435
7.4.5使用I2C总线访问PCF8563436
7.4.6使用单总线访问DS1820437
7.4.7使用SPI访问AD7896438
7.4.8 8路A/D自动巡测系统441
第8章IAR软件使用初步449
8.1 IAR Embedded Workbench简介449
8.1.1 安装449
8.1.2配置IAR C编译器452
8.2.1 使用IAR寄存器455
8.2使用IAR寄存器和位操作455
8.2.2 IAR位操作457
8.3 IAR中断向量和中断使用458
8.4 IAR数据类型和数据空间459
8.4.1数据类型及取值范围459
8.4.2数据空间460
8.5 IAR操作MCU外设462
8.5.1使用定时/计数器462
8.5.2 使用UART463
8.5.3使用EEPROM465
8.5.4使用数据空间绝对地址465
8.6使用IAR模拟I2C主模式程序实例467
附录A SL-AVR开发实验器简介472
附录B SL-mega8开发实验器原理图478
参考文献479
热门推荐
- 1352847.html
- 3044915.html
- 981714.html
- 2681415.html
- 2753891.html
- 686151.html
- 2202248.html
- 1818414.html
- 673069.html
- 2963392.html
- http://www.ickdjs.cc/book_918250.html
- http://www.ickdjs.cc/book_3463605.html
- http://www.ickdjs.cc/book_1608428.html
- http://www.ickdjs.cc/book_1231617.html
- http://www.ickdjs.cc/book_3544918.html
- http://www.ickdjs.cc/book_3664343.html
- http://www.ickdjs.cc/book_3796616.html
- http://www.ickdjs.cc/book_3829659.html
- http://www.ickdjs.cc/book_747034.html
- http://www.ickdjs.cc/book_2751506.html