【分享帖】第二课时 机器人控制器 单片机运行原理(二)
2127
0
4
2018-03-27
接上一部分内容我们来继续学习单片机的运行原理: 单片机的内部组成结构如下图所示:
RAM(Random Access Memory,随机存取存储器)
在运算的时候,会产生大量的临时数据,这些数据会记录在一个叫做RAM存储器里。RAM就是一个草稿本,能够快速更新迭代,CPU会按程序的要求,在RAM的特定位置读写数据。
但由于技术所限,目前的 RAM 都需要电来维持体内数据的存在。一旦失去电源,RAM 内的数据就会全部消失。
ROM(Read-Only Memory,只读内存)
这种通信方式用了大量的引脚,理论上数据传输率高,但是由于传输过程需要保持时序一致,导致速度有限、易受干扰。
CPU(Central Processing Unit,中央处理器)
cpu又叫中央处理器。它具备数据计算和指令执行的功能。它具体能做哪些运算呢?比如我们常用的加、减、乘、除、微分、积分等等。哪些属于指令的执行呢,比如,需要计算加法,那么就需要一个指令。当然CPU还能执行很多指令,具体的指令要看单片机的指令系统。
RAM(Random Access Memory,随机存取存储器)
在运算的时候,会产生大量的临时数据,这些数据会记录在一个叫做RAM存储器里。RAM就是一个草稿本,能够快速更新迭代,CPU会按程序的要求,在RAM的特定位置读写数据。
但由于技术所限,目前的 RAM 都需要电来维持体内数据的存在。一旦失去电源,RAM 内的数据就会全部消失。
ROM(Read-Only Memory,只读内存)
CPU 想要工作,需要我们事先写好工作流程(指令或程序),这个工作流程就被刻在了一个叫 ROM 的存储器里。有些数据需要长期保存,比如说机器人今天学到的新知识,也会被写到 ROM 上。
ROM 就像一个石碑,上面记的程序是固定不变的,能够在断电后继续保持体内的数据(失电保护),但它的读写速度较慢。
时钟
所有的数字系统的工作都离不开一个东西——时钟。这里说的时钟不是家里挂的钟或者手上戴的表,而是一种基准信号。就像队列齐步走的时候,有人在喊一二一,大家会跟着喊的节奏来走路。单片机的工作节奏就是跟着时钟走的。
无论是计算机还是单片机,在一个时钟周期里都只完成一个最基本的操作,时钟周期越小,处理器工作频率越高,因此时钟频率是处理器性能的重要衡量标准。但根据指令的复杂程度不同,完成一个指令的所需的时钟周期也是不同的,所以时钟频率也并不等同于指令执行速率或系统总体性能。
输入/输出设备:并行I/O端口和串行通信端口
单片机用密密麻麻的引脚与外界联系,它们就像电脑上的 USB、HDMI、网口等插口。引脚往往拥有多种功能,就像奥特曼可以切换不同形态来改变功能。引脚也可以通过程序更改功能(术语叫复用功能)。
并行 I/O 口
单片机四周的许多引脚都可以被复用为 I/O口。I/O 口可以设置为输入(Input)模式或输出(Output)模式,1 和 0 用高低电平表示。这种通信方式用了大量的引脚,理论上数据传输率高,但是由于传输过程需要保持时序一致,导致速度有限、易受干扰。
串行通信
在机器人比赛中,机器人往往会搭载多块单片机和电脑,它们之间通常采用通信效率更高的串行通信。串行通信通过少量的引脚发送变化的电平来交流。
虽然理论上引脚少了会降低传输效率,但因为不需要保持每个引脚的时序一致,所以反而耗时更短。 中断
无论是个人电脑还是单片机,在工作中都少不了一个帮手——中断。
中断是指,正常程序运行过程中出现特殊情况需要处理,处理器就会自动停止当前运行程序,并转入处理新情况的程序,处理完毕后又返回之前被暂停的程序继续运行。
中断机制提高了系统效率,在维持系统可靠工作的同时,又满足了实时处理要求。为什么会有特殊的情况需要处理呢? 我们举个例子:
在 RoboMaster 赛场上,当机器人在运动时,裁判系统会同时传来信息,告诉你机器人现在的功率、速度等等。这时单片机会停止机器人运动,并且记下当前的程序运行到哪了,然后去运行接收裁判系统数据的程序,接收完再回来继续运行机器人运动的程序。 由于这个过程耗时十分之短,机器人实现了“近似的”一边控制运动一边接收数据的功能。
再比如,我们日常会一边美滋滋地看电影,一边在后台下载其他资源,我们会以为这两件事在同步进行。其实,电脑是通过中断功能“假装自己同步进行”,不停地在播放电影和下载资源之间来回切换,切换速度快到我们感受不到。
文章标签
请问这篇文章对你有用吗?
【分享帖】第二课时 机器人控制器 单片机运行原理(二)