用途:测量地磁方向,测量物体静止时候的方向,测量传感器周围磁力线的方向。注意,测量地磁时候容易受到周围磁场影响,主芯片HMC5883 三轴磁阻传感器特点(抄自网上): 1,数字量输出:I2C 数字量输出接口,设计使用非常方便。 2,尺寸小: 3x3x0.9mm LCC 封装,适合大规模量产使用。 3,精度高:1-2 度,内置12 位A/D,OFFSET, SET/RESET 电路,不会出现磁饱和现象,不会有累加误差。 4,支持自动校准程序,简化使用步骤,终端产品使用非常方便。 5,内置自测试电路,方便量产测试,无需增加额外昂贵的测试设备。 6,功耗低:供电电压1.8V, 功耗睡眠模式-2.5uA 测量模式-0.6mA 连接方法: 只要连接VCC,GND,SDA,SDL 四条线。 Arduino GND -> HMC5883L GND Arduino 3.3V -> HMC5883L VCC Arduino A4 (SDA) -> HMC5883L SDA Arduino A5 (SCL) -> HMC5883L SCL (注意,接线是A4,A5,不是D4,D5) 源程序: #include <Wire.h> #include <HMC5883L.h> HMC5883Lcompass; voidsetup() { Serial.begin(9600); Wire.begin(); compass = HMC5883L(); compass.SetScale(1.3); compass.SetMeasurementMode(Measurement_Continuous); } voidloop() { MagnetometerRaw raw = compass.ReadRawAxis(); MagnetometerScaled scaled = compass.ReadScaledAxis(); float xHeading = atan2(scaled.YAxis, scaled.XAxis); float yHeading = atan2(scaled.ZAxis, scaled.XAxis); float zHeading = atan2(scaled.ZAxis, scaled.YAxis); if(xHeading < 0) xHeading += 2*PI; if(xHeading > 2*PI) xHeading -= 2*PI; if(yHeading < 0) yHeading += 2*PI; if(yHeading > 2*PI) yHeading -= 2*PI; if(zHeading < 0) zHeading += 2*PI; if(zHeading > 2*PI) zHeading -= 2*PI; float xDegrees = xHeading * 180/M_PI; float yDegrees = yHeading * 180/M_PI; float zDegrees = zHeading * 180/M_PI; Serial.print(xDegrees); Serial.print(","); Serial.print(yDegrees); Serial.print(","); Serial.print(zDegrees); Serial.println(";"); delay(100); }
上传时间: 2013-12-16
上传用户:stella2015
遥控接收器制作过程 其实,自制一个电脑遥控接收器,是非常容易的。首先,我们制作的电脑遥控器必须使用红外方式的红外遥控器(不能是射频的遥控器),一般电视、影碟机的遥控器都可以使用,如果手头没有闲置的遥控器,可以到小商品市场购买,一般的电视机遥控器即可,售价在十几元。注意,不要使用空调的遥控器,尽管它也是红外发射的,但是每次按键后,它都会把空调当前所有状态(模式、温度、风速、风向)发送一遍,导致每次发送的码串很长,会导致软件辨识错误。
上传时间: 2013-12-19
上传用户:Amygdala
遥控接收器制作过程 其实,自制一个电脑遥控接收器,是非常容易的。首先,我们制作的电脑遥控器必须使用红外方式的红外遥控器(不能是射频的遥控器),一般电视、影碟机的遥控器都可以使用,如果手头没有闲置的遥控器,可以到小商品市场购买,一般的电视机遥控器即可,售价在十几元。注意,不要使用空调的遥控器,尽管它也是红外发射的,但是每次按键后,它都会把空调当前所有状态(模式、温度、风速、风向)发送一遍,导致每次发送的码串很长,会导致软件辨识错误。
上传时间: 2013-11-13
上传用户:trepb001
第一章光纤连接在介绍光纤光缆性能检测方法之前,先讲述光纤连接特别是光纤端面处理和熔接技术,作为必须掌握的基本技能训练。实际的光通信系统由光发射器、光传输通道(光纤)、光接收器三个主要部分组成,光纤光缆的传输性能检测系统也同样如此。系统各部分之间的衔接就是光耦合或光纤连接问题。通信系统和检测系统都要求各部分之间光耦合有高耦合效率、稳定可靠、连接损耗小的连接。而且光耦合和光纤连接技术是光纤通信系统和检测系统中一门非常基本和实用的技术。第一节光耦合一、光纤与光源的耦合在光纤通信系统和光纤传输特性检测系统中使用多种光源,有半导体激光器、气体激光器、液体激光器、发光二极管、宽光谱光源等等。它们大致可以分为两大类,一类是相干光源,如各种激光器;另一类是非相干光源,如发光二极管、宽光谱光源(白炽灯)。光耦合先要解决如何高效率地把光源发射的光注入到传输通道中去的问题。为此,先了解一下光源的特性。
上传时间: 2013-10-30
上传用户:xinshou123456
DEll016是一种可支持ARINCA-29总线协议的串行接收、发送器件。介绍了一种基于DEll016的ARINCA29通信接口的设计方法,设计了一种基于DSP处理器的429总线转换接口电路,并给出了DEll016的数据收发过程;软件方面采用嵌入式实时操作系统DSP/BIOS为平台.重点介绍了软件驱动程序的编写。关键词:DSP/BIOS;ARINC429总线;DEll016 航空电子综合系统是将航空电子设备通过总线综合成一个分布式通信系统,各个独立的分系统都是由计算机来完成数据的采集、计算、处理和通信的。数据总线被称为现代航空电子系统的“骨架”。ARlNc429是航空电子系统之间最常用的通信总线⋯之一。它符合航空电子设备数字数据传输标准。要在计算机上实现ARINC429总线数据的接收和发送,必须实现429总线与计算机总线之间的数据传输。本文提出了一种以DSP芯片TMS320F2812【2t51为控制核心,以嵌入式系统DsP/BIOS为平台的ARINC 429总线接口的设计方案。 ARINC429是一种广泛应用于民用和军用飞机的串行数据总线结构,是一种单向广播式数据总线,通讯介质采用的是双绞屏蔽线,通信采用双极性归零制的三态码调制方式,基本信息单元是由32位构成的一个数据字。数据传输采用广播传输原理,按开环进行传输,传输速率有两种:高速传输率为lOOkbps±1%,低速传输率为12~14.5kbps 4-l%。奇偶校验位作为每个数字的一部分进行传输,允许接收器完成简单的误差校验。该总线具有抗干扰能力强、连线简单、可靠性高、数据资源丰富、数据精度高等优点。绝大多数的现役民用飞机,如波音系列飞机、欧洲空中客车等机种,其航空电子设备系统间的信息交换采用的就是ARINCA29串行总线标准。
上传时间: 2013-11-17
上传用户:潇湘书客
用途:测量地磁方向,测量物体静止时候的方向,测量传感器周围磁力线的方向。注意,测量地磁时候容易受到周围磁场影响,主芯片HMC5883 三轴磁阻传感器特点(抄自网上): 1,数字量输出:I2C 数字量输出接口,设计使用非常方便。 2,尺寸小: 3x3x0.9mm LCC 封装,适合大规模量产使用。 3,精度高:1-2 度,内置12 位A/D,OFFSET, SET/RESET 电路,不会出现磁饱和现象,不会有累加误差。 4,支持自动校准程序,简化使用步骤,终端产品使用非常方便。 5,内置自测试电路,方便量产测试,无需增加额外昂贵的测试设备。 6,功耗低:供电电压1.8V, 功耗睡眠模式-2.5uA 测量模式-0.6mA 连接方法: 只要连接VCC,GND,SDA,SDL 四条线。 Arduino GND -> HMC5883L GND Arduino 3.3V -> HMC5883L VCC Arduino A4 (SDA) -> HMC5883L SDA Arduino A5 (SCL) -> HMC5883L SCL (注意,接线是A4,A5,不是D4,D5) 源程序: #include <Wire.h> #include <HMC5883L.h> HMC5883Lcompass; voidsetup() { Serial.begin(9600); Wire.begin(); compass = HMC5883L(); compass.SetScale(1.3); compass.SetMeasurementMode(Measurement_Continuous); } voidloop() { MagnetometerRaw raw = compass.ReadRawAxis(); MagnetometerScaled scaled = compass.ReadScaledAxis(); float xHeading = atan2(scaled.YAxis, scaled.XAxis); float yHeading = atan2(scaled.ZAxis, scaled.XAxis); float zHeading = atan2(scaled.ZAxis, scaled.YAxis); if(xHeading < 0) xHeading += 2*PI; if(xHeading > 2*PI) xHeading -= 2*PI; if(yHeading < 0) yHeading += 2*PI; if(yHeading > 2*PI) yHeading -= 2*PI; if(zHeading < 0) zHeading += 2*PI; if(zHeading > 2*PI) zHeading -= 2*PI; float xDegrees = xHeading * 180/M_PI; float yDegrees = yHeading * 180/M_PI; float zDegrees = zHeading * 180/M_PI; Serial.print(xDegrees); Serial.print(","); Serial.print(yDegrees); Serial.print(","); Serial.print(zDegrees); Serial.println(";"); delay(100); }
上传时间: 2014-03-20
上传用户:tianyi223
/*红外解码的方法 NEC格式 upd6121 1、9Ms的高电平启动头,然后是4.5Ms的低电平,如果2.25Ms时就有高电平,是持续信号,不处理 2、然后以一个高电平和一个低电平为1Bit,高电平时间是0.5625Ms=562us, 高低电平时间比为1:1时是Bit1,比为1:3时是Bit0 3、Timer1中断执行100us采样周期,9Ms=90,4.5Ms=45,高电平=5,低电平最多15 4、共读入4Byte共24bit,第1、2Byte是CustomCode码和其反码,第3、4Byte是DataCode和其反码 5、CustomCode正确和DataCode效验正确的话,执行 6、红外接收器输出是反相的
上传时间: 2013-12-03
上传用户:15071087253
基于VHDL的串行异步通信电路的设计 包括串行发送器,异步接收器,以及控制器 vhdl
上传时间: 2013-12-10
上传用户:牛布牛
利用串口2进行77位GPS数据的模拟发送,可以实现GPS接受的仿真,而不需要GPS接收器,是我一直使用的调试工具,可以在自己的电脑商用串口2发送,串口1接受,很方便吧,直接用自己的电脑就可以进行串口接受程序的调试了。
上传时间: 2014-12-08
上传用户:英雄
在信道仿真中,对接收信号进行滤波等处理,以便于接收器对信号的接收和处理。
标签: 信道仿真
上传时间: 2014-01-06
上传用户:离殇