小型电子产品的实现与调试 小型电子产品的实现与调试 STC15F2K60S2单片机的定时器计数器.pptVIP

小型电子产品的实现与调试 小型电子产品的实现与调试 STC15F2K60S2单片机的定时器计数器.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
一、任务要求 用单片机定时器/计数器的定时功能,设计一个时间间隔为1s的流水灯电路。 二、硬件设计 用P1口控制8只LED灯,低电平驱动 。 STC15F2K60S2单片机的定时控制 —任务实施 系统时钟12MHz,12分频,机周时间为1us。 方式0最大定时时间为65.536ms,远小于1s。 所以,需采用累计T0定时的方法实现1s定时。 采用T0定时时间为50ms,累计20次,即为1s。 三、软件设计 #includereg52.h #includeintrins.h #define uchar unsigned char #define uint unsigned int uchar cnt=0; //计数变量(20次) uchar x=0xfe; void Timer0_init(void) { TMOD=0x00; //T0工作方式0 TH0=(65536-50000)/256; //定时初值高8位 TL0=(65536-50000)%256; //定时初值低8位 TR0=1; //启动定时器 } STC15F2K60S2单片机的定时控制 —任务实施 void main(void) { Timer0_ini(); //定时器初始化 P0=x; while(1) { if(TF0==1) //定时时间到? { TF0=0; //清溢出标志 STC15F2K60S2单片机的定时控制 —任务实施 cnt++; //计数变量+1 if(cnt==20) //计满20次?(1s时间到?) { cnt=0; //计数变量清0 x=_crol_(x,1); //左移1位 P0=x; } } } } 本任务主要理解STC15F2K60S2单片机的定时/计数器的计数功能,掌握STC15F2K60S2单片机的定时/计数器计数的应用编程。 STC15F2K60S2单片机的计数控制 —任务说明 STC15F2K60S2单片机的定时/计数器的计数一般有两种情况,一是从0开始计数,统计脉冲事件的个数,这时,计数的初始值为0;一是计数的循环控制,这种计数控制与定时控制一样,要利用到计数溢出标志,计数器的初始值为计满状态值减去循环控制次数。 计数器初始化: (1)对TMOD赋值,确定T0和T1为计数状态,推荐采用方式0; (2)置“0”TH0、TL0或TH1、TL1; (4)置位TR0或TR1,启动T0和Tl开始计数。 STC15F2K60S2单片机的计数控制 —相关知识 一、任务要求 使用T1定时器/计数器计数,并送LED数码管显示。 二、硬件设计 如图为LED数码管显示驱动电路,计数脉冲从T1引脚(P3.5)输入。 STC15F2K60S2单片机的计数控制 —任务实施 三、软件设计 #include reg51.h #includeintrins.h #define uchar unsigned char #define uint unsigned int uchar code SEG7[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x00}; uchar code Scan-bit[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf}; uchar data Dis-buf[]={10,4,3,2,1,0}; uint counter=0; STC15F2K60S2单片机的计数控制 —任务实施 void delay(uint t)

文档评论(0)

WanDocx + 关注
实名认证
文档贡献者

大部分文档都有全套资料,如需打包优惠下载,请留言联系。 所有资料均来源于互联网公开下载资源,如有侵权,请联系管理员及时删除。

1亿VIP精品文档

相关文档