深入理解 什么是单片机的中断(上)

您所在的位置:网站首页 单片机是什么时候发明的 深入理解 什么是单片机的中断(上)

深入理解 什么是单片机的中断(上)

2024-05-30 10:34| 来源: 网络整理| 查看: 265

这期给大家聊聊单片机的中断(interrupt)。关于中断,网络上讲操作的人很多,但讲原理的比较少。主要是原理实在是不好讲,牵涉到的底层概念太多,需要大量的基础铺垫,并且最终把所有概念整合成起来,才能明白计算机硬件设计的精妙所在,感叹人类的智慧和高度的文明。下面让我们从0开始去深入理解中断的概念。

一 基础知识准备

要理解什么是中断,还是需要有些耐心,磨刀不误砍柴工,得从计算机的结构开始说起,但是如果已经有这部分基础的童鞋可以跳过第一部分。

1.计算机的结构

我们可以简单的把计算机分为4大部分。中央处理单元CPU,内存Memory,总线Bus,外围设备Peripheral Device。

对于高性能计算机来说,一般都采用冯诺依曼结构。这是由于CPU的运算速度远远高于存储内存(FLASH)的读写速度,为了不浪费CPU的计算性能,在运行程序前,需要把程序从FLASH里全部读写到速度更快的运行内存(SRAM)里去,然后CPU才能运行程序。所以冯诺依曼结构的计算机都会有一个开机的环节,所谓开机就是把FLASH里的数据加载到运行内存中去的过程。

而对于大部分单片机来说,则采用哈佛结构。因为单片机的CPU运行速度一般没有那么快,CPU可以直接从flash里读出程序,然后直接执行。也就是没有开机环节,上电立即运行.

2.程序的运行

单片机把程序的运行一般分为3个环节:取指(Fetch),译码(Decode),执行(Execute).

对于程序来说,我们c语言编写好的程序,经过编译器编译,会把程序里的指令数据分开存放,形成一个hex或者bin文件,最终烧录到单片机FLASH里。比如我们要写一个计算1+2=?的程序。那+号和=号就是指令,而1和2就属于数据。

开机后,程序里的数据会被搬运到SRAM里,而指令部分是从flash里直接读取.CPU从FLASH里取回需要执行的指令,就所谓的取指.



【本文地址】


今日新闻


推荐新闻


    CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3