当前位置:文档之家› 单片机控制电路开关程序完整程序

单片机控制电路开关程序完整程序

单片机控制电路开关程序完整程序
单片机控制电路开关程序完整程序

附录2

主程序

#include

#define uchar unsigned char

#define uint unsigned int

sbit KEYON =P2^0; // 开始键

sbit KEYOFF=P2^1; // 关闭键

sbit KEYSET=P2^2; // 预约键

sbit KEYINC=P2^3; //加1键

sbit KEYDEC=P2^4; // 减1键

sbit KEYFREE=P2^5; //预留键

sbit POWER=P3^6; //电源开关指示灯

sbit LED=P3^3 ; //按键指示灯

uchar code dispcode[]={0x3f,0x06,0x05b,0x4f,0x66,

0x6d,0x7d,0x07,0x7f,0x6f,0x40}; //0-9的字型码

uchar data disbuf[]={0,0,0,0}; //显示缓冲区

uchar hour,min ; //小时、分变量

bit Onflag,flag;

uchar Setflag;

void delay(uchar); //延时子函数

void init(void); //定时器初始化子函数

uchar GetKeyNum(); //求按键号

void Keyprocess(uchar); //按键处理子函数

void calculate(); //计时子函数

void display(); //显示子函数

//--------------------主函数-------------------------

void main(void)

{

init();

P1=0x00;

while(1)

display();

}

//-------------定时器TO、T1初始化,外部中断0初始化子函数-----

void init()

{

TMOD=0x11; //TO、T1作定时器、工作方式1

TH0=(65536-50000)/256 ; //定时50ms

TL0=(65536-50000)%256;

TH1=(65536-50000)/256;

TL1=(65536-50000)%256;

IT0=1; //选择外部中断0为下降沿触发方式

EX0=1; //开外部中断0

ET1=1; //开定时器1

ET0=1; //开定时器0

EA =1; //开总中断

TR0=1;

}

//----------显示子函数--------------------------

void display()

{

uchar i,j=0x08;

if((Setflag==0)&&!(min|hour)) //数码管显示“- - - -”

1

{

for(i=0;i<4;i++) disbuf[i]=dispcode[10];

}

else // 正常显示时间

{

disbuf[0] = dispcode[min%10]; //分个位

disbuf[1] = dispcode[min/10]; //分十位

disbuf[2] = dispcode[hour%10]+0x80; //小时个位

disbuf[3] = dispcode[hour/10]; //小时十位

}

if((Setflag!=0)&flag) //如果调时,数码管闪烁显示

{

for(i=0;i<4;i++)

{

if((disbuf[i]==0x3f)&&(i>2)) //不显示前面的0

P0=0;

else

P0=disbuf[i];

if(Setflag==1) P1=j&0xfc; //调时,关断前两位位码

else P1=j & 0xf3; //调分,关断后两位位码

delay(5); //延时2.5ms

P1=0x00;

j=j>>1;

}

}

else //数码管正常显示{

for(i=0;i<4;i++)

{

if((disbuf[i]==0x3f)&&(i>2)) P0=0; //不显示前面的0

else P0=disbuf[i];

P1=j; //位选通

delay(5); //延时2.5ms

P1=0X00;

j=j>>1;

}

}

}

//--------------外部中断0中断函数---------------------------------

void int0()interrupt 0 using 0

{

uchar keynum;

display(); //动态显示程序作为去抖动

if(INT0==0) //判断是否有按键按下

{

keynum=GetKeyNum(); //有效键,获取键值

while(INT0==0); //等待按键释放

Keyprocess(keynum); //按键处理

}

}

//-----------------定时器0中断子函数----------------------------

void time0() interrupt 1 //处理调时、显示器闪烁

{

static uchar ledcnt,num; //设置静态变量

TH0=(65536-50000)/256; //定时50ms

2

TL0=(65536-50000)%256;

if((Onflag && ((hour | min)!=0)) |! Onflag) //指示灯每隔0.5s闪烁

{

ledcnt++;

if(ledcnt==10) // 10 X 50mS=0.5S

{

ledcnt=0;

LED=~LED;

}

}

if(Setflag!=0) //调时闪烁

{

num++;

if(num==5)

{

num=0;

flag=~flag;

}

}

}

//-------------定时器1中断子函数-------------------

void time1() interrupt 3

{

TH1=(65536-50000)/256;

TL1=(65536-50000)%256;

calculate(); //计时

}

//-----------------求按键号-------------------------------

uchar GetKeyNum()

{

uchar temp;

if(KEYON==0) temp=1;

if(KEYOFF==0) temp=2;

if(KEYSET==0) temp=3;

if(KEYINC==0) temp=4;

if(KEYDEC==0) temp=5;

if(KEYFREE==0) temp=6;

return(temp);

}

//--------------------按键处理函数----------------------------

void Keyprocess (uchar x)

{

switch(x)

{

case 1: //KEYON处理函数

Onflag=1; //开Onflag标志

Setflag=0; //关(Setflag)调时标志

if((!Setflag)&&!(hour | min)) //没有调时且未处于预约,继电器通

{

POWER=0;

LED=0;

}

else

TR1=1; //定时器1运行、执行计时程序

break;

case 2 : //KEYOFF,关处理,标志清0

3

Onflag=0;

Setflag=0;

hour=0;

min=0;

POWER=1;

LED=1;

break;

case 3: //预约调时/调分键,处理调时标志if(Onflag==0)

{

Setflag++;

if(Setflag==3) Setflag=1;

}

break;

case 4: //加1键

if(Setflag==1) //调时键,最大只能调到11

{

hour++;

if(hour==12)

hour=0;

}

if(Setflag==2) //调分键,最大只能调到59

{

min++;

if(min==60)

min=0;

}

break;

case 5: //减1键

if(Setflag==1) //调时键,减小时处理,最小0

{

hour-- ;

if(hour==-1)

hour=12;

}

if(Setflag==2) //调分键,减分处理,最小0

{

min--;

if(min==-1)

min=59;

}

break;

}

}

//---------------------计算时间---------------------------------

void caculate()

{

static uint tcount; //tcount为定时次数

if((hour | min)!=0)

{

tcount++; //1次50ms到,改变定时次数if(tcount==1200) //1200*50ms=1分钟

{

tcount=0; //初始化定时次数

if(min==0)

{

4

min=60;

hour--;

}

min--;

}

if((min==0)&(hour==0)) //预约时间到

{

POWER=0; //继电器接通

LED=0;

TR1=0;

}

}

}

//-----------------------定时0.5ms------------------------

void delay(uchar x)

{

uchar j,k;

for(j=x;j>0;j--)

for(k=249;k>0;k--);

}

