项目7简易频率计数器的设计._第1页
项目7简易频率计数器的设计._第2页
项目7简易频率计数器的设计._第3页
项目7简易频率计数器的设计._第4页
项目7简易频率计数器的设计._第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、项目7简易频率计的设计知识目标1. 了解定时/计数器的结构及其工作原理;2. 掌握单片机的定时/计数器控制方式;3. 掌握应用单片机进行频率测试控制的原理。 J&lLfiS:1.能根据设计任务要求编制数显频率计数器的程序,理解程序对 计数器的控制原理;2.会利用电路仿真软件绘制数显频率计数器的电路原理图;.3.会用keil C51软件对源程序进行编译调试及与protues软释联调,-Fl "et om warvi m > ri< L 配 r 芻实现电路仿真。单片机c语盲应用技术与实践张永格何乃味主编此 v直女金匕啟卷2009年6月任务1方波信号发生器设计任务说明本

2、任务采用AT89S51单片机,利用定时/计数器TO通 过Pl. 1引脚输出周期为500Hz的方波。1.提出任务用AT89S51的P1 口做输出口,编写程序,从P1.1输出周期为500Hz的方波单片机c语盲应用技术与实践张永格何乃味主编2009年6月2. 分析任务(1)硬件电路设计选择具有内部程序存储器的AT89S51单片机作为控制电路,从Pl. 1引脚输出周期为500Hz的方波信号。硕件电路原理图如图7. 1所示。75XTAU1XT AL2JFlfTTR9021 匕 tzZ AueX1 1CMYSTZU-u22pE厂/VTOOS&12009年6月Iailul 匚 |±匚二二二

3、- 2 韦旻 c * *u£ X.?* ; xtubhttktttbt.RO.O/AOO尸OO 11 0R0.3/A03PO.4/ADA1U * > /XL3Sl«O.C/AL>CSR2.O/AB1 /AO r*» »/a K2.3/A R2.-4/A F>2.S/A F»2.e/A F>2.7/Afa. 11/1 KITTr»n 4/ToR3 5/T1F»n eBTTF>3 7/FTTT尸 3.0/HXOR3.1/TXD图71方波信号发生器电路图单片机C语盲应用技术与实践张永格何乃味主编单片机

4、C语言应用技术与实践张永格何乃味主编2009年6月单片机C语言应用技术与实践张永格何乃味主编2009年6月2. 分析任务(2)软件设计思路从Pl. 1引脚输出周期为500Hz的方波信号,实际就是耍产生周期为2ms 的方波,只要每Ims将信号的幅值山0变到1或山1变到0即町,可采用取 反指令來实现。为了提高CPU的效率,可采用定时屮断的方式,每Ims 产生一次中断,在中断服务程序中将输出信号取反即可。在电路中采用了晶振频率为12MHz的晶振。定时器TO的中断入口地址为OOOBH。计算计数初值:对于定时Ims來说,用定时器方式0(13位定时器)就町实现。 机器周期为:Tp=12/晶振频率=12/1

5、2MHz=lu S1 X 1 0 3 51 X 10'65时间常数为:计数初值为:2、分析任务=1000X = 2n - Tc = 213 - 1000 = 8192 - 1000 = 7192=11100000110003则其高8位为E0H,低5位为 18H,故TH0=0xE0, TL0=0xl8<»确定TM0D方式字:对于定时器T0来说,M1MO=OOH、C/T=O、GATE=O。定时器T1不用, 于是 TMOD=O0000000=0x00单片机c语盲应用技术与实践张永格何乃味主編2009年6月单片机C语言应用技术与实践张永格何乃味主编2009年6月单片机C语言应用

6、技术与实践张永格何乃味主编2009年6月只要不关都需要2、分析任务需要说明的是:程序在定时器初始化Z后,即进入虚拟的主程序, 新停等待定时器溢出中断。这种主程序处于材停状 态等待屮断的方法一般只用于例题程序,而在实际 系统中则很少采川,因为这涉及到CPU的效率。还有一点要注意:当采用方式0、1、3时, 闭定时/计数器,那么每当计数器0溢出时, 重新装入计数初值,以保证计数值不变。3-源程序编写编写的源程序如下:/P1J7-1.C#include<reg51. h> /定义头文件sbit P1_1=P1;void timerO(void) interrupt 1/定时器0中断服务程序

