STM8S系列单片机是如何控制机器人的

控制/MCU

1878人已加入

描述

对于机器人这个名词,大家应该都有所了解,我在这里就不讲太多。我主要来说说机器人是怎样工作的,单片机又是什么,有什么作用,如何来学习单片机。

单片机是可以用来编程的芯片,它对于机器人来说就相当于人的大脑。一个机器人,它除了有单片机,还应有传感器用来接收外界的图像、声音、温度等等信息,然后单片机去读取传感器接收的信息,就相当于人的感官。机器人可以采集外界信息,也可以对外界做出动作,例如控制电机等执行元件,通过机械结构做出行走或行驶动作,就相当于肌肉带动骨骼动作;又例如机器人也可以通过蜂鸣器或者喇叭发出声音、音乐,像人一样说话,也可以通过液晶屏显示文字或者图像信息。机器人与机器人或者电脑之间还可以进行通信来传递信息。以上所有功能都是要依靠机器人的大脑——单片机来实现。

单片机的编程,我个人认为可以分为两部分,第一部分是对寄存器的操作,第二部分就是对寄存器的操作之外的所有运算、逻辑、算法的编程。

寄存器是什么东西?打个比方,我们常用的手机,我们都设置过它的,比如调节亮度、音量、打开关闭WiFi和移动数据。单片机的寄存器就是这个功能,我们对单片机寄存器进行操作,就是设置单片机各种各样的功能和工作模式。寄存器实质上是单片机flash中的地址,flash存储中最小的单位是位(bit),这个位只有两种状态,1或者0,就像WiFi功能打开和关闭这两个状态。寄存器有8位的、16位的、32位的。

我们常用的寄存器有三类,数据寄存器、控制寄存器、状态寄存器。数据寄存器是用来存储数据的,通常可以进行写入和读取操作;控制寄存器是用来设置单片机的工作模式的,通常只能进行写入操作;状态寄存器是用来存储单片机状态信息的,通常只能进行读取操作。

关于单片机,还有一个电平的概念要和大家介绍一下。电平有两种,高电平和低电平。简单地说(这样说不准确,但是为了方便初学者容易理解),理想状态下,5V供电的单片机,高电平就是5V,低电平就是0V,单片机芯片引脚可以向外输出高低电平,也可以从外界采集高低电平。

下面我来介绍STM8单片机,这款单片机是意法半导体公司推出的8位单片机,和该公司的STM32单片机不同,后者是32位ARM内核的单片机,前者是自家设计的内核。STM8单片机和16位、32位单片机相比,功能和性能相差很大,但在8位单片机中,性价比、功能、性能还是非常优秀的。STM8单片机的命名规则在这个网站上可以了解。

STM8S系列单片机支持3.3V和5V两种工作电压。

我们用STM8S105K4这款芯片来做教学。它有32个引脚,其中25个是IO引脚。STM8S105K4有7路10位模拟输入通道、8路16位PWM(脉冲)输出通道、4个定时器、1个UART串口、1个SPI、1个I2C,主频最高16MHz。STM8单片机A、B、C、D、E端口每个引脚都可以使用外部中断功能,D7有TLI功能(不可屏蔽的最高优先级的硬件中断)。它有16KB的FLASH用于存储程序和数据,2KB的RAM,1KB的EEPROM。

STM8S105K4芯片引脚图。

STM8S105K4核心板V1,板上有芯片、晶振电路、复位电路、下载接口。

STM8S105K4核心板V2。

STM8S105K4单片机学习套件,由STM8S105K4核心板(最小系统板)、开发板、ST-LINK V2下载器和Nokia5110液晶屏组成。

以后我们还有机会用到STM8S207MB芯片。

机器人

DAHUME MAX控制器

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分