ARM 嵌入式软件工程方法和实践:面向AMetal 框架与接口的编程(上)

产品的BOM成本很低,而毛利又很高,为何很多上市公司的年利润却买不起一套房?房子到底是被谁买走了,这个问题值得我们反思!经过近二十年持之以恒的研究与分析,周立功教授对如何实现软件代码的复用和跨平台、实现开发者梦寐以求的奋斗目标,进...

作者:周立功主编
AMetal团队 编著

作者简介

周立功, 1964 年3 月生,湖南人,广州周立功单片机科技有限公司和广州致远电子有限公司创始人。教授,著名嵌入式系统技术专家, 先后出版了40 余本嵌入式系统专业技术大学教材与专著,荣获省级教学成果一等奖2 项和国家级教学成果二等奖1 项。现任广东省计算机学会单片机与嵌入式系统分会副理事长。

内容简介

《面向AMetal框架与接口的编程(上)》是《嵌入式软件工程方法与实践丛书》中的第一套第二本书,丛书共含四套:
第一套
《程序设计与数据结构》
《面向 AMetal 框架与接口的编程》(上)
《面向对象的分析与设计》
第二套
《面向 AWorks 框架与接口的编程》(适用于各种 MCU)
《面向对象的分析与设计》
第三套
《面向 AWorks 框架与接口的编程——基于 Linux》(适用于 ARM9 以上内核)
《面向对象的分析与设计》
第四套
《C++现代程序设计》
《面向 AWorks 框架与接口的编程——基于 C++》(适用于 ARM9 以上内核)
《面向对象的分析与设计》

目录

第1 章 AM824-Core 开发套件

1.1 LPC824 微控制器

1.1.1 特性

1.1.2 概述

1.2 LPC84x 微控制器

1.2.1 特性

1.2.2 概述

1.3 开关矩阵(SWM)

1.3.1 SWM 简介

1.3.2 SWM 应用

1.4 AM824-Core

1.4.1 电源电路

1.4.2 最小系统

1.4.3 复位与调试电路

1.4.4 板载外设电路

1.4.5 跳线帽使用

1.4.6 MiniPort 接口

1.4.7 2×10 扩展接口说明

1.4.8 MicroPort 接口

1.5 MicroPort 模块介绍

1.5.1 SPI Flash 模块

1.5.2 EEPROM 模块

1.5.3 RTC 模块

1.5.4 USB 模块

1.5.5 RX8025T 模块

1.5.6 DS1302 模块

1.5.7 Analog 模块

1.6 MiniPort 模块说明

1.6.1 LED 模块

1.6.2 数码管模块

1.6.3 按键模块

1.6.4 595 模块

1.6.5 ZLG72128 模块


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

2.1 应用背景

2.1.1 标称精度

2.1.2 外围电路

2.1.3 干扰源

2.2 电路设计

2.2.1 基准源

2.2.2 低噪声模拟电源

2.2.3 瞬态驱动

2.2.4 输入信号滤波

2.2.5 模拟地与数字地

2.2.6 I/O 扇出电流

2.3 必要措施

2.3.1 输入范围匹配

2.3.2 多通道采样设置

2.3.3 电源分配策略

2.3.4 PCB 布局布线处理

2.4 实测验证

2.4.1 无噪声分辨率

2.4.2 积分非线性(INL)

2.4.3 失调与增益误差

2.5 应用说明


第3 章 PWM 实现DAC 电路设计

3.1 实现原理

3.1.1 PWM 信号时域分析

3.1.2 PWM 信号频域分析

3.2 电路设计

3.2.1 DAC 分辨率

3.2.2 有源低通滤波器

3.3 测试验证

3.3.1 DNL

3.3.2 INL

3.3.3 建立时间

3.4 参数总结


第4 章 面向接口的编程

4.1 平台技术

4.1.1 创新的窘境

4.1.2 AWorks

4.2 开关量信号

4.2.1 I/O 输入输出

4.2.2 新建工程

4.2.3 输出控制

4.3 LED 数码管

4.3.1 静态显示

4.3.2 动态显示

4.3.3 闪烁处理

4.4 事件驱动

4.4.1 中断与事件驱动

4.4.2 软件定时器

4.5 键盘管理

4.5.1 独立按键

4.5.2 矩阵键盘

4.6 SPI 总线

4.6.1 SPI 总线简介

4.6.2 74HC595 接口

4.7 I2C 总线

4.7.1 I2C 总线简介

4.7.2 LM75B 接口

4.7.3 温控器


第5 章 深入浅出AMetal

5.1 接口与实现

5.1.1 GPIO 接口函数

5.1.2 LED 接口与实现

5.1.3 I/O 接口与中断

5.2 LED 数码管接口

5.2.1 静态显示

5.2.2 动态显示

5.2.3 代码重构

5.3 键盘扫描接口

5.3.1 单个独立按键

5.3.2 多个独立按键

5.3.3 矩阵键盘

5.4 PWM 接口

