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

加入VIP,免费下载
 

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

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

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(整理无线传感器网络实验指导书0506fWord文档格式.docx)为本站会员(b****2)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

整理无线传感器网络实验指导书0506fWord文档格式.docx

1、一、实验目的 了解光敏电阻传感器的特性,掌握其工作原理。二、实验环境 光照传感器模块、ST-Link仿真器、USB2UART模块、IAR for STM8 1.30开发软件、AccessPort串口调试软件。三、实验原理1、光敏电阻 光敏电阻是一种对光敏感的元件,它的电阻值能随着外界光照强弱变化而变化。光敏电阻的结构如图1所示,光照特性曲线如图2所示。图1 光敏电阻结构 图2 光照特性曲线图3 电路原理图2、光敏传感器模块原理图 如图3所示,光敏电阻阻值随着光照强度变化时,在引脚Light_AD输出电压也随之变化。STM8的PD2引脚采集Light_AD电压模拟量转化为数字量,当采集的AD值大

2、于某一阈值时,则将PD3即Light_IO引脚置低,表明有光照。传感器使用的光敏电阻的暗电阻为 2M 欧姆左右,亮电阻为 10K 左右。可以计算出:在黑暗条件下,Light_AD 的数值为 3.3V * 2000K /(2000K + 10K) = 3.28V。在光照条件下,Light_AD 的数值为 3.3V * 10K/(10K + 10K) = 1.65V。STM8单片机内部带有 10 位 AD 转换器,参考电压为供电电压 3.3V。根据上面计算结果,选定1.65V(需要根据实际测量结果进行调整)作为临界值。当 Light_AD 为 1.65V 时,AD读数为 1.65 / 3.3 *

3、1024 = 512。 当AD读数大于512时说明无光照,当 AD 读数小于 512 时说明有光照,并点亮 LED3 作为指示。并通过串口函数来传送触发(有光照时)信号。3、源码分析#include main.hu8 CMD_rx_buf8; / 命令缓冲区u8 DATA_tx_buf14; / 返回数据缓冲区u8 CMD_ID = 0; / 命令序号u8 Sensor_Type = 0; / 传感器类型编号u8 Sensor_ID = 0; / 相同类型传感器编号u8 Sensor_Data6; / 传感器数据区u8 Sensor_Data_Digital = 0; / 数字类型传感器数据u

4、16 Sensor_Data_Analog = 0; / 模拟类型传感器数据 u16 Sensor_Data_Threshod = 0;/ 模拟传感器阈值void main(void) u8 i = 0; CLK_HSIPrescalerConfig(CLK_PRESCALER_HSIDIV1); / 设置内部时钟16M为主时钟 Uart1_Init(); LED_Init(); for(i = 0;i 14;i+) DATA_tx_bufi = 0; 8; CMD_rx_bufi = 0; /* 根据不同类型的传感器进行修改 */ Sensor_Type = 2; Sensor_ID = 1

5、; CMD_ID = 1; DATA_tx_buf0 = 0xEE; DATA_tx_buf1 = 0xCC; DATA_tx_buf2 = Sensor_Type; DATA_tx_buf3 = Sensor_ID; DATA_tx_buf4 = CMD_ID; DATA_tx_buf13 = 0xFF; GPIO_Init(GPIOD, GPIO_PIN_3, GPIO_MODE_OUT_PP_HIGH_SLOW); / ADC ADC1_Init(ADC1_CONVERSIONMODE_CONTINUOUS, ADC1_CHANNEL_3, ADC1_PRESSEL_FCPU_D4, A

6、DC1_EXTTRIG_TIM, DISABLE, ADC1_ALIGN_RIGHT, ADC1_SCHMITTTRIG_CHANNEL3, DISABLE); ADC1_Cmd(ENABLE); ADC1_StartConversion(); Sensor_Data_Analog = 0; Sensor_Data_Threshod = 700; delay_ms(1000); while (1) / 获取传感器数据 Sensor_Data_Analog = ADC1_GetConversionValue(); if(Sensor_Data_Analog Sensor_Data_Thresho

7、d) Sensor_Data_Digital = 0; / 无光照 GPIO_WriteHigh(GPIOD, GPIO_PIN_3); else Sensor_Data_Digital = 1; / 有光照 GPIO_WriteLow(GPIOD, GPIO_PIN_3); / 组合数据帧 DATA_tx_buf10 = Sensor_Data_Digital; / 发送数据帧 UART1_SendString(DATA_tx_buf, 14); LED_Toggle();#ifdef USE_FULL_ASSERTvoid assert_failed(uint8_t* file, uint