5

电脑开关电源原理及电路图

2.1、输入整流滤波电路 只要有交流电AC220V输入,ATX开关电源,无论是否开启,其辅助电源就一直在工作,直接为开关电源控制电路提供工作电压。图1中,交流电AC220V经过保险管FUSE、电源互感滤波器L0,经BD1—BD4整流、C5和C6滤波,输出300V左右直流脉动电压。C1为尖峰吸收电容,防止交流电突变瞬间对电路造成不良影响。TH1为负温度系数热敏电阻,起过流保护和防雷击的作用。L0、R1和C2组成Π型滤波器,滤除市电电网中的高频干扰。C3和C4为高频辐射吸收电容,防止交流电窜入后级直流电路造成高频辐射干扰。 2.2、高压尖峰吸收电路 D18、R004和C01组成高压尖峰吸收电路。当开关管Q03截止后,T3将产生一个很大的反极性尖峰电压,其峰值幅度超过Q03的C极电压很多倍,此尖峰电压的功率经D18储存于C01中,然后在电阻R004上消耗掉,从而降低了Q03的C极尖峰电压,使Q03免遭损坏。 2.3、辅助电源电路 整流器输出的300V左右直流脉动电压,一路经T3开关变压器的初级①~②绕组送往辅助电源开关管Q03的c极,另一路经启动电阻R002给Q03的b极提供正向偏置电压和启动电流,使Q03开始导通。Ic流经T3初级①~②绕组,使T3③~④反馈绕组产生感应电动势(上正下负),通过正反馈支路C02、D8、R06送往Q03的b极,使Q03迅速饱和导通,Q03上的Ic电流增至最大,即电流变化率为零,此时D7导通,通过电阻R05送出一个比较电压至IC3(光电耦合器Q817)的③脚,同时T3次级绕组产生的感应电动势经D50整流滤波后一路经R01限流后送至IC3的①脚,另一路经R02送至IC4(精密稳压电路TL431),由于Q03饱和导通时次级绕组产生的感应电动势比较平滑、稳定,经IC4的K端输出至IC3的②脚电压变化率几乎为零,使IC3发光二极管流过的电流几乎为零,此时光敏三极管截止,从而导致Q1截止。反馈电流通过R06、R003、Q03的b、e极等效电阻对电容C02充电,随着C02充电电压增加,流经Q03的b极电流逐渐减小,使③~④反馈绕组上的感应电动势

触摸延时开关设计

触摸延时开关设计 2014年5月21日

一、设计介绍 楼道触摸延时开关是一种简单、安全、新型的电子节能开关。可广范应用于多层住宅和办公楼室外的走廊、门厅、楼梯间、电梯间、过道等公共场所,也可以在家庭安装。本次设计利用模拟电路与数字电路,以直流稳压电源电路、NE555单稳态电路、和继电器控制电路为核心设计触摸延时开关。需要开灯时,手指触摸开关感应区,电灯自动点亮,延时约一分钟,电灯自动熄灭。设计表明这种开关制作简单,安全节能。 二、设计原理 设计电路如下:

三、单元电路设计及相关参数计算 1、照明灯电路: 照明电路采用100V交流输出,将功率为100W的灯泡之串联。 2、电源电路

电源电路如下: 电子系统的正常运行离不开稳定的电源,多数电路的直流电源是由电网的交流电转换来的。常用小功率直流稳压电源系统由电源变压器、整流电路、滤波电路、稳压电路四部分组成如上图所示整流电路。 本设计采用12V电压为电路供电,为得到12V直流电源,将220V频率为50Hz的交流电输入变压器(变比为11:1),经过整流桥整流得到直流电,通过电阻R1限流及稳压二极管将输出电压维持在12V,为其他电路提供稳定的工作电压。变压器副边输出电压脉冲系数大故应将直流电通过电容滤波。理想情况下交流分量可通过电容C3全部滤除,使输出电压仅为直流电压,一般取RC>(3- 5)T/2 其中T为电源交流电压的周期。要得到稳定的直流电滤波后通过电阻R4限流再经稳压二极管1N963,使输出电压稳定为12V。稳压二极管参数如下表所示

参数计算: 取变压器变比为11:1进行计算 变压器副边电压 U2=220/11=22V 交流电通入整流电路,经过全波整流的电压平均值 020.919.8U U V == 因稳压二极管最大工作电流为40mA,计算电阻4R : 04/40I U R mA =< 得4R >495Ω,取4R =550Ω 3、延时电路

开关电源电路详解

FS1: 由变压器计算得到Iin值,以此Iin值可知使用公司共享料2A/250V,设计时亦须考虑Pin(max)时的Iin是否会超过保险丝的额定值。 TR1(热敏电阻):

