本站支持尊重有效期内的版权/著作权,所有的资源均来自于互联网网友分享或网盘资源,一旦发现资源涉及侵权,将立即删除。希望所有用户一同监督并反馈问题,如有侵权请联系站长或发送邮件到ebook666@outlook.com,本站将立马改正
书名: | STM8实战[按需印刷]|4970344 |
图书定价: | 79元 |
图书作者: | 高显生;彭英杰 |
出版社: | 机械工业出版社 |
出版日期: | 2016/6/1 0:00:00 |
ISBN号: | 9787111538349 |
开本: | 16开 |
页数: | 0 |
版次: | 1-1 |
作者简介 |
高显生,男,1972年出生,电气工程师,骨灰级单片机爱好者,长期热衷于单片机公益培训和研发,倡导简捷易懂、立足应用的单片机学习方法,*有《我和POC单片机:基于PIC18》《AVR单片机入门与速成攻略》等书。先后录制了《我和单片机的21天之旅》《我的PIC日记》《迷人的AVR单片机》等多部大型公益视频教程,在网络上得以广泛传播和推广,深受学生朋友及科研工作者的喜爱和好评。 |
内容简介 |
本书通过对基于STM8的单片机系统板的学习,对STM8单片机开发所涉及的集成开发环境、在线编程仿真、内核结构、功能模块和接口电路做了较为详细的介绍,并且将“动手DIY”作为学好单片机的基本理念贯穿于本书始终,让初学者既能低成本投入,又能增强动手能力,还可以摆脱对开发板的过分依赖,培养独立思考能力,这正是作者对整个STM8单片机开发学习过程和本书内容的精妙安排。本书特点:·使用了意法公司集成开发环境STVD和ST-LINK/V2在线仿真/编程器完成开发。·教你快速掌握单片机C语言程序设计的精髓。·全书基于寄存器操作,可加深对芯片功能的理解。·每章都配有丰富的实践和练习,便于读者快速入门STM8单片机开发。·可以结合优酷网上的配套视频学习。 |
目录 |
前言 第一篇 基础功能 第1章 体验STM8 2 1.1 意法公司的MCU产品 2 1.1.1 STM8系列 2 1.1.2 STM32系列 5 1.2 性能优异的STM8S 5 1.2.1 片内功能概述 5 1.2.2 引脚功能 9 1.3 通用I/O口 12 1.3.1 GPIO的特点 12 1.3.2 GPIO的配置 13 1.3.3 GPIO的寄存器 14 第2章 入门C语言 17 2.1 数据和运算 17 2.1.1 数的进制 17 2.1.2 码制 18 2.1.3 数据类型 19 2.1.4 常量 19 2.1.5 变量 19 2.1.6 运算符 20 2.1.7 复合赋值运算符 22 2.2 语句 23 2.2.1 控制语句 23 2.2.2 其他语句 28 2.3 函数 28 2.3.1 自定义函数 29 2.3.2 函数的声明和调用 30 2.4 程序 30 2.4.1 程序的构成 30 2.4.2 程序的注释 31 2.4.3 局部变量和全局变量 32 2.4.4 变量修饰关键词 33 2.4.5 指针 34 2.5 预处理命令 35 2.5.1 宏定义 35 2.5.2 文件包含 35 2.6 构造类型数据 36 2.6.1 数组 36 2.6.2 结构体 36 2.6.3 共用体 37 第3章 开发工具 39 3.1 开发工具 39 3.1.1 ST-LINK/V2仿真/编程器 39 3.1.2 STM8S系统板 40 3.2 开发环境 41 3.2.1 集成开发环境 41 3.2.2 下载STTOOLSET 42 3.2.3 安装STTOOLSET 43 3.2.4 安装Cosmic C编译器 47 3.2.5 移植头文件 52 3.3 编写应用程序 52 3.3.1 建立开发项目 52 3.3.2 我的第一个C程序 55 3.3.3 设置编辑器中的字体 56 3.3.4 设置工程选项 57 3.3.5 编译代码及烧写 58 第4章 仿真调试 62 4.1 编程接口 62 4.1.1 单线接口 62 4.1.2 单线接口的控制寄存器 63 4.1.3 供电电源 63 4.2 复位 64 4.2.1 复位的原理 64 4.2.2 复位源 64 4.2.3 复位寄存器 65 4.3 硬件调试 66 4.3.1 进入调试模式 66 4.3.2 调试功能按钮 69 4.3.3 设置断点 70 4.3.4 建立观察窗口 71 4.3.5 调试应用程序 72 4.4 软件仿真 74 第5章 存储器 77 5.1 FLASH和EEPROM 77 5.1.1 存储器组织结构 78 5.1.2 存储器保护 79 5.1.3 存取安全系统 79 5.1.4 存储器的编程 80 5.1.5 存储器的控制寄存器 81 5.1.6 EEPROM的读写 84 5.2 选项字节 88 5.2.1 选项字节的功能 88 5.2.2 修改选项字节 89 第6章 时钟树及电源管理 92 6.1 时钟树 92 6.1.1 时钟的产生 92 6.1.2 时钟控制器 93 6.1.3 系统时钟 94 6.1.4 主时钟切换 95 6.1.5 时钟配置 98 6.1.6 时钟中断 99 6.1.7 时钟控制寄存器 99 6.1.8 时钟切换编程实例 105 6.2 电源管理 107 6.2.1 运行模式 107 6.2.2 低功耗模式 108 第7章 看门狗及蜂鸣器 109 7.1 看门狗 109 7.1.1 独立看门狗 109 7.1.2 独立看门狗控制寄存器 110 7.1.3 窗口看门狗 111 7.1.4 窗口看门狗控制寄存器 114 7.2 蜂鸣器 115 7.2.1 蜂鸣器的功能 115 7.2.2 蜂鸣器的控制寄存器 116 7.2.3 蜂鸣器的编程应用 116 7.3 自动唤醒 121 7.3.1 自动唤醒功能 121 7.3.2 自动唤醒时间间隔 122 7.3.3 AWU寄存器 123 第二篇 单元模块 第8章 外部中断 128 8.1 中断系统 128 8.1.1 中断源 128 8.1.2 优先级 130 8.1.3 中断指令 131 8.2 外部中断的特点 132 8.2.1 外部中断控制寄存器 132 8.2.2 中断服务 134 8.2.3 外部中断的编程应用 137 第9章 定时器TIM1 142 9.1 TIM1功能 142 9.1.1 TIM1的内部结构 142 9.1.2 时基单元 143 9.1.3 计数模式 147 9.1.4 时钟/触发控制器 150 9.1.5 捕捉/比较阵列 157 9.1.6 输入模块 158 9.1.7 输入捕捉模式 159 9.1.8 输出模块 161 9.1.9 中断 166 9.2 TIM1的寄存器 167 9.2.1 控制寄存器 167 9.2.2 外部触发寄存器 171 9.2.3 中断、状态和事件寄存器 173 9.2.4 捕捉比较寄存器 177 9.3 TIM1的编程应用 192 9.3.1 系统时钟计数 192 9.3.2 外部时钟计数 196 9.3.3 基于捕捉的频率计 201 9.3.4 PWM四路调光灯 206 第10章 定时器TIM2/TIM3 210 10.1 TIM2/TIM3介绍 210 10.1.1 通用定时器的结构 210 10.1.2 时基单元 210 10.1.3 捕获/比较阵列 211 10.1.4 TIM2/TIM3的控制寄存器 213 10.2 TIM2/TIM3的编程应用 226 第11章 定时器TIM4 231 11.1 TIM4简介 231 11.1.1 TIM4的内部结构 231 11.1.2 TIM4的功能 231 11.1.3 TIM4的控制寄存器 232 11.2 TIM4的编程应用 235 第12章 ADC模块 242 12.1 ADC模块的功能 242 12.1.1 A/D转换器工作原理 242 12.1.2 ADC2模块的内部结构 243 12.1.3 模拟通道的等效电路 244 12.2 ADC模块的控制 245 12.2.1 启动A/D转换 245 12.2.2 转换模式 245 12.2.3 触发转换 246 12.2.4 A/D转换时序 246 12.2.5 转换结果的存储方式 247 12.2.6 ADC模块的低功耗模式和中断 248 12.2.7 ADC模块的相关寄存器 249 12.3 ADC模块的编程应用 252 第13章 SPI模块 257 13.1 串行外设接口 257 13.1.1 SPI总线 257 13.1.2 SPI模块的特点 257 13.1.3 SPI模块的结构 258 13.1.4 单主单从应用 259 13.1.5 时钟的相位和极性 260 13.1.6 SPI主模式 262 13.1.7 SPI从模式 262 13.1.8 单工通信 263 13.1.9 状态标志 263 13.1.10 CRC校验 264 13.1.11 错误标志 265 13.1.12 SPI的低功耗模式 266 13.1.13 SPI中断 266 13.2 SPI的控制寄存器 266 13.3 存储器93C46 271 13.3.1 93C46的引脚功能 271 13.3.2 93C46操作指令 272 13.3.3 93C46的数据传输时序 274 13.4 SPI模块的编程应用 274 第14章 I2C模块 280 14.1 I2C总线 280 14.1.1 I2C总线的特点 281 14.1.2 I2C总线通信协议 281 14.1.3 I2C器件的寻址 282 14.2 I2C模块的功能 283 14.2.1 I2C模块的内部结构 283 14.2.2 I2C主模式 284 14.2.3 I2C从模式 287 14.2.4 出错状态 289 14.2.5 时钟速率 290 14.2.6 低功耗模式 291 14.2.7 I2C中断请求 291 14.3 I2C的控制寄存器 293 14.4 DS1307实时时钟 303 14.4.1 DS1307的功能 303 14.4.2 DS1307的寄存器 304 14.4.3 DS1307的数据格式 305 14.5 I2C模块编程应用 306 第15章 beCAN模块 312 15.1 CAN总线 312 15.1.1 显性与隐性 312 15.1.2 报文 313 15.2 beCAN模块的特点 317 15.2.1 beCAN的内部功能 317 15.2.2 beCAN的结构 318 15.2.3 beCAN的工作模式 319 15.2.4 beCAN的测试模式 320 15.3 beCAN的工作方式 321 15.3.1 发送处理 321 15.3.2 接收处理 322 15.3.3 过滤器 323 15.3.4 标称位时间 327 15.3.5 beCAN中断 329 15.3.6 beCAN的时钟... |