22mq2ao口模拟电压采样无线传输_第1页
22mq2ao口模拟电压采样无线传输_第2页
22mq2ao口模拟电压采样无线传输_第3页
22mq2ao口模拟电压采样无线传输_第4页
22mq2ao口模拟电压采样无线传输_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、22 MQ2 AO 口模拟电压采样实验目的了解配置 IO 口了解 ADC 办理了解 ADC 计算电压的方法学会在协议栈中使用 ADC 采样实验设备硬件:PC 机一台二套一个EB2530(底板、MQ2板、仿真器、USB 线):2000/XP/win73.接线方法系统,IAR8.10集成开发环境市亿研电子:http:/:技术售后接线原则: 1、VCC:接电源正极(5V)2、GND:接电源负极3、DO:(悬空)4、AO:模拟信号输出,本实验接在 P06 上。自己的模块请仔细核对一下引脚,确保连接正确MQ-2 传感器简介:MQ- 2 气体传感器所使用的气敏材料是在清洁空气中电导率较低的二氧化锡 (Sn

2、O2)。当传感器所处环境中存在可燃气体时,传感器的电导率随空气中可燃气体浓度 的增加而增大。使用简单的电路即可将电导率的变化转换为与该气体浓度相对应的输出信号。 MQ-2 气体传感器对液化气、丙烷、氢气的灵敏度高,对天然气和其它可燃蒸汽的检测也很理想。这种传感器可检测多种可燃性气体,是一款适合多种应用的低成本传感器。4.实验详解MQ2 ADC 电压采样,基本的原理和基础实验里是一样的,所使用到的寄存器这里就不再重复介绍了。Zigbee 协议栈自带有 ADC 采样的代码,只要把相关的宏开关打开即可。首先,打开工程.ZStack-CC2530-2.3.0-1.4.0ProjectszstackSl

3、esSleAppCC2530DBSleApp.eww,如下图:市亿研电子:http:/:技术售后1)、使能 ADC在 HAL 目录下找到 hal_adc.c 文件,看到每个函数都有“#if(HAL_ADC =TRUE)”定就知道,要把 HAL_ADC 定义上就可以使用 ADC 了。在哪里定义呢?当然是在工程设置选项里了,如图:义。2)、ADC 方法通过使用文件hal_adc.c 里的方法HalAdcRead,可以读出对应 IO 口上的ADC电压值,此函数原型为:u16 HalAdcRead (u8 channel, u8 resolution)Channel:采样的通道号,p0 口可以做为采样

4、的输,下面为取值Resolution:分辨率,可以为 8 位、10 位、12 位、14 位分辨率,下面为取值市亿研电子:http:/:技术售后、终端上采样 ADC、联网成功启动定时器u 16 SleApp_ProsEvent( u 8 task_id, u 16 events )./ Received whenever the device changes s ehe networkcase ZDO_SE_CHANGE:SleApp_NwkS e = (devS es_t)(MSGpkt-hdr.s us);if ( /(SleApp_NwkS e = DEV_ZB_COORD) |(SleA

5、pp_NwkS e = DEV_ROUTER)| (SleApp_NwkS e = DEV_END_DEVICE) )/ 终端联网成功后,启动定时器osal_start_timerEx( SleApp_TaskID, LEAPP_SEND_PERIODIC_MSG_EVT,LEAPP_SEND_PERIODIC_MSG_TIMEOUT );SS(2)、定时器超时,启动采样if ( events & SLEAPP_SEND_PERIODIC_MSG_EVT )/adc 采样函数SleApp_Send_ADC_Message();/再次启动定时器osal_start_timerEx( SleApp

6、_TaskID, SLEAPP_SEND_PERIODIC_MSG_EVT,(SLEAPP_SEND_PERIODIC_MSG_TIMEOUT + (osal_rand() & 0 x00FF) );/ return unprosed eventsreturn (events SLEAPP_SEND_PERIODIC_MSG_EVT);(3)采样分析void SleApp_Send_ADC_Message( void )byte str_adc20=0;float vol=0.0; /adc 采样电压byen=19;/采样P06 上的电压值,分辨率为 14 位。u 16 adc= HalAdc

7、Read(HAL_ADC_CHANNEL_6, HAL_ADC_RESOLUTION_14);市亿研电子:http:/:技术售后osal_memset(str_adc, , 19);/最大采样值 8192(因为最 if(adc=8192)是符号位)spr f(&str_adc6, error);len=11;else/输出电压vol=(float)(float)(adc*3.3)/8192.0;/取小数点的 3 位,放大 1000 倍adc=vol*1000;/变成可视的字符输出 str_adc6=0+(adc/1000); str_adc7=.; str_adc8=0+(adc%1000)/

8、100); str_adc9=0+(adc%1000)%100)/10);str_adc10=0+(adc%1000)%100)%10);str_adc11=V; str_adc12=0; len=12;/lcd 显示LCD_display(str_adc);/无线发射if ( AF_DataRequest( &SleApp_P2P_DstAddr, &SSLEAPP_P2P_CLUSTERID,len, str_adc,leApp_epDesc,&SleApp_TransID,AF_DISCV_ROUTE,AF_DEFAULT_RADIUS ) = afSus_SUCS )else/ Error occurred in request to send.市亿研电子:http:/:技术售后(4)OLED 显示分析/显示电压void LCD_display(byte* text)/显示HalLcdWriteString( text, HAL_LCD_LINE_3 );LCD_P16x16Ch(0, 4, 0);/电LCD_P16x16Ch(16, 4, 1);/压LCD_P16x16Ch(32, 4, 2);/:4)协调器上接收并 LCD 显示5、实验步骤1).选择器上要接一个显示屏。.,到开发板 A;作为协调器,协调市亿研电子:http:/:技术售后2)

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论