Proteus仿真实验

合集下载

keil和proteus联合仿真实验报告

keil和proteus联合仿真实验报告

keil和proteus联合仿真实验报告实验目的:1、了解 proteus 软件仿真功能。

2、学习 proteus 软件仿真程序的编写方法。

3、运用 proteus 软件仿真程序进行相关模拟。

4、通过对一些常见问题的分析,培养我们分析和解决问题的能力,提高动手实践的水平。

实验原理:用 keil 软件编写一个可执行文件,该文件由一系列的源代码组成,每个源代码包含一定的程序逻辑或者算法。

由于 keil 软件是一种仿真软件,因此它会根据编译后的机器语言来显示程序逻辑(例如: a=1; b=1;.; a=1;.; b=1)。

通过这种方式在软件中就完成了模拟,即软件可以实现“程序自动生成”,也称为“自动化”,这样就大大降低了开发人员的工作量和开发难度。

实验内容及步骤:实验原理:用 proteus 软件编写一个可执行文件,该文件由一系列的源代码组成,每个源代码包含一定的程序逻辑或者算法。

由于 proteus 软件是一种仿真软件,因此它会根据编译后的机器语言来显示程序逻辑(例如: a=1; b=1;.; a=1;.; b=1)。

通过这种方式在软件中就完成了模拟,即软件可以实现“程序自动生成”,也称为“自动化”,这样就大大降低了开发人员的工作量和开发难度。

proteus 软件仿真实验中使用的程序主要有两部分,第一部分是仿真程序,它按照仿真需求来运行,它主要完成模拟功能;另外一部分是数字电路原理图,它将经过 proteus 仿真之后的结果输出到 PCB 板上去。

所以,数字电路设计不仅仅只是设计数字电路本身,而且还应该考虑到整个电子系统。

Proteus 软件具备电子电路仿真能力,通过它对被仿真对象的操作与观察,再加入必要的辅助元件,便构建起电路实物的仿真效果。

它仿真的范围很广泛,几乎涉及了大多数电子领域,其中有大家熟悉的单片机、 DSP、 ARM 等。

利用 proteus 软件仿真时,可先打开 Proteus 软件中的“虚拟仪器”窗口。

proteus单片机实验报告

proteus单片机实验报告

proteus单片机实验报告
Proteus单片机实验报告
一、实验目的
本次实验旨在通过Proteus单片机仿真软件,探索单片机的基本原理和应用,加深对单片机工作原理的理解,提高对单片机编程的熟练程度。

二、实验内容
1. 搭建单片机电路
在Proteus中选择合适的单片机模型,搭建基本的单片机电路,包括单片机、晶振、电源等。

2. 编写程序
利用Proteus提供的编程环境,编写简单的单片机程序,如LED灯闪烁、数码管显示等。

3. 仿真调试
通过Proteus的仿真功能,调试程序,观察单片机在仿真环境下的运行情况,检查程序是否正常运行。

三、实验步骤
1. 打开Proteus软件,选择合适的单片机模型,搭建单片机电路。

2. 编写简单的单片机程序,如让LED灯交替闪烁。

3. 在Proteus中进行仿真调试,观察程序运行情况。

四、实验结果
通过实验,我们成功搭建了单片机电路,并编写了简单的程序。

在Proteus的仿真环境下,LED灯按照设定的程序交替闪烁,证明程序正常运行。

五、实验总结
通过本次实验,我们加深了对单片机的理解,掌握了在Proteus中搭建单片机电路、编写程序并进行仿真调试的基本方法。

同时,也提高了对单片机编程的熟练程度。

总之,Proteus单片机实验为我们提供了一个良好的学习平台,使我们能够更好地理解单片机的工作原理和应用,为以后的学习和实践打下了坚实的基础。

希望通过不断地实践和探索,能够更深入地理解单片机的原理,并在实际应用中发挥其巨大的作用。

Proteus仿真I2C存储器实验

Proteus仿真I2C存储器实验

2Proteus 仿真I 2 C 存储器实验、实验目的1、了解I2C 总线的工作原理2、掌握I2C 总线驱动程序的设计和调试方法3、掌握I2C 总线存储器的读写方法、实验说明1、I2C 总线常识I2C 总线上的每个器件均由一个存储于该器件中的唯一地址来识别,并可被用作一个发送器或接收器(视其功能而定)。

AT24C02 是一个2K 位串行EEPROM ,内部含有256 个8 位字节,AT24C02 有一个8 字节页写缓冲器,该器件通过I2C 总线接口进行操作。

引脚名称和功能如图1 所示图1 24 系例I2C 存储器引脚说明通过器件地址输入端A0 、A1 和A2 可以实现将最多8 个24C02 器件连接到总线上。

2、I2C 总线协议(1)只有在总线空闲时才允许启动数据传送。

(2)在数据传送过程中,当时钟线为高电平时,数据线必须保持稳定状态,不允许有跳变。

时钟线为高电平时,数据线的任何电平变化将被看作总线的起始或停止-可编辑修改-信号。

(3)起始信号,时钟线保持高电平期间,数据线电平从高到低的跳变作为I2 C 总线的起始信号。

2 (4)停止信号,时钟线保持高电平期间,数据线电平从低到高的跳变作为I 2 C 总线的停止信号。

2I2 C 总线时序:3、页写操作的数据帧结构根据页缓冲区的大小,页写的字节数不能超过缓冲区大小。

如果在发送停止信号之前主器件发送超过缓冲区大小,地址计数器将自动翻转,先前写入的数据被覆盖。

如图2所示。

图2 页写操作数据帧结构三、实验内容2先搭建一个“I 2 C 存储器实验”的仿真电路,该单片机系统功能是采用页写的方式,把器件地址为A0H 的24C02 器件的片内50H 地址开始的8 个存储单元分别写入数据“00 、11 、22 、、、、、、77 ”。