5.4.1 初始化

5.4.2 PWM 接口函数

5.4.3 蜂鸣器接口函数

5.5 SPI 总线

5.5.1 初始化

5.5.2 接口函数

5.5.3 SPI 扩展接口

5.6 I2C 总线

5.6.1 初始化

5.6.2 接口函数

5.6.3 I2C 扩展接口

5.7 A/D 转换器

5.7.1 模数信号转换

5.7.2 初始化

5.7.3 接口函数

5.7.4 温度采集

5.8 UART 总线

5.8.1 初始化

5.8.2 接口函数

5.8.3 带缓冲区的UART 接口


第6 章 重用外设驱动代码

6.1 E2PROM 存储器

6.1.1 器件简介

6.1.2 初始化

6.1.3 读写函数

6.1.4 NVRAM 通用接口函数

6.2 SPI NOR Flash 存储器

6.2.1 基本功能

6.2.2 初始化

6.2.3 接口函数

6.2.4 MTD 通用接口函数

6.2.5 FTL 通用接口函数

6.2.6 微型数据库

6.3 RTC 实时时钟

6.3.1 PCF85063

6.3.2 RTC 通用接口

6.3.3 闹钟通用接口

6.3.4 系统时间

6.3.5 特殊功能控制接口

6.3.6 RX8025T

6.3.7 DS1302

6.4 读写卡模块

6.4.1 基本功能

6.4.2 初始化

6.4.3 设备控制类接口函数

6.4.4 操作接口函数

6.4.5 密钥和权限控制

6.5 键盘与数码管接口

6.5.1 ZLG72128 接口

6.5.2 ZLG72128 初始化

6.5.3 按键管理接口函数

6.5.4 数码管显示接口函数


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

7.1 LED 控制接口

7.1.1 LED 通用接口

7.1.2 LED 驱动

7.1.3 MiniPort-LED

7.2 HC595 接口

7.2.1 HC595 通用接口

7.2.2 HC595 驱动

7.2.3 使用HC595 驱动LED

7.3 蜂鸣器控制接口

7.3.1 蜂鸣器通用接口

7.3.2 无源蜂鸣器驱动

7.4 温度采集接口

7.4.1 温度传感器通用接口

7.4.2 LM75B 驱动

7.5 键盘

7.5.1 通用键盘接口

7.5.2 独立键盘驱动

7.5.3 矩阵键盘驱动

7.6 数码管

7.6.1 通用数码管接口

7.6.2 数码管驱动

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

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

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

7.7.2 数码管、键盘与HC595 驱动

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

7.8.1 ZLG72128 简介

7.8.2 ZLG72128 驱动

7.9 温控器


第8 章 深入理解AMetal

8.1 LED 通用接口

8.1.1 定义接口

8.1.2 实现接口

8.2 HC595 接口

8.2.1 定义接口

8.2.2 实现接口

8.3 蜂鸣器接口

8.3.1 定义接口

8.3.2 实现接口

8.4 温度采集接口

8.4.1 定义接口

8.4.2 实现接口

8.5 通用按键接口

8.5.1 定义接口

8.5.2 实现接口

8.5.3 检测按键的实现

8.6 通用数码管接口

8.6.1 定义接口

8.6.2 实现接口


第9 章 BLE&zigbee 无线模块

9.1 BLE 核心板

9.1.1 产品简介

9.1.2 协议说明

9.1.3 蓝牙模块初始化

9.1.4 蓝牙模块控制接口

9.1.5 蓝牙模块读写数据接口

9.1.6 应用案例

9.2 zigbee 核心板

9.2.1 产品简介

9.2.2 组网应用

9.2.3 zigbee 初始化

9.2.4 zigbee 配置接口

9.2.5 zigbee 数据传输接口

9.2.6 应用案例

9.3 MVC 框架

9.3.1 MVC 模式

9.3.2 观察者模式

9.3.3 领域模型

9.3.4 子系统体系结构

9.3.5 软件体系结构

9.3.6 MVC 应用程序优化


第10 章 温度检测仪

10.1 业务建模

10.1.1 问题描述

10.1.2 系统用例图

10.2 分析建模

10.2.1 领域词典

10.2.2 类模型

10.2.3 交互模型

10.2.4 按键处理模型

10.3 温度检测设计

10.3.1 子系统接口

10.3.2 设计模型

10.3.3 模型初始化

10.3.4 设置与获取数据

10.3.5 报警状态

10.4 视图设计

10.4.1 数码管视图

10.4.2 蜂鸣器视图

10.4.3 zigbee 视图

10.5 按键处理模块设计

10.5.1 SET 键处理

10.5.2 INC(加)键处理

10.5.3 DEC(减)键处理

10.5.4 L/R 键处理

10.5.5 初始化

10.6 状态机设计

10.6.1 状态模型

10.6.2 设计模型

10.6.3 状态机

10.6.4 状态机接口

10.6.5 动作类

10.7 应用程序


附录A 参考文献

查看全部信息 ∨