ImageVerifierCode 换一换
格式:DOC , 页数:7 ,大小:134KB ,
资源ID:4608271      下载积分:5 金币
快捷注册下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/4608271.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请

   平台协调中心        【在线客服】        免费申请共赢上传

权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

注意事项

本文(51单片机中断系统程序实例.doc)为本站上传会员【二***】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

51单片机中断系统程序实例.doc

1、 . 51单片机中断系统程序实例〔STC89C52RC) 51单片机有了中断,在程序设计中就可以做到,在做某件事的过程中,停下来先去响应中断,做别的事情,做好别的事情再继续原来的事情。中断优先级是可以给要做的事情排序。单片机的学习不难,只要掌握学习方法,学起来并

2、不难。什么是好的学习方法呢,一定要掌握二个要点:1. 要知道存放器的英文全拼,比方IE = interrupt中断  不知道全拼,要去猜,去查。这样就可以理解为什么是这个名称,理解了以后就不用记忆了。2. 每个知识点要有形像的出处比方看到TF0,脑子里马上要形像地定位到TCON存放器的某位看到ET0, 马上要形像地定位到IE存放器的第2位hi.baidu./tuenhai/独家揭秘: 形像是记忆的最大技巧。当人眼看到某个图时,是把视觉信号转化成电信号,再转化成人能理解的形像。当我们回忆形像时,就是在重新检索原先那个视觉信号,并放大。在学习过程中,不断练习检索、放大信号,我们的学习能力就会越来越

3、强。写程序代码时,也要把尽量把每行代码形像化。51单片机中断源8051有五个中断源,有两个优先级。与中断系统有关的特殊功能存放器有IE〔中断允许存放器〕、IP〔中断优先级控制存放器〕、中断源控制存放器〔如TCON、SCON的有关位〕。51单片机的中断系统构造如以下图〔注意,IF0应为TF0): 8052有6个中断源,它比8051多一个定时器/计数器T2中断源。8051五个中断源分别是: 〔1〕51单片机外部中断源8051有两个外部中断源,分别是INT0和INT1,分别从P3.2和P3.3两个引脚引入中断请求信号,两个中断源的中断触发允许由TCON的低4位控制,TCON的高4位控制运

4、行和溢出标志。 INT0也就是Interrupt 0。在这里应该看一下你的51单片机开发板的电路原理图。离开形像的记忆是没有意义的。读到上面这句,你应该回忆起原理图上的连接。任何记忆都转化为形像,这是学习的根本原理,我们通过学习单片机要学会这种学习方法,会让你一辈子受益无穷。 TCON的构造如以下图: 〔a〕定时器T0的运行控制位TR0 TR0由软件置位或者清0。当门控位GATE=0时,TO计数器仅由TR0控制,TR0=1启动计数,TR0=0时停顿。当门控位GATE=1时,T0计数器由INT0和TR0共同控制,当INT0=1且TR0=1时启动T0计数器。〔b〕定时器T0溢出

5、标志位TF0 当T0溢出时TF0=1,并向CPU申请中断,CPU响应中断后由硬件将TF0清0,也可以由软件查询方式将TF0清0。c〕定时器T1的运行控制位TR1 功能同TR0。〔d〕定时器T1溢出标志为TF1 功能同TF1。〔e〕外部中断源1〔INT1、P3.3〕中断请求标志IE1 IE1=1时外部中断源1正在向CPU请求中断,当CPU响应该中断时由硬件将IE1清0〔下降沿触发方式〕。〔f〕外部中断源1触发方式选择位IT1 IT1=0时外部中断源1选择电平触发方式,当输入低电平时置位IE1;IT1=1时外部中断源1选择下降沿触发方式,当中断源由高电平变低电平时置位 IE1,向CPU请

6、求中断。〔g〕外部中断源0〔INT0、P3.2)中断请求标志IE0 功能类同IE1。〔h〕外部中断源0触发方式选择位IT0 功能类同IT1。CPU在每个机器周期采样INT0和INT1引脚的输入电平。i、电平触发方式当CPU采样到低电平时,置位IE0和IE1,采样到高电平时,将IE0和IE1清零。在电平触发方式下,外部中断源必须一直保持低电平〔至少保持1个以上的机器周期〕直到CPU响应中断请求,否那么中断请求将丧失,同时在中断处理程序完毕之前必须,外部中断源必须变为高电平,否那么将产生另一次中断。ii、下降沿触发方式CPU每个机器周期采样中断输入引脚,如果相续的两次采样,第一次是高电平,第二

7、次是低电平,那么置位相应的IE,响应中断后,硬件自动将IE清0。采样下降沿触发方式,中断源的高、低电平都必须保持12个振荡周期〔即1个机器周期〕以上,这样CPU才能有效检测到下降沿,并引发CPU中断。〔2〕51单片机部中断源8051有3个部中断源,分别是定时器T0、T1和串行口中断。8052增加了一个T2定时器中断。2、51单片机中断使能控制中断的允许和制止由中断使能控制存放器IE控制,其字节地址为0A8H,可以位寻址,其构造如以下图所示: EX0:外部中断0中断允许位;ET0:定时器/计数器T0中断允许位;EX1:外部中断1中断允许位;ET1:定时器/计数器T1中断允许位;ES:串行口

