- 1、本文档共74页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
P1SEL=0X00;P1DIR=0XFF;P0DIR|=~0X08;使用按键P0_3实现外部中断。1、初始化init_io()2、初始化输出函数hc595();3、初始中断init_inter();4、初始化P0输入输出口io;P0DIR=~0X085、写中断函数#pragmavector=中断向量地址。6、主函数main(),实现按键进入中断函数,点亮灯。实现基础芯片中灯D8亮,当按下基础芯片中的最后一个按键,D8灯灭,基础芯片中的LED灯D1和D2点亮。睡眠唤醒-中断方式LED1闪烁3次后进入睡眠状态,通过按下按键S2产生外部中断进行唤醒IO口初始化函数外部中断初始化函数设置系统电源工作模式函数中断处理函数HC595处理函数延时函数主函数PICTL=0x01;P0IFG=0x00;P0IEN|=0x10;IEN1|=0x20;//此项设置非常重要,不然进不了中断函数允许P0口中断;EA=1;1.编程要求:编写一段C语言程序;2.实现功能:通过P1口输出的数据控制8个发光二极管的亮灭;3.实训现象:利用基础实验板上的8个LED灯实现循环依次点亮D2,D4,D6,D8的效果。CC2530定时器概述标准51芯片voiddelay(){u8j,k;for(j=0;j1000;j++)for(k=0;k110;k++);}(1/12M)*12(标准的51,相当于12个系统时钟)=1us110*1000*9*1us=1sC语言到汇编,1条相当于9条汇编。延时代码:voiddelay(unsignedintcount){unsignedinti,j;for(i=0;icount;i++)for(j=0;j1174;j++);} 问题二:延时时间上述代码经过反汇编之后就是16句汇编代码,一句代码需要一个指令周期来完成,时钟频率是32M,上述delay(1)的时间是: 1*1174*16/(32*106)=587usdelay(10);//延时时间就是5870us,就是5.87msdelay(800)//延时时间就是469600us,就是0.4696s 使用delay的时间很不准确,只能是大概的时间,需要精确的时间可以采用定时器功能! 一、定时器概述CC2530有5个定时器:定时器1;定时器2;定时器3;定时器4;睡眠定时器。其中睡眠定时器,和定时器2配合使用,可以使CC2530进入低功耗模式。CC2530含有四个定时器即Timer1、Timer2、Timer3和Timer4。其中Timer1为16位的定时器,Timer2为ZigBee协议MAC层专用定时器,Timer3、Timer4为8位寄存器,它们的工作原理与Timer1相同。一、定时器1当时钟脉冲设置为32M,不分频不分频自由运行模式每次溢出时间间隔为:系统时钟源(32M或16M)CLKCONCMD.OSC全局定时器分频CLKCONCMD.TICKSPDT1再分频T1CTL.DIV16位计数器T1CNTH、1CNTL定时器溢出不分频定时器溢出500次,就让灯状态取反:灯每隔1.024S亮一次,隔1.024S灭一次每次溢出时间间隔为:定时器12.计数器T1的中断溢出标志位:IRCON.T1IF和T1STAT.OVFIF1.计数器的16位初值寄存器:高8位T1CNTH、低8位T1CNTL+65535定时器100000000T1CNTH00000000T1CNTL11111111T1CNTH11111111T1CNTL经历了65535个时钟脉冲后变成16个1,如下:每经历一个时钟脉冲,数值加100000000T1CNTH00000000T1CNTL同时产生中断溢出标志位:IRCON.T1IF和T1STAT.OVFIF+1初始值:为0配置寄存器T1CTL定时器的计时原理可用公式:T=c*t来描述。其中“T”为计时时间,“c”为计数器的数值,“t”为单位时间(由DIV所设置的时间)。假如本实训配置定时器工作在无阀值计数模式,单位时间为“系统时钟频率/128”。请问寄存器T1CTL的值为。0x0DT1STAT--定时器1状态寄存器重要知识点:系统在不配置工作频率时默认为2分频,即
您可能关注的文档
- 《无线传感网技术》实训内容课件 实训项目三:串口通信和AD转换.ppt
- 《无线传感网技术》实训内容课件 实训项目四:传感器节点.ppt
- 《无线传感网技术》实训内容课件 实训项目五:zigbee协议.ppt
- 《无线传感网技术》实训内容课件 实训项目一:系统认识和CC2530学习.pptx
- 《无线传感网技术》实训内容课件全套 聂增丽 实训项目1--5:系统认识和CC2530学习 ---zigbee协议.pptx
- 小升初语文复习资料:必背古诗专项练习(一)1.doc
- 守拙求进阅读答案(锦集5篇).docx
- 一种用于产妇下床辅助装置.pdf
- 家长会心理讲座PPT模板.pptx
- 小学科学三上作业本参考答案.docx
文档评论(0)