第三次作业讲评

发布 2022-09-25 15:23:28 阅读 9577

116页。

8、利用定时器/计数器t0从p1.0输出周期为1s,脉宽为20ms的正脉冲信号,晶振频率为12mhz。试设计程序。

解:波形如图所示。

从图中可知,高电平持续时间是20ms,低电平持续时间是980ms,低电平为高电平持续时间的49倍。

用t0的方式1定时20ms,采取中断方式,在中断服务程序中,利用r7作为计数的寄存器,赋值50,每次20ms中断之后将r7内容减一,当r7是50时也就是第一次20ms将p1.0置高电平,当r7小于等于49时将p1.0清零,r7减到0了则赋回初值50,而时间常数计算如下式:

其中,定时长度为20ms,并由于晶振频率为12mhz,所以机器周期长度为1微秒。

程序如下:org 0

sjmp main

org 0bh

sjmp int0

org 30h

main: mov tmod, #

mov th0, #0b1h

mov tl0, #0e0h

setb et0

setb ea

mov r7, #

setb p1.0

setb tr0

sjmp $

int0: mov th0, #0b1h

mov tl0, #0e0h

djnz r7, exit

mov r7, #

setb p1.0

simp back

exit: clr p1.0

back: reti

end9、要求从p1.1引脚输出1000hz的方波,晶振频率为12mhz。试设计程序。

解:1000hz的方波的周期是1ms,则每隔0.5ms对p1.1取反一次则成为一个方波信号。

用t0的方式1定时0.5ms,采取中断方式,初值计算如下式:

其中,定时长度为0.5ms,并由于晶振频率为12mhz,所以机器周期长度为1微秒。

程序如下:org 0

sjmp main

org 0bh

sjmp int0

org 30h

main: mov tmod, #

mov th0, #0feh

mov tl0, #0ch

setb et0

setb ea

setb p1.1

setb tr0

sjmp $

int0: mov th0, #0feh

mov tl0, #0ch

cpl 1.1

retiend

10、试用定时器/计数器t1对外部事件计数。要求每计数100,就将t1改成定时方式,控制p1.7输出一个脉宽为10ms的正脉冲,然后又转为计数方式,如此反复循环。

设晶振频率为12mhz。

解:首先将t1设成方式1的计数模式,所以(tmod)= #50h, 而计数初值=65536-100=65436=0ff9ch

所以此时,(th1)= #0ffh, (tl1)= #9ch

而当计够100次之后产生中断,将t1设成方式1的定时模式,所以(tmod)= #10h,其中,定时长度为10ms,并由于晶振频率为12mhz,所以机器周期长度为1微秒,定时初值计算如下:

所以此时,(th1)= #0d8h, (tl1)= #0f0h

程序采用中断方式,则计数中断和定时中断都会进入该中断服务程序,由于计数中断和定时中断是交替进行的,所以用一个软件标志位表示进入中断服务程序时的奇偶次,在此选取psw的一个用户自定义位psw.5,该位的位名称是f0,预先清零,而在每次进入中断服务程序时都将它取反,则在f0清零的时候标志着计数功能,f0置位的时候标志着定时功能,程序如下所示:

org 0sjmp main

org 1bh

sjmp int1

org 30h

main: mov tmod, #50h

mov th1, #0ffh

mov tl1, #9ch

clr f0

setb et1

setb ea

clr p1.7

setb tr1

sjmp $

int1: cpl f0每次进入中断服务程序,都改变f0的奇偶性。

jnb f0, posi

setb p1.7定时方式期间,p1.7高电平。

mov tmod, #10h定时10ms,高电平会持续10ms,也就是正脉冲。

mov th1, #0d8h

mov tl1, #0f0h

sjmp exit

posi: clr p1.7计数方式期间,p1.7低电平。

mov tmod, #50h

mov th1, #0ffh

mov tl1, #9ch

exit: reti

end11、利用定时器/计数器t0产生定时时钟,由p1口控制8个指示灯。编一个程序,使8个指示灯依次一个一个闪动,闪动频率为20次/秒(8个灯依次亮一遍为一个周期)。

解:假设晶振频率为12mhz,所以机器周期长度为1微秒,再假设指示灯是用高电平点亮,p1口引脚上的信号如下图所示:

从图中可知,1秒钟之内总共有20次高电平时间片段在p1.0~p1.7引脚上依次出现并循环反复,所以每一次高电平持续时间是1/20秒,即0.

05秒,所以定时时间选择0.05秒。而引脚上的指示灯依次点亮采用将一个初始的二进制**:

00000001b先存入累加器a,然后送出p1口点亮最边上的一个指示灯,并定时0.05秒之后将a中的内容左移位之后,再次送出p1口点亮下一个指示灯的方法来实现。选用t0的方式1的定时模式,时间常数计算如下:

所以此时,(th10)= #03ch, (tl0)= #0b0h