四、.参考硬件电路-可编辑修改-五、参考汇编程序SDA EQU P3.5 ;定义24c02 的串行数据线SCL EQU P3.4 ;定义24c02 的串行时钟线SNUM EQU 40HSLAW EQU 41HORG 0000HAJMP MAINORG 0040HMAIN:MOV SP ,#5FHLCALL LDATA的器件地址MOV SLAW,#0A0H ;24c02;要发送9 个字节数据MOV SNUM,#9MOV R1,#30H ;数据缓冲区的首地址CALL WRNB ;调用发送n 个字节的子程序SJMP $-可编辑修改-LDATA:MOV R0,#30H ;片内ram 的地址:30H 31H 32H 33H 34H 35H ⋯..50H 00H 11H 22H 33H 44H MOV @R0,#50H ;存放的数据:INC R0MOV @R0,#00HINC R0MOV @R0,#11HINC R0MOV @R0,#22HINC R0MOV @R0,#33HINC R0MOV @R0,#44HINC R0MOV @R0,#55HINC R0MOV @R0,#66HINC R0MOV @R0,#77HRET;起始信号STA:SETB SDASETB SCLNOP-可编辑修改-CLR SDANOPNOPCLR SCLRET;终止信号STP:CLR SDASETB SCLNOPNOPSETB SDANOPNOPCLR SDACLR SCLRET;发应答位"0"ASK:CLR SDASETB SCLNOPNOPCLR SCL-可编辑修改-SETB SDA;发非应答位"1"NAS:SETB SDASETB SCLNOPNOPCLR SCLCLR SDARET;应答位检查,正常应答时F0 标志为0, 否则F0 为1 ASKC:SETB SDASETB SCLCLR F0MOV C,SDAJNC CEND ;应答位为1, 不置位F0SETB F0CEND: CLR SCLRET;发送到24c02 一个字节,预发送的数据存于A 中WRB: MOV R0,#08H-可编辑修改-LOOP0:RLC AMOV SDA,CNOPNOPSETB SCLNOPNOPNOPNOPCLR SCLDJNZ R0,LOOP0RET;* 函数名称:WRNB;*功能描述:对E2PROM 指定的页写入SNUM 个字节的数据;* 调用函数:STA WRB ASKC STP;* 入口条件:SLAW--I2C 器件写地址;* R1- 片内RAM 发送数据缓冲区的首地址WRNB:LCALL STAMOV A,SLAWLCALL WRB ;写器件的写地址-可编辑修改-MOV A,@R1 LCALL WRB LCALL ASKCINC R1DJNZ SNUM, WLP LCALL STP RET END六、思考练习题1、请说说 I 2C 总线的优点有哪些?2、编写程序,将自己学号写入 24C02 地址为 30H 开始的存储单元3、编写程序,将写入 24C02 的数据读出。

结合proteus实现路路彩灯—电路仿真实验

结合proteus实现路路彩灯—电路仿真实验

结合proteus实现路路彩灯—电路仿真实验路灯是城市道路的重要设施之一,可以提供夜间行车和行人活动的安全保障。

随着科技的不断发展,彩灯逐渐取代传统的白灯,给城市增添了一抹亮丽的色彩。

在本文中,我们将结合Proteus软件实现路灯电路的仿真实验。

路灯电路主要由三个部分组成:电源部分、控制部分和照明部分。

电源部分提供电能给整个电路系统,控制部分负责控制灯的开关和亮度,照明部分则是实现灯光的发光。

首先,我们需要选择合适的元件来搭建电路。

在Proteus中,我们可以在元件库中找到各种电子元件。

对于电源部分,我们可以选择一个直流电源和一个电容器来实现稳定的输出电压。

控制部分可以选择一个单片机,用来控制彩灯的开关和亮度。

照明部分可以选择一个LED灯和一个电阻,来实现灯光的发光。

接下来,我们需要将这些元件进行连接。

在Proteus中,我们可以通过拖拽元件并连接它们的引脚来完成电路的搭建。

首先,将直流电源和电容器连接在一起,以提供稳定的电压输出。

然后,将单片机的引脚连接到LED灯和电阻上,以控制灯的开关和亮度。

最后,将LED灯和电阻连接在一起,以实现灯光的发光。

完成电路搭建后,我们可以进行仿真实验了。

在Proteus中,我们可以设置各个元件的参数和初始状态,并运行仿真实验来观察电路的工作情况。

通过调整单片机的引脚状态,我们可以控制灯的开关和亮度,并观察LED灯的发光情况。

在仿真实验中,我们可以通过改变电源电压和电阻值来模拟不同的工作情况。

例如,可以降低电源电压来观察灯的亮度变化,或者改变电阻值来观察灯的颜色变化。

通过这些实验,我们可以更好地理解电路的工作原理和性能特点。

总结起来,通过结合Proteus实现路灯电路的仿真实验,我们可以更好地理解电路的工作原理和性能特点。

通过调整参数和运行实验,我们可以观察电路的工作情况,并优化电路设计。

这对于提高路灯电路的可靠性和性能具有重要意义,也为我们进一步研究和开发新型路灯电路提供了基础。

proteus和keil的仿真实验报告

proteus和keil的仿真实验报告

北京联合大学《基于proteus和keil仿真》实验报告实验题目:基于ADC0808模数转换器的数字电压表学院:信息学院专业:电子信息工程班级:0808030301组员:华永奇学号:2008080303107组员:朱圣峰学号:2008080303137组员:陈柏宇学号:2008080303113组员:李冉学号:2008080303119组员:张茜学号:2008080303104一、实验任务:利用单片机AT89C51与A/D 转换器件ADC0808设计一个数字电压表,能够测量0~5V 之间的直流电压值,并用4位数码管显示该电压值。

设计任务要求:硬件设计:利用Proteus 软件绘制原理图; 软件设计:利用Keil 软件进行程序设计;完成软硬件调试:Proteus 和Keil 联调,实现选题要求的功能;二、实验设计:1、 硬件设计:1.11.2 proteus2、软件设计:2.1 程序源代码:#include<reg51.h>#define uchar unsigned char //宏定义#define uint unsigned int//定义管脚sbit START=P3^2;sbit OE=P3^0;sbit EOC=P3^1;sbit P07=P0^7;sbit CLK=P3^4;uchar data led[4];uint data tvdata; //定义输出电压值变量uchar code tv[]={0xf7,0xfb,0xfd,0xfe}; //led动态显示控制位选数组uchar code a[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; //led上显示段选数组,0~9,阴极管void delay(void) //延时程序{uint i;for(i=0;i<100;i++)for(i=0;i<100;i++); //对于12mhz单片机,10ms延时}void led_display(void) //数码管显示模块{uchar k,temp;led[0]=tvdata%10; //个位led[1]=tvdata/10%10; //十位led[2]=tvdata/100%10; //百位led[3]=tvdata/1000; //千位for(k=0;k<4;k++) //利用for循环进行动态显示{P2=tv[k]; //位选信号赋值给P2口temp=led[k]; // 段选信号赋值给临时变量tempP0=a[temp]; // temp赋值给P0口if(k==3) //点亮第四个数码管的小数点{P07 =1; //高位点亮}delay(); //延时}}void main(void) //主控制模块{ET0=1; // 允许定时器中断EA=1; //开启中断总开关TMOD=0x02; //设置定时工作状态,定时器0工作在方式2TH0=216; //在寄存器中装入初始值,TL0=216;TR0=1; //启动定时器0while(1){START=1; //启动转换START=0;while(EOC==0) ;//等待模数转换结束OE=1; //输入高电平,打开输出三态门,输出数字量tvdata=P1; //读取P1口的值给输出电压值变量tvdata*=5000/255.000;//因为输出值在0~255之间,所以应该放大到0~5000OE=0; //关闭三态门,禁止输出led_display(); //LED上显示测得电压值delay(); //延时}}void t0(void) interrupt 1 using 0 //定时中断函数,使用寄存器组0,产生adc0808的驱动时钟脉冲{CLK=~CLK; //clk电平取反}三、联调结果。

