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

仪征建设银行官方网站句容网络推广

仪征建设银行官方网站,句容网络推广,wap html网站模板,建立网站考虑的三大要素TMOD负责确定T0和T1的工作模式,TCON控制T0和T1的启动或停止计数,同时包含定时器状态 TF1:定时器1溢出标志 TF0:定时器0溢出标志 0~65535 每隔1微秒计数器1,总时间65535微秒,赋上初值64535,则只…

在这里插入图片描述
在这里插入图片描述

TMOD负责确定T0和T1的工作模式,TCON控制T0和T1的启动或停止计数,同时包含定时器状态
TF1:定时器1溢出标志
TF0:定时器0溢出标志

0~65535 每隔1微秒计数器+1,总时间65535微秒,赋上初值64535,则只有1000微秒即1毫秒

第一步:编写Timer_Init()

首先配置TMOD
在这里插入图片描述
所以初始化TMOD = 0x01; //0000 0001
整体操作:TMOD = TMOD & 0xF0; //低四位清零,高四位不变
TMOD = TMOD | 0x01; //最低位置1,其他位不变

接下来配置TCON
在这里插入图片描述
TF0 = 0;
TR0 = 1;

还要配置TH0和TL0
用64535,存在这两个盒子里,盒子最大只能存八字节也就是256,所以
TH0 = 64535 / 256;
TL0 = 64535 % 256;

最后配置中断系统
在这里插入图片描述
要打开的开关置1
ET0 = 1;
EA = 1;
PT0 = 0;

来看看代码

#include <REGX52.H>void Timer0_Init(void)		//1毫秒@11.0592MHz
{TMOD &= 0xF0;		//设置定时器模式TMOD |= 0x01;		//设置定时器模式TL0 = 0x66;		//设置定时初值TH0 = 0xFC;		//设置定时初值TF0 = 0;		//清除TF0标志TR0 = 1;		//定时器0开始计时//中断系统ET0 = 1;EA = 1;PT0 = 0;
}void main()
{Timer0_Init();while(1){}
}unsigned int T0Count;
void Timer0_Routine() interrupt 1
{TL0 = 0x66;		//设置定时初值TH0 = 0xFC;		//设置定时初值T0Count ++;if(T0Count >= 1000){T0Count = 0;P2_0 = ~P2_0;}
}

接下来把定时器模块化
创建Timer0头文件和.c文件存放Timer0_Init()
中断函数保留在主函数中,根据不同的需要进行修改
然后把T0Count 改为静态局部变量,使之生命周期与文件相同,否则执行完一次之后会被初始化

利用按键控制流水灯流动方向的主函数代码:
Key函数读取按键,按一次改变一次流水方向,每500毫秒中断一次,判断流水模式进行移位
crol 是循环左移函数 , _cror_是循环右移函数,需要INTRINS.H头文件

#include <REGX52.H>
#include <INTRINS.H>
#include "Timer0.h"
#include "Key.h"unsigned char KeyNum, LEDMode;void main()
{P2 = 0xFE; // 1111 1110 点亮最后一位,然后利用循环移位函数_crol_ 和_cror_Timer0_Init();while(1){KeyNum = Key();if(KeyNum){if(KeyNum == 1){LEDMode ++;if(LEDMode >= 2) LEDMode = 0;}}}
}void Timer0_Routine() interrupt 1
{static unsigned int T0Count;TL0 = 0x66;		//设置定时初值TH0 = 0xFC;		//设置定时初值T0Count ++;if(T0Count >= 500) //每500毫秒移位一次,LEDMode决定方向{T0Count = 0;if(LEDMode == 0) P2 = _crol_(P2, 1);if(LEDMode == 1) P2 = _cror_(P2, 1);}
}

而定时器时钟只需要在此基础上进行修改,利用之前模块化好的LCD1602模块和Timer0模块,下面给出主函数:

#include <REGX52.H>
#include "LCD1602.h"
#include "Timer0.h"
#include "Delay.h"unsigned int Sec, Min, Hour;void main()
{LCD_Init();Timer0_Init();LCD_ShowString(1, 1, "Clock:");LCD_ShowString(2, 1, "  :  :");while(1){LCD_ShowNum(2, 1, Hour, 2);LCD_ShowNum(2, 4, Min, 2);LCD_ShowNum(2, 7, Sec, 2);}
}void Timer0_Routine() interrupt 1
{static unsigned int T0Count;TL0 = 0x66;		//设置定时初值TH0 = 0xFC;		//设置定时初值T0Count ++;if(T0Count >= 1000){T0Count = 0;Sec ++;if(Sec >= 60) Sec = 0, Min ++;if(Min >= 60) Min = 0, Hour ++;if(Hour >= 24) Hour = 0;}
}

在这里插入图片描述

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

相关文章:

  • 海珠网站建设报价国土系统网站建设用地受理表
  • 网站设计建设价格搜索引擎优化方法案例
  • 上海优化网站公司房地产微网站模板
  • 山东网站备案注意事项海南seo快速排名优化多少钱
  • 北京通州做网站南宁小程序定制开发公司
  • 珠海汽车网站建设花生壳怎么建设购物网站
  • 网站怎么做筛选功能的代码发布消息做任务的网站
  • 北京市建设部网站广州番禺属于哪个区
  • 免费博客网站网站建设活动
  • 淘宝客网站备案号做安居客网站需要什么浏览器
  • 怎么更改网站首页图片尺寸东莞网站建设的价格
  • 洛阳新光建站百度相册登录入口
  • 官方网站怎么制作做网站是学什么专业
  • 如何建立自己网站视频教程网站设计步骤及注意事项
  • 漳州微网站建设公司推荐wordpress 通用代码 网页
  • 如何创建属于个人网站武清网站开发tjniu
  • 适合个人网站的名称扬州专业外贸网站建设推广
  • 建设用地规划许可证去哪个网站查河南网站排名优化价格
  • 网站设计轮播图需要吗咨询类网站模板
  • 厦门网站建设电话个人网站也要备案吗
  • 网站建设包括什么wordpress 摘要调用
  • 漳州市住房建设局网站0基础学网站开发
  • 秦皇岛建设局网站WordPress百度快照图片
  • 濮阳手机网站建设中国做外贸网站有哪些问题
  • 网站添加百度地图标注wordpress关闭多版本
  • 最专业的网站建设组织珠海企业网站设计公司
  • 做外贸的网站看啥书装饰logo设计图片
  • 顶呱呱网站建设是外包的吗手机查看别人网站代码吗
  • 新网站网页收录企业网站建设代理加盟
  • 网站 推送辽宁建设工程信息网老网站