《面向AMetal框架和接口的C编程》PDF下载

  • 购买积分:19 如何计算积分?
  • 作  者:周立功主编
  • 出 版 社:北京:北京航空航天大学出版社
  • 出版年份:2018
  • ISBN:9787512428720
  • 页数:658 页
图书介绍:Metal构建了一套抽象度更高的标准化接口,封装了各种MCU底层的变化,为应用软件提供了更稳定的抽象服务,延长了软件系统的生命周期。因此无论你选择什么MCU,只要支持AMetal,开发者无需阅读用户手册,不需要知道什么是AMetal,就可以高度复用原有的代码。介绍了AMetal的编程方法,大量实例。本书适合从事嵌入式软件开发、业控制或工业通信的工程技术人员,也可作为大学高职高专电子信息、机电一体化等专业的参考书,使学生掌握各类外设使用方法,还可以学习到在嵌入式开发中使用C实现面向对象的编程思想。

第1章 AM824_Core开发套件 1

1.1 LPC824微控制器 1

1.1.1 特性 1

1.1.2 概述 2

1.2 LPC84 x微控制器 7

1.2.1 特性 7

1.2.2 概述 9

1.3 开关矩阵(SWM) 13

1.3.1 SWM简介 13

1.3.2 SWM应用 14

1.4 AM824_Core 16

1.4.1 电源电路 17

1.4.2 最小系统 18

1.4.3 复位与调试电路 19

1.4.4 板载外设电路 20

1.4.5 跳线帽的使用 23

1.4.6 MiniPort接口 23

1.4.7 2×10扩展接口说明 25

1.4.8 MicroPort接口 26

1.5 MicroPort模块介绍 28

1.5.1 SPI Flash模块(MicroPort-Flash) 28

1.5.2 EEPROM模块(MicroPort-EEPROM) 29

1.5.3 RTC模块(MicroPort-RTC) 30

1.5.4 USB模块(MicroPort-USB) 32

1.5.5 RX8025T模块(MicroPort-RX8025T) 33

1.5.6 DS1302模块(MicroPort-DS1302) 35

1.5.7 Analog模块(MicroPort-Analog) 36

1.6 MiniPort模块介绍 38

1.6.1 LED模块(MiniPort-LED) 38

1.6.2 数码管模块(MiniPort-View) 40

1.6.3 按键模块(MiniPort-Key) 41

1.6.4 595模块(MiniPort-595) 43

1.6.5 ZLG72128模块(MiniPort-ZLG72128) 44

第2章 ADC信号调理电路设计 47

2.1 应用背景 47

2.1.1 标称精度 47

2.1.2 外围电路 48

2.1.3 干扰源 48

2.2 电路设计 49

2.2.1 基准源 50

2.2.2 低噪声模拟电源 52

2.2.3 瞬态驱动 53

2.2.4 输入信号滤波 55

2.2.5 模拟地与数字地 57

2.2.6 I/O扇出电流 58

2.3 必要措施 58

2.3.1 输入范围匹配 59

2.3.2 多通道采样设置 60

2.3.3 电源分配策略 63

2.3.4 PCB布局布线处理 63

2.4 实测验证 64

2.4.1 无噪声分辨率 64

2.4.2 积分非线性(INL) 65

2.4.3 失调与增益误差 68

2.5 应用说明 68

第3章 PWM实现DAC电路设计 70

3.1 实现原理 70

3.1.1 PWM信号时域分析 70

3.1.2 PWM信号频域分析 71

3.2 电路设计 72

3.2.1 DAC分辨率 72

3.2.2 有源低通滤波器 74

3.3 测试验证 75

3.3.1 DNL 75

3.3.2 INL 76

3.3.3 建立时间 77

3.4 参数总结 78

第4章 面向接口的编程 79

4.1 平台技术 79

4.1.1 创新的窘境 79

4.1.2 AWorks 80

4.1.3 AMetal 82

4.2 开关量信号 90

4.2.1 I/O系统 90

4.2.2 输出控制 91

4.3 LED数码管 97

4.3.1 静态显示 97

4.3.2 动态显示 100

4.3.3 闪烁处理 105

4.4 事件驱动 110

4.4.1 中断与事件驱动 110

4.4.2 软件定时器 111

4.5 键盘管理 120

4.5.1 独立按键 120

4.5.2 矩阵键盘 126

4.6 SPI总线 133

4.6.1 SPI总线简介 133

4.6.2 74HC595接口 136

4.7 I2C总线 142

4.7.1 I2C总线简介 142

4.7.2 LM75B接口 143

4.7.3 温控器 145

第5章 深入浅出AMetal 151

5.1 接口与实现 151

5.1.1 GPIO接口函数 151

5.1.2 LED接口与实现 159

5.1.3 I/O接口与中断 163

5.2 LED数码管接口 167

5.2.1 静态显示 167

5.2.2 动态显示 172

5.2.3 代码重构 176

5.3 键盘扫描接口 186

5.3.1 单个独立按键 186

5.3.2 多个独立按键 190

5.3.3 矩阵键盘 195

5.4 PWM接口 201

5.4.1 初始化 201

5.4.2 PWM接口函数 202

5.4.3 蜂鸣器接口函数 204

5.5 SPI总线 206

5.5.1 初始化 206

5.5.2 接口函数 207

5.5.3 SPI扩展接口 216

5.6 I2C总线 225