单片机定时器的应用proteus仿真实验报告总结

单片机定时器的应用proteus仿真实验报告总结

单片机定时器的应用proteus仿真实验报告总结一、实验目的
本次实验旨在通过使用Proteus仿真软件,掌握单片机定时器的应用,了解定时器的工作原理和使用方法。

二、实验原理
单片机定时器是一种常用的计时和延时控制器,它可以在特定时间内
产生一个周期性的信号。

单片机定时器通常由一个计数器和一个比较
器组成。

计数器会不断计数,当计数值达到设定值后,比较器会发出
一个触发信号。

通过对比较器输出信号进行处理,可以实现各种延时
和周期性控制。

三、实验材料
1. Proteus仿真软件
2. 单片机模块
3. LED灯
4. 电阻
5. 电容
四、实验步骤
1. 打开Proteus软件,并新建一个电路图。

2. 在电路图中添加单片机模块、LED灯、电阻和电容等元件。

3. 连接电路图中各元件之间的线路。

4. 设置单片机定时器参数,并编写程序代码。

5. 进行仿真测试,并记录测试结果。

五、实验结果分析
在本次实验中,我们成功地使用了Proteus仿真软件进行了单片机定
时器的应用测试。

通过设置单片机定时器参数和编写程序代码,我们
成功地实现了对LED灯的周期性控制,达到了预期的效果。

六、实验总结
通过本次实验,我们深入了解了单片机定时器的工作原理和应用方法,并掌握了使用Proteus仿真软件进行单片机定时器测试的技能。

这对
于我们今后的学习和工作都具有很大的帮助。

Proteus单片机仿真实验内容

Proteus单片机仿真实验内容

实验1 PROTUES环境及LED闪烁实验1.实验任务做一个闪烁灯:在P1.0端口上接一个发光二极管D1,使D1在不停地一亮一灭,一亮一灭的时间间隔为0.2秒,重复循环。

2.电路原理图3.程序设计内容(1)延时程序的设计方法作为单片机的指令的执行的时间是很短,数量大多是微秒级。

实验要求的闪烁时间间隔为0.2秒,所以在执行某一指令时,需要插入延时程序,来达到实验的要求。

延时子程序如下:DELAY: MOV R5, #20D1: MOV R6, #20D2: MOV R7, #248DJNZ R7, $DJNZ R6, D2DJNZ R5, D1RET(2)输出控制如上图所示,当P1.0端口输出高电平,即P1.0=1时,根据发光二极管的单向导电性可知,这时发光二极管L1熄灭;当P1.0端口输出低电平,即P1.0=0时,发光二极管L1亮;我们可以使用SETB P1.0指令使P1.0端口输出高电平,使用CLR P1.0指令使P1.0端口输出低电平。

实验2 外部中断实验1.实验任务设计一个交通灯正常工作程序,并在有意外情况发生的情况下,能自动中断进入到中断服务程序运行,进行紧急事故处理,处理完成后能回到正常工作程序继续运行。

如原理图所示,P1接一位数码管用于显示时间,P2端口接东西方向和南北方向红绿灯,P3.2接一个按钮用于模拟一个外部中断源,当正常工作时,东西方向绿灯亮8秒,然后南北方向绿灯亮9秒;当模拟中断源发出中断信号时,东西和南北红灯亮5秒后返回正常工作程序。

(注:这里数码管选用了共阳极的数码管)数码管的段选码如下表所示:2.电路原理图3.程序设计内容(1)从proteus库中选取元器件:单片机AT89C51、磁片电容CAP、电解电容CAP-ELEC,晶振CRYSTAL、电阻RES、数码管7SEG-COM-CAT-GRN,按钮BUTTON,发光二极管等。

(2)设计延时程序。

实验3 T0波形发生器实验1.实验任务(1)首先用AT89C51单片机定时器/计数器0的定时功能构成一方波发生器,实现周期为400us的方波输出,如图所示,P3.5,p3.7是两个波形输出端,分别输出反相波形,两路波形输入虚拟示波器的A通道和B通道,用示波器观察方波的周期是否是400us。

基于proteus的红外无线模拟声音仿真实验

基于proteus的红外无线模拟声音仿真实验

基于proteus的红外无线模拟声音仿真实验
1. 准备硬件和组件:根据实验需求,准备红外发射器、红外接收器、音频发声模块等硬件设备和相关电子元件。

2. 绘制电路图:使用Proteus软件,根据实验设计的电路连接方式,绘制相应的电路图。

包括将红外发射器与红外接收器连接,将音频发声模块与红外接收器连接等。

3. 添加元件和仿真模型:在Proteus软件中,选择相应的元件和仿真模型,并将其添加到电路图中。

确保所选元件和仿真模型与实际使用的硬件设备相符合。

4. 设置仿真参数:设置仿真参数,包括输入信号的类型、频率、振幅等。

根据实验要求,调整相应的参数。

5. 运行仿真:点击Proteus软件中的运行按钮,开始进行仿真实验。

观察仿真结果,通过红外无线传输声音信号的过程进行仿真和观察。

6. 分析与评估:根据仿真结果,进行分析与评估。

观察红外信号的接收情况以及声音信号的传输质量等,对实验进行评估。

7. 优化和修改:根据仿真实验的结果,对电路设计和参数进行优化和修改。

如果实验结果不理想,可以调整电路连接方式、元件选择或者参数设置等,以改进仿真实验的效果。

proteus的的实验报告

proteus的的实验报告

proteus的的实验报告Proteus的实验报告引言:Proteus是一种功能强大的虚拟电路设计软件,广泛应用于电子工程师和学生的实验和学习中。

本文将通过实验报告的形式,介绍Proteus的基本特点、使用方法以及实验过程和结果,以期帮助读者更好地了解和掌握这一工具。

一、Proteus的基本特点Proteus是一款集仿真、绘图和PCB设计于一体的软件,它的主要特点包括以下几个方面:1. 仿真功能:Proteus可以对电路进行仿真,模拟电路的工作原理和性能。

通过仿真功能,用户可以在软件中快速验证设计的正确性,避免在实际制作电路前出现问题。

2. 绘图功能:Proteus提供了丰富的元器件库和绘图工具,用户可以根据需要自由选择和布局元器件,绘制出符合要求的电路图。

这对于学习电路原理和进行电路设计非常有帮助。