8、32_t line) /* User can add his own implementation to report the file name and line number, ex: printf(Wrong parameters value: file %s on line %drn, file, line) */ /* Infinite loop */#endif四、实验步骤1)首先,我们要把传感器模块插到USB2UART模块上,再把ST-Link插到JTAG 口上,最后把两根USB线插到PC机的USB端口。2)我们用 IAR SWSTM8 1.30软件,打开.2-Sensor_光照

9、传感器ProjectSensor.ewp。然后,在窗口左侧的User文件夹下的main.c中输入上述源代码。3)打开后点击“Project”的“Rebuil All”或者选中工程文件右键“Rebuil All”把我们的工程编译一下。4)点击“Rebuil All”编译完后,无警告,无错误。5)编译完后我们要把程序烧到模块里,点击中间的Download and Debug进行烧写。6)打开串口工具.AccessPort.exe,配置好串口参数,波特率115200,8个数据位,1个停止位,无校验位。单片机采集的信息发送给PC机。7)传感器底层串口协议返回14个字节,第1位字节和2位字节是包头,第3

10、位字节是传感器类型,第4位字节是传感器ID,第5位字节是节点命令ID,第6位字节到11位字节是数据位,其中第11位字节是传感器的状态位,第12位字节和第13位字节是保留位,第14位字节是包尾。例如:返回“EE CC 02 01 01 00 00 00 00 00 00 00 00 FF”时,第11位字节为“0”时,表示无光照,返回“EE CC 02 01 01 00 00 00 00 00 01 00 00 FF”时,第11位字节为“1”是表示有光照。测试结果如图4所示。 图4 测试结果五、思考题1、如何编程控制PD3输出高低电平?2、编程实现求解光敏电阻的阻值。实验二 红外反射传感器实验 了

11、解红外反射传感器的特性,掌握其工作原理。 红外反射传感器模块、ST-Link仿真器、USB2UART模块、IAR for STM8 1.30开发软件、AccessPort串口调试软件。1、红外反射传感器 红外反射传感器使用的是反射型红外光电开关,反射型红外光电开关把一个红外光发射器和一个红外光接收器装在一个同一面上,前方装有滤镜,滤除干扰光。发光器能发出红外光,在无阻情况下光接收器不能收到光。但当前方有障碍物时,光被反射回接收器,光电开关便动作,输出一个开关控制信号,切断或接通负载电流,从而完成一次控制动作。图5电路原理图2、红外反射传感器模块原理图如图5所示,红外光电开关U3供电电压为5V,集电极开路输出。当无障碍物时,U3的1脚输出高电平,Q1导通,IR_DATA为低电平;当有障碍物时,U3的1脚输出低电平,Q1截止,IR_DATA为高电平。通过STM8单片机读取 IR_DATA的高低电平状态,即可获知红外反射传感器是否检测到障碍物,当检测到障碍物时,可以点亮 LED3作为指示。通过串口传输信号。 GPIO_Init(GPIOD, GPIO_PIN_3, GPIO_MODE_IN_FL_NO_IT); GPIO_Init(GPIOD, GPIO_PIN_2, GPIO_MODE_OUT_PP_HIGH_SLOW); Sensor_Type = 4; Sensor_I

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1