电源启动的瞬间,由于C1(一次侧滤波电容)短路,导致Iin电流很大,虽然时间很短暂,但亦可能对Power产生伤害,所以必须在滤波电容之前加装一个热敏电阻,以限制开机瞬间Iin在Spec之内(115V/30A,230V/60A),但因热敏电阻亦会消耗功率,所以不可放太大的阻值(否则会影响效率),一般使用SCK053(3A/5Ω),若C1电容使用较大的值,则必须考虑将热敏电阻的阻值变大(一般使用在大瓦数的Power上)。 VDR1(突波吸收器): 当雷极发生时,可能会损坏零件,进而影响Power的正常动作,所以必须在靠AC输入端(Fuse之后),加上突波吸收器来保护Power(一般常用07D471K),但若有价格上的考虑,可先忽略不装。 CY1,CY2(Y-Cap): Y-Cap一般可分为Y1及Y2电容,若AC Input有FG(3 Pin)一般使用Y2- Cap ,AC Input若为2Pin(只有L,N)一般使用Y1-Cap,Y1与Y2的差异,除了价格外(Y1较昂贵),绝缘等级及耐压亦不同(Y1称为双重绝缘,绝缘耐压约为Y2的两倍,且在电容的本体上会有“回”符号或注明Y1),此电路蛭蠪G所以使用Y2-Cap,Y-Cap 会影响EMI特性,一般而言越大越好,但须考虑漏电及价格问题,漏电(Leakage Current )必须符合安规须求(3Pin公司标准为750uA max)。 CX1(X-Cap)、RX1: X-Cap为防制EMI零件,EMI可分为Conduction及Radiation两部分,Conduction 规范一般可分为: FCC Part 15J Class B 、CISPR 22(EN55022) Class B 两种,FCC 测试频率在450K~30MHz,CISPR 22测试频率在150K~30MHz,Conduction可在厂内以频谱分析仪验证,Radiation 则必须到实验室验证,X-Cap 一般对低频段(150K ~ 数M之间)的EMI防制有效,一般而言X-Cap愈大,EMI防制效果愈好(但

电学专题之动态电路(讲义及答案)

第2题图 动态电路专题(讲义) 一、知识点睛 动态电路 滑动变阻器型定性分析 定量计算 多开关型 求范围定性分析定量计算 二、精讲精练 【板块一】滑动变阻器型动态电路1. 如图所示,电源电压不变,R 1为定值电阻,R 为滑动变阻器,闭合开关 S ,当滑动变阻器的滑片P 向左移动时,下列判断正确的是( ) A .电压表示数变小,电流表示数变大 B .电压表示数变小,电流表示数变小 C .电压表示数变大,电流表示数变小 D .电压表和电流表的示数的比值不变2. 如图所示,电源电压保持不变,闭合开关S 后,将滑动变阻器R 的滑片P 向左移动,在此过程中( ) A .电压表V 1示数变小,电压表V 2示数变大 B .电流表A 示数变小,电压表V 1示数不变 C .电流表A 示数不变,灯泡L 亮度变亮 D .电压表V 1示数不变,灯泡L 亮度变暗3. 如图所示,电源电压保持不变,闭合开关S ,当滑动变阻器的滑片P 向右移动时,下列分析正确的是() A .电流表A 示数与电流表A 2示数的差变大 B .电流表A 1示数与电流表A 2示数的和变大 C .电压表V 示数与电流表A 2示数的比值变大 D .电压表 V 示数与电流表A 1示数的乘积变大 第3题图

4.如图所示,电源电压不变,闭合开关S ,滑动变阻器的滑片P 位于b 端,此时电阻R 1和R 2的功率相等。将滑动变阻器的滑片P 从b 端滑到中点。下列说法不正确的是() A .电路的总电阻变小 B .电阻R 1的功率小于电阻R 2的功率 C .电阻R 1的电流变化量小于电阻R 2的电流变化量 D .滑动变阻器的电流变化量小于电阻R 2的电流变化量 5.检查驾驶员是否饮酒设备的电路如图甲,R 为酒精气体传感器,其阻值随酒精气体浓度的变化曲线如图乙,R 0为定值电阻,电源电压不变。当检测酒精气体浓度增大时() R 0S A V R R A .电流表示数减小 B .电压表示数减小 C .电路总电阻增大 D .电路总功率增大 6.如图所示是一种体重测量仪的工作原理图,当测量者站在体重测量台上时,滑片P 会滑动到金属片BC 上的某一位置,体重显示表就能显示出测量者的体重。下列关于这种体重测量仪分析正确的是( ) A .体重越大,电流表示数越大,电压表示数越小,体重显示表 选用电流表改装更合理 B .体重越大,电流表示数越小,电压表示数越大,体重显示表 选用电压表改装更合理 C .体重越小,电流表示数越大,电压表示数越小,体重显示表 选用电流表改装更合理 D .体重越小,电流表示数越小,电压表示数越大,体重显示表 选用电压表改装更合理 第4 题图

开关控制电路整理

1:蜂鸣器控制电路无源蜂鸣器。当BUZZ为高电平时,三极管T1(三极管N型)导通,蜂鸣器响,低电平蜂鸣器不响。R5作用是限流。 图: 1.1 下面电路增加了电容C18和反向二极管D2.作用是滤波和阻止反向。二极管的反向击穿电压很高。一般小功率三极管触发电压很低,0.7V,电流也很小,一般不到1UA. 图1.2: 2:IO 控制电源开关是否导通。利用三极管和MOS管。 MOS:MOSFET管式FET的一种,可以被制作成增强型或耗尽型,P沟道或N沟道共四种,但实际应用的只有增强型的N沟道MOS管和增强型的P沟道MOS管,NMOS,PMOS。 对于这两种增强型的MOS管,常用的是NMOS,特点是导通电阻小,开关电源和马达驱动的引用都是它。 导通条件: NMOS:当Vgs大于一定的数值时,就导通;PMOS:当Vgs小于一定的数值时,就导通。 开关损耗: 不管是NMOS还是PMOS,导通后都有导通电阻存在,产生损耗必然的,现在的MOS管导通电阻一般都是几十毫欧姆。

MOS管AO3401:P-channel Enhancement Mode Field Effect Transistor 导通条件:一般不要超过-12V即可对于AO3401来说。下面是对不同的压差对应的阻抗值: 下面是开关控制电路在工程中的应用: 1:通过一个IO管脚控制电源是否导通。

2:下面是两个MOS管3401,没有加入开关控制,只是上电后,VDD就等于输入电压。 此时可以两路供电,如果J5没有输入电压,由VBUS供电,经过F1输出5V电压。 下面电路可以把R10换成开关,Q201是始终导通状态,内部二极管压降是0.5V左右。 注意:两个三极管方向是不同的,Q200左边是S,右边是D;Q201左边是D,右边是s。 当J5有电压时,Q200导通,Q201也满足导通条件,压降由0.5V变为0.1V。具体详解在下一节。 注:VBUS右边断开。

实验三单片机IO口控制实验

实验三单片机I/O口控制实验 一、实验目的 利用单片机的P1口作I/O口,学会利用P1口作为输入和输出口。 二、实验设备及器件 PC机一台 https://www.doczj.com/doc/c212522657.html,单片机仿真器、编程器、实验仪三合一综合开发平台一台 三、实验内容 1.编写一段程序,用P1口作为控制端口,使D1区的LED轮流亮。 2.编写一段程序,用P1.0~P1.6口控制LED,P1.7控制LED的亮和灭(P1.7接按键,按下时LED亮,不按时LED灭)。 四、实验要求 学会使用单片机的P1口作为I/O口,如果有时间用户也可以利用P3口作I/O口来做该试验。 五、实验步骤 1.用导线把A2区的J61接口与D1区的J52接口相连。原理如图所示。 2.先编写一个延时程序。 3.将LED轮流亮的程序编写完整并使用TKStudy ICE仿真器调试运行。 4.使用导线把A2区的J61接口的P1.0~P1.6与D1区的J52接口的LED1~LED7相连,另外A2区J61接口的P1.7与D1区的J53的KEY1相连。原理如上图所示。 5.编写P1.7控制LED的程序,并调试运行。(按下K1看是否全亮) 6.A2区J61接口的P1.7与D1区的J54的SW1相连。然后再使用TKStudy ICE仿真器运行程序,查看结果。 六、实验预习要求 仔细阅读实验箱介绍中的各个接口内容,理解该实验的硬件结构。还可以先把程序编好,然后在Keil C51环境下进行软件仿真。

七、实验参考程序 程序1: ORG 0000H LJMP Main ORG 0100H Main: MOV A,#0FFH CLR C MainLoop: CALL Delay RLC A MOV P1,A SJMP MainLoop Delay: MOV R7, #0 Loop: MOV R6, #0 DJNZ R6, $ DJNZ R6, $ DJNZ R6, $ DJNZ R7, Loop RET END 程序2: ORG 0000H LJMP Main ORG 0100H Main: JB P1.7,SETLED CLRLED: CLR P1.0 CLR P1.1 CLR P1.2 CLR P1.3 CLR P1.4 CLR P1.5 CLR P1.6 SJMP Main SETLED: SETB P1.0 SETB P1.1 SETB P1.2 SETB P1.3

单片机io口控制实验报告

单片机实验报告 实验名称:I/O口控制 姓名:张昊 学号:110404247 班级:通信2班 时间:2013.11.19 南京理工大学紫金学院电光系

一、实验目的 1、学习I/O口的使用。 2、学习延时子程序的编写和使用。 3、掌握单片机编程器的使用和芯片烧写方法。 二、实验原理 1、广告流水灯实验 (1)做单一灯的左移右移,八个发光二极管L1~L8分别接在单片机的P1.0~P1.7接口上,输出“0”的时候,发光二极管亮,开始时 P1.0->P1.1->P1.2->P1.3->...->P1.7->P1.6->...P1.0亮,重复循 环。 (2)系统板上硬件连线:把“单片机系统”A2区的J61接口的P1.0~P1.6端口与D1区的J52接口相连。要求:P1.0对应着L1,P1.1对应 L2,……,P1.7对应着L8。 P1口广告流水灯实验原理图如下

程序设计流程:流程图如下 2、模拟开关实验 (1)监视开关K1(接在P3.0端口上),用发光二极管L1(接在单片机P1.0端口上)显示开关状态,如果开关合上,L1亮,开关打开, L1熄火。 (2)系统板上硬件连线:把“单片机系统”A2区的P1.0端口用导线连接到D1区的LED1端口上;把“单片机系统”A2区的P3.0端口用 导线连接到D1区的KEY1端口上; 实验原理图如下图

程序设计流程 二、实验内容 1、流水灯 #include sbit p10=P1^0; sbit p11=P1^1; sbit p12=P1^2; sbit p13=P1^3; sbit p14=P1^4; sbit p15=P1^5; sbit p16=P1^6; sbit p17=P1^7; unsigned char count=0; bit flag; void main() {

10kV开关电气控制回路图

检修部员工培训模块 TDJXGYAQ 5.4.1.11 设备检修工艺、方法—电气 10kV开关电气控制回路图 2017-09-30发布 2017-12-01实施大唐国际托克托发电有限责任公司检修部

目录 1、符号及说明 (3) 2、断路器的控制回路的基本要求 (3) 3、断路器控制回路详解 (4)

编制人:张志峰主讲人:张志峰 10kV开关电气控制回路图 1、符号及说明 1.1 如图所示为托克托发电厂五期10kV开关VBG-12P的电气原理图。 1.2 图中操作电源选用AC/DC110V。 图1手车式电气原理图 1.3 图中:HQ:合闸线圈;TQ:分闸线圈;M:储能电机;R0:电阻;S8:辅助开关(当手车在试验位置切换); S9:辅助开关(当手车在工作位置切换);SP5:合闸闭锁用电磁铁辅助开关;S2:微动开关;DL:辅助 开关;U:桥式整流器(直流时取消2U~4U);K1:合闸闭锁线圈;K0:防跳继电器;Y7~Y9:过流脱扣 器;X:航空插头;L1~L10:连接线;PCB:线路板。 1.4 图中包括电机回路、合闸回路、闭锁回路、分闸回路、辅助回路。 2、断路器的控制回路的基本要求 2.1、应能监视控制电源及跳、合闸回路的完好性:断路器的控制电源最为重要,一旦失去电源断路器便无法操作。 因此,无论何种原因,当断路器控制电源消失时,应发出声、光信号,提示值班人员及时处理。 2.2、具有防止多次合、跳闸的“跳跃”闭锁装置。断路器的“跳跃”现象一般是在跳闸、合闸回路同时接通时才 发生。发生“跳跃”对断路器是非常危险的,容易引起机构损伤,甚至引起断路器的爆炸,故必须采取闭锁

双键触摸开关与单键触摸延迟开关电路制作

双键触摸开关与单键触摸延迟开关电路制作 图1和图2是采用555时基电路制作的双键触摸开关与单键触摸延迟开关。图1中M1是“开”触摸片,当人手触碰时,人体感应的杂波信号加到时基电路的低电平触发端IC的②脚,电路置位,③脚输出高电平,继电器K得电吸合,其常开触点闭合,被控电器通电工作。M2为“关”触摸片,一旦触碰,人体感应的杂波信号加到555的阈值端IC⑥,电路复位,③脚输出低电平,继电器失电跳闸,被控电器停止工作。 图2是延迟开关电路,555集成块接成单稳态触发器,平时处于复位状态,继电器K 不动作。当M受到触摸时,电路被触发进人暂态,③脚输出高电平,继电器K吸合,被控电器工作。暂态时间t=1.1R2 X C4,暂态时间结束,电路翻转成稳态,继电器K释放,被控电器停止工作。 图3是一个电源电路采取特殊设计的用555时基电路制作而成的触摸开关,它对外仅两根引出线,因此可直接取代普通开关而不必更改电源布线。EL是不大于25W的白炽灯或交流接触器。虚线左部为普通照明线路,右部为触摸开关电路。IC处于复位状态时,③脚

输出低电平,晶闸管VS的门极通过电阻R3被钳位在低电平,故VS关断,EL不亮,此时5 55的工作电源由220V交流电经灯EL、二极管VD1~VD4整流、电阻R2限流、VD5稳压与IC1滤波获得约6V直流工作电压供电。当555时基电路②脚受触发处于置位时,IC③脚输出高电平,VS开通,EL点亮发光。VS开通后,555工作电源直接由灯EL、二极管VD1~VD4、晶闸管VS与稳压管VD5构成回路,C1两端仍能获得6V直流工作电压,只是此时电阻R2不起作用。 电路的右部时基电路部分与图1相同,如将图2左部电源按图3改动,也可以方便地制成一个对外只有两根引出线的触摸延迟开关。有一点需要特别注意的是本电路的负载能力是由VD1~VD4、VS及VD5共同决定的,其中薄弱环节是VD5,本电路VD5采用1W、6V的稳压管,其最大通态电流为0.16A,为确保电 路可靠工作,EL宜用不大于25W的白炽灯。 图4是用双D触发器制作的触摸开关。CD4013是双D触发器,分别接成一个单稳态电路和一个双稳态电路。单稳态电路的作用是对触摸信号进行脉冲展宽整形,保证每次触摸动作都可靠。双稳态电路用来驱动晶闸管VS。当人手摸一下M,人体泄漏的交流电在电阻R2上的压降,其正半周信号进入③脚CP1端,使单稳态电路翻转进入暂态.其输出端Q1即①脚跳变为高电平,此高电平经R3向C1充电,使④电位上升,当上升到复位电平时,单稳态电路复位,①脚恢复低电平。所以每触摸一次M,①脚就输出一个固定宽度的正脉冲。此正脉冲将直接加到11脚CP2端,使双稳态电路翻转一次,其输出端Q2即13脚电平就

多路控制开关电路设计

课程设计报告 题目:多路控制开关电路设计课程名称: 学生姓名: 学生学号: 年级: 专业: 班级: 指导教师: 电子工程学院制 2017年3月

目录 1多路控制开关电路设计的任务与要求 (1) 1.1 多路控制开关电路课程设计的任务 (1) 1.2 多路控制开关电路课程设计的要求 (1) 2 多路控制开关电路设计方案制定 (1) 2.1多路控制开关电路设计的原理 (1) 3 多路控制开关电路设计方案实施 (2) 3.1多路控制开关电路单元模块功能及电路设计 (2) 3.2多路控制开关电路电路参数计算及元器件选择 (4) 3.3 多路控制开关电路系统整体电路图 (8) 3.4 元器件清单 (8) 4 多路控制开关电路设计的仿真实现(或者硬件制作与调试) (9) 4.2 多路控制开关电路设计仿真实现 (10) 4.4 多路控制开关电路设计数据分析 (11) 5.多路控制开关电路实物设计 (11) 5.1设计过程 (11) 5.2硬件实现 (12) 6.总结及心得体会 (12) 7.参考文献 (12) 8. 附录 (13)

多路控制开关电路设计 电子工程学院电子信息工程专业 1多路控制开关电路设计的任务与要求 1.1 多路控制开关电路课程设计的任务 设计多路开关控制多路,用多个开关控制数码管 1.2 多路控制开关电路课程设计的要求 1 用多个开关控制,用不同的开关控制数码管显示不同的数字,实现不同的功能。八组参赛者在进行抢答时,抢发先者按下面前的按钮时,抢答器能准确地判断出抢先者,并以蜂鸣器声为标志。 抢答器应具有互锁功能,某组抢答后能自动封锁其他各组进行抢答。 3系统应具有一个总复位开关。 2 多路控制开关电路设计方案制定 2.1多路控制开关电路设计的原理 接通电源后,主持人将开关拨到"清除"状态,多路控制开关电路处于禁止状态主持人将开关置开始"状态,宣布"开始"工作。扬声器给出声响提示。选手在定时时间内按键时。多路控制开关电路完成优先判断、编号锁存、编号显示、扬声器提示。当一轮抢答之后,定时器停止、禁止二次抢答。如果再次抢答必须由主持人再次操作"清除"和"开始"状态开关。锁存器输入信号均为同一电平时,锁存器控制电路的输出信号使锁存器打开,这时锁存器输入端的信号送往相应的输出端。当有一输入端的电平发生条便是其对应输出端点评也随着发生变化,次变化的输出电平送入锁存器控制电路,控制电路立即产生控制信号封锁锁存器,让锁存器进入锁存工作状态。此时无论那个输入端电平发生变化,锁存器各个输出端电平保持不变。发生变化的输出端经过编码器编码之后,将相关信息由译码器送入数码显示器,显示相应的组别,并发出响声。 2.2 多路控制开关电路设计的技术方案

触摸开关电路

录 联系QQ:619014727 提供毕业设计(论文)服目 摘要 (4) 关键字 (4) 一.引 言 (4) 二.目标分 析 (4) 三.电路结构的设计及工作原理的设 想 (4) 四.设计的思想和依 据 (7) 4.1常用集成电路简介 (7) 4.1.1半导体集成电路型号命名法 (7) 4.1.2集成电路芯片管脚识别 (8) 4.1.3集成三端稳压器 (9) 4.1.4集成电路CD4069 (10) 4.2光敏电阻的工作原理 (11) 4.2.1光敏电阻器的结构、特性及应用 (10) 4.2.2光敏电阻器的分类 (11)

五.主要器件的检 测 (13) 5.1光敏电阻的检测 (13) 5.2集成电路C D4069各引脚间的开路电阻的检测 (13) 六.元件 表 (14) 七.总 结 (14) 八.结束 语 (15) 九.参考文 献 (15) 十. 附图:采用CD4069非门集成电路的:声、光、触摸三控 延时电路 (16) 声、光、触摸三控延时电路 作者: Lili 指导老师: Wanth 摘要:目前市场上所遇到的自熄开关主要有声光控延时开关,天黑以后,当有人走过楼摘梯通道发出脚步声或其它声音时,楼道灯会自动点亮提供照明,当人们走过楼道延时几秒钟后会自动熄灭。在白天,即使有声音,楼道灯也不会亮,即

可以达到节能的目的,但在有光无声的状态下开灯检查却不行。我设计的声、光、触摸三控延时电路就解决了这个问题,本人设计的是一款以CD4069数字电路为主要元件制作的声、光控制及人体触摸控制的延时照明灯电路。将该装置安装在楼道、走廊或卫生间等场所,在夜间,有人走动或发声时,灯会自动点亮延时数秒后自动熄灭。在白天,若触摸电极片A,则自动灯会受触发而点亮。 关键词:光控声控静电感应节能楼道照明灯毕业设计 一.引言 国标GB50096-1999《住宅建筑设计规范》规定,住宅中公共部分应设人工照明,除高层住宅的电梯厅和应急照明灯外,均应采用节能自熄开关。采用自熄开关的主要目的是改善人们的居住环境及节能。 目前市场上所遇到的自熄开关主要有声光控延时开关,天黑以后,当有人走过楼梯通道发出脚步声或其它声音时,楼道灯会自动点亮提供照明,当人们走过楼道延时几秒钟后会自动熄灭。在白天,即使有声音,楼道灯也不会亮,既可以达到节能的目的,但在有光无声的状态下开灯检查却不行。我设计的声、光、触摸三控延时电路就解决了这个问题,在任何状态下用手摸到触摸开关铜片,人体的静电感应电压经电子线路放大后就能将开关启动。实际使用价值更大。 二 .目标分析 l触摸电极片用1~2平方厘米的铜片做成代替触点开关,使用寿命长。 l声控灵敏度高,夜间的脚步声、说话声等均可将开关启动。 l电路光控强度可调。 l性能可靠,电路稳定。 三电路结构的设计及工作原理的设想 本人设计的是一款以CD4069数字电路为主要元件制作的声、光控制及人体触摸控制的延时照明灯电路。将该装置安装在楼道、走廊或卫生间等场所,在夜间,有人走动或发声时,灯会自动点亮延时数秒后自动熄灭。在白天,若触摸电极片A,则自动灯会受触发而点亮。

路灯自动控制开关电路的设计

路灯自动控制开关电路的 设计 The Standardization Office was revised on the afternoon of December 13, 2020

路灯自动控制开关电路的设计 一、实验要求 可以根据光照的强度自动控制路灯的通、断。当傍晚光照强度渐弱或者清晨光照强度渐强来控制路灯的通或者断以及其灯的强度。 二、实验目的 1.了解自动调光台灯电路的结构及工作原理 2.让我们学会更好的自主学习和团队合作 三、实验原理 ·············调光台灯电路及工作原理电路图············· 功能实现:当环境光照弱,它发光亮度就增大;环境光照强,发光亮度就减暗。 当开关S拨向位置2时,它是一个普通调光台灯。RP、C和氖泡 N组成张弛振荡器,用来产生脉冲触发可控硅VS。一般氖泡辉光导通电压为60-80V,

当C充电到辉光电压时,N辉光导通,VS被触发导通。调节RP能改变C充电速率,从而能改变VS导通角,达到调光的目的。R2、R3构成分压器通过VD5也向C充电,改变R2、R3分压也能改变VS导通角,使灯的亮度发生变化。 当S拨向位置1时,光敏电阻RG取代R3,当周围光线较弱时,RG呈现高电阻,VD5右端电位升高,电容C充电速率加快,振荡频率变高,VS导通角增大,电灯两端电压升高、亮度增大。当周围光线增强时,RG电阻变小,与上述相反,电灯两端电压变低,高度减小。四、实验步骤 调试时,将RP调到阻值为零位置,S置于位置2,用万用表测电灯两端交流电应在200V以上,如低于200V可略减小R1或增大R3阻值,使之达到要求。光敏电阻RG应安装在台灯底座侧面台灯光线不能直接照射的地方,用来感受周围环境照度。调光台灯的灯泡宜用40W的白炽灯。调整好的电路即可投入使用;S拨向2为普通调光台灯,调RP可选择适当的高密度;S拨向1为自动台灯,先调RP选择好适当亮度,如环境照度变暗时,台灯亮度会逐渐变亮,增大照度。 五、实验实物

单片机实验-IO口输入输出实验

实验二I/O口输入、输出实验 一、实验目的 1. 学习I/O口的使用方法。 2. 学习延时子程序、查表程序的编写和使用。 二、参考程序框图 led灯 500ms DJNZ R6,DE2; DJNZ R7,DE1; RET END 2、I/O口输入输出(方法一) ORG 0000H; START : MOV P2,#00H; //初始化 MOV P0,#00H; MOV P1,#0FFH; //p1 MOV DPTR,#TABLE; // MOV 50H,#0FEH; // L0 :MOV A,P1; //按键消抖 CJNE A,#0FFH,L1; AJMP L0; L1 :MOV A,P1; CJNE A,#0FFH,LL1; AJMP L0; LL1 :CJNE A,50H,LL2; //是否与地址50h中数据相等MOV P0,A; //相等输出对应led灯 MOV A,#00H; MOVC A,@A+DPTR;

MOV P2,A; //输出表格数据到数码管 LCALL DELAY; //延时 LJMP START; //返回程序开头 LL2 :XCH A,50H; //交换数据 RL A; //左移 XCH A,50H; //再次交换,此时地址50h中数据左移一位 INC DPTR; //表格数据地址加一 LJMP LL1; //返回继续比较 DELAY : MOV R7,#01H; //延时程序 DE1 : MOV R6,#28H; DE2 : MOV R5,#5AH; DJNZ R5,$; DJNZ R6,DE2; DJNZ R7,DE1; RET TABLE : ;//DB 0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H; DB 06H,5BH,4FH,66H,6DH,7DH,07H,7FH; //表格数据 END 程序二(方法二) ORG 0000H MOV P2,#00H; //I./O口初始化 MOV P1,#0FFH; //P1口赋FFH初值 MOV P0,#00H; START : MOV P2,#00H; //P2清0; MOV P0,#00H; //P0清0; MOV R1 ,P1; MOV A,R1; //读P1口 CJNE A,#0FFH,L1; //是否有数据输入 AJMP START; //无输入则跳转,继续查询 LCALL DELAY; L1 : MOV R1,P1; //消除按键抖动 MOV A,R1; CJNE A, #0FFH,LL1; AJMP START; LL1 : CJNE A,#0FEH,LL2; //是否按键1输入 MOV P2,#06H; //是则P2输出相应的按键号码 CPL A; //A取反 MOV P0,A; //输出到P0口 LCALL DELAY; //延迟 AJMP LP; //跳转到LP LL2 : CJNE A,#0FDH,LL3; //是否按键2输入 MOV P2,#5BH; //以下同上 CPL A;

用TL494制作的ATXC开关电源控制电路图

用TL494制作的ATXC开关电源控制电路图 本开头电源控制电路采用TL494(有的电源采用KA7500B,其管脚功能与TL494相同,可互换)及LM339集成电路(以下简称494和339)。494是双排16脚集成电路,工作电压7~40V。它含有由{14}脚输出的+5V基准电源,输出电压为+5V(±0.05V),最大输出电流250mA;一个频率可调的锯齿波产生电路。 图1 ATX电源的控制电路见图1。控制电路采用TL494(有的电源采用KA7500B,其管脚功能与TL494相同,可互换)及LM339集成电路(以下简称494和339)。494是双排16脚集成电路,工作电压7~40V。它含有由{14}脚输出的+5V基准电源,输出电压为+5V(±0.05V),最大输出电流250mA;一个频率可调的锯齿波产生电路,振荡频率由{5}脚外接电容及{6}脚外接电阻来决定。{13}脚为高电平时,由{8}脚及{11}脚输出双路反相(即推挽工作方式)的脉宽调制信号。本例为此种工作方式,故将{13}脚与{14}脚相连接。比较器是一种运算放大器,符号用三角形表示,它有一个同相输入端“+”;一个反相输入端“-”和一个输出端。 比较器同相端电平若高于反相端电平,则输出端输出高电平;反之输出低电平。494内的比较放大器有四个,为叙述方便,在图1中用小写字母

a、b、c、d来表示。其中a是死区时间比较器。因两个作逆变工作的三极管串联后接到+310V的直流电源上,若两个三极管同时导通,就会形成对直流电源的短路。两个三极管同时导通可能发生在一个管子从截止转为导通,而另一个管子由导通转为截止的时候。因为管子在转换时有时间的延迟,截止的管子已经转为导通了,但导通的管子尚未完全转为截止,于是两个管子都呈导通状态而形成对直流电源的短路。为防止这样的事情发生,494设置了死区时间比较器a。从图1可以看出,在比较器a的反相输入端串联了一个“电源”,正极接反相端,负极接494的{4}脚。A比较器同相端输入的锯齿波信号,只有大于“电源”电压的部分才有输出,在三极管导通变为截止与截止转为导通期间,也就是死区时间,494没有脉冲输出,避免了对直流电源的短路。死区时间还可由{4}脚外接的电平来控制,{4}脚的电平上升,死区时间变宽,494输出的脉冲就变窄了,若{4}脚的电平超过了锯齿波的峰值电压,494就进入了保护状态,{8}脚和{11}脚就不输出脉冲了。494内部还有3个二输入端与门(用1、2、3表示)、两个二输入端与非门、反相器、T触发器等电路。与门是这样一种电路,只有所有的输入端都是高电平,输出端才能输出高电平;若有一个输入端为低电平,则输出端输出低电平。反相器的作用是把输入信号隔离放大后反相输出。与非门则相当于一个与门和一个反相器的组合。T触发器的作用是:每输入一个脉冲,输出端的电平就变化一次。如输出端Q为低电平,输入一个脉冲后,Q变为高电平,再输入一个脉冲,Q又回到低电平。比较器、与门、反相器、T触发器以及锯齿波振荡器及{8}脚、{11}脚输出的波形见图2。339是四比较器集成电路。按管脚的顺序把内部四个比较器设为A、B、C、D比较器。494和339再配合其他电路,共同完成ATX电源的稳压,产生PW-OK信号及各种保护功能。

单片机io口实验报告

实验一 以下所有KEIL工程、程序均命名为自己姓名的拼音 一、实验目的: 熟悉KEIL软件的开发,掌握程序下载流程 二、实验环境: 1.硬件:PC微机、单片机开发板 2.软件:KEIL 三、实验步骤: 1.在KEIL中新建工程文件,在工程文件下新建C文件“姓名首字母.c”并加入到工程 中(注意C语言编程时,工程中要保留STARTUP.A51汇编文件)。 2.编写程序,初始化内部数据寄存器0x40开始的100个地址单元,写入0x55,然后复 制到0x60开始的存储器中,使用软件仿真的方式调试程序,观察程序模拟运行的结果: #include "reg52.h" unsigned char *p,*q; unsigned char i; int main(){ p=0x40; for(i=0;i<10;i++) { *p=0x55; p++; } for(i=0;i<10;i++) { *p=*q;

q++; p++; while(1); } } 调试时,在调试界面中依次找到 a) 变量观察窗口 b) 存储器窗口 c) 单步运行 d) 全速运行 程序运行结果(存储器窗口截图): 3.编写程序,控制实验板上的LED灯:D1-D3点亮,D4-D7熄灭,D8点亮#include”reg52.h” sbit P1_4=P1^4; int main() { P1_4=0; P0=0x1E;