3. PCB设计功能:Proteus还具备PCB设计的能力,用户可以通过软件将电路图转化为实际的PCB布局,并进行相关的布线和优化。

这对于电子工程师来说,是一个非常方便和高效的工具。

二、Proteus的使用方法在使用Proteus之前,我们首先需要了解一些基本操作和流程,以便更好地使用这个软件。

以下是一般的使用方法:1. 创建电路图:打开Proteus软件后,我们可以选择创建一个新的项目,并在项目中创建电路图。

在电路图中,我们可以选择所需的元器件,并进行布局和连线。

2. 添加仿真器件:在电路图中,我们可以添加各种仿真器件,如电源、信号发生器、示波器等。

这些器件可以模拟实际电路中的各种信号和元件。

3. 进行仿真:在电路图中添加完所需的元器件后,我们可以进行仿真。

通过设置仿真参数和激励信号,可以模拟电路的工作情况,并观察各个元件之间的相互作用。

4. 分析仿真结果:仿真完成后,我们可以分析仿真结果,观察电路的工作情况、电压和电流的波形等。

通过对仿真结果的分析,我们可以判断电路的性能和问题所在。

5. PCB设计:如果需要将电路图转化为实际的PCB布局,我们可以在Proteus中进行相关的设计和布线。

proteus仿真实验实验总结

proteus仿真实验实验总结

proteus仿真实验实验总结下载温馨提示:该文档是我店铺精心编制而成,希望大家下载以后,能够帮助大家解决实际的问题。

文档下载后可定制随意修改,请根据实际需要进行相应的调整和使用,谢谢!并且,本店铺为大家提供各种各样类型的实用资料,如教育随笔、日记赏析、句子摘抄、古诗大全、经典美文、话题作文、工作总结、词语解析、文案摘录、其他资料等等,如想了解不同资料格式和写法,敬请关注!Download tips: This document is carefully compiled by the editor. I hope that after you download them, they can help you solve practical problems. The document can be customized and modified after downloading, please adjust and use it according to actual needs, thank you!In addition, our shop provides you with various types of practical materials, such as educational essays, diary appreciation, sentence excerpts, ancient poems, classic articles, topic composition, work summary, word parsing, copy excerpts, other materials and so on, want to know different data formats and writing methods, please pay attention!Proteus仿真实验实验总结引言Proteus仿真软件作为一款功能强大的电子电路设计工具,被广泛应用于各个领域的电路设计与仿真中。

(完整版)PROTEUS仿真100实例

(完整版)PROTEUS仿真100实例

(完整版)PROTEUS仿真100实例《单片机C语言程序设计实训100例—基于8051+Proteus仿真》案例第01 篇基础程序设计01 闪烁的LED/* 名称:闪烁的LED说明:LED按设定的时间间隔闪烁*/#include#define uchar unsigned char#define uint unsigned intsbit LED=P1^0;//延时void DelayMS(uint x){uchar i;while(x--){for(i=0;i<120;i++);}}//主程序void main(){while(1){LED=~LED;DelayMS(150);}}02 从左到右的流水灯/* 名称:从左到右的流水灯说明:接在P0口的8个LED从左到右循环依次点亮,产生走马灯效果*/#include#include#define uchar unsigned char#define uint unsigned int//延时void DelayMS(uint x){uchar i;while(x--){for(i=0;i<120;i++);}}//主程序void main(){P0=0xfe;while(1){P0=_crol_(P0,1); //P0的值向左循环移动DelayMS(150);}}03 8只LED左右来回点亮/* 名称:8只LED左右来回点亮说明:程序利用循环移位函数_crol_和_cror_形成来回滚动的效果*/#include#include#define uchar unsigned char#define uint unsigned int//延时void DelayMS(uint x){uchar i;while(x--){for(i=0;i<120;i++);}}//主程序void main(){uchar i;P2=0x01;while(1){for(i=0;i<7;i++){P2=_crol_(P2,1); //P2的值向左循环移动DelayMS(150);}for(i=0;i<7;i++){P2=_cror_(P2,1); //P2的值向右循环移动DelayMS(150);}}}04 花样流水灯/* 名称:花样流水灯说明:16只LED分两组按预设的多种花样变换显示*/#include#define uchar unsigned char#define uint unsigned intuchar code Pattern_P0[]={0xfc,0xf9,0xf3,0xe7,0xcf,0x9f,0x3f,0x7f,0xff,0xff,0xff,0xff,0xff,0 xff,0xff,0xff,0xe7,0xdb,0xbd,0x7e,0xbd,0xdb,0xe7,0xff,0xe7,0xc3,0x81,0x 00,0x81,0xc3,0xe7,0xff,0xaa,0x55,0x18,0xff,0xf0,0x0f,0x00,0xff,0xf8,0xf1,0xe3,0xc7,0x8f,0 x1f,0x3f,0x7f,0x7f,0x3f,0x1f,0x8f,0xc7,0xe3,0xf1,0xf8,0xff,0x00,0x00,0xff,0xf f,0x0f,0xf0,0xff,0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f,0xff,0xff,0xff,0xff,0xff,0 xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xbf,0xdf,0xef,0xf7,0xf b,0xfd,0xfe,0xfe,0xfc,0xf8,0xf0,0xe0,0xc0,0x80,0x00,0x00,0x00,0x00,0x00 ,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xc0,0xe0,0 xf0,0xf8,0xfc,0xfe, 0x00,0xff,0x00,0xff,0x00,0xff,0x00,0xff };uchar code Pattern_P2[]={0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xfc,0xf9,0xf3,0xe7,0xcf,0x 9f,0x3f,0xff,0xe7,0xdb,0xbd,0x7e,0xbd,0xdb,0xe7,0xff,0xe7,0xc3,0x81,0x 00,0x81,0xc3,0xe7,0xff,0xaa,0x55,0x18,0xff,0xf0,0x0f,0x00,0xff,0xf8,0xf1,0xe3,0xc7,0x8f,0 x1f,0x3f,0x7f,0x7f,0x3f,0x1f,0x8f,0xc7,0xe3,0xf1,0xf8,0xff,0x00,0x00,0xff,0xf f,0x0f,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xfd,0xfb,0xf7,0xef,0xd f,0xbf,0x7f,0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe,0xff,0xff,0xff,0xff,0xff,0 xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xfc,0xf8,0xf0,0xe0,0xc 0,0x80,0x00,0x00,0x80,0xc0,0xe0,0xf0,0xf8,0xfc,0xfe,0xff,0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0x00,0xff,0x00,0xff,0x00,0xff,0x00,0xff};//延时void DelayMS(uint x){uchar i;while(x--){for(i=0;i<120;i++);}}//主程序void main(){uchar i;while(1){ //从数组中读取数据送至P0和P2口显示for(i=0;i<136;i++){P0=Pattern_P0[i];P2=Pattern_P2[i];DelayMS(100);}}}05 LED模拟交通灯/* 名称:LED模拟交通灯说明:东西向绿灯亮若干秒,黄灯闪烁5次后红灯亮,红灯亮后,南北向由红灯变为绿灯,若干秒后南北向黄灯闪烁5此后变红灯,东西向变绿灯,如此重复。

