编程语言应用

首页 » 常识 » 诊断 » C语言要学到什么程度才能从事单片机相关工
TUhjnbcbe - 2024/8/24 16:22:00

最开始没有基础的时候可以去某宝搞一块51单片机的开发板来玩玩,这个型号的单片机是入门级的单片机,商家都会配套有一些视频教程,跟着走就行,某些良心的商家如果你遇到问题多的话忙得过来就会招呼你,想系统速成的话最好还是找一对一的比较好,总好过自己闷头乱撞,头发慢慢白了还在门口进不来,有人带着督促会好很多,早一天就业工资发早一天。

前段时间分享过一些51单片机相关的一些基础知识,这一期继续来分享一些关于中断的一些知识,51单片机它如何引起CPU的中断,CPU如何知道IT0来了一个外部中断信号,IE0叫做中断标志位,中断标志位,它也在TCON当中,TCON当中还有一个位叫IE0位,这个是什么意思呢?就是说如果说设置了一种下降沿的触发方式,一旦当I/O口上有一个下降沿的信号,它会使IE0这个中断标志位自动的硬件治疗,它们在电路上是联动的,也就是相当于一旦引脚上产生的下降沿的信号它就会联动,会在硬件上使IE0自动的硬件指标,CPU在每一个机器周期当中都来查询这些标志位。

普通的51单片机,例如12T的单片机是占12个时钟周期,就是这12个时钟周期相当于是一段时间,这段时间又分成了六个状态周期,每一个状态周期就可以分成两个节拍,它是这一段时间里面CPU除了去执行指令之外还要干其它的一系列的事情,比如来查询每一个中断标志位是不是有中断申请信号来了,如果标志位查到是1的话就代表当前有一个中断申请,接下来CPU就要处理,要不要去执行这个申请,用户在初始化的时候告诉CPU来了外部中断需要去处理,它就会去根据这个标志位为1的情况下去走处理通道,如果不允许它去处理,它就会不关心这一次的中断事件,引脚上产生了一个下降沿信号会使IE0这个标志位自动至1,在每个周期CPU都能够查询到这个标志位,一旦发现它为1接下来就要看终端控制开关。

终端控制开关是在两个寄存器当中IE和IP,IE是中断使能控制的一个特殊功能寄存器,IP是中断优先级的控制特殊功能寄存器,具有特殊功能的一些RAM单元特殊功能就是,它虽然是一个寄存器,实际上它是一个内存单元,它里面一般是八位的单片机的话,这八个二进制位里面,计算机内部只有0和1两种状态,把它理解成一个电子开关,就负责拨开关,用户想让它打到哪个位置,就告诉给它什么信号,0或者1这两种信号类型,它就能够把这个开关拨到相应的位置,外部中断0来了一个中断信号,并且是IE0自动的硬件制约了CPU查询到IE0为1了,到底要不要通过这一系列开关到这个位置,要中断的向量的入口地址去执行中断服务函数,开关一定要导通,IE对外部中断0来说,要想使外部中断0能够通过找到中断向量的入口地址去执行中断服务函数,必须保证的是EX0位和EA位这两个开关必须闭合,这样的话它才能够进到后面的环节。

在中断初始化的时候,如果当前外部中断来了之后要允许中断,CPU允许这次中断就需要把开关打开,告诉IE当中的两个位把电的开关给接通,这样就能够顺利通过,中断信号它实际上是沿着5个中断源,沿着五条水平路径由左向右顺序传送,每一个中断源都会有一个子开关来决定当前的中断是不是需要执行,除了子开关之外后面还跟着一个总开关,相当于一个中断源,中断要想通过,按照子开关和总开关的顺序过来,过来之后就到了这个RP这个位置,IP这个位置实际上开关不论打到上面还是打到下面,它都能够通过IP叫做中断优先级的控制寄存器。

以上内容仅代表个人观点,不喜勿喷,对单片机感兴趣的朋友,想系统的快速把单片机学透,需要一些单片机程序架构的相关视频资料的朋友,可以找创为单片机编程拿就好,全网同名,回复“林北”获取

1
查看完整版本: C语言要学到什么程度才能从事单片机相关工