当前位置: 首页 > news >正文

郑州加盟做网站创意营销新点子

郑州加盟做网站,创意营销新点子,长沙创求网络科技有限公司,南京高端定制网站建设1、相关知识 振荡周期1/12us; //振荡周期又称 S周期或时钟周期(晶振周期或外加振荡周期)。 状态周期1/6us; 机器周期1us; 指令周期1~4us; ①51单片机有两组定时器/计数器,因为既可以定时,又可以计数,故称之为定时器…

1、相关知识

振荡周期=1/12us;     //振荡周期又称 S周期或时钟周期(晶振周期或外加振荡周期)。

状态周期=1/6us;

机器周期=1us;

指令周期=1~4us;

①51单片机有两组定时器/计数器,因为既可以定时,又可以计数,故称之为定时器/计数器。

②定时器/计数器和单片机的CPU 是相互独立的。定时器/计数器工作的过程是自动完成的,不需要CPU 的参与。

③单片机中的定时器/计数器是根据机器内部的时钟或者是外部的脉冲信号对寄存器中的数据加 1

2、单片机定时/计数器结构    T0—P3.4    T1—P3.5

定时/计数器的实质是加 1 计数器(16 位),由高 8 位和低 8 位两个寄存器 THx 和TLx组成。它随着计数器的输入脉冲进行自加 1,也就是每来一 个脉冲,计数器就自动加 1,当加到计数器为全 1 时,再输入一个脉冲就使计数器回零,且计数器的溢出使相应的中断标志位置 1,向 CPU 发出中断请求(定时 /计数器中断允许时)。如果定时/计数器工作于定时模式,则表示定时时间已到; 如果工作于计数模式,则表示计数值已满。可见,由溢出时计数器的值减去计数初值才是加 1 计数器的计数值。

51 单片机定时器/计数器内部结构如下所示 

2.1、工作方式寄存器 TMOD

工作方式寄存器 TMOD 用于设置定时/计数器的工作方式,低四位用于 T0,高四位用于 T1。其格式如下:

GATE = 0 时:只需要用软件使 TCON 中的 TR0 或 TR1 为 1,就可以启动定时/计数器工作;

GATE=1 时,要用软件使 TR0 或 TR1 为 1,同时外部中断引脚 INT0/1 也为高电平 时,才能启动定时/计数器工作。

C/T =0 为定时模式;     C/T =1 为计数模式

定时器——方式1       串口通信——方式2

2.2、控制寄存器 TCON

TCON 的低 4 位用于控制外部中断。TCON 的高 4 位用于控制定 时/计数器的启动和中断申请。

TF0,TF1:定时/计数器中断请求控制位,当计数溢出时设为1,响应中断后设为0

TR0,TR1:定时/计数器中断允许标志

3、单片机定时/计数器的工作方式

3.1 方式0        计数初值与计数个数的关系为:X=2 (13次方)-N

方式 0 为 13 位计数,由 TL0 的低 5 位(高 3 位未用)和 TH0 的 8 位组成。 TL0 的低 5 位溢出时向 TH0 进位,TH0 溢出时,置位 TCON 中的 TF0 标志,向 CPU 发出中断请求。

 GATE=0 时,仅由TR0 控制与门的开启;GATE=1时,由外中断引脚信号INT0 和 TR0 共同控制与门的开启

3.2 方式1(定时器使用)       计数初值与计数个数的关系为:X=2 (16次方)-N。

方式 1 的计数位数是 16 位,由 TL0 作为低 8 位,TH0 作为高 8 位

3.3 方式2 (串口通信使用)     计数初值与计数个数的关系为:X=2 (8次方)-N。

方式 2 为自动重装初值的 8 位计数方式。工作方式 2 特别适合于用作较精确的脉冲信号发生器。

3.4 方式3

方式 3 只适用于定时/计数器 T0,定时器 T1 处于方式 3 时相当于 TR1=0, 停止计数。工作方式 3 将 T0 分成为两个独立的 8 位计数器 TL0 和 TH0。

4、定时器配置

①对 TMOD 赋值,以确定 T0 和 T1 的工作方式,如果使用定时器 0 即对 T0 配 置,如果使用定时器 1 即对 T1 配置。