实验八-Proteus仿真软件使用方法

实验八-Proteus仿真软件使用方法

实验八-Proteus仿真软件使用方法实验八 Proteus仿真软件使用方法1.实验目的:(1)了解Proteus仿真软件的使用方法。

(2)了解51单片机编程器Keil与Proteus 仿真软件的联用方法。

2.实验要求:通过讲授和操作练习,学会正确使用Proteus仿真软件及Keil编程及其联合调试。

3.实验内容:(1)Proteus 仿真软件介绍Proteus 软件是由英国LabCenter Electronics 公司开发的EDA工具软件,由ISIS 和ARES两个软件构成,其中ISIS是一款便捷的电子系统仿真平台软件,ARES是一款高级的布线编辑软件。

它集成了高级原理布线图、混合模式SPICE电路仿真、PCB设计以及自动布线来实现一个完整的电子设计。

通过Proteus ISIS软件的VSM(虚拟仿真技术), 用户可以对模拟电路、数字电路、模数混合电路,以及基于微控制器的系统连同所有外围接口电子元器件一起仿真。

图8-1是Proteus ISIS的编辑窗口:图8-1 ISIS的编辑界面图中最顶端一栏是“标题栏”,其下的“File View Edit ……”是“菜单栏”,再下面的一栏是“命令工具栏”,最左边的一栏是“模式选择工具栏”;左上角的小方框是“预览窗口”,其下的长方框是“对象选择窗口”,其右侧的大方框是“原理图编辑窗口”。

选择左侧“模式选择工具栏”中的图标,并选择“对象选择窗口”中的P按钮,就会出现如图8-2的元器件选择界面:图8-2 元器件库选择界面在元器件列表框中点击你需要的器件类型(例如:电阻-Resistors,单片机芯片-MicroprocessorICs, LED-Optoelectronics)或在左上角的关键字(Keywords)框中输入你需要的器件名称的关键字(如:信号源 - Clock, 运放 - CA3140等),就会在图8-2中间的大空白框列出你所需的一系列相关的元件。

proteus仿真用法

proteus仿真用法

proteus仿真用法
Proteus仿真软件可以用于电子电路设计和验证,以及嵌入式系统开发。

以下是使用Proteus进行仿真的一般步骤:
1. 打开Proteus软件,并创建一个新的电路设计文件(Schematic File)。

2. 在原理图编辑器中,选择并放置所需的元件(如电阻、电容、晶体管等),并使用导线进行连接。

可以通过右键单击元件来设置其属性。

3. 配置元件的参数,如电源电压、电阻阻值等。

4. 添加测试工具,例如信号发生器、示波器、频谱分析仪等,以生成和监测电路中的信号。

5. 进行仿真设置,如仿真时间范围、仿真步长等。

可以使用Proteus的MPLAB X仿真器插件连接到外部硬件进行仿真。

6. 运行仿真,观察电路的行为并收集数据。

可以使用示波器和其他工具来验证电路的性能。

7. 对仿真结果进行分析和评估,以确定电路的工作状态和性能是否符合设计要求。

8. 如有必要,对电路进行调整和优化,并重复以上步骤以进行进一步的仿真和验证。

使用Proteus进行仿真可以帮助设计师在实际制造电路之前,先验证其功能和性能,避免了可能的设计错误和昂贵的实验室测试。

此外,Proteus还提供了自
动化测试和调试功能,使整个设计过程更加高效和可靠。

Proteus硬件仿真(单片机控制流水灯)实 验 报 告

Proteus硬件仿真(单片机控制流水灯)实 验 报 告

湖州师院Proteus硬件仿真(单片机控制流水灯)实验报告姓名汪健雷班级092833学号07083438一、实验目的1、了解proteus软件,掌握Proteus在单片机仿真中的应用,为开发、调试单片机应用系统做准备。

2、熟练掌握isis环境电路图的建立(流水灯电路图)二、实验仪器1、PC机2、proteus仿真软件三、实验内容1、选择元器件,画出电路图,学会硬件的设计2、在仿真软件上实现相应的功能四、实验步骤1、软件打开2、双击桌面上的ISIS 7 Professional图标或者单击屏幕左下方的“开始”→“程序”→“Proteus 7 Professional”→“ISIS 7 Professional”,出现如图所示界面,随后就进入了Proteus ISIS集成环境。

2、Proteus ISIS的工作界面是一种标准的Windows界面,如图1-2所示。

包括:标题栏、主菜单、标准工具栏、绘图工具栏、状态栏、对象选择按钮、预览对象方位控制按钮、仿真进程控制按钮、预览窗口、对象选择器窗口、图形编辑窗口。

3、添加元器件将所需元器件加入到对象选择器窗口。

Picking Components into the Schematic单击对象选择器按钮,根据元件预览区域的显示,双击你所需要的元件,则所选元件出现在原理图编辑环境的元件列表区中,如图所示。

用同样的方法找出原理图中需要的所有元件。

4、放置元器件放置元器件至图形编辑窗口Placing Components onto the Schematic 在对象选择器窗口中,选中AT89C51,将鼠标置于图形编辑窗口该对象的欲放位置、单击鼠标左键,该对象被完成放置。

其他元器件放置方法相同。

PROTEUS仿真100实例

PROTEUS仿真100实例