5.6.1 初始化 225

5.6.2 接口函数 226

5.6.3 I2C扩-展接口 229

5.7 A/D转换器 232

5.7.1 模/数信号转换 232

5.7.2 初始化 236

5.7.3 接口函数 237

5.7.4 温度采集 240

5.8 UART总线 253

5.8.1 初始化 254

5.8.2 接口函数 255

5.8.3 带缓冲区的UART接口 261

第6章 重用外设驱动代码 266

6.1 EEPROM存储器 266

6.1.1 器件简介 266

6.1.2 初始化 267

6.1.3 读/写函数 270

6.1.4 NVRAM通用接口函数 272

6.2 SPI NOR Flash存储器 278

6.2.1 基本功能 278

6.2.2 初始化 279

6.2.3 接口函数 282

6.2.4 MTD通用接口函数 285

6.2.5 FTL通用接口函数 290

6.2.6 微型数据库 297

6.3 RTC实时时钟 299

6.3.1 PCF85063 299

6.3.2 RTC通用接口 302

6.3.3 闹钟通用接口 306

6.3.4 系统时间 312

6.3.5 特殊功能控制接口 317

6.3.6 RX8025T 318

6.3.7 DS1302 328

6.4 键盘与数码管接口 337

6.4.1 ZLG72128简介 337

6.4.2 ZLG72128初始化 346

6.4.3 按键管理接口函数 349

6.4.4 数码管显示接口函数 351

第7章 面向通用接口的编程 361

7.1 LED控制接口 361

7.1.1 LED通用接口 361

7.1.2 LED驱动 363

7.1.3 MiniPort-LED 366

7.2 HC595接口 368

7.2.1 HC595通用接口 368

7.2.2 HC595驱动 369

7.2.3 使用HC595驱动LED 373

7.3 蜂鸣器控制接口 375

7.3.1 蜂鸣器通用接口 375

7.3.2 无源蜂鸣器驱动 377

7.4 温度采集接口 378

7.4.1 温度传感器通用接口 378

7.4.2 LM75B驱动 379

7.5 键盘 382

7.5.1 通用键盘接口 382

7.5.2 独立键盘驱动 385

7.5.3 矩阵键盘驱动 388

7.6 数码管 394

7.6.1 通用数码管接口 394

7.6.2 数码管驱动 398

7.6.3 数码管驱动(HC595输出段码) 403

7.7 数码管与矩阵键盘联合使用 407

7.7.1 数码管、键盘与I/O驱动 407

7.7.2 数码管、键盘与HC595驱动 411

7.8 ZLG72128——数码管与键盘管理 415

7.8.1 ZLG72128简介 415

7.8.2 ZLG72128驱动 416

7.9 温控器 421

第8章 深入理解AMetal 426

8.1 LED通用接口 426

8.1.1 定义接口 426

8.1.2 实现接口 428

8.2 HC595接口 444

8.2.1 定义接口 444

8.2.2 实现接口 446

8.3 蜂鸣器接口 454

8.3.1 定义接口 454

8.3.2 实现接口 455

8.4 温度采集接口 463

8.4.1 定义接口 463

8.4.2 实现接口 464

8.5 通用按键接口 469

8.5.1 定义接口 469

8.5.2 实现接口 472

8.5.3 检测按键的实现 480

8.6 通用数码管接口 486

8.6.1 定义接口 486

8.6.2 实现接口 488

第9章 BLE & ZigBee无线模块 509

9.1 BLE核心板 509

9.1.1 产品简介 509

9.1.2 协议说明 513

9.1.3 蓝牙模块初始化 514

9.1.4 蓝牙模块控制接口 518

9.1.5 蓝牙模块读/写数据接口 526

9.1.6 应用案例 529

9.2 ZigBee核心板 531

9.2.1 产品简介 531

9.2.2 组网应用 534

9.2.3 ZigBee初始化 535

9.2.4 ZigBee配置接口 538

9.2.5 ZigBee数据传输接口 545

9.2.6 应用案例 548

9.3 MVC框架 551

9.3.1 MVC模式 551

9.3.2 观察者模式 552

9.3.3 领域模型 555

9.3.4 子系统体系结构 556

9.3.5 软件体系结构 557

9.3.6 MVC应用程序优化 579

第10章 温度检测仪 582

10.1 业务建模 582

10.1.1 问题描述 582

10.1.2 系统用例图 583

10.2 分析建模 584

10.2.1 领域词典 584

10.2.2 类模型 585

10.2.3 交互模型 586

10.2.4 按键处理模型 589

10.3 温度检测设计 590

10.3.1 子系统接口 590

10.3.2 设计模型 592

10.3.3 模型初始化 594

10.3.4 设置与获取数据 595

10.3.5 报警状态 598

10.4 视图设计 600

10.4.1 数码管视图 600

10.4.2 蜂鸣器视图 602

10.4.3 ZigBee视图 604

10.5 按键处理模块设计 609

10.5.1 SET键处理 609

10.5.2 INC(加)键处理 616

10.5.3 DEC(减)键处理 617

10.5.4 L/R键处理 617

10.5.5 初始化 618

10.6 状态机设计 622

10.6.1 状态模型 622

10.6.2 设计模型 623

10.6.3 状态机 627

10.6.4 状态机接口 633

10.6.5 动作类 640

10.7 应用程序 651

参考文献 655