51单片机中断系统详解.docxVIP

  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文档。上传文档
查看更多
EX0=0,关闭外部中断0中断。 中断优先级存放器IP DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 位地址 --- --- --- PS/0 PT1/0 PX1/0 PT0/0 PX0/0 -------,无效位。 PS---串行口中断优先级控制位。 PS=1,串行口中断定义为高优先级中断。 PS=0,串行口中断定义为低优先级中断。 PT1---定时器/计数器1中断优先级控制位。 PT1=1,定时器/计数器1中断定义为高优先级中断。 PT1=0,定时器/计数器1中断定义为低优先级中断。 PX1---外部中断1中断优先级控制位。 PX1=1,外部中断1中断定义为高优先级中断。 PX1=0,外部中断1中断定义为低优先级中断。 PT0---定时器/计数器0中断优先级控制位。 PT0=1,定时器/计数器0中断定义为高优先级中断。 PT0=0,定时器/计数器0中断定义为低优先级中断。 PX0---外部中断0中断优先级控制位。 PX0=1,外部中断0中断定义为高优先级中断。 PX0=0,外部中断0中断定义为低优先级中断。 定时器/计数器工作模式存放器TMOD DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 GATE C/T M1 M0 GATE C/T M1 M0 ?|-------- --定时器1------------------- -----|-------- ------定时器0----------------------| GATE---门控制位。 GATE=0,定时器/计数器启动与停止仅受TCON存放器中TRX(X=0,1)来控制。 GATE=1,定时器计数器启动与停止由TCON存放器中TRX(X=0,1)和外部中断引脚〔INT0或INT1〕上的电平状态来共同控制。 C/T---定时器和计数器模式选择位。 C/T=1,为计数器模式;C/T=0,为定时器模式。 M1M0---工作模式选择位。 M1 M0 工作模式 0 0 方式0,为13位定时器/计数器 0 1 方式1,为16位定时器/计数器 1 0 方式2,8位初值自动重装的8位定时器/计数器 1 1 方式3,仅适用于T0,分成两个8位计数器,T1停止工作 定时器/控制器控制存放器TCON DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 TF1 TR1 TF0 TR0 IE1 /1 IT1/P3.3 0/1 IE0 IT0P3.2 TF1---定时器1溢出标志位。 当定时器1记满溢出时,由硬件使TF1置1,并且申请中断。进入中断效劳程序后,由硬件自动清0。需要注意的是,如果使用定时器中断,那么该位完全不用人为去操作,但是如果使用软件查询方式的话,当查询到该位置1后,就需要用软件清0。 TR1---定时器1运行控制位。 由软件清0关闭定时器1。当GATE=1,且INIT为高电平时,TR1置1启动定时器1;当GATE=0时,TR1置1启动定时器1。 TF0---定时器0TF1。 TR0---定时器0TR1。 IE1---外部中断1请求标志。 当IT1=0时,位电平触发方式,每个机器周期的S5P2采样INT1引脚(p3.3),假设NIT1脚为低电平,那么置1,否那么IE1清0。 当IT1=1时,INT1为跳变沿触发方式,当第一个及其机器周期采样到INIT1为低电平时,那么IE1置1。IE1=1,表示外部中断1正向CPU中断申请。当CPU响应中断,转向中断效劳程序时,该位由硬件清0。 IT1外部中断1触发方式选择位。 IT1=0,为电平触发方式,引脚INT1上低电平有效。 IT1=1,为跳变沿触发方式,引脚INT1上的电平从高到低的负跳变有效。 IE0---外部中断0IE1。 IT0---外部中断0IT1。 从上面的知识点可知,每个定时器都有4种工作模式,可通过设置TMOD存放器中的M1M0位来进行工作方式选择。 方式1的计数位数是16位,对T0来说,由TL0存放器作为低8、TH0存放器作为高8位,组成了16位加1计数器。 T0的初值问题。定时器一但启动,它便在原来的数值上开始加1计数,假设在程序开始时,我们没有设置TH0和TL0,它们的默认值都是0,假设时钟频率为12MHz,12个时钟周期为一个机器周期,那么此时机器周期为1us,记满TH0和TL0就需要216?-1个数,再来一个脉冲计数器溢出,随即向CPU申请中断。因此溢出一次共需65536us,约等于65.6ms,如果我们要定时50ms的话,那么就需要先给TH0和TL0装一个初值,在这个初值的根底上记50000个数后,定时器溢出,此时刚好就是50ms中断一次,当需要定时1s时,我们写程序时当产生20次50ms的定时器中断后便认为是1s,这样便可精确控制定时时间啦。要计

文档评论(0)

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

做好每一个文档。

1亿VIP精品文档

相关文档