51单片机定时器定时模式
时间:11-30
来源:互联网
点击:
写点专业的知识吧,也是初学,大家共同学习。好,废话少说,进入主题
初学51单片机的人都接触到定时器这个东西,关于定时器也有很多资料,包括内部结构,如何执行。但是说到模式,我想刚学的时候听他们讲的那堆乱七八糟的模式都很费解,什么模式0,模式1,十六位,八位。我到现在也没有明白。但是我在编程时,对这东西有一个初步的理解。
首先是定时器为啥要先装初值,这东西打个比方,古代定时用的是沙漏,沙漏是先在桶中装上沙子,在钻一个眼,沙子都溜走时,为一个周期。如果要定时,装的就是最后的那个时间,加入我定10毫秒,则是10、9、8、7、6……,直到0,启动中断。而还有一种方法就在木桶中滴水,木桶的容积是一定的,水滴满以后就是一个周期。加入那个木桶可以装10毫秒的水,当水漫以后,就是10毫秒到了,启动中断。而如果我不想装10毫秒,我只想要5毫秒呢?方法就是先在桶中装入5毫秒的水,然后启动定时器,这时,只需再滴入5毫秒,就可以将水装满。这就是为什么要给单片机定时器装初值的原因。
还有一个就是模式,我看了很多书,也听了视频,也没闹清讲的是什么?但是我知道他们的区别在时间上,以12m晶振为例,在方式0下,最大可以定时 8.192毫秒。而方式1下最大可以定时65.535毫秒。而方式2和3下最大可以定时0.256毫秒。用的时候,要看你的具体需求,如果10毫秒内中断一次,则方式0就可以了,如果1毫秒内中断一次则需要用方式2或3。而方式3则是自动重装八位计时器。我的理解,意思是你不需要用程序来装初值,装初值由硬件完成,节省你装初值所用的时间。当然,我从来没用过,我用的最多的是方式0和1。
基本上就是这意思,如果理解的有问题,欢迎大家批评指正。
51单片机定时器定时模 相关文章:
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)