AT89S51中的内部看门狗程序实现
摘要:#include <REGX51.H>sfr WDTRST = 0xA6;int Dog_Count=0;void Clr_WDT();void delay_50us(unsigned int t); int main(){ TMOD=0x11; TH0=0x3C;TL0=0xB0; //50ms TH1=0xFC;TL1=0x18; //1ms ET0=1;ET1=1; EA=1; TR0=1;TR1=1; Clr_WDT(); while(1) { Dog_Count=0; } return 0;}void Clr_WDT(){ WDTRST = 0x1E; WDTRST =
阅读全文
posted @
2012-09-05 20:00
Arrow.Lu
编辑
AT24C01的应用
摘要:#include <REGX51.H>#include "INTRINS.H"//全局变量sbit SDA=P1^1; //定义总线连接端口sbit SCL=P1^0;void mDelay(unsigned char j)//A normal delay{ unsigned int i; for(;j>0;j--) for(i=0;i<125;i++) ;}/******************************************************************* 起动总线函数 函数原型: void Start_I2c(
阅读全文
posted @
2012-08-04 13:41
Arrow.Lu
编辑
晶体管的驱动负载
摘要:我们经常涉及到需要控制 蜂鸣器 、 继电器 、电机等元件,发现 晶体管 负载的不同接法,效果差别很大,有的接法甚至会导致 电路 工作不可靠,下面将我的经验介绍给大家供讨论。 晶体管(又称 三极管 )可分为NPN 型和PNP 型,目前常用的NPN 型三极管有 8050 、 9013 、 2N5551等,PNP 型三极管有 8550 、 9012 、 2N5401等。2 D9 F7 W4 \* k2 B2 z$ n9 I# b8 i1 A 1、常见负载的驱动电路& q) y$ v6 P- A/ W& ~& zf 图1 是NPN 型、PNP 型晶体管驱动各种负载的典型电路。要
阅读全文
posted @
2012-08-02 13:09
Arrow.Lu
编辑
LED数码管显示
摘要:#include <REGX51.H>bit up_low,up_high,down_low,down_high,ret_low,ret_high,s_low,s_high,s_flag;unsigned char count=0, delay_s=0, temp=0;void delay_50us(unsigned int t);void CheckUpPress(void);void CheckDownPress(void);void CheckSensor(void);void CheckResetPress(void);void DisplayLED(void);int m
阅读全文
posted @
2012-06-29 14:15
Arrow.Lu
编辑
三极管放大电路
摘要:三极管是电流放大器件,有三个极,分别叫做集电极C,基极B,发射极E。分成NPN和PNP两种。我们仅以NPN三极管的共发射极放大电路为例来说明一下三极管放大电路的基本原理。下面的分析仅对于NPN型硅三极管。如上图所示,我们把从基极B流至发射极E的电流叫做基极电流Ib;把从集电极C流至发射极E的电流叫做集电极电流Ic。这两个电流的方向都是流出发射极的,所以发射极E上就用了一个箭头来表示电流的方向。三极管的放大作用就是:集电极电流受基极电流的控制(假设电源能够提供给集电极足够大的电流的话),并且基极电流很小的变化,会引起集电极电流很大的变化,且变化满足一定的比例关系:集电极电流的变化量是基极电流变化
阅读全文
posted @
2012-06-27 14:10
Arrow.Lu
编辑
单片机驱动三极管
摘要:Q1一直是截止的,所以Q2导通时,基极电流会从Vcc到R1到GND,Ice的电流是Ib的β倍,R1的阻值根据负载的需要来调整因为R1的阻值可以取得很大,因为当输出1时,Q2截止。负载的电流根据R2的阻值来确定
阅读全文
posted @
2012-06-26 14:19
Arrow.Lu
编辑
发光二极管的压降
摘要:1. 直插超亮发光二极管压降 主要有三种颜色,然而三种发光二极管的压降都不相同,具体压降参考值如下: 红色发光二极管的压降为2.0--2.2V 黄色发光二极管的压降为1.8—2.0V 绿色发光二极管的压降为3.0—3.2V 正常发光时的额定电流约为20mA。2. 贴片LED压降红色的压降为1.82-1.88V,电流5-8mA绿色的压降为1.75-1.82V,电流3-5mA橙色的压降为1.7-1.8V,电流3-5mA兰色的压降为3.1-3.3V,电流8-10mA白色的压降为3-3.2V,电流10-15mA.超亮发光二极管主要有三种颜色,然而三种发光二极管的压降都不相同,具体压降参考值如下...
阅读全文
posted @
2012-06-26 11:02
Arrow.Lu
编辑
TLP521光耦的应用
摘要:光耦TLP521脚接限流电阻R1再接V1,2脚接地,3脚接地,4脚接电阻R2再接V2,从4脚拉出来接采集卡DI口1.R1和R2怎样计算?2.对于CTR不是很明白,对于输入输出的影响问题补充: CTR与上拉电阻和光耦的光敏三极管之间与饱和导通或者截至之间的关系.感谢你的回答,CTR是CURRENT TRANSFER RATIO,就是Ic/If啊,不知道和你说的TCRT是不是一个意思。我想问下,我做这个隔离电路不用考虑CTR吗?最佳答案1、光耦的输入端可以看做一个发光二极管来计算。限流20mA。输入电压减去二极管压降再除以20mA就是R1的阻值。2、R2是个纯粹的上拉电阻,只要和输出端的设备匹配并
阅读全文
posted @
2012-06-26 10:31
Arrow.Lu
编辑
上拉电阻的选择
摘要:P0口作为I/O口输出的时候时 输出低电平为0 输出高电平为高组态(并非5V,相当于悬空状态)。也就是说P0 口不能真正的输出高电平,给所接的负载提供电流,因此必须接上拉电阻(一电阻连接到VCC),由电源通过这个上拉电阻给负载提供电流。由于P0口内部没有上拉电阻,是开漏的,不管它的驱动能力多大,相当于它是没有电源的,需要外部的电路提供,绝大多数情况下P0口是必需加上拉电阻的。 1.一般51单片机的P0口在作为地址/数据复用时不接上拉电阻。 2.作为一般的I/O口时用时,由于内部没有上拉电阻,故要接上上拉电阻!! 3.当p0口用来驱动PNP管子的时候,就不需要上拉电阻,因为此时的低电平有效; 4
阅读全文
posted @
2012-06-23 17:56
Arrow.Lu
编辑
P0口工作原理详细讲解
摘要:一、P0端口的结构及工作原理 P0端口8位中的一位结构图见下图:由上图可见,P0端口由锁存器、输入缓冲器、切换开关、一个与非门、一个与门及场效应管驱动电路构成。再看图的右边,标号为P0.X引脚的图标,也就是说P0.X引脚可以是P0.0到P0.7的任何一位,即在P0口有8个与上图相同的电路组成。 下面,我们先就组成P0口的每个单元部份跟大家介绍一下: 先看输入缓冲器:在P0口中,有两个三态的缓冲器,在学数字电路时,我们已知道,三态门有三个状态,即在其的输出端可以是高电平、低电平,同时还有一种就是高阻状态(或称为禁止状态),大家看上图,上面一个是读锁存器的缓冲器,也就是说,要读取D锁存器输出端Q的
阅读全文
posted @
2012-06-23 17:52
Arrow.Lu
编辑
单片机精确延时C51
摘要:晶振12MHz 一. 500ms延时子程序程序: void delay500ms(void) { unsigned char i,j,k; for(i=15;i>0;i--) for(j=202;j>0;j--) for(k=81;k>0;k--); }产生的汇编: C:0x0800 7F0F MOV R7,#0x0F C:0x0802 7ECA MOV R6,#0xCA C:0x0804 7D51 MOV R5,#0x51 C:0x0806 DDFE DJNZ R5,C:0806 C:0x0808 DEFA DJNZ R6,C:0804 C:0x080A DFF6 DJNZ
阅读全文
posted @
2012-06-23 15:06
Arrow.Lu
编辑