编写一段程序,让单片机的P1.7输出1ms的方波(用定时器T1完成),晶振频率12MHz.

编写一段程序,让单片机的P1.7输出1ms的方波(用定时器T1完成),晶振频率12MHz.,第1张

机器周期

T

=

12/Fosc

=

12/(12x10^6)

=

2x10^-6s

=1μs

1ms方波肆敬的半周期

=500μs

,计数做雹洞值=500μs/1μs

=500d

约定T1工纯枯作方式0,是13位计数器,2^13

=8192d

-500d

=

7692d

=1E0Ch

TH1←1EH,

TL1←0CH

汇编程序如下:

ORG

0000H

AJMP

MAIN

ORG

0100H

MAIN:

MOV

SP,

#60H

堆栈指针初值

MOV

TMOD,

#00H

T1方式0作定时器

LP1

MOV

TH0,

#1EH

T1计数预装值高8位

MOV

TL0,

#0CH

T1计数预装值低8位

SETB

TR1

启动T1计数

LP2:

JBC

TF1,

LP3

若T1计数溢出,转LP3

SJMP

LP2

若未溢出,继续查询

LP3:

CPL

P1.7

P1.7输出电平高低置反

AJMP

LP1

循环,进入另一半周期

END

#include<reg52.h>

#define  uchar unsigned char

#define  uint  unsigned int

#define DAdata  P0//DA数据端口

可以产生弦波、方波、三角波、三角波、梯形波及其他任意波形,波形的频率(最大790HZ)和幅度在一定范围内可任意改变。波形和频率的改变通过软件控制,幅度的改变通过硬件实现。

正弦波是频率成分最为单一的一种信号,因这种信号的波形是数学上的正弦曲线而得名。任何复杂信号——例如音乐毕乱胡信号,都可以看成由许许多多频率不同、大小不等的正弦波复合手拦而成。陪尘振荡电路是电子技术的一个重要组成部分,正弦波振荡器广泛应用于广播、电视、通讯,工业自动控制,测量表计, 以及高频加热,超声波探伤等等方面。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12399860.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存