8、中断允许位;ET2:定时器/计数器T2中断允许位;〔只要8052具有〕EA:CPU中断总允许位,EA=1时所有的中断开放,EA=0时制止所有的中断。3、51单片机中断优先级51有两个优先级:高、低。通过IP〔中断优先级存放器〕来设置优先级,其字节地址为0B8H,可位寻址,其构造如以下图: IP中各位值为0时表示低优先级中断,为1时表示高优先级中断。CPU复位后IP=0。 高优先级中断可以中断低优先级中断,同优先级中断不能相互中断。当CPU同时接到同优先级的几个中断请求时,CPU按照如下硬件顺序进展中断响应: 4、51单片机中断请求的撤除CPU响应中断请求,执行中断效劳程序,但

9、在中断返回指令〔RETI〕之前必须撤除中断信号,否那么将可能再次引起中断而发生错误。中断请求撤销的方法有三种:a、单片机部硬件自动复位:对于定时器/计数器T0、T1及采用边沿触发方式的外部中断请求,CPU在响应中断后,由部硬件自动撤销中断请求;b、应用软件去除响应标志:对串口发送/接收中断请求及定时器T2的溢出和捕获中断请求,CPU响应中断后,部无硬件自动复位RI、TI、TF2及EXF2,必须在中断效劳程序中去除这些标志,才能撤除中断;c、既无软件去除也无硬件撤除:对于采用电平方式的外部中断请求,CPU对引脚上的中断请求信号既无控制能力,也无应答信号,为保障CPU响应中断请求中断后,执行返回指

10、令前撤除中断请求,必须考虑另外的措施。5、51单片机中断响应过程51单片机在每个机器周期的S5P2状态顺序检查每个中断源的中断请求标志,假设有中断源发送中断请求,CPU在下个机器周期的S5P2状态按优先级顺序查询各中断标志,并且取高优先级的中断进展响应。响应中断后置位相应的中断优先级状态触发器,标明当前中断效劳的优先级别,执行硬件调用程序,将程序计数器PC的容压入堆栈进展保护。对于中断源的中断入口地址装入程序计数器PC,使程序转入该中断入口处执行中断效劳程序,直到遇到RETI指令。执行RETI指令,撤销中断优先级触发器,弹出断点地址至程序计数器PC,继续源程序的执行过程。在接收中断申请时,如遇

11、到以下情况之一,硬件调用子程序将被封锁:a、正在执行同级或高一级的中断效劳程序;b、当前指令周期不是该指令的最后一个周期〔或一条指令未执行完〕;c、当前正在执行的指令是RETI或对IE、IP的读写操作。6、中断入口地址各中断源的中断入口地址为: STC86C52RC 51单片机中断例如程序#include typedef unsigned char uint8;typedef unsigned int uint16;typedef unsigned long uint32;sbit enableG1 = P1^3; sbit enableG2 = P1^4;sbit

12、 selectC = P1^2; sbit selectB = P1^1; sbit selectA = P1^0;code uint16 num16[16] = { 0xC0, 0xF9, 0xA4, 0xB0, 0x99, 0x92, 0x82, 0xF8,0x80, 0x90, 0x88, 0x83, 0xC6, 0xA1, 0x86, 0x8E };//共阳数码管真极表uint8 num6[6] = {0};//储存秒,0-5对应于个位...10万位上各位上的值void enable138(void); //启用138译码器切换IO口void refresh_led(void);voi

13、d thtl_init(void);void timer1_init(void);void et1_init(void);// by hi.baidu./tuenhai/void main(void){enable138();timer1_init();et1_init();while(1);}void interrupt_timer1(void) interrupt 3{static uint16 counter = 0;static uint32 sec = 0;counter++;thtl_init();if(counter == 1000){counter = 0;sec++;num6

14、[0] = sec % 10;num6[1] = sec/10%10;num6[2] = sec/100%10;num6[3] = sec/1000%10;num6[4] = sec/10000%10;num6[5] = sec/100000%10;}refresh_led();//更新num6数组后再刷新数码管}void enable138(void) { enableG1 = 1; enableG2 = 0; }//刷新数码管,只显示有效值void refresh_led(void){static uint8 i = 0;switch(i){case 0: selectC = 0; sel

15、ectB = 0; selectA = 0; P0 = num16[ num6[0] ]; break;case 1: selectC = 0; selectB = 0; selectA = 1; P0 = num6[5] == 0 && num6[4] == 0 && num6[3] == 0 && num6[2] == 0 && num6[1] == 0 ? 0xFF : num16[ num6[1] ]; break;case 2: selectC = 0; selectB = 1; selectA = 0; P0 = num6[5] == 0 && num6[4] == 0 && nu

16、m6[3] == 0 && num6[2] == 0 ? 0xFF : num16[ num6[2] ]; break;case 3: selectC = 0; selectB = 1; selectA = 1; P0 = num6[5] == 0 && num6[4] == 0 && num6[3] == 0 ? 0xFF : num16[ num6[3] ]; break;case 4: selectC = 1; selectB = 0; selectA = 0; P0 = num6[5] == 0 && num6[4] == 0 ? 0xFF : num16[ num6[4] ]; br

17、eak;case 5: selectC = 1; selectB = 0; selectA = 1; P0 = num6[5] == 0 ? 0xFF : num16[ num6[5] ]; break; default: break;}i = ++i % 6;}//设置计数器初数值,重用的容都应该写成独立函数出来方便维护void thtl_init(void){TH1 = (65536 - 922) / 256;TL1 = (65536 - 922) % 256;}void timer1_init(void){TMOD |= 0X10;TMOD &= 0xDF;thtl_init();TR1 = 1;}void et1_init(void) { ET1 = 1; EA = 1; } . .word.zl.

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服