yzwzfyz 发表于 2019-4-17 11:29 大哥您好 这个定时器,听了一些视频资料的讲解,大概知道它是什么原理,但就是具体的该怎么用还不太清楚。 程序方面流程图画的有,都说的通。就是不知道该如何下手。 看一些例程,自己分析,就是先,头文件,定义引脚,然后程序的流程。引用的函数。等。自己写的时候就完全不知道该怎么写了。之前也按照流程写过了,当时想的是。我需要的程序就和点亮LED灯一样,不过是时间不一样,但就是时间不知道该如何计算,怎么样才能一会定时4秒 一会定时10秒, |
如果离我近,不出一周教会你单片机。 |
你的原理图上可以省去四个元件:D1、C3、C7、Y1。 D1省去后:短接。 C3、C7、Y1省去后,从U2-8引一条线至OSCIN。不过CPU的主频就统一成12M了,这一点软件上是可以克服的(相关时序的参数调整一下)。 |
我的分很多,你就留着用吧,不别给我了。不够用我可以赞助你一点。 |
你留的不是程序,只是定义接口接的是什么东西。 |
“程序方面,看了许多的例程,里面的代码,最后感觉有很多的相似,就好像有固定的框框,写程序的时候只需要朝里面套自己的东西一样。” 写程序很容易,就那么几个句子抄抄。但架构程序,是需要相当的智慧!!!脑子不太好使用的,不好学这一行。你必须学会构建程序,第一步就是必须会画流程图,流程图说得通道理,达得成目的。再依流程图写程序,余下的就是抄抄句子了。 看别人的程序,要点是了解它的构思、目的、达成目的所采用的方式。语句不重要! |
51单片机就是这样,它只有两个外部中断输入口,如果你中断输入口不够,你可以使用与非门连接(将普通的IO口连接在门电路的输入口,门电路的输出口接单片机中断口)。 |
“还有定时器,感觉怎么这么复杂,可以一会语句循环,一会定时器控制,都不知道到底该用哪种了。 到现在定时器都没弄懂。” 它就是个计数器,即然是计数器就有以下: 1、输入时钟脉冲CLK,来一个计一次。如果CLK间隔很准时(来自晶振),自然就可以用来“定时”,这时可以美其名曰“定时器”了;如果间隔很随机(来自引脚的外接脉冲),就只能数数脉冲的个数,就只能是“计数器”了。如果切断(TR=0)它,当然就停止计数了;如果接通它(TR=1),就又计数了。这样说不就知道“定时”、“计数”、“起动”、“停止”了吗。 2、是计数器就有位数限制,计满会发生什么?会输出一个脉冲至中断标记位。这就是“定时器中断”的道理。 3、这个计数器是可以预置转数的,在任何时候你都可以预置数,你瞎置它就瞎数,为了有规律,你通常会选择一个特定的时刻置数,当然最有特点的时刻就是它计满的时候!例如:65536计满,计满后你置数据60000,这样它就每计5536次发出一次中断申请。如果你不置数,它就每65536次发出一次中断申请。 4、中断申请发出后,如果没有被清除(用其它方式清除),那么再次申请就没有意义了。这就是中断响应后为什么要复位中断标记的道理,当然有些机型是硬件复位的,即一响应就自动清除它,也就不要你操心了。 |
robinsonlin 发表于 2019-4-17 08:51 这个视频就是我正在看的,宋老师讲的很好,我也在认真学习,有的视频会反反复复的看,了解他讲的一些知识点。 另外,大哥我想问一下,我想一步一步的把我上边的这个程序给推敲出来,这样更能加深我的理解, 就是单片机怎么接受高电平的输入,现在这个遥控接收表只能输出高电平,有什么办法在程序上调整或者是硬件上加什么东西, 谢谢大哥的回复 |
那想是有3 个4个的中断源怎么办?换板子吗? |
“就一点不明白,外部中断一定要接在INT0,INT1引脚上才可以吗?别的端口不可以吗?那如果需要用传感器控制的外部中断多几个,好像局限性很大” 你的想法,设计大师们已经考虑到了:后期改进型51计算机的确可以在别的端口中断,如P2.0。STC的机型就是你想像的。传统51没有。 |
“我理解的外部中断,电平触发就是一个按键或是什么东西,在单片机引脚上输入了一个电平,这个电平一直存在使其一直保持中断,松开按键就外部中断停止了, 下沿触发像是在引脚上输入一个电平的信号,就像一个波形一样,触发不需要保持住,单片机检测到这个波形了就触发外部中断。” 你说对了一半:准确地说,不是“就中断了”,而是产生中断申请标记位了,离中断还差一步:你让不让它中断! |
总工讲解的很详细了 |
定时器是单片机内部的硬件,而中断只是单片机的一种机制,在使用计时器的时候,你可以用中断机制,也可以不用。 有个教程推荐给你, 用一天的时间就可以读完这个教程,一定对你有很大的帮助。 下载地址:http://www.51hei.com/bbs/dpj-26246-1.html |
只说一点:外部中断的IO口
![]() 外部中断的IO口,只能是P32、P33,不能是其它的。因为这是由单片机的内部硬件电路决定的,不是由软件可以决定的。 如果你使用中断,就只能是对应的IO口。 另外,中断源也是由单片机电路决定的,看手册就知道。 |
中断和定时正是单片机的“精要”啊。 |