程序采用中断方式,如下所示:

org 0sjmp main

org 0bh

sjmp int0

org 30h

main: mov tmod, #1h

mov th0, #3ch

mov tl0, #0b0h

mov a1初始**是00000001b,中断程序中将该值左移之后送p1口。

mov p1, a

setb et0

setb ea

setb tr0

sjmp $

int0: mov th0, #0feh

mov tl0, #0ch

rl amov p1, a

retiend

12、晶振频率为12mhz,如何用t0来测量20~1s之间的方波周期?又如何测量频率为0.5mhz左右的脉冲频率?

答:第一个问题的解答如下:

1)、将tomd的位3,即t0的gate位设为1,并将20~1s周期的方波信号接到引脚,用定时方式就可测量该信号的正脉冲的宽度,也就是高电平持续时间;

2)、而方波是高低电平时间相等的信号,所以该方波的周期就是高电平持续时间的两倍;

3)、当晶振频率为12mhz时,机器周期是1微秒,定时方式下就是每隔1微秒对加1寄存器th0、tl0进行加1操作,若将t0设置成16位的定时方式,所能测正脉冲的最大宽度也只能达到65536微秒也就是65.536毫秒,则此时能测量的方波的最大周期只能达到约131毫秒,不符合题目要求;

4)、为此不能单纯用原先的加1寄存器th0、tl0单独完成题目要求,而必须结合采用一个寄存器或者寄存单元来计,在此假设使用r7作为计数用的寄存器,若将t0设置成定时50毫秒中断,则在中断服务程序中r7只要计够10次的50毫秒时间段就是0.5秒的高电平持续时间,乘以2就是周期为1秒的方波的周期值,计够200次的50毫秒时间段就是10秒的高电平持续时间,乘以2就是周期为20秒的方波的周期值;

5)、在测量精度方面再进一步考虑,若把重装时间常数的指令作为中断服务程序的第一和第二条来执行,那么从t0的溢出标志被置位到进入到相应的中断服务程序需要至少3个机器周期,执行两条重装时间常数的指令共要2个机器周期,总共5个机器周期才能进行下一次50毫秒的定时,5个机器周期是5微秒,每50毫秒就会产生5微妙的误差,测量0.5秒的高电平,要进入中断服务程序10次,累积的误差就是50微秒,于是要测出周期为1秒(高电平持续0.5秒)的方波,相对误差等于:

,测量10秒的高电平,要进入中断服务程序200次,累积的误差就是1000微秒,于是要测出周期为20秒(高电平持续10秒)的方波,相对误差也是等于:,误差都很小;

6)、如果确实想测量得更精准,那么在算出50毫秒对应该装入的时间常数x之上再加上5,也就是把(x+5)填入,就可抵消5微秒的误差了。

第二个问题的解答如下:

.5mhz左右的脉冲也就是1秒钟出现脉冲的个数是个,也就是50万个,所以用t0的计数方式;

2)、t0的方式1设成计数方式,最大只能计65536次,所以可以考虑两种方法:第一种方法是定时20个50毫秒也就是1秒钟,在一秒钟里,数t1计数引脚出现的脉冲个数,并把计数的数值用1个寄存单元或者寄存器比如用r7,存储计满65536次脉冲后溢出的次数,那么就可以计到次,也就是1677.7215万次,满足量程要求;另一种方法是:

定时50毫秒时间段,在50毫秒时间段里数t1引脚出现的脉冲个数,这个50毫秒时间段是1秒钟时间段的二十分之一,所以数出的脉冲个数要乘以20,就是该信号的频率。

第三次作业讲评

同学们好,作业都做完了吗?是不是很想知道做的对错?下面是第三次作业的参 一定做完作业再看啊。一 作业参 一 名词解释 略 配送配送中心仓库立体仓库蜂窝损失。二 填空题。1 物料搬运的基本内容 阶段性构成 程序模式 图例符号 2 物料搬运系统分析的四个阶段 外部衔接 编织总体运送方案 编制详细搬运方案...

第三次作业讲评

周奉璇4 21 2013 第七章。单选题。1 信托的本质是 a与利益相分离。评析 信托财产所有权的性质极为特殊,表现为财产所有权与利益相分离,这也是信托区别于其他财产管理制度的本质特征。2 信托的最基本职能是 c 评析 财产管理职能,资金融通职能,投资职能,公益服务职能为信托的基本职能。其中,财产管...

第三次作业讲评 14春

同学们好 我将批改作业情况反馈给您,请阅读。本次作业的知识点见于教材的中编实践操作篇的第五至十二章,主要考察大家对思想政治素质教育 道德素质教育 科学文化素质教育 身心素质教育 审美素质教育 劳动素质教育 思维素质教育和创新素质教育部分掌握的情况,下面我逐一地讲评作业中的一些问题,如学习之后,大家还...