首页 > 分享 > 已知8051单片机的时钟频率为6MHZ,通过定时器1的工作方式1在P1^1引脚输出一个1KHZ占空比为60%的矩形波。

已知8051单片机的时钟频率为6MHZ,通过定时器1的工作方式1在P1^1引脚输出一个1KHZ占空比为60%的矩形波。

最新推荐文章于 2025-07-04 01:58:06 发布

原创 于 2020-05-05 23:43:51 发布 · 9.5k 阅读

· 10

· 56 ·

CC 4.0 BY-SA版权

题目:

已知8051单片机的时钟频率为6MHZ,通过定时器1的工作方式1在P1^1引脚输出一个1KHZ占空比为60%的矩形波。

已知条件分析:
1、时钟频率6MHZ,从这里我们可以得出它的机器周期为1/f=1/6us;
2、定时器1,工作方式1,那么对应TMOD寄存器也就是0x10;
3、输出一个1KHZ占空比60%,这里其实有两个条件,第一个输出1KHZ,他告诉我们输出的波形周期是1/f=1ms,然后是占空比,推出高电平为1ms*60%=600us,那么低电平就是400us;
4、机器周期=时钟周期*12=2us;
5、定时器工作方式1:定时时间=(65536-初值x)*机器周期,可算出初值为65486,即计数个数N为50;
 

编程:

//已知8051单片机的时钟频率为6MHZ

//通过定时器1的工作方式1在P1^1引脚输出一个1KHZ占空比为60%的矩形波。

#include <reg52.h>

#define uint unsigned int

#define uchar unsigned char

sbit wave=P1^1;

static uint count=0;

void Timer1Init()

{

TMOD |= 0x10;

TMOD &= 0xf0;

TH1 = (65536-65486)/256;//定时100us

TL1 = (65536-65486)%256;

EA = 1;

ET1 = 1;

TR1 = 1;

}

void main()

{

Timer1Init();

while(1);

}

void Timer1() interrupt 3

{

TH1 = (65536-65486)/256;

TL1 = (65536-65486)%256;

count++;

if(count==6)

wave=0;

if(count==10)

{

wave=1;

count=0;

}

}

相关知识

已知8051单片机的时钟频率为6MHZ,通过定时器1的工作方式1在P1^1引脚输出一个1KHZ占空比为60%的矩形波。
智能花盆自动浇水系统的设计说明书
智能花盆自动浇水系统的设计
自动浇水系统设计说明
盆花自动浇水系统的设计.doc
基于单片机的便携式土壤温湿度测量仪的设计
基于51单片机的温室大棚环境检测系统
基于单片机的自动浇花系统设计
基于51单片机土壤湿度检测及自动浇花浇灌系统
55、基于51单片机智能浇花系统设计自动浇水灌溉土壤湿度检测报警控制(程序+原理图+PCB源文件+Proteus仿真+参考论文+开题报告+任务书+元器件清单等)

网址: 已知8051单片机的时钟频率为6MHZ,通过定时器1的工作方式1在P1^1引脚输出一个1KHZ占空比为60%的矩形波。 https://m.huajiangbk.com/newsview2146762.html

所属分类:花卉
上一篇: 箔艺生花,绽放芳华——商务外语学
下一篇: 给男客户送花应该送什么