While(1); } 4.编写C语言程序,实现LED灯循环点亮 #include "reg52.h" void delay (unsigned z) { while(z--); } int main() { unsigned char i; P1&=~(0x01<<4); P0=0xff; i=0x01; while (1) { P0=~i; i=i<<1; if(i==0x0) i=0x01; delay(10000); } } 四、实验总结

常见几种开关电源工作原理及电路图

开关式稳压电源接控制方式分为调宽式和调频式两种,在实际的应用中,调宽式使用得较多,在目前开发和使用的开关电源集成电路中,绝大多数也为脉宽调制型。因此下面就主要介绍调宽式开关稳压电源。 调宽式开关稳压电源的基本原理可参见下图。 对于单极性矩形脉冲来说,其直流平均电压Uo取决于矩形脉冲的宽度,脉冲越宽,其直流平均电压值就越高。直流平均电压U。可由公式计算, 即Uo=Um×T1/T 式中Um为矩形脉冲最大电压值;T为矩形脉冲周期;T1为矩形脉冲宽度。 从上式可以看出,当Um 与T 不变时,直流平均电压Uo 将与脉冲宽度T1 成正比。这样,只要我们设法使脉冲宽度随稳压电源输出电压的增高而变窄,就可以达到稳定电压的目的。 二、开关式稳压电源的原理电路 1、基本电路 图二开关电源基本电路框图 开关式稳压电源的基本电路框图如图二所示。 交流电压经整流电路及滤波电路整流滤波后,变成含有一定脉动成份的直流电压,该电压进人高频变换器被转换成所需电压值的方波,最后再将这个方波电压经整流滤波变为所需要的直流电压。 控制电路为一脉冲宽度调制器,它主要由取样器、比较器、振荡器、脉宽调制及基准电压等电路构成。这部分电路目前已集成化,制成了各种开关电源用集成电路。控制电路用来调整高频开关元件的开关时间比例,以达到稳定输出电压的目的。 2.单端反激式开关电源 单端反激式开关电源的典型电路如图三所示。电路中所谓的单端是指高频变换器的磁芯仅工作在磁滞回线的一侧。所谓的反激,是指当开关管VT1 导通时,高频变压器T初级绕组的感应电压为上正下负,整流二极管VD1