②根据所要定时的时间计算初值,并将其写入 TH0、TL0 或 TH1、TL1。

③如果使用中断,则对 EA 赋值,打开总定时器中断。

④使 TR0 或 TR1 置位,启动定时/计数器定时或计数

如果我们想定时 1ms 的初值是多少呢?1ms/1us=1000。也就是要计数 1000 个,初值=65535-1000+1 (因为实际上计数器计数到 65536(2 的 16 次方)才溢出,所以后面要加 1) =64536=FC18H,所以初值即为 THx=0XFC,TLx=0X18

以定时器 0 为例介绍配置定时器工作方式 1、设定 1ms 初值,开启定时器计数功能以及总中断,

void time0_init(void)

{

        TMOD|=0X01;//选择为定时器 0 模式,工作方式 1     0X01方式1    0X10——方式2

        TH0=0XFC; //给定时器赋初值,定时 1ms

        TL0=0X18;

        ET0=1;//选择使用定时器 0 中断允许

        EA=1;//打开总中断

        TR0=1;//打开定时器

}

定时器中断实验:通过定时器 0 中断控制 D1 指示灯间隔 1 秒闪烁

#include "reg52.h"
typedef unsigned int u16;
typedef unsigned char u8;
void delay_10us(u16 ten_us){
    while(ten_us--);
}

sbit LED1=P2^0;

//初始化定时器0中断的函数
void time0_init(){
    TMOD|=0X01;//选择定时器 0 模式,工作方式 1  为了不干扰定时器1
    TH0=0XFC;//低8位  给定时器赋初值,定时1ms,相当于1000次脉冲
    TL0=0X18;//高8位
    ET0=1;//打开定时器 0 中断允许
    EA=1;//打开总开关
    TR0=1;//打开定时器   
}

/*

//初始化定时器1中断的函数
void time1_init(){
TMOD|=0X10;//选择为定时器 0 模式,工作方式 2
TH0=0XFC; //给定时器赋初值,定时 1ms
TL0=0X18;
ET0=1;//打开定时器 0 中断允许
EA=1;//打开总中断
TR0=1;//打开定时器,手动设置
}

*/

void main(){
    time0_init();
    while(1){  
    }
}

//定义定时器中断服务函数
void time0() interrupt 1{
    static u16 i=0;//静态变量,只初始化1次
    TH0=0XFC;
    TL0=0X18;
    i++;
    if(i==1000){

        //计时1s
        i=0;
        LED1=!LED1;        
    } 
}

http://www.yayakq.cn/news/804069/

相关文章:

  • 济南网站建设是什么意思女做受视频网站
  • wordpress geek themeseo整体优化步骤怎么写
  • 昆明建设网站哪家好wordpress 获取category id
  • 登录网站软件怎么做网站定制设计师
  • 网站改版301做手机网站多少钱
  • 绍兴市高速公路建设指挥部网站钓鱼网站模板制作
  • 公司建网站有何意义wordpress网站静态页面生成
  • 上市设计网站网站建设案例 星座
  • dw建设网站的代码模板美橙互联
  • 临沂网站优化哪家好代理公司注册
  • 南京企业网站设计网站开发android客户端
  • 广州网站建设广州网络推广公司排名wordpress下载官网
  • 怎么免费做自己的网站中国住房和城乡建设部网站首页
  • 办网站需要多少费用中国住房和城乡建设厅网站
  • 上海网站制作建设怎么样asp建的网站上传文章
  • 建设网站免费网站设计济南
  • app充值网站开发网站怎么做彩页
  • 怎么在记事本上做网站营销型网站建
  • 青岛网站设计 网站建设投稿作文网站
  • 医药网站建设客户的需求学网站建设软件开发
  • 中电科工程建设有限公司网站购物网站如何做推广
  • 长沙网站制微信网站入口
  • 织梦个人网站模板常州网络公司网站
  • 网站没备案或与实际备案不符往建设厅网站上传东西
  • 莱州网站建设多少钱小程序数据网
  • 用asp.net做的网站框架网站建设 书
  • 做网站建设话术wordpress慢 数据库6
  • 成都定制网站建设如何做新网站保留域名
  • 大连做网站排名wordpress缓存插件汉化破解版
  • 深圳福田区区住房和建设局网站湖南政务服务网