“第十三课--Microduino 光照报警器(自己DIY光敏三极管)/zh”的版本间的差异
小 (photo added) |
|||
(未显示2个用户的4个中间版本) | |||
第4行: | 第4行: | ||
| | | | ||
==目的== | ==目的== | ||
− | + | 以前LED用来做指示,利用了其发光效应,今天我们实验其另外一个功能——光电效应,原理是LED发光二极管在受到强光照射时会产生微弱的电流,我们可用三极管将其放大。当检测有变化就用蜂鸣器提醒。 | |
+ | LED来达到指示的目的。 | ||
==设备== | ==设备== | ||
− | *'''[[Microduino-Core]]''' | + | *'''[[Microduino-Core/zh]]''' |
− | *'''[[Microduino- | + | *'''[[Microduino-USBTTL/zh]]''' |
*其他硬件设备 | *其他硬件设备 | ||
− | **面包板跳线 | + | **面包板跳线 一盒 |
− | **面包板 | + | **面包板 一块 |
− | ** | + | **LED发光二极管 一个 |
− | == | + | **10k、1K电阻 各一个 |
− | + | **蜂鸣器 一个 | |
− | + | **USB数据连接线 一根 | |
− | [[File: | + | **9014三极管 一个 |
+ | |||
+ | ==三极管== | ||
+ | 三极管是一种电流控制电流的半导体器件,其作用是把微弱信号放大成辐值较大的电信号,也作开关或者电压跟随等。三极管有三个极,分别叫做集电极C(collector),基极B(base),发射极E(emitter)。分成NPN和PNP两种。 | ||
+ | |||
+ | 常用三极管的区别大家参考:http://wenku.baidu.com/view/0fc3bc5077232f60ddcca1ae.html | ||
+ | |||
+ | 三极管的引脚识别大家参考:http://wenku.baidu.com/view/3e636bb469dc5022aaea0098.html | ||
+ | |||
+ | 本实验用的是9014三极管(NPN型),写有型号数字一面的朝自己,从左往右数分别是E,B,C。如图: | ||
+ | [[File:第十二课-三极管.jpg|600px|center|thumb]] | ||
+ | |||
==原理图== | ==原理图== | ||
− | |||
[[File:lesson13-schematic.jpg|600px|center|thumb]] | [[File:lesson13-schematic.jpg|600px|center|thumb]] | ||
+ | 本实验采用电压跟随的接法,即触发信号接基极B,集电极C接VCC,发射极接GND,输出信号通过下拉电阻接到GND。若中间的基极B有微弱电流触发,三极管就如同开关被打开,电流由C-B-E,发射机电压几乎等于基极电压。起始状态光照强度不够时,光电效应产生的电流还不足以触发,所以三极管断开,直接通过下拉电阻将电压拉低。当光照强度增强,光电效应产生的电流使三极管触发导通,但电压很低,所以很难考虑光线的强弱,只要检测到有电压变化就说明有光照有作用,就让蜂鸣器发出声响。 | ||
+ | |||
==程序== | ==程序== | ||
<source lang="cpp"> | <source lang="cpp"> | ||
− | void setup() { | + | void setup() |
− | + | { | |
− | + | Serial.begin(115200); | |
} | } | ||
− | + | void loop() | |
− | void loop() { | + | { |
− | + | int n=analogRead(A0); //读取模拟口数据 | |
− | int n = analogRead(A0); | + | if(n>0) //有电压反应就运行以下程序,产生特定脉冲,让蜂鸣器响 |
− | + | { | |
− | + | tone(9, 1000); | |
− | + | delay(100); | |
− | Serial.println( | + | noTone(9); |
− | + | } | |
− | + | Serial.println(n); | |
+ | delay(10);//串口监视最好加延时,不然速率太快,容易死机。 | ||
} | } | ||
</source> | </source> | ||
+ | ===Tone()函数=== | ||
+ | *功能:在某个引脚上产生一个指定的频率占空比为50%的的方波。持续时间可指定,直到调用noTone()才结束。函数会干扰对引脚3和11的PWM输出。 | ||
+ | *语法: | ||
+ | **tone(pin, frequency) | ||
+ | **tone(pin, frequency, duration) | ||
+ | *参数: | ||
+ | **pin:音频输出引脚 | ||
+ | **frequency:以赫兹为单位的音调的频率 - int型 | ||
+ | **duration:以毫秒为单位的色调的持续时间 - long型(可选) | ||
==结果== | ==结果== | ||
− | + | 当有强光靠近时,蜂鸣器发出“滴滴滴。。。”的响声,DIY一个光敏三极管。 | |
+ | |||
+ | [[File:Lesson13.jpg|600px|thumbnail|center]] | ||
+ | |||
==视频== | ==视频== | ||
|} | |} | ||
+ | |||
+ | http://v.youku.com/v_show/id_XNzEwMDA0NjI0.html |
2015年7月3日 (五) 07:44的最新版本
Language | English |
---|
目的以前LED用来做指示,利用了其发光效应,今天我们实验其另外一个功能——光电效应,原理是LED发光二极管在受到强光照射时会产生微弱的电流,我们可用三极管将其放大。当检测有变化就用蜂鸣器提醒。 LED来达到指示的目的。 设备
三极管三极管是一种电流控制电流的半导体器件,其作用是把微弱信号放大成辐值较大的电信号,也作开关或者电压跟随等。三极管有三个极,分别叫做集电极C(collector),基极B(base),发射极E(emitter)。分成NPN和PNP两种。 常用三极管的区别大家参考:http://wenku.baidu.com/view/0fc3bc5077232f60ddcca1ae.html 三极管的引脚识别大家参考:http://wenku.baidu.com/view/3e636bb469dc5022aaea0098.html 本实验用的是9014三极管(NPN型),写有型号数字一面的朝自己,从左往右数分别是E,B,C。如图: 原理图本实验采用电压跟随的接法,即触发信号接基极B,集电极C接VCC,发射极接GND,输出信号通过下拉电阻接到GND。若中间的基极B有微弱电流触发,三极管就如同开关被打开,电流由C-B-E,发射机电压几乎等于基极电压。起始状态光照强度不够时,光电效应产生的电流还不足以触发,所以三极管断开,直接通过下拉电阻将电压拉低。当光照强度增强,光电效应产生的电流使三极管触发导通,但电压很低,所以很难考虑光线的强弱,只要检测到有电压变化就说明有光照有作用,就让蜂鸣器发出声响。 程序void setup()
{
Serial.begin(115200);
}
void loop()
{
int n=analogRead(A0); //读取模拟口数据
if(n>0) //有电压反应就运行以下程序,产生特定脉冲,让蜂鸣器响
{
tone(9, 1000);
delay(100);
noTone(9);
}
Serial.println(n);
delay(10);//串口监视最好加延时,不然速率太快,容易死机。
}
Tone()函数
结果当有强光靠近时,蜂鸣器发出“滴滴滴。。。”的响声,DIY一个光敏三极管。 视频 |