处于截止状态,在初级绕组中储存能量。当开关管VT1截止时,变压器T初级绕组中存储的能量,通过次级绕组及VD1 整流和电容C滤波后向负载输出。 单端反激式开关电源是一种成本最低的电源电路,输出功率为20-100W,可以同时输出不同的电压,且有较好的电压调整率。唯一的缺点是输出的纹波电压较大,外特性差,适用于相对固定的负载。 单端反激式开关电源使用的开关管VT1 承受的最大反向 电压是电路工作电压值的两倍,工作频率在20-200kHz之间。 3.单端正激式开关电源 单端正激式开关电源的典型电路如图四所示。这种电路在形式上与单端反激式电路相似,但工作情形不同。当开关管VT1导通时,VD2也 导通,这时电网向负载传送能量,滤波电感L储存能量;当开关管VT1截止时,电感L通过续流二极管VD3 继续向负载释放能量。 在电路中还设有钳位线圈与二极管VD2,它可以将开关管VT1的最高电压限制在两倍电源电压之间。为满足磁芯复位条件,即磁通建立和 复位时间应相等,所以电路中脉冲的占空比不能大于50%。由于这种电路在开关管VT1导通时,通过变压器向负载传送能量,所以输出功率范围大,可输出50-200 W的功率。电路使用的变压器结构复杂,体积也较大,正因为这个原因,这种电路的实际应用较少。 4.自激式开关稳压电源 自激式开关稳压电源的典型电路如图五所示。这是一种利用间歇振荡电路组成的开关电源,也是目前广泛使用的基本电源之一。 当接入电源后在R1给开关管VT1提供启动电流,使VT1 开始导通,其集电极电流Ic在L1中线性增长,在L2 中感应出使VT1 基极为正,发射极为负的正反馈电压,使VT1 很快饱和。与此同时,感应电压给C1充电,随着C1充电电压的增高,VT1基极电位逐渐变低,致使VT1退出饱和区,Ic 开始减小,在L2 中感应出使VT1 基极为负、发射极为正的电压,使VT1 迅速截止,这时二极管VD1导通,高频变压器T初级绕组中的储能释放给负载。在VT1截止时,L2中没有感应电压,直流供电输人电压又经R1给C1反向充电,逐渐提高VT1基极电位,使其重新导通,再次翻转达到饱和状态,电路就这样重复振

