电工之家_电工基础知识学习网站
当前位置:电工之家 > 电工知识 > 单片机 > 正文

单片机的主程序是如何执行的

时间:2020-07-27 19:32 来源:电工之家

我们从单片机的工作原理可以看出单片机是执行程序来完成我们所要求的任务的,在单片机中有很多子程序,单片机根据外部的不同执行条件去调用不同的子程序,因而就完成了不同的任务了。下面我通过具体的实例来说明单片机的主程序是如何执行的。

单片机的工作过程
由于单片机的工作过程是比较复杂的,为了说明问题,下面我们先来简单了解一下单片机的工作过程,单片机在执行我们给它的命令时是按照三步走的方法去执行的,它先是从它的记忆存储“容器”ROM中取出要执行的一条命令,接收到命令后就要分析这条命令的具体内容,然后按照命令的具体内容去完成相应的任务。这有点和我们人类接收任务是一样的。

单片机的主程序是如何执行的
单片机主程序的执行过程
下面我们举出一个大家非常熟悉而又简单的交通灯的程序,来说明主程序是如何执行的。我们知道交通灯有红绿黄灯的交替转换,还有数显的倒计时。那么主程序的主要任务是根据条件是不是满足来调用各个子程序进行工作,主程序有点像乐队的指挥,当需要哪种乐器发出声音,指挥就去引导乐手去执行演奏,指挥可以一遍又一遍地不停重复地执行下去。那么单片机的主程序也这种情况差不多,当电源一但开启其,单片机复位完毕后就先执行主程序,当条件满足后就不停地调用各个子程序。在交通灯程序中,主程序要不停地调用亮灯子程序和数码管倒计时子程序。只有这样交通灯才能周而复始地不断重复循环运行着,这就是主程序的功能。如果在主程序没有死循环的话,交通灯只会运转一遍亮灯闪烁和倒计时,一但执行完一遍后就不会有下文了。所以我们要把这些子程序放在主程序的死循环语句里,使整个程序周而复始地运行着。
单片机的主程序是如何执行的
不但交通灯程序是这样工作的,其它程序也是如此,不管是分支结构还是顺序结构的程序,都要把这些子程序放在主程序的死循环当中,然后根据所执行的条件去调用执行子程序。

单片机子程序与主程序的关系
在主程序中是可以调用子程序的,子程序之间也是可以相互调用的。但是在子程序中有一种程序我们不用主程序调用,它就是中断程序或者中断定时程序。这个中断子程序一般是主程序执行的条件,一但触发中断了,主程序就会立马去执行这个中断子程,当中断程序完成后,主程序必须还要回到刚才所执行的程序当中。所以子程序是在主程序中的,它要由主程序不断地调用去执行。

上一篇:单片机主程序为什么要死循环
下一篇:没有了
看过《单片机的主程序是如何执行的》的人还看了以下文章
单片机主程序为什么要死循环 单片机主程序为什么要死循环
这个说法不确切。因为单片机的工作本身就是一个自循环系统。 单片机从启动开始,首先要建立一个系统的工作初始环境和基本数据,这部分程序称为初始化。 然后单片机要执行一些顺序结构的控制程序,这部分程序要完成基本的功能驱动,如显示、接口连接等。 然后...
为什么不建议单片机初学编程把C语言作为入门语言 为什么不建议单片机初学编程把C语言作为入
作为一名单片机C语言开发工程师,对于入门编程语言,我觉得要分情况表述: 专业差异或者职业规范影响编程语言选择 电子专业,自动化等嵌入式相关的专业, 我个人觉得,初学编程,选C语言作为入门语言,反而对整个编程生涯是有很大帮助,因为这是工作必须要的...
单片机选型看哪些参数 单片机选型看哪些参数
对于单片机软件开发工程,硬件工程师,甚至项目经理和研发经理,对于单片机选型,在产品开发前期,是必须要的事情。 在选择单片机品牌和型号的之前,必须整理出产品所需要的配置和功能要求: 比如,单片机的工作电压,需要几路ADC,串口,USB,以太网接口,...
51单片机为什么我学了很久还没入门 51单片机为什么我学了很久还没入门
初学者,基础差,入门难。这是单片机初学者的一个经历。当你入门后,发现单片机不过如此。学51单片机前,要有点其它专业知识。比如模拟电子、数字电子、C语言、汇编语言等基...
学51单片机很难吗 学51单片机很难吗
假如你有很强的C语言基础,有比较扎实的模拟电路基础,那么只要认真坚持学习单片机,就一定比较快速的入门, 假如没有任何基础,或者基础非常差,又没有恒心去坚持学习,那么对于学习51单片机来说,那真的会很难。 其实想学好51单片机,其实也很简单,只需要...