维修网

 找回密码
 注册

QQ登录

只需一步,快速开始

微信扫码 , 快速开始

查看: 177|回复: 2

光耦实验程序

[复制链接]

classn_11

发表于 2009-12-2 20:58:26 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?注册

x
作者:张工(菁远科技)
/ z  p/ h6 J( Q' k" C0 x  |6 z淘宝店铺:http://jy51mcu.taobao.com/( |$ B; h! I- ]& `2 ^8 ~
技术博客:http://www.ednchina.com/blog/ahai0306/+ _5 b0 i( Q' J# E* V% D, |
光耦内部是由发光二极管和光电三极管组成,使电—光—电的转换,从而起到输入、输出、隔离的作用,增强了单片机系统的抗干扰性和可靠性。9 I2 }: C: z4 B1 o1 _6 l0 g
光耦在工业控制中起到了非常大作用,以可靠性和稳定性闻名的PLC的输入和输出就是经过光耦隔离的。3 j' a% f( u2 |+ p$ W5 o

5 h. [/ L: n# @( d9 `7 C, K, v " _' W1 J! N4 n/ _3 v

  |& F# @/ A" S  j' k8 L电路说明:INT1端接单片机IO口(P33),当P33输出高电平时,TLP521(或PC817)内部发光二极管不导通,光耦内部光电三极管截止,光耦输出信号为高电平,此时D22灭。
& M6 E' a. ~# I: J! f# L0 L当P33输出低电平时,TLP521(或PC817)内部发光二极管导通,光耦内部光电三极管导通,光耦输出信号为低电平,此时D22灭。
' X; H2 W8 Z+ L' ]0 M4 a        光耦的主要作用是将信号通过光传输,减少了电信号传输带来的干扰,在双电源的情况下使用光耦的效果非常好。如果在一个电源的情况下,可以将“数字地”和“模拟地”分开, 最后在一点使用“一点接地”方式,如上图。6 u& o/ s1 K9 z: B$ O. R0 _
程序代码如下:: l/ m1 N7 w3 F& u) Q
/*
# ]) D2 e6 I8 h/ y& p6 _***************************************************************************' J( \- x; q4 m
*                                        (C) Copyright 2010,菁远科技
  `- {8 ]3 b! R6 d$ a- u* All Rights reserved.
3 z7 C5 }( c: W# B4 N4 M1 |*项目名称: JY-100B单片机学习开发系统
; ~, @6 r& q4 B( d. h- o*本文件名称:flash_led.c (光耦PC817/TLP521的实验程序); j+ B. ~6 N/ g
* 完成作者  张工   f/ N% {. b7 A* |! \5 ~6 U
* 当前版本  V1.0 + r. X% g2 h4 ]2 V3 J
* 完成日期  2010年6月1日
# _% T! P! X2 B3 z2 k& [* |( ^*淘宝店铺:http://jy51mcu.taobao.com/
; J2 ?0 o* M, o/ w, P) W' B, P) i$ s*技术博客:http://www.ednchina.com/blog/ahai0306/
7 u$ p4 O) E& c0 A5 P% X* 描 述  此程序是练习光耦PC817的使用,光耦在实际应用中很广泛,可以主
1 E! z& C8 f) ~+ U( e1 S- g 要学习其硬件电路,程序与控制IO口类似。  g  s* ~" x2 G- F
                         实验时用杜帮线将P33和右下角螺钉处的G插针相连。; B4 X0 J" V) O, ~  u& b
*          本程序结构简单、合理,有帮助于初学者养成良好的编( Z6 I; u* R' I! y
* 程风格。. h, _0 M' u5 Y' D+ p# A, h5 s
****************************************************************************
* ^& f. I9 D3 R*/
. s- Z% u. h% e' L! H7 H#include                  //调用头文件(单片机内部的寄存器定义)8 @* Y4 Q( {$ D. X9 Q
/******本段为硬件I/O口定义********/
% ]$ @/ ?- X8 o) Ksbit         TLP0 = P3 ^ 3;//光耦端口
3 l$ u& m/ Z, a  n. ]6 D6 g/**************************************************
( k+ K4 I3 O: U% [9 v- t3 o** 函数名称: dellay
4 r9 b/ O* B* i4 z" A3 a# h; H$ T** 入口参数:h(双字节型)
: [/ h4 u" C* F' g** 出口参数:无  B7 ?) {" a7 o1 o
** 功能描述: 短暂延时,使用11.0592晶体,约0.01MS3 m" j# `# a! r% _( u4 w- Z
****************************************************/
% Y6 r4 `8 S6 U/ Pvoid dellay(unsigned int h) //短延时函数,最大0.6秒. B" `5 C: B8 V4 K: T9 o
{
: N! r( G* }# }3 S4 N8 p while(h--);         //0.01MS5 S7 e. W* _1 {9 }# M
}
8 Q/ d7 Z# @8 h" \9 i& m# L/************主程序**************/
. P( P% ]7 p6 u% V, ymain()
& J5 R/ C) X1 n+ W{ 5 g* X& ]  D+ C" i9 d7 L
while(1)                //单片机在此反复执行
! H0 T7 N$ E0 \5 c: {& z! i* [ {
' v. X% J! h, f$ q4 ~0 C          TLP0=0;                 //光耦导通,发光二极管D22亮指示* H9 ^6 t& P9 h1 s6 w$ K; h
         dellay(50000); //约0.5秒
3 R7 N. |* `6 R         dellay(30000); //约0.3秒,共0.8秒; y! }9 o% [" ~- y2 P5 a
TLP0=1;                 //光耦光断,发光二极管D22灭
. S& `$ U8 h9 p6 J0 y1 U: D         dellay(50000);          //约0.5秒
' W0 F8 w8 `! l4 k         dellay(30000); //约0.3秒,共0.8秒( s' ?$ t6 Q, o  a, K5 B
}         / y4 p& l) R' U: v9 [$ e+ U* L6 @
}* ?, p. ^* [3 {
  
, y4 D+ C. n8 p; m; |; o% s' {
2 W6 e# N. U- j8 W" j0 _5 I* t. q+ V8 e2 A; C  l! i, w- Y) g) L
6185eaa8.pdf (98.28 KB, 下载次数: 0)

手机扫码浏览

classn_11

发表于 2009-12-2 20:58:27 | 显示全部楼层
呵呵呵 有看没有懂
" S& u. Y( x! q( L( T冷柜

classn_11

发表于 2009-12-2 20:58:28 | 显示全部楼层
路过,顺便学习。
*滑块验证:
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|申请友链|手机版|小黑屋|最新贴|维修网 ( 粤ICP备09047344号

GMT+8, 2024-5-17 07:46 , Processed in 0.260127 second(s), 33 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表