路灯自动控制开关电路的设计

路灯自动控制开关电路的设计 一、实验要求 可以根据光照的强度自动控制路灯的通、断。当傍晚光照强度渐弱或者清晨光照强度渐强来控制路灯的通或者断以及其灯的强度。 二、实验目的 1.了解自动调光台灯电路的结构及工作原理 2.让我们学会更好的自主学习和团队合作 三、实验原理 ·············调光台灯电路及工作原理电路图·············功能实现:当环境光照弱,它发光亮度就增大;环境光照强,发光亮度就减暗。 当开关S拨向位置2时,它是一个普通调光台灯。RP、C和氖泡 N组成张弛振荡器,用来产生脉冲触发可控硅VS。一般氖泡辉光导通电压为60-80V,当C充电到辉光电压时,N 辉光导通,VS被触发导通。调节RP能改变C充电速率,从而能改变VS导通角,达到调光的目的。R2、R3构成分压器通过VD5也向C充电,改变R2、R3分压也能改变VS导通角,使灯的亮度发生变化。 当S拨向位置1时,光敏电阻RG取代R3,当周围光线较弱时,RG呈现高电阻,VD5右端电位升高,电容C充电速率加快,振荡频率变高,VS导通角增大,电灯两端电压升高、

亮度增大。当周围光线增强时,RG电阻变小,与上述相反,电灯两端电压变低,高度减小。 四、实验步骤 调试时,将RP调到阻值为零位置,S置于位置2,用万用表测电灯两端交流电应在200V 以上,如低于200V可略减小R1或增大R3阻值,使之达到要求。光敏电阻RG应安装在台灯底座侧面台灯光线不能直接照射的地方,用来感受周围环境照度。调光台灯的灯泡宜用40W 的白炽灯。调整好的电路即可投入使用;S拨向2为普通调光台灯,调RP可选择适当的高密度;S拨向1为自动台灯,先调RP选择好适当亮度,如环境照度变暗时,台灯亮度会逐渐变亮,增大照度。 五、实验实物 ·················图一·······························图二··················六、实验总结 本次实验是《电力电子技术》最后一次实验,本次设计性实验,主要实现的功能是:根据光照的不同,实现灯的强度的变化,相当于路灯的简化。在拿到实验题目的时候,我们首先想到的是:光敏电阻。在实验之前,我们首先在网上查找资料,通过小组的讨论最终设计出实验电路。光敏电阻的工作原理是:当其处于黑暗环境时,光敏电阻处于高阻态,导致VD5右端电位升高,电容C充电速率加快,振荡频率变高,VS导通角增大,电灯两端电压升高、灯泡的亮度增大;当光敏电阻的环境亮度变大的时候,光敏电阻的阻值减小,实现亮度的减弱。 本次设计性实验比较简单,很快的就完成了。在实验中也没有出现意外,主要是我们没有200K的电位器,所以使用了两个104的电位器串联,最终结果一样。本次实验让我们加强的小组的协作能力,提高了我们沟通能力,让我们受益颇多。

