虫虫首页| 资源下载| 资源专辑| 精品软件
登录| 注册

笔记

  • 利用2400系列数字源表对二极管生产进行测试

      这个应用笔记说明如何利用可以作为电流/电压源并测量电流和电压的单一仪器来配置生产测试系统。2400系列数字源表就可以提供这种能力,它包括2400型数字源表、2410型高压数字源表以及2420型大电流数字源表。本文还对二极管三个主要参数测试进行了说明,并对测试系统和IEEE-488总线操作进行了介绍。

    标签: 2400 数字源表 二极管 测试

    上传时间: 2013-11-24

    上传用户:eastimage

  • 多点测试中的开关

      本应用笔记介绍了在常见的系统测量情形下如何使用当前现有的开关设备——尽可能地容忍或者补偿各种误差来源。本文不再详细介绍有关系统温度测量、电阻测量、高电压开关和矩阵开关的内容。

    标签: 多点测试 开关

    上传时间: 2013-10-21

    上传用户:YKLMC

  • 高吞吐量开关系统实现半导体测量应用指南

    在半导体测试应用中获得最大吞吐量并最大程度提高低电流性能吉时利最新的半导体开关主机—— 707B六槽矩阵开关主机 和 708B单槽矩阵开关主机。这些新的主机专门为实验室和生产环境的半导体测试应用优化,具有极高的指令到连接速度。此应用笔记涉及直流和交流特性分析的开关系统配置,开关系统定时考虑,源和测量仪器的协调并提供应用实例。

    标签: 吞吐量 半导体 开关系统 应用指南

    上传时间: 2013-11-10

    上传用户:hjkhjk

  • 针对生产后自测优化视频平台

    本应用笔记介绍利用高级视频(ADV)系列设备进行视频平台的生产后测试和调试时采用的一些方法。

    标签: 视频

    上传时间: 2013-10-18

    上传用户:66666

  • 基于STM32的USB程序开发笔记

    如题

    标签: STM USB 32 程序开发

    上传时间: 2013-12-26

    上传用户:cepsypeng

  • PCI9054开发笔记(PCI9054开发过程中的多种疑难技术问题)

    整理了PCI9054开发过程中遇到的各种问题及其解决方法

    标签: 9054 PCI 过程

    上传时间: 2013-10-14

    上传用户:tsfh

  • Arduino学习笔记3_连接HMC5883L三轴电子罗盘传感器

    用途:测量地磁方向,测量物体静止时候的方向,测量传感器周围磁力线的方向。注意,测量地磁时候容易受到周围磁场影响,主芯片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); }

    标签: Arduino 5883L 5883 HMC

    上传时间: 2014-03-20

    上传用户:tianyi223

  • Arduino学习笔记4_Arduino软件模拟PWM

    注:1.这篇文章断断续续写了很久,画图技术也不精,难免错漏,大家凑合看.有问题可以留言.      2.论坛排版把我的代码缩进全弄没了,大家将代码粘贴到arduino编译器,然后按ctrl+T重新格式化代码格式即可看的舒服. 一、什么是PWM PWM 即Pulse Wavelength Modulation 脉宽调制波,通过调整输出信号占空比,从而达到改 变输出平均电压的目的。相信Arduino 的PWM 大家都不陌生,在Arduino Duemilanove 2009 中,有6 个8 位精度PWM 引脚,分别是3, 5, 6, 9, 10, 11 脚。我们可以使用analogWrite()控 制PWM 脚输出频率大概在500Hz 的左右的PWM 调制波。分辨率8 位即2 的8 次方等于 256 级精度。但是有时候我们会觉得6 个PWM 引脚不够用。比如我们做一个10 路灯调光, 就需要有10 个PWM 脚。Arduino Duemilanove 2009 有13 个数字输出脚,如果它们都可以 PWM 的话,就能满足条件了。于是本文介绍用软件模拟PWM。 二、Arduino 软件模拟PWM Arduino PWM 调压原理:PWM 有好几种方法。而Arduino 因为电源和实现难度限制,一般 使用周期恒定,占空比变化的单极性PWM。 通过调整一个周期里面输出脚高/低电平的时间比(即是占空比)去获得给一个用电器不同 的平均功率。 如图所示,假设PWM 波形周期1ms(即1kHz),分辨率1000 级。那么需要一个信号时间 精度1ms/1000=1us 的信号源,即1MHz。所以说,PWM 的实现难点在于需要使用很高频的 信号源,才能获得快速与高精度。下面先由一个简单的PWM 程序开始: const int PWMPin = 13; int bright = 0; void setup() { pinMode(PWMPin, OUTPUT); } void loop() { if((bright++) == 255) bright = 0; for(int i = 0; i < 255; i++) { if(i < bright) { digitalWrite(PWMPin, HIGH); delayMicroseconds(30); } else { digitalWrite(PWMPin, LOW); delayMicroseconds(30); } } } 这是一个软件PWM 控制Arduino D13 引脚的例子。只需要一块Arduino 即可测试此代码。 程序解析:由for 循环可以看出,完成一个PWM 周期,共循环255 次。 假设bright=100 时候,在第0~100 次循环中,i 等于1 到99 均小于bright,于是输出PWMPin 高电平; 然后第100 到255 次循环里面,i 等于100~255 大于bright,于是输出PWMPin 低电平。无 论输出高低电平都保持30us。 那么说,如果bright=100 的话,就有100 次循环是高电平,155 次循环是低电平。 如果忽略指令执行时间的话,这次的PWM 波形占空比为100/255,如果调整bright 的值, 就能改变接在D13 的LED 的亮度。 这里设置了每次for 循环之后,将bright 加一,并且当bright 加到255 时归0。所以,我们 看到的最终效果就是LED 慢慢变亮,到顶之后然后突然暗回去重新变亮。 这是最基本的PWM 方法,也应该是大家想的比较多的想法。 然后介绍一个简单一点的。思维风格完全不同。不过对于驱动一个LED 来说,效果与上面 的程序一样。 const int PWMPin = 13; int bright = 0; void setup() { pinMode(PWMPin, OUTPUT); } void loop() { digitalWrite(PWMPin, HIGH); delayMicroseconds(bright*30); digitalWrite(PWMPin, LOW); delayMicroseconds((255 - bright)*30); if((bright++) == 255) bright = 0; } 可以看出,这段代码少了一个For 循环。它先输出一个高电平,然后维持(bright*30)us。然 后输出一个低电平,维持时间((255-bright)*30)us。这样两次高低就能完成一个PWM 周期。 分辨率也是255。 三、多引脚PWM Arduino 本身已有PWM 引脚并且运行起来不占CPU 时间,所以软件模拟一个引脚的PWM 完全没有实用意义。我们软件模拟的价值在于:他能将任意的数字IO 口变成PWM 引脚。 当一片Arduino 要同时控制多个PWM,并且没有其他重任务的时候,就要用软件PWM 了。 多引脚PWM 有一种下面的方式: int brights[14] = {0}; //定义14个引脚的初始亮度,可以随意设置 int StartPWMPin = 0, EndPWMPin = 13; //设置D0~D13为PWM 引脚 int PWMResolution = 255; //设置PWM 占空比分辨率 void setup() { //定义所有IO 端输出 for(int i = StartPWMPin; i <= EndPWMPin; i++) { pinMode(i, OUTPUT); //随便定义个初始亮度,便于观察 brights[ i ] = random(0, 255); } } void loop() { //这for 循环是为14盏灯做渐亮的。每次Arduino loop()循环, //brights 自增一次。直到brights=255时候,将brights 置零重新计数。 for(int i = StartPWMPin; i <= EndPWMPin; i++) { if((brights[i]++) == PWMResolution) brights[i] = 0; } for(int i = 0; i <= PWMResolution; i++) //i 是计数一个PWM 周期 { for(int j = StartPWMPin; j <= EndPWMPin; j++) //每个PWM 周期均遍历所有引脚 { if(i < brights[j])\   所以我们要更改PWM 周期的话,我们将精度(代码里面的变量:PWMResolution)降低就行,比如一般调整LED 亮度的话,我们用64 级精度就行。这样速度就是2x32x64=4ms。就不会闪了。

    标签: Arduino PWM 软件模拟

    上传时间: 2013-10-23

    上传用户:mqien

  • Arduino学习笔记A9_Arduino自制电话拨号器

         怎么拨打电话?也许这个问题非常简单:拿起话筒,按话机的数字键盘拨号码。  但是,有没想过,我们可以拿起电话,不需要碰话机键盘就能拨通电话?答案是肯定的。 下面就介绍如何用Arduino 生成双音多频信号。 用法介绍: 使用时候,我们拿起电话话筒,将喇叭贴近话筒麦克风位置。在串口发送需要拨号的电话号 码(比如10000),稍等片刻即可拨通。 扩展用法: 驱动开关模拟电话摘机事件,用此电路拨号,再由Arduino 按照事件控制语音模块(WT588D 等)发出不同的语音到电话线。即可完成一个整体的自动拨号机,可以制作报警器,或者电 话提醒器。 材料清单: Arduino 一块, 喇叭1 个, 100Ω电阻1 个(可以选择100Ω~1kΩ), 1uF 电容两个(可以选择0.1uF~10uF)。 硬件连接:

    标签: Arduino 电话 拨号器

    上传时间: 2013-12-22

    上传用户:Late_Li

  • scjp的认证

    scjp的认证,认证笔记参考

    标签: scjp

    上传时间: 2015-03-01

    上传用户:klin3139