《单片机C语言程序设计实训100例—基于8051+Proteus仿真》案例第01 篇基础程序设计01 闪烁的LED/* 名称:闪烁的LED说明:LED按设定的时间间隔闪烁*/#include<reg51.h>#define uchar unsigned char#define uint unsigned intsbit LED=P1^0;//延时void DelayMS(uint x){uchar i;while(x--){for(i=0;i<120;i++);}}//主程序void main(){while(1){LED=~LED;DelayMS(150);}}02 从左到右的流水灯/* 名称:从左到右的流水灯说明:接在P0口的8个LED从左到右循环依次点亮,产生走马灯效果*/#include<reg51.h>#include<intrins.h>#define uchar unsigned char#define uint unsigned int//延时void DelayMS(uint x){uchar i;while(x--){for(i=0;i<120;i++);}}//主程序void main(){P0=0xfe;while(1){P0=_crol_(P0,1); //P0的值向左循环移动DelayMS(150);}}03 8只LED左右来回点亮/* 名称:8只LED左右来回点亮说明:程序利用循环移位函数_crol_和_cror_形成来回滚动的效果*/#include<reg51.h>#include<intrins.h>#define uchar unsigned char#define uint unsigned int//延时void DelayMS(uint x){uchar i;while(x--){for(i=0;i<120;i++);}}//主程序void main(){uchar i;P2=0x01;while(1){for(i=0;i<7;i++){P2=_crol_(P2,1); //P2的值向左循环移动DelayMS(150);}for(i=0;i<7;i++){P2=_cror_(P2,1); //P2的值向右循环移动DelayMS(150);}}}04 花样流水灯/* 名称:花样流水灯说明:16只LED分两组按预设的多种花样变换显示*/#include<reg51.h>#define uchar unsigned char#define uint unsigned intuchar code Pattern_P0[]={0xfc,0xf9,0xf3,0xe7,0xcf,0x9f,0x3f,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7,0xdb,0xbd,0x7e,0xbd,0xdb,0xe7,0xff,0xe7,0xc3,0x81,0x00,0x81,0xc3,0xe7,0xff, 0xaa,0x55,0x18,0xff,0xf0,0x0f,0x00,0xff,0xf8,0xf1,0xe3,0xc7,0x8f,0x1f,0x3f,0x7f,0x7f,0x3f,0x1f,0x8f,0xc7,0xe3,0xf1,0xf8,0xff,0x00,0x00,0xff,0xff,0x0f,0xf0,0xff,0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe,0xfe,0xfc,0xf8,0xf0,0xe0,0xc0,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xc0,0xe0,0xf0,0xf8,0xfc,0xfe, 0x00,0xff,0x00,0xff,0x00,0xff,0x00,0xff};uchar code Pattern_P2[]={0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xfc,0xf9,0xf3,0xe7,0xcf,0x9f,0x3f,0xff,0xe7,0xdb,0xbd,0x7e,0xbd,0xdb,0xe7,0xff,0xe7,0xc3,0x81,0x00,0x81,0xc3,0xe7,0xff, 0xaa,0x55,0x18,0xff,0xf0,0x0f,0x00,0xff,0xf8,0xf1,0xe3,0xc7,0x8f,0x1f,0x3f,0x7f,0x7f,0x3f,0x1f,0x8f,0xc7,0xe3,0xf1,0xf8,0xff,0x00,0x00,0xff,0xff,0x0f,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f,0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xfc,0xf8,0xf0,0xe0,0xc0,0x80,0x00,0x00,0x80,0xc0,0xe0,0xf0,0xf8,0xfc,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0xff,0x00,0xff,0x00,0xff,0x00,0xff};//延时void DelayMS(uint x){uchar i;while(x--){for(i=0;i<120;i++);}}//主程序void main(){uchar i;while(1){ //从数组中读取数据送至P0和P2口显示for(i=0;i<136;i++){P0=Pattern_P0[i];P2=Pattern_P2[i];DelayMS(100);}}}05 LED模拟交通灯/* 名称:LED模拟交通灯说明:东西向绿灯亮若干秒,黄灯闪烁5次后红灯亮,红灯亮后,南北向由红灯变为绿灯,若干秒后南北向黄灯闪烁5此后变红灯,东西向变绿灯,如此重复。

Proteus仿真单片机实验

Proteus仿真单片机实验

目录引言 (2)实验1 PROTUES环境及LED闪烁综合实验 (7)实验2 多路开关状态指示 (10)实验3 报警产生器 (13)实验4 I/O并行口直接驱动LED显示 (16)实验5 按键识别方法之一 (19)实验6 一键多功能按键识别技术 (22)实验7 定时计数器T0作定时应用技术 (25)实验8定时计数器T0作定时应用技术 (28)实验9 “嘀、嘀、......”报警声 (32)实验10 8X8 LED点阵显示技术 (36)实验11电子琴 (40)引言单片机体积小,重量轻,具有很强的灵活性而且价格便宜,具有逻辑判断,定时计数等多种功能,广泛应用于仪器仪表,家用电器,医用设备的智能化管理和过程控制等领域。

以单片机为核心的嵌入式系统已经成为目前电子设计最活跃的领域之一。

在嵌入式系统的中,开发板成本高,特别是对于大量的初学者而言,还可能由于设计的错误导致开发板损坏。

利用Proteus我们可以很好地解决这个问题,由此我们可以快速地建立一个单片机仿真系统。

1. Proteus介绍Proteus是英国Labcenter Electronics公司开发的一款电路仿真软件,软件由两部分组成:一部分是智能原理图输入系统ISIS(Intelligent Schematic Input System)和虚拟系统模型VSM(Virtual Model System);另一部分是高级布线及编辑软件ARES (Advanced Routing and Editing Software)也就是PCB。

1.1 Proteus VSM的仿真Proteus可以仿真模拟电路及数字电路,也可以仿真模拟数字混合电路。

Proteus可提供30多种元件库,超过8000种模拟、数字元器件。

可以按照设计的要求选择不同生产厂家的元器件。

此外,对于元器件库中没有的元件,设计者也可以通过软件自己创建。

除拥有丰富的元器件外,Proteus还提供了各种虚拟仪器,如常用的电流表,电压表,示波器,计数/定时/频率计,SPI调试器等虚拟终端。

Proteus仿真I2C存储器实验

Proteus仿真I2C存储器实验

Proteus仿真I2C存储器实验一、实验目的1、了解I2C总线的工作原理2、掌握I2C总线驱动程序的设计和调试方法3、掌握I2C总线存储器的读写方法二、实验说明1、I2C总线常识I2C总线上的每个器件均由一个存储于该器件中的唯一地址来识别,并可被用作一个发送器或接收器(视其功能而定)。

AT24C02是一个2K位串行EEPROM,内部含有256个8位字节,AT24C02有一个8字节页写缓冲器,该器件通过I2C总线接口进行操作。

引脚名称和功能如图1所示。

图1 24系例I2C存储器引脚说明通过器件地址输入端A0、A1和A2可以实现将最多8个24C02器件连接到总线上。

2、I2C总线协议(1)只有在总线空闲时才允许启动数据传送。

(2)在数据传送过程中,当时钟线为高电平时,数据线必须保持稳定状态,不允许有跳变。

时钟线为高电平时,数据线的任何电平变化将被看作总线的起始或停止信号。

(3)起始信号,时钟线保持高电平期间,数据线电平从高到低的跳变作为I2C总线的起始信号。

(4)停止信号,时钟线保持高电平期间,数据线电平从低到高的跳变作为I2C 总线的停止信号。

I2C 总线时序:3、页写操作的数据帧结构根据页缓冲区的大小,页写的字节数不能超过缓冲区大小。

如果在发送停止信号之前主器件发送超过缓冲区大小,地址计数器将自动翻转,先前写入的数据被覆盖。

如图2所示。

