前言:
最近做的项目涉及到硬件,核心部分用了STM8S单片机.
以前只是学校里用过51单片机,基本上从零开始学STM8S,陆陆续续花了2个月时间,差不多做完了.
.
这两天把自己学习STM8S单片机的过程整理了一下,写了几篇博客,虽然是最基本的东西,自认为还是比较实用的,希望对大家有所帮助.
----------------------------------------------------------------------------------------------------------------------------
STM8S单片机是一款广泛使用的8位低功耗单片机,具备系统成本低、功能强大等特点。功能强大也带来了学习入门相对较难的问题。本入门教程面向无任何单片机基础的人,从开发环境的搭建开始,通过详细讲解一个典型单片机应用系统最基本设计和实现过程,帮助大家快速入门。
单片机应用系统的形态很多,但基本模式类似。以智能硬件的应用为例,各种智能硬件区别大多是输入电路(各种传感器及外部信号输入)和输出电路(控制电路、动作电路)的不同,基础部分单片机、电池和充电管理、无线数据模块都是类似的。
所以本入门教程选取包含开关机电路、锂电池充电及电源管理、蓝牙无线接口的一个单片机应用实例,通过讲解这些功能的实现过程,把 STM8S单片机的GPIO、中断程序、AD转换、串口通讯、停机模式的使用等知识点串接起来,让大家对STM8S单片机有个整体的认识和掌握。
另外本教程中单片机的程序开发使用C语言,所以需要提前具备一定C语言基础。
本入门教程分为5个部分:
- 开发环境的搭建
- 关机模式和开关机按钮
- AD转换及锂电池管理
- 串口通讯及蓝牙模块的使用
- STM8S开发板
第一部分《开发环境的搭建》,讲解STM8S单片机开发所需要的软件、硬件开发环境各需要哪些,该如何搭建;第二部分《关机模式和开关机按钮》,讲解如何使用一个按钮,实现系统的开关机(按一次开机,再按一次关机),涉及STM8S单片机的GPIO、中断程序、停机模式等知识点;第三部分《AD转换及锂电池管理》讲解如何实现锂电池的充电和电压检测,包括低电压自动关机等,涉及到STM8S单片机的AD转换等知识点; 第四部分《串口通讯及蓝牙模块的使用》讲解单片机如何使用蓝牙与上位机(安卓智能手机)进行通信,涉及STM8S单片机的串口使用部分的知识点;最后一部分《STM8S开发板》介绍了一款包含以上所有讲到功能的成品开发板的硬件及软件的设计,通过此开发板学习以上知识可以不需要自己动手焊接电路元件,方便入门学习,另外此开发板已经基本智能硬件最基本功能,所以也能通过使用此款开发板进行智能硬件的产品原型的快速开发。
前面也提到了,本入门教程目标是让无任何单片机基础的人快速入门,只选取了一部分内容讲解,涉及到的知识点有限,所以其它内容,比如定时器和PWM、I2C、SPI接口等还需要请大家自行学习STM8S单片机的Datasheet。另外,大家在看这个教程时,有什么问题或建议,也欢迎在评论区留言,虽然博客做不到实时在线交流,只要我看到了,还是会尽快答复的。
好了,就先说这么多了,下面就从STM8S单片机开发环境的搭建开始进入学习吧。