版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
传感器实验报告二姓名江璐学号1315212017班级电子二班时间2015.11.11实验题目CC2530基础实验一:实验设备硬件:教学实验箱、PC机。软件:PC机操作系统Windows98(2000、XP)+IAR开发环境。实验必须连接好仿真器,通用调试母板,将通用调试母板串口和PC串口连接好。二:实验外部中断实验实验目的(1)掌握CC2530的外部中断寄存设置。(2)掌握外部中断函数程序的编程方法。实验内容在IAR集成开发环境中编写定时器中断程序。相关电路图当按键未按下时,PO.4的电平为3.3V;当按键按下时,PO.4的电平为0V。4.程序#include"ioCC2530.h"voiddelay(void){unsignedinti;unsignedcharj;for(i=0;i<1500;i++){for(j=0;j<200;j++){asm("NOP");asm("NOP");asm("NOP");}}}#pragmavector=P0INT_VECTOR__interruptvoidP0_INT(void){if(P0IFG>0){P0IFG=0;P0_0=~P0_0;P2_0=~P2_0;}P0IFG=0;}voidmain(void){P0DIR|=0x01;//设置P0.0为输出方式;P0.4和P0.5为输入方式P2DIR|=0x01;//设置P2.0为输出方式P0_0=1;P2_0=1;//熄灭LEDP0IEN=0x10;PICTL=0x11;P0IFG=0;P0IE=1;EA=1;while(1);}//endofmain()实验现象第一次按下S1时D3和D2两个灯都亮,第二次按下的时候亮松手后灭,第三次按下的时候灯灭。UART串口实验实验目的(1)掌握CC2530的UART寄存设置。(2)掌握UART串口中断函数程序的编程方法。2.实验内容在IAR集成开发环境中编写定时器中断程序。3.相关电路图程序#include"ioCC2530.h"charuart_buffer;voiddelay(void){unsignedinti;unsignedcharj;for(i=0;i<1500;i++){for(j=0;j<200;j++){asm("NOP");asm("NOP");asm("NOP");}}}voidUartTX_Send_String(unsignedchar*Data,intlen)//串口发送函数{intj;for(j=0;j<len;j++){U0DBUF=*Data++;while(UTX0IF==0);UTX0IF=0;}}voidUartTX_Send_Data(unsignedcharData,intlen)//串口发送函数{intj;for(j=0;j<len;j++){U0DBUF=Data;while(UTX0IF==0);UTX0IF=0;}}#pragmavector=URX0_VECTOR//uart0中断函数__interruptvoiduart0(void){URX0IF=0;//清中断标志P0_0=~P0_0;uart_buffer=U0DBUF;//UartTX_Send_String("welcome",10);UartTX_Send_Data(uart_buffer,1);}voidmain(void){unsignedcharbuf[8];P0DIR|=0x01;//设置P0.0为输出方式;P0.4和P0.5为输入方式P2DIR|=0x01;//设置P2.0为输出方式P0_0=1;P2_0=1;//熄灭LEDCLKCONCMD&=~0x40;//选择32M晶振while(!(SLEEPSTA&0x40));//等待XSOC稳定CLKCONCMD=0xb8;//TICHSPD128分频,CLKSPD不分频SLEEPCMD|=0x04;//关闭不用的RC振荡器PERCFG=0x00;//位置1P0口P0SEL=0x3c;//P0用作串口U0CSR|=0x80;//UART方式U0GCR|=10;//baud_e=10;U0BAUD|=216;//波特率设为57600UTX0IF=1;U0CSR|=0X40;//允许接收IEN0|=0x84;//开总中断,接收中断buf[0]='\t';while(1){P2_0=~P2_0;delay();if(uart_buffer==0x01){UartTX_Send_String("welcome",7);UartTX_Send_String(&buf[0],1);}}}//endofmain()实验现象复位键S2按下时D3灯一直闪烁。编写串口发送函数时,手动发送“welcome”时,出现如下结果。AD转换实验11.实验目的(1)掌握CC2530的AD转换寄存设置。(2)掌握AD转换函数程序的编程方法。2.实验内容在IAR集成开发环境中编写定时器中断程序3.程序#include"ioCC2530.h"#defineuint8unsignedchar#defineuint16unsignedintcharuart_buffer;unsignedintadc_value;voiddelay(void){unsignedinti;unsignedcharj;for(i=0;i<1500;i++){for(j=0;j<200;j++){asm("NOP");asm("NOP");asm("NOP");}}}uint16ReadAdValue(uint8SREF,uint8SDIV,uint8Channel){uint16AdcValue;ADCCON3=(SREF<<6)|(SDIV<<4)|Channel;ADCCON1&=0x30;//停止A/DADCL&=0x00;//EOC清零ADCH&=0x00;//EOC清零ADCCON1|=0x40;//启动A/D;while(!(ADCCON1&0x80));//等待AD转换结束AdcValue=ADCH;AdcValue=((AdcValue<<6)+(ADCL>>2));returnAdcValue;}voidUartTX_Send_String(unsignedchar*Data,intlen)//串口发送函数{intj;for(j=0;j<len;j++){U0DBUF=*Data++;while(UTX0IF==0);UTX0IF=0;}}voidUartTX_Send_Data(charData,intlen)//串口发送函数{intj;for(j=0;j<len;j++){U0DBUF=Data;while(UTX0IF==0);UTX0IF=0;}}#pragmavector=URX0_VECTOR//uart0中断函数__interruptvoiduart0(void){URX0IF=0;//清中断标志P0_0=~P0_0;uart_buffer=U0DBUF;//UartTX_Send_String("welcome",10);//UartTX_Send_Data(uart_buffer,1);}voidmain(void){floattemp;unsignedcharbuf[8];temp=0;P0DIR|=0x01;//设置P0.0为输出方式;P0.4和P0.5为输入方式P2DIR|=0x01;//设置P2.0为输出方式P0_0=1;P2_0=1;//熄灭LEDCLKCONCMD&=~0x40;//选择32M晶振while(!(SLEEPSTA&0x40));//等待XSOC稳定CLKCONCMD=0xb8;//TICHSPD128分频,CLKSPD不分频SLEEPCMD|=0x04;//关闭不用的RC振荡器PERCFG=0x00;//位置1P0口P0SEL=0x3c;//P0用作串口U0CSR|=0x80;//UART方式U0GCR|=10;//baud_e=10;U0BAUD|=216;//波特率设为57600UTX0IF=1;U0CSR|=0X40;//允许接收IEN0|=0x84;//开总中断,接收中断while(1){P2_0=~P2_0;if(uart_buffer==0x01){temp=ReadAdValue(2,3,0xf);temp=(temp/0x1fff)*33;//UartTX_Send_Data(adc_value,1);uart_buffer=0;buf[0]=(((unsignedchar)temp)/10)+'0';buf[1]=46;buf[2]=(((unsignedchar)temp)%10)+'0';buf[3]=86;buf[4]='\t';UartTX_Send_String(&buf[0],5);}}}//endofmain()实验现象按下复位键S2时D3长亮,按住S2后D3灭。打开串口调试助手结果如下:睡眠定时器唤醒实验1.实验目的(1)掌握CC2530的睡眠定时器寄存设置。(2)掌握睡眠定时器唤醒程序的编程方法。2.实验内容在IAR集成开发环境中编写睡眠定时器程序。程序#include"ioCC2530.h"voiddelay(void){unsignedinti;unsignedcharj;for(i=0;i<1500;i++){for(j=0;j<200;j++){asm("NOP");asm("NOP");asm("NOP");}}}voidSET_POWER_MODE(unsignedcharmode)//设置省电模式,mode:0-3{if(mode<4){SLEEPCMD&=0xfc;SLEEPCMD|=mode;PCON|=0x01;asm("NOP");}elsePCON=0;}#pragmavector=P0INT_VECTOR//外部中断函数__interruptvoidP0_INT(void){if(P0IFG>0){P0IFG=0;unsignedi;for(i=0;i<5;i++){P0_0=~P0_0;delay();}}P0IFG=0;}voidInit_SLEEPCMD_TIMER(void){STIE=1;STIF=0;}#pragmavector=ST_VECTOR//睡眠中断函数__interruptvoidST_INT(void){STIF=0;unsignedi;for(i=0;i<5;i++){P2_0=~P2_0;delay();}}voidaddToSLEEPCMDTimer(unsignedintsec){longintSLEEPCMDTimer=0;SLEEPCMDTimer|=ST0;SLEEPCMDTimer|=(longint)ST1<<8;SLEEPCMDTimer|=(longint)ST2<<16;SLEEPCMDTimer+=((longint)sec*(longint)32768);ST2=(char)(SLEEPCMDTimer>>16);ST1=(char)(SLEEPCMDTimer>>8);ST0=(char)SLEEPCMDTimer;}voidUartTX_Send_Data(charData,intlen)//串口发送函数{intj;for(j=0;j<len;j++){U0DBUF=Data;while(UTX0IF==0);UTX0IF=0;}}voidmain(void){P0DIR|=0x01;//设置P0.0为输出方式;P0.4和P0.5为输入方式P2DIR|=0x01;//设置P2.0为输出方式P0_0=1;P2_0=1;//熄灭LEDP0IEN=0x10;PICTL=0x11;P0IFG=0;P0IE=1;CLKCONCMD&=~0x40;//选择32M晶振while(!(SLEEPSTA&0x40));//等待XSOC稳定CLKCONCMD=0xb8;//TICHSPD128分频,CLKSPD不分频SLEEPCMD|=0x04;//关闭不用的RC振荡器P0IEN=0x10;PICTL=0x11;P0IFG=0;P0IE=1;EA=1;Init_SLEEPCMD_TIMER();//SET_POWER_MODE(2);//进入PM2省电模式while(1)//等待睡眠定时器中断唤醒{addToSLEEPCMDTimer(5);//5秒唤醒一次SET_POWER_MODE(2);//进入PM2省电模式}}//endofmain()实验现象按下S1后D2闪烁后长亮,再按一下S1,D2闪烁后灯灭,若按下S2灯灭。看门狗定时器实验1.实验目的(1)掌握CC2530的看门狗定时器寄存设置。(2)掌握看门狗定时器程序的编程方法。2.实验内容在IAR集成开发环境中编写睡眠定时器程序。程序#include"ioCC2530.h"unsignedintcounter;voiddelay(void){unsignedinti;unsignedcharj;for(i=0;i<1500;i++){for(j=0;j<200;j++)
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025曲靖市宣威第一职业技术学校工作人员招聘考试试题
- 2025江苏省司法警官高等职业学校工作人员招聘考试试题
- 地下管线探测施工方案
- 基于数字化平台的高中化学教学评价结果可视化研究教学研究课题报告
- 变电站GIS设备安装施工方案
- 初中英语听力中口音识别能力思维导图应用课题报告教学研究课题报告
- 2026年建筑科技智能房屋创新报告
- 《云计算数据存储安全加密与访问控制技术在政务领域的应用研究》教学研究课题报告
- 2025年跨境数字娱乐内容分发技术创新平台构建可行性分析报告
- 初中化学实验探究活动中的实验探究活动评价与教学评价研究教学研究课题报告
- 2026山东小升初语文作文备考集训(范文+指导)
- 安徽省合肥市2026届高三物理第二次教学质量检测试题【含答案】
- 2026年有限空间作业人员安全知识考试试题(含答案)
- 2026年军校招生面试常见问题及回答思路
- 广东省广州市增城区2025-2026学年九年级上学期1月期末考试语文试题
- 2026年国家电网面试题库及参考答案
- 阴道镜门诊工作制度
- 2025-2030中国激光脱毛产品市场未来趋势与营销战略规划研究报告
- 2026年重大事故隐患判定标准宣贯培训材料
- 肉毒素注射教学课件
- 天津市园林建设工程监理用表和质量验收用表(绿表)
评论
0/150
提交评论