《STM8S系列单片机原理与应用》PDF下载

  • 购买积分:12 如何计算积分?
  • 作  者:潘永雄编著
  • 出 版 社:西安:西安电子科技大学出版社
  • 出版年份:2011
  • ISBN:9787560626901
  • 页数:347 页
图书介绍:本书系统介绍了STM8S内核MCU芯片的指令系统,简要描述了其常用的内嵌外设结构、功能及基本使用方法,详细介绍了基于STM8S系列芯片应用系统的硬件组成、开发手段与设备等。

第1章 基础知识 1

1.1计算机的基本认识 1

1.1.1计算机系统的工作过程及其内部结构 3

1.1.2指令、指令系统及程序 8

1.2寻址方式 14

1.3单片机及其发展概况 14

1.3.1单片机及其特点 15

1.3.2单片机技术现状及将来发展趋势 16

习题1 19

第2章 STM8S系列MCU芯片内部结构 21

2.1 STM8S系列MCU性能概述 21

2.2 STM8S系列MCU内部结构 22

2.2.1 STM8内核CPU 24

2.2.2 STM8S封装与引脚排列 26

2.3通用I/O口GPIO(General Purpose I/O Port) 29

2.3.1 I/O引脚结构 30

2.3.2 I/O端口数据寄存器与控制寄存器 30

2.3.3输入模式 32

2.3.4输出模式 32

2.3.5多重复用引脚的选择 33

2.3.6 I/O引脚初始化特例 33

2.3.7 I/O引脚负载能力 34

2.4 STM8S的电源供电及滤波 35

2.5复位电路 37

2.5.1复位状态寄存器RST SR 38

2.5.2外部复位电路 39

2.6 时钟电路 40

2.6.1内部高速RC振荡器时钟源HSI 41

2.6.2内部低速RC振荡器时钟源LSI 42

2.6.3外部高速时钟源HSE 42

2.6.4时钟源切换 43

2.6.5时钟安全系统(CSS) 45

2.6.6时钟输出 46

2.6.7时钟初始化过程及特例 46

习题2 47

第3章 存储器系统及访问 48

3.1存储器结构 48

3.1.1随机读写RAM存储区 49

3.1.2 Flash ROM存储区 50

3.1.3数据EEPROM存储区 51

3.1.4硬件配置选项区 51

3.1.5通用I/O端口及外设寄存器区 52

3.1.6唯一ID号存储区 52

3.2存储器读写保护与控制寄存器 52

3.2.1存储器读保护(ROP)选择 52

3.2.2存储器写保护 52

3.2.3存储器控制寄存器 53

3.3 Flash ROM存储器IAP编程 54

3.3.1字节编程 55

3.3.2字编程 59

3.3.3块编程 65

习题3 68

第4章 STM8指令系统 69

4.1 ST汇编语言格式及其伪指令 69

4.1.1 ST汇编常数表示法 69

4.1.2 ST汇编语言格式 70

4.1.3 ST汇编支持的关系运算符 71

4.1.4 ST汇编伪指令(Pseudoinstruction) 72

4.2 STM8S寻址方式 78

4.2.1立即寻址(Immediate) 78

4.2.2寄存器寻址 79

4.2.3直接寻址(Direct) 79

4.2.4寄存器间接寻址 79

4.2.5变址寻址(Indexed) 79

4.2.6 以存储单元作间址的间接寻址方式 80

4.2.7复合寻址方式 81

4.2.8相对寻址 82

4.2.9隐含寻址 82

4.2.10位寻址 82

4.3 STM8S指令系统 83

4.3.1数据传送(Load and Transfer)指令 83

4.3.2算术运算(Arithmetic operations)指令 91

4.3.3增量/减量(Increment/decrement)指令 101

4.3.4逻辑运算(Logical operations)指令 102

4.3.5位操作(Bit Operation)指令 105

4.3.6移位操作(Shift and Rotates)指令 107

4.3.7比较(Compare)指令 110

4.3.8正负或零测试(Tests)指令 111

4.3.9控制及转移(Jump and Branch)指令 111

习题4 117

第5章 汇编语言程序设计 119

5.1 STVD开发环境与STM8汇编语言程序结构 119

5.1.1 STVD开发环境中创建工作站文件 119

5.1.2 STVD自动创建项目文件内容 121

5.1.3完善STVD自动创建的项目文件内容 124

5.1.4在项目文件中添加其他文件 128

5.2 STM8汇编程序结构 128

5.2.1子程序与中断服务程序在主模块内 128

5.2.2子程序与中断服务程序在各自模块内 130

5.2.3子程序结构 131

5.3程序基本结构 132

5.3.1顺序结构 132

5.3.2循环结构 135

5.3.3分支程序结构 135

5.4并行多任务程序结构及实现 140

5.4.1串行多任务程序结构与并行多任务程序结构 140

5.4.2并行多任务程序结构 141

5.5程序仿真与调试 145

习题5 148

第6章 STM8中断控制系统 149

6.1 CPU与外设通信方式概述 149

6.1.1查询方式 149

6.1.2中断通信方式 149

6.2 STM8S中断系统 150

6.2.1中断源及其优先级 150

6.2.2中断响应条件与处理过程 154

6.2.3外中断源及其初始化 155

6.2.4中断服务程序结构 157

习题6 158

第7章 STM8S系列MCU定时器 159

7.1高级控制定时器TIM 1结构 160

7.2 TIM 1时基单元 161

7.2.1 16位预分频器TIM 1_PSCR 162

7.2.2 16位计数器TIM 1_CNTR 162

7.2.3 16位自动装载寄存器TIM1_ARR 163

7.2.4计数方式 164

7.2.5重复计数器TIM1_RCR 167

7.2.6更新事件(UEV)与更新中断(UIF)控制逻辑 167