7、THO=OxEO;TL0=0xl8:/装入时间常数/Pl. 1取反void main(void)TMOD=OxOO; 0方式0THO=OxEO;TL0=0xl8; 间常数TRO=1; 时器TFO=O;EA=1; 中断/定时器/装入时/启动定/开全局单片机C语言应用技术与实践张永格何乃味主编ETO=1;器0中断while(l);/主程序死循环; 卸存二 >1.養事.2009年6月单片机C语言应用技术与实践张永格何乃味主编2009年6月单片机C语言应用技术与实践张永格何乃味主编2009年6月2.分析任务 4.稈序调试与电路仿真1.运行C语言编辑软件,在编辑区中输入上面的源程序,并以“plj7

8、-lc”为文件名存盘。2. 运行Keil C51,然后建立一个“plj7-luv2”的工程 项目。把源程序文件“plj7-l. c-添加到工程项目中, 进行编译,得到目标代码文件“plj7-l.hex-o3. 运行Proteus,在编辑窗口中绘制如图71所示的电路 图并存盘。然后选中单片机AT89s51,左键点击 AT89s51,出现如图7. 2所示的对话框,在Program File后面的“”按钮,找到刚才编译好的hex-文件,然后点击“OK”就可以进行仿真了。点屢(聿 击模拟调试按钮的运行按钮“”,进入调试状态董事F老单片机C语言应用技术与实践张永格何乃味主编2009年6月Edx±

9、; Co»pon.exitComponent BefererU1Hidden;Component yalue;AT89S51Hidden:PCB PackageProgram File:|DIL4O|pJi7-1 hexHide AllHide AllClock Frequency:12MHzI I ide AllAdvanced Propcrlos.I Simulate Piog-am Fitchew | NoHide AllOther Properties:Attach hierarchy module: Edit oil properties as text:图7.2 Keil

10、 C51程序编译与Proteus电路连接单片机c语盲肚用技术与实践张永格何乃味主编2009年6月2.分析任务程序执行后町以在示波器上显示以F波形:VS1 OscilloscopeDC 3D ACMO JOO 100、50CH1 DC OHO ACCH2 1 500200100 00mi/Dtv10 X5C<1002005VOveVQ*c c Qx 722010图73程序执行后Pl1输出波形«vs:M3s:ms:f;:;m:i:rlt一 影二鰹HB* rTi 一二3-J二二二 rn t r 二一 年4至:2.分析任务单片机C语言应用技术与实践张永格何乃味主编2009年6月任务2简

11、易数显频率计数器的设计任务说明频率的测量实际上就是在1个单位时间内(通常is)对信号脉 冲进行计数,计数值就是信号频率。1.提出任务用AT89S51设计一个数显频率计数器对2009年6月单片机c语盲应用技术与实践张永格何乃味主编0300KHz的方波信号进行测量,信号从P3. 5引 脚输入,Pl、P2口做输出口,接一个8位LED 数码管,编写程序,测出从P3. 5引脚输入的方 波信号的频率并显示出来。2 .分析任务(1)硬件电路设计电路组成:仍然选用AT89S51单片机作为控制核心,1个8位共阳数码 管作为输出显示端。AT89S51的P0口接数码管的段码控制, 其中PO. 0P0. 6分别连接数

12、码管的AG引脚,P0. 7连接DP端, 低电平有效。P2口接数码管位码选通部分,P2.0口控制第 1个数码管,一直到P2. 7口控制第8个,高电平有效。硬件电路原理图如图7. 4所示。2分析任务电路分析:要使8位数码管显示实现动态显示,实际上 就是通过P2 口输出控制信号轮流选通数码管,共阳型数码管公共端为高电平方可选 通,因此要求P2口由P2.0到P2.7依次输出高电平,然后在数码管段码控制端口P0按照一定规律送出要显示的数字09 o2009年6月单片机c语言圧用技术与实践张永格何乃味主编单片机C语言应用技术与实践张永格何乃味主编2009年6月单片机C语言应用技术与实践张永格何乃味主编200

13、9年6月2分析任务数显频率计电路图,as1Sr图7. 4数显频率计电路图2分析任务(2)软件设计思路在计数器工作方式下,加至外部引脚的待测信号 发生从1到0的跳变时计数器加1。外部输入在每个机器周期被采样一次,这样检测一次从1到0的跳 变至少需要2个机器周期(24个振荡周期),所以 最大计数速率为时钟频率的1 /24 (使用12 MHz时钟时,最大计数速率为500 kHz),也就是说使 用12 MHz时钟的AT89S51单片机设计的频率计数 器系统,所测的信号的频率不能大于500 kHz,若 大于则必须通过分频器分频才能测试,而本決任,逹 务的要求是对0300KHZ的信号进行测量,所以亩: 以

14、直接进行。lint叫 :兰笆:"单片机c语盲应用技术与实践张永格何乃味主编2009年6月2分析任务利用AT89S51单片机的TO、T1的定时计数器功能, 来完成对输入的信号进行频率计数。设置定时 器0工作在定时方式1,定时1S,并产生方波信号 从P1引脚输出。设置定时器1工作在计数方式1, 对输入脉冲进行计数,溢出产生中断。将定时 器1中断定义为优先。由于16位二进制加法计数 器的最大计数值为65535, 1SZ内可能会产生多 次溢出,所以需要在中断处理程序里对中断次数 进行计数。1S到后,将中断次数和计数器里的计 数值取出进行综合数据处理,处理后的数据送显冒零单片机C语言应用技术与

15、实践张永格何乃味主编2009年6月2分析任务定时器TO的计数初值:由于定时器TO工作在定时方式时故人的定时时间人约为65ms,若要定 时1S,可以采用定时20ms,中断50次來完成Is的定时。对丁淀时20ms 來说,用定时器方式1可实现。机器周期为: Tp= 12/ 晶振频率=12/12MHz二 1 gS计数初值为: X=2n-TC=216-20()(X)=45536=B 1EOH 故 TH0=B 1 H,TL0= EOH。信号频率的计算:» «> ITMJ nw单片机C语言应用技术与实践张永格何乃味主编2009年6月T1工作在计数方式时最人的计数值为216,若假设1

16、S内溢出C1次 未溢出的计数值为C2,则F二Cl*216+C2二 Cl*65536+ (TH1*256+TL单片机c语言应用技术与实践张永格何乃味主编2009年6月单片机c语言应用技术与实践张永格何乃味主编2009年6月3. 源程序编写编写的源程序如下: /plj7-2.c # include<reg51 h> #include <stdio.h> #define uchar unsigned char uchar(Jisplay_code=0xC0.0xF9,0xA4,0x BO,0x99.0x92,0x82,OxF8,0x80,0x90. Oxff);-立义数纽存放

17、显示数据的编码 uchar display_data8=0,0,0,0,0,0,0,0; / 定koi存板显示数据的各位 uchar c Lb 1; sbit P1_1=P1A1;void delay(void) 延时 uchar i; for(i=500;i>0;i);void displayO 显示程序 uchar i.k;k=Ox()l; for(i=0;i<8;i+)P2=0;PO=display_codedispIayJP2=k;k=k«l;川11: :Jm 1L fr Ii heb,1 wm h» ;晏 IY Fl MlY ” W> y tTM

18、J1单片机c语言应用技术与实践张永格何乃味主编2009年6月3.源程序编写编写的源程序如下:dclay():P2=0:void con vert() 转换程序uchar i.f2:longf.fl tk;f=cl *65536+TH 1 *256+TLl ;fl=f-f%10;位为牆勢駁看让八位a的高 display _dataO=f; k=le7;从这开始到本子程序结束的语句完成止八位LED的向位为() 時木显示 for(i=D;iv7:i+) (f2=fl/k: if(f2=0) display _datai= 10; k=k/10:for(i=7;i>0;i)此循环将计数值转换为显

19、示数组.从启j位到低位 依次存放在display_dalaO至 display _data7display _datai=f% 10:f=f710;单片机C语盲应用技术与实践张永格何乃味主编2009年6月单片机C语盲应用技术与实践张永格何乃味主编Rlit2009年6月单片机C语盲应用技术与实践张永格何乃味主编Rlit2009年6月3. 源程序编写编写的源程序如下:单片机C语盲应用技术与实践张永格何乃味主编Rlit2009年6月单片机C语盲应用技术与实践张永格何乃味主编Rlit2009年6月void timer 1 (void) interrupt 3 定时器 1 屮断服务程序cl+;void

20、timerO(void) interrupt 1 定时器0中 断服务程岸TH0=0xbI;/装入时间常数TL0=0xe0:P1_1=!P1;卩】1取反,从P1.WI脚输出25Hz 的力波信号,通过导线连接到P3.5引脚输入,以方便训试程序。 若使用萇它信号源,则公抻即町。if(bl =49)convert();cl=0:/将计数值清零bl=0;TH 1=0;TL1=O:)else bl+;单片机C语盲应用技术与实践张永格何乃味主编Rlit2009年6月3.源程序编写单片机c语言应用技术与实践张永格何乃味主编2009年6月单片机c语言应用技术与实践张永格何乃味主编2009年6月编写的源程序如下:

21、void main(void) 主函数 PO_1=O: cl=O; bl=O; TH 1=0;TL1=O;TMOD=()x5l;TH0=0Xbl;TL0=0Xc0;IE=()x8a;TCON=()x50; while( I)displayO;单片机c语言应用技术与实践张永格何乃味主编2009年6月单片机c语言应用技术与实践张永格何乃味主编2009年6月单片机C语盲应用技术与实践张永格何乃味主编2009年6月单片机c语言应用技术与实践张永格何乃味主编2009年6月单片机c语言应用技术与实践张永格何乃味主编2009年6月图7. 5添加plJ7-2. hex文件进单片机芯片4. 程序调试与电路仿真4

22、. 程序调试与电路仿真'仿真软件的使川见项目二, 程序编写、编译及电路绘 制的过程与本章任务一人 致相同。将Keil C51程序 编译过程中建立的plj7-hex文件添加进Proteus中 的单片机芯片,如图7.5, 点击模拟调试按钮的运行 按钮“”,进入调试状态。 此时对看到数码管显示25。单片机c语言应用技术与实践张永格何乃味主编2009年6月单片机c语言应用技术与实践张永格何乃味主编2009年6月单片机c语言应用技术与实践张永格何乃味主编2009年6月O知识链接1单片机内部定时器/计数器简介IxfriNTO 80C51单片机内部定时器/呼伽)计数器结构如图7.6所示。| 内部设有

23、两个16位的可编; 程定吋器/计数器。可编稈; 是指其功能(如工作方式、 定时时间、量程、启动方: 式等)均可由指令來确定: 和改变。在定时器/计数器| 中除了有两个16位的计数; 器之外,还有两个特殊功 能寄存器(控制寄存器和图7"嗨1单片机内部定时签/计数器结构图方式寄存器)。TH14-11170 70£建価(8DH)(8BR)TKP3.5)TO(P3.4)叭11 I(8UI)(細)D7 0单片机C语言应用技术与实践张永格何乃味主编CPU甬 Tn邺中* TOW (88H)UK)70 71m (89H)2009年6月单片机c语言应用技术与实践张永格何乃味主编2009年6月

24、单片机c语言应用技术与实践张永格何乃味主编2009年6月知识链接从图7.6可看出,16位的定时/计数器分別山两个8位专用寄 存器组成,B|J: TO由TH0和TL0构成;T1由TH1和TL1构 成。其访问地址依次为8AH-8DHo每个寄存器均叮单独访 问。这些寄存器是用于存放定时或计数初值的。此外,其 内部还有一个8位的定时器方式寄存器TMOD和一个8位的 定时控制寄存器TCONo这些寄存器Z间是通过内部总线 和控制逻辑电路连接起來的。TMOD主耍是用于选定定时器的工作方式;TCON主要是用于控制定时器的启动停止, 此外TCON还可以保存TO、T1的溢出和中断标志。当定时 器工作在计数方式时,

25、外部事件通过引脚TO (P3.4L和T1 = (P3.5)输入。1 11嚕单片机c语言应用技术与实践张永格何乃味主编2009年6月O知识链接2.定时/计数器的原理16位的定时器/计数器实质上就是一个加1计数器,其控制 电路受软件控制、切换。当定时器/计数器为定时工作方式时,计数器的加1信号由 振荡器的12分频信号产生,即每过一个机器周期,计数器 加1,直至计满溢出为止。显然,定时器的定时时间与系 统的振荡频率有关。因一个机器周期等于12个振荡周期, 亦以斤薮频fcount=l/12osco如果晶振为12MHz,则讦 数周期为:T=1/ (I2X 106) HzX 1/12=1 兰这是最短的定时

26、周期。若要延长定时时间, 定时器的初值,并要适当选择定时器的长度 位、16位等)。单片机C语盲应用技术与实践张永格何乃味主编2009年6月1知识链接j I:'聲睚 古亠 :qr= -ft F3MU© mJ . -W 1 r«»-齐 4MB » L L I当定时器/计数器为计数工作方式时,通过引脚T0和T1对 外部信号计数,外部脉冲的下降沿将触发计数。计数器在 每个机器周期的S5P2期间采样引脚输入电平。若一个机器 周期采样值为1,下一个机器周期采样值为0,则计数器加 lo此后的机器周期S3P1期间,新的计数值装入计数器。 所以检测一个由1至0的跳

27、变需要两个机器周期,故外部事 年的最高计数频率为振荡频率的1/24。例如,如杲选用 12MHz晶振,则最高计数频率为0.5MHzo虽然对外部输 入信号的占空比无特殊要求,但为了确保某给总电平在变 化前至少被采样一次,外部计数脉冲的高电平与低电乎保 持时间均需在一个机器周期以上。知识链接当CPU川软件给定时器设置了某种工作方式之后,定时 器就会按设定的工作方式独立运行,不再占用CPU的操作 时间,除非定时器计满溢出,才可能中断CPU当前操作。 CPU也町以重新设置定时器工作方式,以改变定时器的操 作。由此可见,定时器是单片机中效率高而且工作灵活的 部件。单片机定时器/计数器是一种可编程部件,在定

28、时器/计 数器开始工作Z前,CPU必须将一些命令(称为控制字) 写入定时/计数器。将控制字写入定时/计数器的过程叫定 时器/计数器初始化。在初始化过程中,要将工作方”式控- 制字写入方式寄存器,工作状态字(或相关位)写樺潮r 寄存器,赋定时/计数初值。aU 4 n» SI4$m 卜&定汕Q ;竺邑Y单片机C语言总用技术与实践张永格何乃味主编2009年6月单片机C语言应用技术与实践张永格何乃味主编*<a2009年6月单片机C语言应用技术与实践张永格何乃味主编*<a2009年6月O知识链1. 控制寄存器定时器/计数器TO和T1有2个控制寄存器TMOD 和TCON,它们

29、分别用来设置各个定时器/计数 器的工作方式,选择定时或计数功能,控制启动 运行,以及作为运行状态的标志等。其中, TCON寄存器中另有4位用于中断系统。 (1)定时器/计数器方式寄存器TMOD定时器方式控制寄存器TMOD在特殊功能寄存 器中,字节地址为89H,无位地址。TMOD白 式如图7.7所示。单片机C语言应用技术与实践张永格何乃味主编*<a2009年6月O知识链接D7D6D5D4D3D2DIDOTWOD («9H)GATEC/TM丄MOGATEC/TMlMOH 定时器丄 +定时器o 图7.7定时器/计数器方式寄存器n(0D由图可见,TMOD的高4位用于T1,低4使用于TO

30、, 4种符号 的含义如下:GATE:门控制位。GATE和软件控制位TR、外部引脚信号 INT的状态,共同控制定时器/计数器的打开或关闭。C/T:定时器/计数器选择位。C/T=l,为计数器方式;C/T = 0,为定时器方式。=;£=单片机c语官圧用技术与实践张永格何乃味主编2009年6月M1M0: 作方式选抒位,定时器/计数器的4种匚作方 由M1M0设定。具体如表7-1所示。单片机C语言应用技术与实践张永格何乃味主编2009年6月单片机C语言应用技术与实践张永格何乃味主编2009年6月知识链接Ml M0工作方式功能描述0 0工作方式013位计数器0 1工作方式116位计数器1 0工作方

31、式2自动再装入8位计数器1 1工作方式3定时器0:分成两个8位计数器,定时器1:停止计数农7-1 定时器/计数器的4种匸作方式怎时器/计数器方式控制寄存器TMOD不能进行位寻址.只能用字节传送指令设胃 定时器工作方式,低半字节定义为定时器0,高半字节定义为定时器1。复位时, TMOD所有位均为0。1例:设左定时器1为疋时工作方式,耍求软件启动疋时器1按方式2 I.器0为计数方式,要求由软件川动定时器0,按方式1工作。_O知识链接怎么來实现这个要求呢?大家先看上面TMOD寄存器各位的分布图第一:控制左时器1工作在定时方式或计数方式是哪个位? 通过前面的学习,我们已知道,C/T位(D6)是定时或计

32、 数功能选择位,半C/T=0时定时/计数器就为定时工作方式。 所以耍使定时/让数器1丄作在定时器方式就必需独D6为()。歸计歸協酸了剪.%惓斜晟吏须是1 0o第三:设定定时器0为计数方式。与第一个问题一样,定 时/计数器0的工作方式选择位也是C/T (D2),当C/T=l时, 就工作在计数器方式。第四:由软件启动定时器0,前面已讲过,当门单片机c语言虑用技术与实践张永格何乃味主编2009年6月G ATE=0时,定时/计数器的启停就山软件控制。单片机C语言应用技术与实践张永格何乃味主编2009年6月单片机C语言应用技术与实践张永格何乃味主编2009年6月知识链接第五:设定定时/计数器工作在方式1

33、,使定时/计数器0工 作在方式1, MO (DO) Ml (D1)的值必须是0 1。从上面的分析我们可以知道,只要将TMOD的各位,按规 定的要求设置好后,定时器/计灵敏器就会按我们预定的 要求工作。我们分析的这个例子最后各位的情况如下: D7 D6 D5 D4 D3 D2 DI D0 0 0 1 0 0 10 1二进制数00100101= I 六进制数25Ho所以执行MOVTMOD,#25H这条指令就町以实现上述耍求。=单片机C语言应用技术与实践张永格何乃味主编2009年6月O知识链接(2)定时器/计数器控制寄存器TCON定时器/计数器控制寄存器TCON如图7.8所示。TCON在特 殊功能寄

34、存器中,字节地址为88H,位地址(由低位到高位) 为88H-8FH,由于有位地址,十分便于进行位操作。 TCON的作用是控制定时器的启、停,标志定时器溢出和 中断情况。TCON的格式如图7.8所示。其中,TF1, TRI, TF0和TR0位用于定时器/计数器;IE1, IT1, IE0和IT0位用于中 断系统。«EH «Ell 8DH 8Cil 8B11 BAHTCON(88H)TF1TR1TF0TF0ID1IT1IE0IT0图7.8定时器/计数器控制寄存器TCON2009年6月单片机C语言应用技术与实践张永格何乃味主编单片机c语盲应用技术与实践张永格何乃味主编2009年6

35、月单片机c语盲应用技术与实践张永格何乃味主编2009年6月知识链接各位定义如下:单片机c语盲应用技术与实践张永格何乃味主编2009年6月-TF1:定时器1溢出标志位。当 字时器1计满溢出时,山硬件使 TF1置“1S并且申请中断。进 翁畔务常竊骅删 件清“0”。 TR1:定时器1运行控制位。由 软件清“(T关闭定时器1。当 GATE"且INTI为高电平时, TR1置“工启动定时器1;为 GATE=0, TR1置“1”启动定时 器1 O-TF0:毎时器0溢出标志。其功 能及操屣情况同TF1。-TR0:定时器0运行控制位。其 功能及操作情况同TR1。 IE1:外部中断1请求标志。IT1:外

36、部中断1触发方式选择IE0:外部屮断0请求标志。IT0:外部中断0触发方式选抒 位。TCON中低4位与中断有关, 请参看V断钳夫知讥。由于 TCON是町以佥寻的,因而如 杲只清溢出或启动定时器工作, 可以用位操作命令。例如:执 行“CLRTF0"后则消定时器0的 溢出;执行“SETBTR1”后可 启动定时器1开始工作前而还要设置方式定)。单片机c语盲应用技术与实践张永格何乃味主编2009年6月O知识链接4.定时器/计数器的初始化由于定时器/计数器的功能是由软件编程确定的,所以一 般在使用定时/计数器前都要对其进行初始化,使其按设 定的功能工作。初始货的步骤一般如下: (1)确定工作方

37、式(即对TMOD赋值); (2)预置定时或计数的初值(可直接将初值写入THO、 TLO 或 TH1、TL1);(3)根据需耍开放定时器/计数器的中断(直接对IE位赋 值); (4)启动定时器/计数器(若己规定用软件启动, TRO或TR1置若已规定由外中断引脚电平启 需给外引脚步加启动电平。当实现了启动要求后, 即按规定的工作方式和初值开始计数或定时)。单片机C语盲应用技术与实咸张永格何乃味主H丈命匕徹程2009年6月知识链接F面介绍一下确定时时/计数器初值的具体方法。曙来咅不同工作方式下计数器位数不同,因而最人计数值现假设最大计数值为M,那么各方式下的最大值M值如下: 方式0: M=213=8192方式 1: M=216=65536方式2: M=28=256方式3:定时器0分成两个8位计数器,所以两个M均为256。 因为定时器/计数器是作“加1%协,并在计数满溢出时产 生中断,因此初值X可以这样计厭X=M-计数值单片机c语盲应用技术与实践张永格何乃味主编2009年6月O知识链接举例说明初值的确定方法,【例】选择T1方式0用于定时,在P1.1输出周期为1ms方波,晶振 fosc=6MHz<>- 解:根拯题意,只要使Pll每 隔500us取丿乂一次即町得至I1ms的 方波,冈而T1的定时时间为500us, 因定时时间不长,取方式0即可。 则Ml M0=0;因是

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论