网站大量收购独家精品文档,联系QQ:2885784924

《单片机控制技术》课件——任务5.pptxVIP

《单片机控制技术》课件——任务5.pptx

此“教育”领域文档为创作者个人分享资料,不作为权威性指导和指引,仅供参考
  1. 1、本文档共57页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

主讲教师任务5-1简易秒表设计单片机控制技术(C语言版)

任务导入0151单片机内部定时器02程序设计03举一反三04

一、任务导入PARTONE01

用单片机控制两个LED数码管,采用静态连接方式,要求两个数码管显示00~99计数,时间间隔为1s。任务要求

两个共阳极数码管的段码分别由P1口和P2口控制,公共端接高电平。系统采用12MHz晶振硬件电路

二、51单片机内部定时器PARTTWO02

T0、T1:两个16位的计数器TMOD:方式寄存器1.选择4种工作方式2.选择定时/计数3.决定启动方式TCON: 控制寄存器1.启动控制2.计满溢出控制

TMOD(89H)寄存器格式GATE(门控位)010TR1=1启动定时器,不受INT1控制TR1=1,INT1=1共同启动定时器? C/T(功能选择)1定时器计数器? M1M0(工作方式)T1T076543210GATEC/TM1M0GATEC/TM1M0功能工作方式M1M013位计数器方式00016位计数器方式1018位计数器,初值自动重装方式210分成两个8位计数器,仅用于T0。T1停止使用方式311

TCON(88H)寄存器格式和定时计数器无关分别控制T0、T1的启动与溢出TR0=0//位操作指令,给TR0位清0中断系统中才使F1TR1TF0TR0T0启动位TR0=1,启动T0工作TR0=0,停止T0工作T1启动位TR1=1,启动T1工作TR1=0,停止T1工作

TCON(88H)寄存器格式while(!TF0);TF0=0;//查询TF0,这是查询方式的应用//如果计满溢出,将TF0清076543210TF1TR1TF0TR01计数溢出,硬件自动置10中断方式:硬件自动清0查询方式:软件清0

三、程序设计PARTTHREE03

定时时间与计数初值定时时间与计数溢出定时1秒溢出查询、中断定时器编程步骤:定时器初始化(设置工作方式)、初值计算和设置、启动定时器计数、计数溢出处理软件设计思路

用单片机定时器T1的工作方式1编制1s延时程序,假定系统采用12MHz晶振,T1的工作方式1定时时间为50ms,再循环20次即可定时到1s。voidtimer_1()interrupt3//T1的中断类型号为3{TH1=(65536-50000)/256;//重新设置T1计数初值高8位TL1=(65536-50000)%256;//重新设置T1计数初值低8位count++;//50ms计数器加1if(count==20)//1s时间到{count=0;//50ms计数器清0miao++;//秒计数器加1if(miao==100)miao=0;//miao计数到100,则从0开始计数}}溢出中断处理

中断源n外部中断00定时器01外部中断12定时器13串行口4中断服务程序以函数形式存在;中断函数定义语法如下:void函数名()interruptn

#includereg51.h//包含头文件reg51.h,定义了51单片机的专用寄存器unsignedcharcount=0;//对50ms定时时间进行计数unsignedcharmiao=0;//秒计数器voiddisp(unsignedchari){unsignedcharled[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};//定义0~9显示码,共阳极数码管P1=led[i/10];//显示i高位

您可能关注的文档

文档评论(0)

青柠职教 + 关注
实名认证
服务提供商

从业10年,专注职业教育专业建设,实训室建设等。

1亿VIP精品文档

相关文档