单片机实验-单片机并行IO口的应用实验

单片机并行I/O口的应用实验 一、实验目的 1、熟悉Proteus软件和Keil软件的使用方法。 2、熟悉单片机应用电路的设计方法。 3、掌握单片机并行I/O口的直接应用方法。 4、掌握单片机应用程序的设计和调试方法。 二、实验内容或原理 1、利用单片机并行I/O口控制流水灯。 2、利用单片机并行I/O口控制蜂鸣器。 三、设计要求 1、用Proteus软件画出电路原理图。要求在P1.0至P1.7口 线上分别接LED0至LED7八个发光二极管,在P3.0口线上 接一蜂鸣器。 2、编写程序:要求LED0至LED7以秒速率循环右移。 3、编写程序:要求LED0至LED7以秒速率循环左移。 4、编写程序:要求在灯移动的同时,蜂鸣器逐位报警。 四、实验报告要求 1、实验目的和要求。 2、设计要求。 3、实验程序流程框图和程序清单。 4、电路原理图。 5、实验结果 6、实验总结。 7、思考题。 五、思考题 1、编程实现LED0至LED7以十六进制计数规律亮灯? 原理图:

程序清单: /*(1)LED0~LED7以秒速率循环右移 蜂鸣器逐位报警*/ ORG 0000H MAIN:MOV A, #11111110B;赋初值 LOOP:MOV P1,A ;赋值给P1口 CPL P3.0 ;低电平有效 LCALL DELAY ;调用延时电路 SETB P3.0 ;控制蜂鸣器叫的时间间隔 LCALL DELAY RL A LJMP LOOP DELAY:MOV R7,#0FFH LOOP1:MOV R6,#0F4H LOOP2:MOV R5,#02H DJNZ R5,$ ;"$"当前的PC值,R5的内容减1不为零,继续执行该语句 DJNZ R6,LOOP2 DJNZ R7,LOOP1 RET END /*(2)LED0~LED7以十六进制计数规律亮灯*/ ORG 0000H MOV A,#0FFH LOOP: MOV P1,A LCALL DELAY DEC A CJNE A, #0FFH,LOOP MOV A, #0FFH LJMP LOOP DELAY:MOV R7, #0A7H LOOP1:MOV R6, #0ABH LOOP2:MOV R5, #10H DJNZ R5, $ ;"$"当前的PC值。R5的内容减1不为零 DJNZ R6, LOOP2 DJNZ R7, LOOP1 RET END

相关主题
文本预览
相关文档 最新文档