图2页写操作数据帧结构三、实验内容先搭建一个“I2C存储器实验”的仿真电路,该单片机系统功能是采用页写的方式,把器件地址为A0H的24C02器件的片内50H地址开始的8个存储单元分别写入数据“00、11、22、、、、、、77”。

四、.参考硬件电路五、参考汇编程序SDA EQU P3.5 ;定义24c02的串行数据线SCL EQU P3.4 ;定义24c02的串行时钟线SNUM EQU 40HSLAW EQU 41HORG 0000HAJMP MAINORG 0040HMAIN:MOV SP,#5FHLCALL LDATAMOV SLAW,#0A0H ;24c02的器件地址MOV SNUM,#9 ;要发送9个字节数据MOV R1,#30H ;数据缓冲区的首地址CALL WRNB ;调用发送n个字节的子程序SJMP $LDATA:MOV R0,#30H ;片内ram的地址:30H 31H 32H 33H 34H 35H…..MOV @R0,#50H ;存放的数据:50H 00H 11H 22H 33H 44H……INC R0MOV @R0,#00HINC R0MOV @R0,#11HINC R0MOV @R0,#22HINC R0MOV @R0,#33HINC R0MOV @R0,#44HINC R0MOV @R0,#55HINC R0MOV @R0,#66HINC R0MOV @R0,#77HRET;起始信号STA:SETB SDASETB SCLNOPCLR SDANOPNOPCLR SCLRET;终止信号STP:CLR SDASETB SCLNOPNOPSETB SDANOPNOPCLR SDACLR SCLRET;发应答位"0" ASK:CLR SDASETB SCLNOPNOPCLR SCLSETB SDARET;发非应答位"1" NAS:SETB SDASETB SCLNOPCLR SCLCLR SDARET;应答位检查,正常应答时F0标志为0,否则F0为1 ASKC:SETB SDASETB SCLCLR F0MOV C,SDAJNC CEND ;应答位为1,不置位F0SETB F0CEND: CLR SCLRET;发送到24c02一个字节,预发送的数据存于A中WRB:MOV R0,#08HLOOP0:RLC AMOV SDA,CNOPNOPSETB SCLNOPNOPNOPNOPCLR SCLDJNZ R0,LOOP0RET;--------------------------------*;*函数名称:WRNB *;*功能描述:对E2PROM指定的页写入SNUM个字节的数据* ;*调用函数:STA WRB ASKC STP *;*入口条件:SLAW--I2C器件写地址*;* R1-片内RAM发送数据缓冲区的首地址* ;--------------------------------*WRNB:LCALL STAMOV A,SLAWLCALL WRB ;写器件的写地址LCALL ASKCJB F0, WRNBWLP: ;向E2PROM写入SNUM个字节的数据MOV A,@R1LCALL WRBLCALL ASKCJB F0, WRNBINC R1DJNZ SNUM, WLPLCALL STPRETEND六、思考练习题1、请说说I2C总线的优点有哪些?2、编写程序,将自己学号写入24C02地址为30H开始的存储单元。

proteus仿真实验【精选】

proteus仿真实验【精选】

Proteus仿真实验一、实验目的1、通过实例熟悉proteus软件使用方法。

2、掌握具体电路proteus和keil仿真二、实验要求1、独立完成。

2、设计步骤符合标准规范。

三、实验设备计算机,proteus软件四、内容及步骤一)、实验内容:根据下图所示的电路图使用805l控制共阳七段显示器的显示:先搭建一个“8051基本IO实验”的仿真电路,使用8051的Port 1连接到一个共阳的七段显示器,然后让8051轮流显示0~9。

当您连接好电路,并且完成程序之后,您将看到七段显示器依次显示0~9二)、实习步骤:1、在Protues中,绘制电路图,并调试。

2、编写程序并调试(在Keil c 或实验箱编译系统下均可)。

附录一Keil Vison2使用入门Keil C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,该软件提供丰富的库函数和功能强大的集成开发调试工具。

按下面的步骤建立第一个项目:1、点击Project--- New Project,在“文件名”中输入一个C程序项目名称。

“保存”后的文件扩展名为uv2,这是KEIL uVision2 项目文件扩展名,以后可以直接点击此文件以打开先前做的项目。

2、选择所要的单片机,这里选择常用的Ateml公司的A T89C51。

完成上面步骤后,就可以进行程序的编写了。

3、首先要在项目中创建新的程序文件或加入旧程序文件。

点击File—New按钮,或快捷键Ctrl+N。

出现一个新的文字编辑窗口,4、保存源文件,扩展名为.C。

并将该文件加入到刚才建立的项目中。

5、编译源文件。

点击Build target或Rebuild all target files,查看编译结果是否有错,若有错,则修改源程序。

否则,则可以进行调试。

6、进入调试模式如图2,调试程序。

点击Debug---Start/stop Debug session,进入调试模式。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Proteus仿真实验
矩阵式键盘识别一
一、实验目的
通过对实验环境调试程序的使用设计出满足指标要求的电源电路熟悉Proteus对电源电路的仿真、测试过程。

设计一个4x4的矩阵键盘,以P3.0~P3.3作为行线,以P3.4~P3.7作为列线,在数码管上显示每个按键的0~F序号。

二、实验器件
单片机AT89C51、瓷片电容CAP22Pf、晶振CRYSTAL 11.0592MHz、电解电容CAP-ELEC、电阻RES、排阻RESPACLK-7、按钮BUTTON、共阳数码管7SEG-COM-AM-GRN。

三、实验原理
程序:
#include"reg51.h"
#define uchar unsigned char #define uint unsigned int
uchar buff,times,j;
uchar code dispcode[]={0xC0,0xF9,0xA4,0 xB0,0x99,0x92,0x82,0xF8,0x8 0,0x90,0x88,0x83,0xC6,0xA1, 0x86,0x8E};
uchar idata value[8];
void delay1ms(void)
{ uchar i;
for(i=200;i>0;i--);
}
void delay5ms(void)
{
unsigned char i,j;
for(i=5;i>0;i--)
for(j=230;j>0;j--);
}
void key_scan(void)
{
uchar hang,lie,key;
P3=0xf0;
if((P3&0xf0)!=0xf0)
{
delay1ms();
if((P3&0xf0)!=0xf0)
{hang=0xfe;
times++;
if(times=9)
times=1;
while((hang&0x10)!=0)
{P3=hang;
if((P3&0xf0)!=0xf0) {lie=(P3&0xf0)|0x0f;
buff=((~hang)+(~lie));
switch(buff)
{
case 0x11:key=0;break; case 0x21:key=1;break; case 0x41:key=2;break; case 0x81:key=3;break; case 0x12:key=4;break; case 0x22:key=5;break; case 0x42:key=6;break; case 0x82:key=7;break; case 0x14:key=8;break; case 0x24:key=9;break; case 0x44:key=10;break; case 0x84:key=11;break; case 0x18:key=12;break; case 0x28:key=13;break; case 0x48:key=14;break; case 0x88:key=15;break;
}
value[times-1]=key;
}
else
hang=(hang<<1)|0x01;
}
}
}
}
void main(void)
{
while(1)
{
key_scan();
P0=dispcode[value[times-1]];
} }
四、原理图:
五、实验结果
六、结论:通过本次培训基本熟悉了protues软件,使我在今后的工作中添加了一门新的技能。

