第1章 ST7控制器简介1
1.1 ST7结构方框图1
1.2 ST7功能概述3
1.3 ST7产品系列4
1.4 ST7LITE39引脚图和引脚功能说明10
1.4.1 ST7LITE39引脚图(如图1.4所示)10
1.4.2 ST7LITE39方块图(如图1.5所示)11
1.4.3 ST7LITE39各引脚说明(如表1.4所列)11
第2章 Cosmic ST7 C语言的基础和特点13
2.1 C文件14
2.1.1 文件中的行14
2.1.2 文件中的注释15
2.1.3 文件中的三字母代替ASCII码15
2.1.4 符号表示15
2.1.5 标识符15
2.1.6 关键字15
2.1.7 常数16
2.1.8 操作符和标点16
2.2 声明16
2.2.1 整型17
2.2.2 位型17
2.2.3 实型17
2.2.4 指针18
2.2.5 阵列18
2.2.6 结构19
2.2.7 联合20
2.2.8 枚举21
2.2.9 变址数21
2.2.10 函数22
2.2.11 存储类22
2.2.12 类型定义23
2.2.13 变量的范围23
2.2.14 绝对地址24
2.3 表达式24
2.3.1 变量24
2.3.2 常量24
2.3.3 字符26
2.3.4 sizeof的用法27
2.3.5 运算符号27
2.3.6 优先级31
2.3.7 语句34
2.3.8 预处理42
第3章 ST7 Visual Develop(STVD7)的使用48
3.1 创建项目49
3.1.1 创建工作区(workspace)49
3.1.2 创建项目50
3.1.3 添加源文件51
3.1.4 添加其他的文件夹51
3.2 编译项目53
3.2.1 指定ST7目标处理器53
3.2.2 确认编译器选项54
3.2.3 定制C语言编译器选项55
3.2.4定制链接器选项57
3.2.5 对指定文件改变编译设置58
3.2.6 编译应用程序58
3.3 调试59
3.3.1 调试程序59
3.3.2 运行和停止程序61
3.3.3 单步调试程序62
3.4 断点63
3.4.1 设置普通断点63
3.4.2 设置带计数器的断点64
3.4.3 设置带条件的断点64
3.5 查看运行结果65
3.5.1 查看调用堆栈66
3.5.2 查看并改变局部变量67
3.5.3 用Watch, QuickWatch和 Memory查看变量68
3.6 执行内存映射71
3.7 高级仿真功能(使用EMU3仿真器)72
3.7.1 查看程序执行历史73
3.7.2 使用动态读写74
3.7.3 设置高级断点76
3.7.4 运行性能分析80
第4章 ST7实验板介绍83
4.1 REva母板的布局84
4.2 电源区(REva v1.x)85
4.2.1 电源区的视图85
4.2.2 电源配置85
4.2.3 特点85
4.2.4 局限86
4.3 电源区(REva V2.x)87
4.3.1 电源区的视图87
4.3.2 电源配置87
4.3.3 特征88
4.3.4 局限88
4.3.5 子板连接区88
4.3.6 特点88
4.3.7 插拔次数89
4.4 ISP/ISD(在线编程/调试)连接区89
4.5 复位区域89
4.5.1 特点89
4.5.2 局限89
4.6 数字输出区89
4.6.1 特点90
4.6.2 局限90
4.7 数据输入区90
4.7.1 特点90
4.7.2 局限90
4.8 模拟区90
4.8.1 特点91
4.8.2 局限91
4.9 通信区91
4.9.1 视图91
4.9.2 特点91
4.9.3 I2C92
4.9.4 串口通信92
4.9.5 局限93
4.10 辅助串口/CAN区93
4.11 辅助接口区93
4.12 REva母板的电路原理图93
4.13 实验板的子板96
4.13.1 ST7LITE3子板的特征96
4.13.2 ST7LITE3子板的规格96
4.13.3 ST7LITE3连接的详细列表(按照REva的特征)98
4.13.4 ST7LITE3连接的详细列表(按照I/O口)99
4.13.5 ST7LITE3子板的电路原理图99
4.14 实验板编译工具的连接和使用101
第5章 ST7基础应用103
5.1 模数转换器(ADC)103
5.1.1 功能说明103
5.1.2 模数转换器及其寄存器104
5.1.3 程序中所用到的主要函数说明107
5.1.4 程序调试109
5.1.5 程序清单112
5.2 EEPROM的读写115
5.2.1 功能说明115
5.2.2 EEPROM的读写流程及其寄存器115
5.2.3 程序中所用到的主要函数说明117
5.2.4 程序调试119
5.2.5 程序清单122
5.3 I/O口的操作125
5.3.1 功能说明125
5.3.2 I/O口及其寄存器125
5.3.3 程序中所用到的主要函数说明127
5.3.4 程序调试130
5.3.5 程序清单133
5.4 定时器(TIMER)138
5.4.1 功能说明138
5.4.2 定时器及其寄存器138
5.4.3 程序中所用到的主要函数说明143
5.4.4 程序调试145
5.4.5 程序清单149
5.5 中断控制器(ITC)155
5.5.1 功能说明155
5.5.2 中断控制器及其寄存器156
5.5.3 程序中所用到的主要函数说明159
5.5.4 程序调试160
5.5.5 程序清单163
5.6 串行外围接口(SPI)168
5.6.1 功能说明168
5.6.2 串行外围接口及其寄存器168
5.6.3 程序中所用到的主要函数说明173
5.6.4 程序清单177
第6章 基于ST7LITE的音频播放器191
6.1 音频播放器评估板综述191
6.2 音频播放器的评估板概念193
6.3 音频重现流程194
6.4 滤波器设计197
6.5 WAV文件转换过程197
6.6 程序中所用到的主要函数说明198
6.7 评估板的电路图199
6.8 程序清单202
第7章 基于ST7263的USB鼠标217
7.1 鼠标的基础217
7.1.1 光电机械部分描述217
7.1.2 光敏晶体管探测器218
7.1.3 位移方向探测218
7.2 ST7263微控制器介绍219
7.3 硬件实现219
7.4 软件实现221
7.4.1 设备枚举与配置221
7.4.2 USB鼠标描述符221
7.4.3 数据传送226
7.5 电源管理229
7.5.1 USB暂停模式的实现229
7.5.2 远程启动模式232
7.6 程序结构233
7.6.1 固件层233
7.6.2 鼠标操作程序234
7.7 程序清单237
第8章 低成本自同步的永磁交流(PMAC)电机267
8.1 工作原理267
8.2 PMAC电机控制基础269
8.3 在ST7LITE35微处理器上面实现270
8.3.1 ST7LITE3x的PWM模式12位自动重载定时器(ART)270
8.3.2 测量转子速度的定时器272
8.3.3 测量霍尔传感器周期的定时器配置273
8.4 原理图275
8.5 参数设置277
8.5.1 相位同步和相位角优化277
8.5.2 启动相位参数278
8.6 使用基于ST7LITE35的PMAC电机控制系统281
8.6.1 硬件连接281
8.6.2 开发工具281
8.7 程序中所用到的主要函数说明283
8.8 运行PMAC电机的程序设置及相关测量值286
8.8.1 运行PMAC电机的程序设置286
8.8.2 确定相位角及优化起始参数286
8.8.3 相关测量值287
8.9 程序清单288
参考文献301