7.3 TIM 1时钟及触发控制 168

7.3.1主时钟触发信号 169

7.3.2外部时钟模式1 170

7.3.3外部时钟模式2 172

7.3.4触发同步 173

7.4捕获/比较通道 173

7.4.1输入模块内部结构 174

7.4.2输入捕获初始化与操作举例 175

7.4.3输出比较 176

7.4.4输出比较初始化举例 179

7.5定时器中断控制 182

7.6通用定时器TIM2/TIM3 182

7.6.1通用定时器TIM2/TIM3结构 182

7.6.2通用定时器时基单元 182

7.6.3通用定时器输入捕获/输出比较 183

7.6.4通用定时器TIM2/TIM3初始化举例 185

7.7窗口看门狗定时器W WDG 187

7.7.1窗口看门狗定时器结构及其溢出时间 187

7.7.2窗口看门狗定时器初始化 189

7.7.3在Halt状态下WWDG定时器的活动 189

7.8硬件看门狗定时器IWDG 189

7.8.1硬件看门狗定时器结构 190

7.8.2硬件看门狗定时器控制与初始化 190

习题7 192

第8章 STM8S MCU串行通信 193

8.1串行通信的概念 193

8.1.1串行通信的种类 194

8.1.2波特率 195

8.1.3串行通信数据传输方向 195

8.1.4串行通信接口的种类 196

8.2 UART串行通信接口 196

8.2.1 UART串行通信波特率设置 199

8.2.2 UART串行通信信息帧格式 199

8.2.3奇偶校验选择 200

8.2.4数据发送/接收过程 201

8.2.5多机通信 205

8.2.6 UART同步模式 207

8.2.7 UART串行通信的初始化步骤 209

8.3 RS232C串行接口标准及应用 210

8.3.1 RS232C的引脚功能 210

8.3.2 RS232C串行接口标准中主信道重要信号的含义 211

8.3.3电平转换 211

8.3.4 RS232C的连接 212

8.3.5通信协议及约定 213

8.4 RS422/RS485总线 214

8.4.1 RS422接口标准 215

8.4.2 RS485标准 216

8.4.3 RS422/RS485标准性能指标 216

8.4.4 RS485/RS422标准接口芯片简介 217

8.4.5 RS485/RS422通信接口实际电路 218

8.4.6避免总线冲突方式 219

8.5串行外设总线接口(SPI) 221

8.5.1 STM8S系列芯片SPI接口部件结构 222

8.5.2 STM8S系列芯片SPI接口部件功能 222

8.5.3 STM8S系列芯片SPI接口部件的初始化 229

习题8 231

第9章 ADC转换器及其使用 232

9.1 ADC转换器概述 232

9.2 ADC转换器功能选择 233

9.2.1分辨率与转换精度 233

9.2.2转换方式选择 234

9.2.3转换速度设置 237

9.2.4触发方式 237

9.3 ADC转换器初始化过程举例 237

9.4提高ADC转换精度与转换的可靠性 238

9.5软件滤波 239

9.5.1算术平均滤波法 239

9.5.2滑动平均滤波法 240

9.5.3中值法 240

9.5.4数字滤波 240

习题9 244

第10章 数字信号输入/输出接口电路 245

10.1开关信号的输入/输出方式 245

10.2 I/O资源及扩展 247

10.2.1 STM8S系统扩展I/O引脚资源策略 247

10.2.2利用串入并出及并入串出芯片扩展I/O口 249

10.2.3利用MCU扩展I/O 250

10.3 STM8S与总线接口设备的连接 251

10.4简单显示驱动电路 253

10.4.1发光二极管 253

10.4.2驱动电路 254

10.4.3 LED发光二极管显示状态及同步 256

10.5 LED数码管及其显示驱动电路 260

10.5.1 LED数码管 260

10.5.2 LED数码显示器接口电路 261

10.5.3 LED点阵显示器及其接口电路 274

10.6 LCD模块显示驱动电路 279

10.6.1以T6963C为显示控制芯片的LCD模块接口及时序 280

10.6.2 T6963C操作命令 282

10.6.3屏幕像点与显示RAM之间的对应关系及模块的初始化 288

10.6.4应用举例 289

10.7键盘电路 296

10.7.1按键结构与按键电压波形 296

10.7.2键盘电路形式 298

10.7.3键盘按键编码 300

10.7.4键盘监控方式 301

10.8光电耦合器件接口电路 314

10.9单片机与继电器接口电路 316

10.10电平转换电路 318

10.10.1高压器件驱动低压器件接口电路 319

10.10.2低压器件驱动高压器件接口电路 320

10.10.3非轨对轨运放构成的比较器驱动数字IC电路 321

习题10 322

第11章 STM8S应用系统设计 323

11.1硬件设计 323

11.1.1硬件资源分配 325

11.1.2硬件可靠性设计 326

11.1.3元器件选择原则 327

11.1.4印制电路设计原则 328

11.2软件设计 330

11.2.1存储器资源分配 330

11.2.2程序语言及程序结构选择 331

11.3 STM8芯片提供的可靠性功能 331

11.3.1提高晶振电路的可靠性 331

11.3.2使用存储器安全机制保护程序代码不被意外改写 332

11.3.3硬件看门狗 332

11.4软件可靠性设计 332

11.4.1 PC“跑飞”及其后果 332

11.4.2降低PC“跑飞”对系统的影响 334

11.4.3 PC“跑飞”拦截技术 335

11.4.4检查并消除STM8指令码中不需要的关键字节 342

11.4.5提高信号输入/输出的可靠性 342

11.4.6 选择合适的判别条件提高软件的可靠性 343

11.4.7增加芯片硬件自检功能 344

习题11 345

参考文献 347