本次培训由于自己掌握的知识有限所以只能在网上找一些相关的质料来弥补自己的不足。

在本次培训中遇到的困难在老师和同学的帮助下逐一解决了。

随着对该软件的熟悉,发现这个软件是一个很有趣的软件,在通过一段时间设计出一个电路觉得自己很有成就感。

很快培训时间结束了,在这里要感谢老师的尽心教导。

PLC仿真实验
十字路口交通灯控制的模拟实验报告
一、实验目的
1、熟练使用各基本指令,定时器,计数器,内部指令等。

2、根据控制要求,掌握PLC的编程方法和程序调试方法。

3、掌握交通灯的实验设计与三菱PLC的连线方法。

二、实验要求
交通灯模拟控制实验区中,下框中的南北红、黄、绿灯R、Y、G分别接主机的输出点Y2、Y1、Y0,东西红、黄、绿灯R、Y、G分别接主机的输出点Y5、Y4、Y3,模拟南北向行驶车的灯接主机的输出点Y6,模拟东西向行驶车的灯接主机的输出点Y7;下框中的SD接主机的输入端X0。

上框中的东西南北三组红绿黄三色发光二极管模拟十字路口的交通灯。

信号灯受一个启动开关控制,当启动开关接通时,信号灯系统开始空座,且先南北红灯亮,东西绿灯亮。

当启动开关断开时,所有信号灯都熄灭。

南北红灯亮维持25秒,在南北红灯亮的同时东西绿灯也亮,并维持20秒。

到20秒时,东西绿灯闪亮,闪亮3秒后熄灭。

在东西绿灯熄灭时,东西黄灯亮,并维持2秒。

到2秒时,东西黄灯熄灭,东西红灯亮,同时,南北红灯熄灭,绿灯亮。

东西红灯亮维持30秒。

南北绿灯亮维持25秒,然后闪亮3秒后熄灭。

同时南北黄灯亮,维持2秒后熄灭,这时南北红灯亮,东西绿灯亮。

周而复始。

三、程序设计步骤
1、过程分析:
过程一:东西向车行驶
2、设置定时器
注:①设置T12、T13的原因是:
当司机看到红灯变为绿灯的时候需要有时间反应,启动车辆等。

因此在车子行驶和交通灯变化之间设置1s的间隔。

②设置T22、T222、T221、T223的原因是:
T2和T7只能控制交通灯的闪亮时间,并不能使其控制。

T22一个定时器并不能同时控制东西绿灯与南北绿灯的闪烁,要分别设置控制器,所以通过T22、T222的分别作用,使东西绿灯与南北绿灯分别在高、低电平交替的时候闪亮。

4、按照设置的I/O分配进行接线。

5、打开PLC实验箱和实验面板上的电源开关,将预先编好的实验程序写入计算机,再下载到PLC中。

下载时,RUN/STOP开关拨到STOP位置。

6、下载完毕后,将RUN/STOP开关拨到RUN状态,若程序无逻辑错误则主机上的RUN运行指示灯亮,否则出错指示灯亮,需要修改程序。

7、当PLC指示RUN状态时,表面程序开始运行,观察运行的结果。

若结果与控制要求不符合,则根据观察到的现象修改程序,重新下载进行调试,直至满足控制要求为止。

四、梯形图
五、指令表
通过前面编的梯形图,用PLC软件转换成下面的指令代码:六、时序图
七、测试结果及其分析
最终程序工作过程:
当启动开关SD合上时,X0触电接通,Y42得电,南北红灯亮;
同时Y42的动合触点闭合,Y43得电,东西绿灯亮。

维持到20秒,T6的动合触点接通,与该触点串联的T22合动触点每隔0.5秒,从而使东西绿灯闪烁。

又过3秒,即开始到现在过了23s,T7的动断触点断开,Y43线圈失电,东西绿灯灭;
此时T7的动合触点闭合,T10的动断触点断开,Y44线圈得电,东西黄灯亮,Y47线圈失电,模拟东西向行驶车的灯灭。

再过2秒后,T5的动断触点断开,Y44线圈失电,东西黄灯灭;
此时启动累计时间达25秒,T0的动断触点断开,Y42线圈失电,南北红灯灭,T0的动合触点闭合,Y45线圈得电,东西红灯亮,Y45的动合触点闭合,Y40线圈得电,南北绿灯亮。

1秒后,T13的动合触点闭合,Y46线圈得电,模拟南北向行驶车的灯亮。

又经过25秒,即启动累计时间为50秒时,T1动合触点闭合,与该触点串联的T222的触点每隔0.5秒导通0.5秒,从而使南北绿灯闪烁;
闪烁3秒,T2动断触点断开,Y40线圈失电,南北黄灯灭。

这是启动累计时间达55秒,T4的动断触点断开,T0复位,Y43线圈失电,即维持了30秒的东西红灯灭。

还有一点重要的步骤,就是我设置的定时器T0,T1,T12,T4,T6,T7,T10都是串接到X0上的,所以,最后每个定时器都要分别复位,然后再周而复始的循环。

经过现场调试,达到实验要求。

程序的编写过程主要分为各个定时器的设置,然后通过定时器的值控制输出量的状态。

八、心得体会
PLC实验的梯形图表面上看起来像电工学上的电路控制,但是它有自己的特点,所以在某些特殊场合显得特别重要。

现在PLC实验已经结束,我对三菱PLC 的结构及其工作原理有了初步的了解,并且能够用三菱PLC进行一些简单的编程控制,能用定时器与计时器,以及内部指令在程序中,使得程序能够显得简洁并正确的运行。

在刚开始编程时还是挺困难的,因为都不知道那些代码到底有什么用,怎么用。

为此我在图书馆去借了一本关于三菱PLC的100例的程序的书。

经过一次次的实验,逐步熟悉了编程与线路的接法。

在编程的过程中,基本上对简单的变成和数码显示模拟操作有了一定的了解,并且能够独立运用PLC软件和独立编写简单的PLC程序。

还有要能很好的把书本知识运用到实验中,才能使实验得以正确的运行。

在这点上,我感觉做得很吃力,所以在以后的学习过程中,在学习书本知识的时候还要注重实践运用。

这样才会使学到的知识有实际的效果。

相关文档
最新文档