封面
版权信息
自序
引言
第1章 前后台软件架构
1.1 MCU51的发展历史
1.2 前后台软件架构
1.2.1 大循环扫描类型
1.2.2 中断触发类型
1.2.3 节拍触发类型
1.2.4 综合性类型
1.3 实用单片机系统
1.3.1 目录结构
1.3.2 三要素实例
1.3.3 消息机制
1.3.4 软件定时器
1.3.5 按键扫描
1.3.6 串口通信
1.3.7 计时时钟
1.3.8 界面设计
1.4 小结
第2章 软件基础
2.1 Source Insight
2.2 C#编程风格
2.3 Keil-C51
2.4 MDK-ARM
2.5 结构体
2.6 临界态
2.7 临界态保护
2.8 数据存储对齐
2.9 指针
2.10 宏定义
2.11 字符编码
2.12 小结
第3章 小型工控系统
3.1 嵌入式设备分类
3.2 可编程控制器
3.2.1 起源
3.2.2 体系结构
3.2.3 编程语言
3.2.4 可靠性设计
3.2.5 易用性
3.3 人机界面
3.3.1 硬件介绍
3.3.2 软件编程
3.4 传感器
3.4.1 无源开关
3.4.2 接近开关
3.4.3 模拟传感器
3.5 驱动器
3.5.1 继电器
3.5.2 电磁阀
3.5.3 直流电动机
3.5.4 交流电动机
3.5.5 变频器
3.5.6 直流无刷电动机
3.5.7 伺服电动机
3.5.8 步进电动机
3.5.9 振动盘
3.5.10 工业电源类设备
3.6 Modbus协议
3.6.1 需求分析
3.6.2 UART收发器
3.6.3 帧模式
3.6.4 校验
3.6.5 接口标准
3.6.6 数据交换协议
3.7 PID
3.7.1 P算法
3.7.2 I算法
3.7.3 D算法
3.8 小结
第4章 msPLC/msOS设计过程
4.1 需求来源
4.2 项目背景
4.2.1 工作原理
4.2.2 硬件设计
4.2.3 软件设计
4.3 开发评估板
4.3.1 msPLC来源
4.3.2 msPLC-Demo
4.3.3 电路分析
4.4 八任务μC/OS-II
4.4.1 选择μC/OS-II
4.4.2 精简μC/OS-II
4.5 选择C#
4.5.1 C#命名规范
4.5.2 变量函数重名
4.5.3 分层分块
4.5.4 CMSIS
4.5.5 寄存器组
4.5.6 命名空间
4.5.7 抽象封装
4.5.8 优雅的编程风格
4.5.9 结构体System和App
4.5.10 引入设备层
4.5.11 文件目录建立
4.5.12 两大结构体
4.5.13 引入数据库
4.5.14 平台架构图
4.6 菜单界面
4.6.1 C#界面编程
4.6.2 控件
4.6.3 页面
4.6.4 控件链表
4.6.5 创建界面
4.6.6 解析界面
4.6.7 按键处理
4.7 业务逻辑
4.7.1 按键处理
4.7.2 访问机制
4.8 设备
4.8.1 Systick
4.8.2 ADC
4.8.3 DI
4.8.4 DO
4.8.5 Timer
4.8.6 USART1
4.8.7 Key
4.8.8 LCD
4.8.9 Storage
4.9 小结
第5章 定制双任务内核
5.1 处理器架构
5.2 工作原理
5.2.1 FlashROM
5.2.2 RAM
5.2.3 内核
5.2.4 动态变量与栈
5.2.5 函数调用
5.2.6 中断处理
5.3 内核切换
5.3.1 抢占
5.3.2 切换内容
5.3.3 如何切换
5.3.4 任务结构体
5.3.5 内核切换代码
5.3.6 栈初始化
5.3.7 创建任务
5.3.8 任务启动
5.4 消息机制
5.5 小结
第6章 应用
6.1 浮点类型显示
6.1.1 浮点类型数据存储结构
6.1.2 sprintf函数
6.1.3 水压控件初始化
6.2 数据库指针
6.3 界面定时刷新
6.4 msPLC-100C
6.4.1 接线端口
6.4.2 端口
6.4.3 RTC时钟电路
6.4.4 RS485接口
6.4.5 DC-DC
6.5 万年历
6.6 Modbus
6.6.1 HMI屏
6.6.2 主从机
6.6.3 从机代码
6.6.4 主机代码
6.7 小结
后记
更新时间:2019-01-03 20:55:04