微机原理课程设计流水灯控制系统.doc

合集下载

微机原理与接口技术课程设计报告音乐流水灯

微机原理与接口技术课程设计报告音乐流水灯

微机原理与接口技术课程设计论文题目:音乐流水灯姓名:鞠强学号:201330020228班级:1330202专业:自动化2015年6月一、实验任务及要求任务:1、掌握综合使用基本输入输出设备、通用接口芯片、专用接口芯片的方法;2、掌握实时处理程序的编制和调试方法。

要求:用8255、8253、8259配合8086使蜂鸣器发出唱歌声同时还能够使用数码管进行边跳舞边唱歌实验。

二、硬件连线键盘的控制、LED显示模块:采用74系列模块控制键盘的行信号Q_0、Q_1、Q_2、Q_3分别与开放的输入信号Q0、Q1、Q2、Q3相连,键盘的列信号P_0、P_1、P_2和开放的输出信号P0、P1、P2相连。

74芯片的片选信号CS1接地址译码信号340H, CS2接地址译码信号360H。

蜂鸣器发声控制:由8255模块控制;PC0直接与蜂鸣器相连,CS_4连接到实验仪中部的地址输出端CS_4中断处理模块:由8259控制8259的片选CS-1连地址输出300H,INT1连总线输入INTR,8259模块的INT-A连总线的INTA,8259的SP/1连+5V, 8259的IRQ0连接到8253的OUT0。

三、程序流程图主程序初始化各阶段寄存器及相关变量初始化8253、8255芯片设置中断向量、开放8253中断屏蔽开放处理器中断中断服务程序保护现场判断时间是否不小于59分55秒报时扫描键盘G 键?调用启停子程序S COUNT COUNT=40? ADDONE 子程序COUNT 清0显示时间,调用显示时间子程序结束中断(发EOI 命令)恢复现场中断返回Y YN Y四、实验源代码DATA SEGMENT AT 0 USE16ORG 1000HHOUR DW ?MIN DW ?SEC DW ?SLL DB ?COUNT DB ?DATA ENDSCODE SEGMENT USE16ASSUME CS:CODE,DS:DATAORG 1500HBEG:JMP STARTTAB DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,77H,7CH,00H ;0~F 的共阴极七段译码表00H表示不显示任何东西KEYCOD DB 0EEH,0DEH,0BEH,0EDH,0DDH,0BDH,0EBH,0DBH,0BBH,0E7H,0D7H,0B7H ;行列编码值KEYV AL DB 0,1,2,3,4,5,6,7,8,9,0AH,0BH ;所有键的键面值PORT1 EQU 340H ;数码管段选端口PORT2 EQU 360H ;数码管位选端口,键盘矩阵的行列端口START: MOV EAX,60000000HMOV CR0,EAXMOV AX,DATAMOV DS,AXMOV HOUR,0203H ;小时分钟以及秒的初始化MOV MIN,0509HMOV SEC,0502HLEA BX,TABMOV SLL,0 ;开始暂停标志位置0MOV COUNT ,0 ;中断次数计数初始值为0;8255初始化,用于产生报时的脉冲MOV EAX,80808080H;控制字MOV DX,20CH ;后面的是4个8255的控制端口20C-20F (这个地址由实验台决定)OUT DX,EAX ;初始化8255,A、B、C口均为方式0输出MOV DX,20BHMOV AL,0FFHOUT DX,AL;8253初始化,用于产生周期为25ms的中断MOV AL,00110110B ;计数器0,先低后高,方式三,二进制MOV DX,32cH ;写往控制口OUT DX,ALMOV DX,320H ;计数器0写初值:47KHz*25msMOV AX,1175OUT DX,ALMOV AL,AHOUT DX,ALMOV AL,0FEH ;IR0开屏蔽OUT DX,ALXOR AX,AX ;装载中断向量MOV ES,AXMOV DI,08H*4MOV AX,OFFSET INTSRMOV ES:[DI],AXMOV AX,SEG INTSRMOV ES:[DI+2],AXSTI ;开中断JMP $INTSR PROC ;中断服务程序CMP MIN,0509H ;比较当前时间是否在59分55秒~00分00秒之间JL NEXT1CMP SEC,0505HJL NEXT1MOV DX,20BHMOV AL,00H ;蜂鸣器低有效,报时OUT DX,ALJMP NEXT2NEXT1: CMP MIN,0JNE NEXT3CMP SEC,0JNE NEXT3MOV DX,20BHMOV AL,00H ;蜂鸣器低有效,报时OUT DX,ALJMP NEXT2NEXT3: MOV DX,20BHMOV AL,0FFHOUT DX,ALNEXT2: CMP COUNT,20 ;用8255产生0.5ms的蜂鸣JLE NEXT4MOV DX,20BHMOV AL,0FFHOUT DX,ALNEXT4:CMP SLL,0JZ LOBCALL TSTARTLOB: CALL KEYCHECK ;检测有无键按下CMP AL,0AH ;启停键按下,调用启停程序JNZ NEXT5CALL TSTARTJMP NEXT6NEXT5: CMP AL,0BH ;设置键按下,调用设置时间程序JNZ NEXT6CALL SETTIMEINTSR ENDPTSTART PROC ;控制时间暂停和开始。

微机原理课程设计 流水灯控制系统

微机原理课程设计 流水灯控制系统

微机原理课程设计流水灯控制系统姓名:XX学院:物理电气信息学院班级:2010电子姓名:12010245…流水灯控制系统一、设计内容:本课程设计选用8086对8255A的A口控制来实现模拟流水灯功能的实现。

编写相关程序,通过proteus仿真软件来实现我名字“安亮”两个字的闪烁,“安”字接8255的A口的P0,“亮”字接A口的P1。

先让“安”字和“亮”字同时点亮,再让两个字同时暗,接着让“安”字点亮,再让“亮”字点亮,然后让“安”字和“亮”字同时亮暗闪烁八次,再跳到开始,以此循环。

二、设计目的:1、了解流水灯的基本工作原理2、熟悉8255A并行接口的各种工作方式和应用3、利用8255A接口,LED发光二极管,设计一个流水灯模拟系统,让我的名字“安亮”两个字按一定规律点亮。

三、实验原理在8086系统中,采用16位数据总线,进行数据传输时,CPU总是将低8位数据线上的数据送往偶地址端口,而过高8位数据线上的数据送往奇地址端口反过来,从偶地址端口取得的数据总是通过低8位数据线传送到CPU,从奇地址端口取得的数据总是通过高8位数据线送到CPU。

在8086系统中,将8255A的A1端和地址总线的A29255A 在对CPU并且,相连,A1端和地址总线的A0的8255A而将相连,的端口进行访问时,将地址总线的A0位总是设置为0。

本课程设计通过对8255A的A口控制来实现模拟流水灯功能的实现。

“安”接A 口的P0,“亮”接A口的P1,实现两个字按一定规律的一个闪烁。

8255的内部结构255A内部结构由以下四部分组成:数据端口A、B、C;A组控制和B组控制;读/写控制逻辑电路;数据总线缓冲器。

端口A:包括一个8位的数据输出锁存/缓冲器和一个8位的数据输入锁存器,可作为数据输入或输出端口,并工作于三种方式中的任何一种。

端口B:包括一个8位的数据输出锁存/缓冲器和一个8位的数据输入缓冲器,可作为数据输入或输出端口,但不能工作于方式2。

微机原理流水灯

微机原理流水灯

微机原理流水灯流水灯,又称为跑马灯,是一种常见的LED灯效。

它的灯光效果像水流一样流动,非常美观。

在微机原理中,流水灯的实现是一个很好的实践项目,可以帮助学生理解数字电路和微机原理的知识。

本文将介绍如何使用微机原理实现流水灯,并提供相应的代码和电路图供参考。

首先,我们需要准备以下材料:1. 8个LED灯。

2. 8个220Ω的电阻。

3. 一个面包板。

4. 杜邦线若干。

5. 一个Arduino开发板。

接下来,我们来看一下流水灯的原理。

流水灯的实现原理是通过依次点亮LED 灯,然后熄灭前一个LED,点亮下一个LED,以此类推,就形成了灯光像水流一样流动的效果。

在微机原理中,我们可以利用Arduino开发板来实现这一效果。

首先,我们需要将8个LED灯连接到Arduino开发板上。

将LED的长针(阳极)通过220Ω的电阻连接到Arduino的数字引脚2~9上,LED的短针(阴极)接地。

接下来,我们需要编写Arduino的程序来实现流水灯的效果。

以下是流水灯的Arduino代码:```c。

int ledPins[] = {2, 3, 4, 5, 6, 7, 8, 9};void setup() {。

for (int i = 0; i < 8; i++) {。

pinMode(ledPins[i], OUTPUT);}。

}。

void loop() {。

for (int i = 0; i < 8; i++) {。

digitalWrite(ledPins[i], HIGH);delay(100);digitalWrite(ledPins[i], LOW);}。

}。

```。

在这段代码中,我们首先定义了8个LED灯的引脚号,然后在setup函数中将这些引脚设置为输出模式。

在loop函数中,我们依次点亮每个LED灯,并通过delay函数控制灯光的流动速度。

接下来,我们将Arduino开发板连接到电脑上,上传这段代码到开发板中。

微机原理与接口技术课程设计音乐流水灯

微机原理与接口技术课程设计音乐流水灯

微机原理与接口技术课程设计音乐流水灯专业:自动化班级:1530202姓名:何名春学号:201530020226指导老师:胡文龙一、课程设计题目音乐流水灯二、设计目的和要求(1)、目的a、增强对8255和8253芯片的认识b、掌握8255和8253的工作方式及应用编程。

b、熟悉这类的硬件电路c、提高汇编编程的能力d、掌握综合使用基本输入输出设备、通用接口芯片、专用接口芯片的方法e、掌握实时处理程序的编制和调试方法。

(2)、要求(a)、利用芯片8255和8253实现8个发光LED流水形式,并且在灯依次亮是加上音调,即利用8255和8253实现音乐背景下8个LED 跑马灯功能。

(b)、利用8253经过驱动电路使发出至少4个音调,8255控制8个LED形成流水灯,(c)、用一个按键控制灯全灭和音调全停。

(d)、软件用循环灯和循环音调,使用移位和数组的方式,不能单独的编写一个灯亮一个灯灭的多个程序组合。

三、设计流程图否四、硬件电路8255与8253组合电路图五、原理分析8255:通过8255的PA口控制8个LED灯,以实现流水的形式,并用一个PB口控制一个开关,以实现闭合开关执行功能,断开开关就实现灯灭、音停。

8255的PC口控制8253的GATE口,以实现GATE=1,就开始计时,则发出音调,否则,则反之。

8253:在CLK输入一个时钟信号,通过8MHZ经过393以输入时钟信号,再输出信号OUT输出给功放电路,驱动扬声器,以达到发出音乐六、软件分析通过对8255和8253的控制字,以让8255的PA输入,PB输出,PC输出,8253选择计数器1,根据硬件的连接,再定义控制字总程序DATA SEGMENTDATA ENDSCODE SEGMENT PUBLIC 'CODE'ASSUME CS:CODEmy_8253_0 equ 400hmy_8253_1 equ 402hmy_8253_2 equ 404hmy_8253_com equ 406hmy_8255_a equ 200hmy_8255_b equ 202hmy_8255_c equ 204hmy_8255_com equ 206hy dw 080h,096h,0aeh,0c5h,0d8h,0e9h,0f5h,0FFH,099H,0c5H,0 aehm dw 3816d,3610d,3413d,3215d,3039d,2865d,2703d,2551d,240 9dSTART:; Write your code hereagain: mov al,90Hmov dx,206hout dx,almov dx,200hin al,dxTEST al,03hjz disp_3test al,01hjz disp_1test al,02hjz disp_2test al,00hjz judgejmp againdisp_1:xor ax,axmov bl,101B mov si,0dxxx:mov dx,406hmov al,36hout dx,almov dx,400hmov ax,y[si]out dx,almov al,ahout dx,alrol bl,1mov al,blmov dx,202hout dx,almov cx,00fffh loop $jmp judgeyyy: inc sijl xxxloop disp_1 disp_2:xor ax,axmov bl,01B mov si,0d sss:mov dx,406hmov al,76hout dx,almov dx,402hmov ax,m[si]out dx,almov al,ahout dx,alror bl,1mov dx,202h out dx,almov cx,0108Bh loop $jmp judge zzz: inc sicmp si,18jl ssstest al,01hjz againloop disp_2disp_3:mov dx,406h mov al,76hout dx,almov ax,01hout dx,almov al,ahout dx,almov dx,406hmov al,36hout dx,almov dx,400hmov ax,01hout dx,almov al,ahout dx,almov al,11111111b mov dx,202hout dx,aljmp againjudge:mov al,90Hmov dx,206h out dx,almov dx,200h in al,dxtest al,03h jz disp_3test al,01h jz yyytest al,02h jz zzztest al,00h mov dx,406hmov al,36hout dx,almov dx,400hmov ax,1out dx,almov al,ahout dx,almov dx,406hmov al,76hout dx,almov dx,402hmov ax,1out dx,almov al,ahout dx,al jz again jmp judgeENDLESS:JMP ENDLESSCODE ENDSEND START七、心得体会早在上课的时候老师就说了课程设计,开始以为时间还早,并没有提前去构思,等到要做课程设计的时候,发现自己并不知道该怎么做,然后就回顾了一下以往做的实验,再自己通过看书上的例子,和网上的例子,先一个一个单独实现,开始先单独把流水灯做了出来,然后再把声音做出来,两个虽然都单独做出来了,但是存在很多问题,开始时,灯只要仿真就全亮,并没有实现流水功能,之后进行了调试与程序的修改,最后实现了流水灯。

流水灯控制系统设计(单片机)

流水灯控制系统设计(单片机)

实验报告单实验名称:流水灯控制系统设计实验项目:实验目的:1. 理解单片机系统软硬件开发的过程,单片机基本的I/O控制方法。

2. 掌握51单片机的汇编指令。

3. 掌握Proteus硬件仿真软件的使用及技巧。

4. 掌握Keil uVision程序开发软件的使用技巧。

实验器材:安装了Keil uVision5和Proteus的电脑;实验原理:通过更改P2口8位的高低电平,分别控制8个Led灯的亮灭。

单片机流水灯的实质是单片机各引脚在规定的时间逐个上电,使LED灯能逐个亮起来但过了该引脚通电的时间后便灭灯的过程,实验中使用了单片机的P2端口,对8个LED灯进行控制,要实现逐个亮灯即将P2的各端口逐一置零,中间使用时间间隔隔开各灯的亮灭。

使用rl或rr a实现位的转换。

然后将A寄存器转换一次便送给P2即MOV P2,A便将转换后的数送到了P2口,不断循环下去,便实现了逐位置操作。

具体的亮灭情况如下表:要实现“流水灯”效果,也就是需要将P2口的输出值发生以下变化:FE→FD→FB→F7→EF→DF→BF→7F→BF→DF→EF→F7→FB→FD→FE ..... 可以使用一个循环,不断对数据进行移位运算实现。

这里的移位指令采用RL和RR,即不带进位的位移运算指令。

如果使用带进位的位移运算指令(RLC 和RRC),则需要定期把cy置0,否则会出现同时亮起两个发光二极管的情况。

实验步骤:1.在仿真系统Proteus中实现电路原理图设计;新建设计文档、设置工作环境、选择并放置元器件、对原理图进行布线、原理图的电器规则检查、调整、保存和输出报表等。

2.源代码的设计与生成目标代码;在Keil uVision5平台进行C语言和汇编语言源代码的输入、编译与调试,并生成可执行文件.hex。

C语言存储为.c文件,汇编语言存储为.asm文件。

3.调试与仿真在Proteus中将可执行文件.hex加载到单片机中,对系统进行虚拟仿真。

微机原理流水灯

微机原理流水灯

微机原理流水灯流水灯是一种常见的电子产品,它可以通过不同的灯光组合展示出各种图案和文字。

在微机原理中,流水灯也是一个经典的实验项目,通过学习和掌握流水灯的原理和实现方法,可以帮助我们更好地理解微机原理的相关知识。

首先,我们需要了解流水灯的工作原理。

流水灯通常由多个LED灯组成,这些LED灯按照一定的顺序依次亮起,然后熄灭,再依次亮起,如此循环往复。

这种效果可以通过微机原理中的计时器和计数器来实现。

计时器用来控制LED灯的亮起时间,而计数器则用来控制LED灯的顺序。

通过合理地设计计时器和计数器的工作模式,我们就可以实现流水灯的效果。

接下来,我们来介绍一种常见的流水灯实现方法。

首先,我们需要准备一块开发板,例如51单片机开发板。

然后,我们需要连接数个LED灯到开发板的GPIO口上,并且通过电阻限流,以防止LED 灯烧坏。

接着,我们需要编写相应的程序,通过控制计时器和计数器的工作模式,来实现LED灯的流水灯效果。

最后,将程序下载到开发板上,即可看到LED灯按照预定的顺序依次亮起和熄灭,实现流水灯的效果。

除了这种基于单片机的实现方法,我们还可以利用FPGA来实现流水灯。

FPGA是一种可编程逻辑器件,可以根据我们的设计需求来实现各种逻辑功能。

通过使用FPGA,我们可以更加灵活地设计流水灯的工作模式,实现更加丰富多彩的流水灯效果。

当然,相比于基于单片机的实现方法,利用FPGA来实现流水灯可能需要更多的硬件资源和编程知识,但是它可以实现更加复杂和高级的流水灯效果。

总的来说,微机原理中的流水灯实验项目不仅可以帮助我们更好地理解计时器和计数器的工作原理,还可以培养我们的动手能力和创造力。

通过不断地实践和探索,我们可以设计出各种各样的流水灯效果,甚至可以将其应用到实际的电子产品中。

希望大家在学习微机原理的过程中能够加深对流水灯的理解,同时也能够在实践中不断提升自己的能力。

最后,希望大家能够在微机原理的学习中取得更大的进步,为将来的发展打下坚实的基础。

流水灯微机原理课程设计

流水灯微机原理课程设计

流水灯微机原理课程设计一、课程目标知识目标:1. 学生能理解流水灯微机的基本原理,掌握其硬件组成和软件编程方法。

2. 学生能描述流水灯微机的工作过程,了解不同模式下的电路特性。

3. 学生掌握相关电子元件的功能和连接方式,能够正确搭建简单的流水灯微机系统。

技能目标:1. 学生能够运用所学知识,独立设计并实现简单的流水灯微机程序。

2. 学生能够运用调试工具,对流水灯微机程序进行调试和优化,提高程序执行效率。

3. 学生能够通过团队协作,共同完成流水灯微机的设计与搭建,提高沟通与协作能力。

情感态度价值观目标:1. 学生通过学习流水灯微机原理,培养对计算机硬件和编程的兴趣,提高学习积极性。

2. 学生在实践操作过程中,养成动手能力,培养解决问题的自信心和耐心。

3. 学生通过团队协作,培养合作精神,认识到团队协作的重要性,增强团队荣誉感。

课程性质:本课程为实践性较强的课程,注重理论知识与实际操作相结合,培养学生的动手能力和创新能力。

学生特点:本课程面向高年级学生,学生在前期课程中已具备一定的电子技术和编程基础,具备一定的自学能力和团队协作能力。

教学要求:教师应关注学生的个体差异,因材施教,引导学生主动探究,注重培养学生的实践能力和综合素质。

同时,注重教学评价,及时反馈学生的学习成果,指导学生调整学习方法,提高学习效果。

二、教学内容1. 理论部分:(1)流水灯微机原理概述:介绍流水灯微机的基本概念、工作原理及应用场景。

(2)硬件组成:讲解流水灯微机的核心元件,如微控制器、时钟、存储器、输入输出接口等。

(3)软件编程:介绍流水灯微机的编程语言和编程方法,如汇编语言、C语言等。

2. 实践部分:(1)电子元件认知:学习并识别常用的电子元件,如电阻、电容、二极管、三极管等。

(2)电路搭建:学习并搭建简单的流水灯微机电路,掌握电路连接方法和调试技巧。

(3)程序设计:运用所学编程语言,设计并实现流水灯微机程序,实现不同的流水灯效果。

plc课程设计流水灯

plc课程设计流水灯

plc课程设计流水灯一、课程目标知识目标:1. 让学生理解PLC(可编程逻辑控制器)的基本原理和结构,掌握PLC在工业控制中的应用。

2. 使学生掌握流水灯的编程方法,了解定时器、计数器等基本逻辑元件的使用。

3. 帮助学生了解PLC编程中的输入输出接口及相关电气元件的连接方式。

技能目标:1. 培养学生运用PLC进行简单控制系统设计、编程和调试的能力。

2. 提高学生实际操作PLC设备,解决实际问题的动手能力。

3. 培养学生团队协作、沟通表达的能力,能就PLC控制系统进行有效讨论和分析。

情感态度价值观目标:1. 激发学生对自动化技术的兴趣,培养探索精神,提高创新意识。

2. 培养学生严谨、认真、负责的学习态度,养成良好的学习习惯。

3. 引导学生关注工业自动化发展,认识PLC技术在现代工业生产中的重要性。

课程性质:本课程为实践性较强的课程,以理论教学为基础,注重培养学生的实际操作能力和创新能力。

学生特点:学生具备一定的电工电子基础知识,对PLC技术有一定了解,对实际操作和动手实践有较高的兴趣。

教学要求:结合学生特点,课程设计应注重理论与实践相结合,强调实际操作和团队协作,使学生在实践中掌握PLC编程和应用。

同时,注重培养学生的创新能力和解决问题的能力,提高学生的综合素质。

通过本课程的学习,使学生达到上述设定的知识、技能和情感态度价值观目标。

二、教学内容1. 理论教学:a. PLC基本原理与结构介绍:包括PLC的组成、工作原理、性能指标等。

b. PLC编程基础:介绍PLC编程语言(梯形图、指令表等),编程规则及技巧。

c. 流水灯控制原理:分析流水灯控制系统的设计方法,讲解定时器、计数器等逻辑元件的应用。

2. 实践教学:a. PLC设备认识与操作:让学生熟悉PLC设备,学会基本操作和编程软件的使用。

b. 流水灯控制系统设计:指导学生进行流水灯控制系统的设计,包括电气原理图绘制、PLC程序编写、调试与优化。

c. 实际操作与故障排除:培养学生动手能力,让学生在实际操作过程中学会分析问题、解决问题。

微机原理与接口技术课程设计流水灯

微机原理与接口技术课程设计流水灯

微机原理与接口技术课程设计流水灯1. 设计目标设计一个基于51单片机的流水灯系统,能够实现多种不同的流水灯效果,并且可以通过按键进行切换和控制。

2. 硬件设计(1)51单片机使用STC89C52系列单片机作为主控芯片,具有较高的性价比和稳定性。

(2)LED灯使用8个LED灯作为流水灯的显示元件,需要连接到P0口的8个引脚上。

(3)按键使用一个按键作为流水灯效果的切换和控制,需要连接到P3.2口。

(4)电源使用5V直流电源供电,需要连接到单片机的VCC和GND引脚上。

3. 软件设计(1)IO口初始化首先需要将P0口的8个引脚设置为输出模式,P3.2口的引脚设置为输入模式。

(2)流水灯效果实现流水灯效果可以通过循环移位的方式实现,具体代码如下:```cvoid flow_light(){unsigned char i, j;for (i = 0; i < 8; i++){for (j = 0; j < 8; j++){P0 = ~(1 << j);delay_ms(50);}P0 = 0xff;}}```其中,P0 = ~(1 << j)表示将P0口的第j个引脚设置为低电平,其他引脚设置为高电平,从而实现LED灯的亮灭。

(3)按键控制通过检测P3.2口的引脚状态,可以实现按键的控制,具体代码如下:```cvoid key_control(){if (P3 & 0x04){delay_ms(10);if (P3 & 0x04){mode++;if (mode >= 3){mode = 0;}}}}```其中,P3 & 0x04表示检测P3.2口的引脚状态,如果为高电平,则表示按键未按下;delay_ms(10)表示延迟10ms,以避免按键抖动;mode表示当前的流水灯效果模式,通过按键控制其值的变化。

(4)主函数代码主函数代码如下:```cvoid main(){while (1){switch (mode){case 0:flow_light();break;case 1://其他流水灯效果break;case 2://其他流水灯效果break;}key_control();}}```其中,switch (mode)表示根据当前的流水灯效果模式执行不同的函数;key_control()表示检测按键状态并进行相应的控制。

plc课程设计流水灯

plc课程设计流水灯

plc课程设计流水灯一、教学目标本课程的教学目标是让学生掌握PLC(可编程逻辑控制器)的基本原理和应用,通过设计流水灯的实例,使学生能够理解PLC的工作原理,熟练使用PLC进行简单的控制系统的设计和调试。

知识目标:使学生了解PLC的基本组成、工作原理和编程方法;使学生掌握PLC的输入输出接口、内部寄存器、定时器、计数器等基本组件的功能和应用。

技能目标:培养学生使用PLC编程软件进行程序设计的能力;培养学生进行PLC系统调试和故障排除的能力。

情感态度价值观目标:培养学生对PLC技术的兴趣和热情,使学生认识到PLC技术在现代工业中的重要性和应用前景。

二、教学内容本课程的教学内容主要包括PLC的基本原理、PLC的编程方法和PLC的应用实例。

1.PLC的基本原理:介绍PLC的定义、分类、基本组成、工作原理等。

2.PLC的编程方法:介绍PLC编程语言、编程软件的使用、程序的结构和编写规则等。

3.PLC的应用实例:以设计流水灯为例,讲解PLC控制系统的设计过程,包括输入输出信号的确定、内部组件的使用、程序的编写和调试等。

三、教学方法为了达到本课程的教学目标,将采用以下教学方法:1.讲授法:通过讲解PLC的基本原理、编程方法和应用实例,使学生掌握PLC的基本知识。

2.实验法:通过设计流水灯的实验,使学生能够亲自动手操作PLC,加深对PLC的理解和应用能力。

3.案例分析法:通过分析实际应用中的PLC案例,使学生了解PLC在工业中的具体应用,提高学生的实际应用能力。

四、教学资源为了支持本课程的教学,将准备以下教学资源:1.教材:选用国内权威出版的PLC教材,作为学生学习的主要参考资料。

2.多媒体资料:制作PPT、视频等多媒体资料,帮助学生形象地理解PLC的基本原理和应用。

3.实验设备:准备PLC实验装置,供学生进行实验操作,巩固所学知识。

五、教学评估为了全面、客观地评估学生的学习成果,将采用以下评估方式:1.平时表现:通过观察学生在课堂上的参与度、提问回答、小组讨论等,评估学生的学习态度和理解程度。

流水灯控制系统设计

流水灯控制系统设计

目录第1章方案的论述以及与最终方案的确定··························· - 1 -1.1第一种方案的论述 (1)1.2第二种方案的论证 (1)1.3第三种方案的论述 (1)1.4最终方案的确定 (1)第2章硬件设计............................................................ - 2 -2.1总体方案设计分析. (2)2.2系统逻辑框图 (2)2.3主要元器件简介 (2)2.3.1 8086CPU ·························································································- 2 -2.3.2 地址锁存器74LS373的内部电路与工作原理 ··········································- 4 -2.3.3 可编程外围接口芯片8255A的简介 ······················································- 5 -第3章软件设计···························································· - 9 -3.1程序流程设计 (9)3.1.1 主程序流程 ·····················································································- 9 -3.1.2 程序流程图 ··················································································· - 10 -3.1.3 系统硬件连接图 ············································································· - 11 -3.1.4 源程序设计(附录) ........................................................................... - 11 -3.2设计最终理想结果及原理 (11)3.2.1 左向移动流水灯 ············································································· - 11 -3.2.2 右向移动流水灯 ············································································· - 11 -设计心得 ·····································································- 12 -参考文献 ·····································································- 13 -附录 ···········································································- 14 -第1章方案的论述以及与最终方案的确定1.1 第一种方案的论述第一种方案,使用AT89C51单片机实现流水灯闪烁设计。

plc流水灯课程设计

plc流水灯课程设计

plc流水灯课程设计一、课程目标知识目标:1. 学生能理解PLC(可编程逻辑控制器)的基本原理,掌握其编程方法。

2. 学生能描述流水灯电路的工作原理,理解不同程序指令在流水灯控制中的应用。

3. 学生能解释PLC在工业自动化控制中的应用场景和重要性。

技能目标:1. 学生能够独立进行PLC编程,完成流水灯的简单控制。

2. 学生能够运用所学知识分析和解决PLC控制中的基础问题。

3. 学生通过实践操作,培养动手能力,提高问题解决能力。

情感态度价值观目标:1. 学生培养对自动化技术的兴趣,激发创新意识和探索精神。

2. 学生在团队协作中,学会沟通、分享、合作,培养集体荣誉感。

3. 学生认识到PLC技术在工业生产中的重要作用,增强社会责任感和使命感。

课程性质:本课程为实践性较强的课程,结合理论教学和实际操作,让学生在动手实践中掌握PLC编程和应用。

学生特点:本课程针对的是高年级学生,他们已具备一定的电子电路知识和编程基础,具有较强的学习能力和动手能力。

教学要求:教师需结合学生特点和课程性质,采用理论教学与实践操作相结合的方法,引导学生主动探究,确保课程目标的实现。

在教学过程中,注重培养学生的实际操作能力和问题解决能力,将课程目标分解为具体的学习成果,以便进行有效的教学设计和评估。

二、教学内容1. 理论知识:- PLC基本原理与结构- PLC编程语言及指令系统- 流水灯电路原理及设计- PLC在工业自动化中的应用案例分析2. 实践操作:- PLC编程软件的使用- 流水灯控制程序的编写与调试- PLC与外围电路的连接与调试- 故障分析与排查方法3. 教学大纲:- 第一周:PLC基本原理与结构,流水灯电路原理- 第二周:PLC编程语言及指令系统,编程软件的使用- 第三周:流水灯控制程序的编写与调试,外围电路连接- 第四周:故障分析与排查,实践操作巩固4. 教材关联:- 《电气自动化》第四章:PLC控制系统- 《PLC应用技术》第二章:PLC编程与调试- 《自动化设备维修》第五章:PLC故障分析与排查教学内容依据课程目标进行选择和组织,注重科学性和系统性。

微机原理LED流水灯模板

微机原理LED流水灯模板
关键词:8086 8255 proteus
目录
第一章设计课题与要求........................................................... ..................1
1.1设计目的........................................................... .......................1
3.3.2开关闭合仿真结果...........................................................11
第四章设计总结................................................................ .........................12
1.2设计要求........................................................... .......................1
第二章流水彩灯控制系统的整体设计......................................................2
2.3.2硬件原理设计..................................................................7
2.3.3软件程序设计................................................................ 8
参考文献.............................................................. ..........................................12

微机原理流水灯

微机原理流水灯

微机原理流水灯微机原理流水灯是一种常见的电子电路实验项目,通过使用微机原理的知识和流水灯的原理,可以实现一个简单而又有趣的电子电路。

在这个实验项目中,我们将使用集成电路、LED灯和电阻等元件,通过逻辑门的组合和时序控制,实现LED灯的流水效果。

本文将详细介绍微机原理流水灯的原理、电路图、元件选型、电路搭建和实验步骤等内容,希望能帮助大家更好地理解和掌握这一实验项目。

一、原理介绍。

流水灯是一种LED灯的控制方式,通过逐个点亮LED灯,然后依次熄灭,再点亮下一个LED灯,如此循环往复,就形成了LED灯的流水效果。

在微机原理流水灯中,我们将通过逻辑门的组合和时序控制,实现LED灯的流水效果。

具体原理如下:1. 逻辑门的组合,我们将使用多个逻辑门,如与门、或门、非门等,通过它们的组合,实现LED灯的控制和时序逻辑。

2. 时序控制,通过时序控制电路,我们可以控制LED灯的点亮和熄灭的时间,从而实现LED灯的流水效果。

二、电路图。

接下来,我们将介绍微机原理流水灯的电路图,如下图所示:(这里插入电路图)。

三、元件选型。

在搭建微机原理流水灯的电路时,我们需要选择合适的元件,包括集成电路、LED灯、电阻等。

具体的元件选型如下:1. 集成电路,我们将使用74LS164或74HC595等移位寄存器芯片,用于控制LED灯的流水效果。

2. LED灯,选择适合的颜色和亮度的LED灯,用于实现流水灯的效果。

3. 电阻,根据LED灯的参数,选择合适的电阻,限流保护LED 灯。

四、电路搭建。

在进行微机原理流水灯实验之前,我们需要先进行电路搭建。

具体的电路搭建步骤如下:1. 将选好的元件按照电路图连接好,注意元件之间的引脚连接和电路的布局。

2. 检查电路连接是否正确,确保没有接错线或短路等问题。

3. 给电路供电,观察LED灯的流水效果是否符合预期。

五、实验步骤。

最后,我们将介绍微机原理流水灯的实验步骤,帮助大家更好地进行实验:1. 按照电路图和元件选型,搭建好微机原理流水灯的电路。

plc课程设计--流水灯.doc

plc课程设计--流水灯.doc

《可编程控制器原理及应用》课程设计报告目录觀 (2)1•谢仑 (5)2.主要硬件设备的介绍 (6)2.1可编程控制器的发展历史........................................ 错误!未定义书签。

2.1.1可编程控制器的定义 (6)2.1.2可编程控制器的特点 (4)2.1.3 PLC的基本结构和工作原理 (7)3•主要软件的介绍 (10)3.1 CX-0NE 简介 (10)3. 1. 1CX-Programmer 简介 (10)3.2 EPLAN 简介................................................................. 1()4.课程设计........................................................... 错误!未定义书签。

4.1小车自动往返控制程序.......................................... 错误!未定义书签。

4.1.1设计功能目的 (11)4. 1.2梯形图 (12)4. 1.3语句表 (12)4. 1.41/0 表 (14)4. 1.5功能说明 (15)4. 1.6电气原理图 (15)4. 1.7实物图 (17)4.2流水灯程序 ....................................................错误!未定义书签。

4.2.1设计功能目的 (18)4. 2. 2梯形图 (18)4. 2. 3语句表 (18)4. 2. 41/0 表 (19)4.2.5电气原理图 (20)4. 2. 6实物图 (21)53殳i十,雜 (22)6. (23)随着社会经济的发展,城市美化问题越来越引起人们的关注。

由于流水灯所具有的特有流动感而广泛应用于广告控制及人们生活中,给人们一种美感,为人们生活带来乐趣。

微机原理课程设计--彩灯控制器系统

微机原理课程设计--彩灯控制器系统

微机原理课程设计--彩灯控制器系统课程设计报告课程编号j1610103课程名称微型原理与应用课程设计学生姓名学生学号联系电话所在班级实施地点科技楼微机原理室422起止时间2013.12.15--2013.12.20 指导教师王荣辉目录1 课程设计的目的………………………………………………………………2课程设计的任务与要求……………………………………………………3系统框图………………………………………………………………………4 设计原理………………………………………………………………………4.18255工作原理及内部结构…………………………………………4.28255A的工作方式控制字…………………………………………4.38086 的引脚信号……………………………………………………5程序设计流程图及说明……………………………………………………6程序调试与结果分析………………………………………………………7总结……………………………………………………………………………11附录1:总体电路原理图 (13)附录2:元器件清单………………………………………………………1 3附录3:源程序代码 (14)1 课程设计的目的通过本次课程设计使学生熟练掌握微机系统与接口扩展电路的设计方法,了解步进电机控制的基本原理,掌握控制步进电机转动的编程方法,进一步熟练掌握8255A并行I/O口的工作方式以及编程方法,熟练应用8086以及汇编语言编写应用程序和实际设计中的硬软件调试方法和步骤,熟悉微机系统的硬软件开发工具的使用方法。

体会系统整体设计的流程与方法,为以后系统级设计积累经验。

2课程设计的任务与要求以8255交通灯的一种显示效果为例,介绍彩灯控制器显示的基本原理。

设有一排8个水平排列的彩灯,某种显示方式为从左到右0.5秒点亮。

其控制过程如下:若以“ 0 ”代表彩灯点亮,以“ 1 ”代表彩灯熄灭,则开始时刻, L1黄灯亮1.5秒后,红灯L2,L3,L4,L5间隔0.5秒依次亮,然后绿灯L6.L7.L8间隔0.5秒依次亮;循环7次。

流水灯控制系统设计

流水灯控制系统设计

微机原理课程设计目录第1章方案的论述以及与最终方案的确定·····································- 1 -1.1第一种方案的论述 (1)1.2第二种方案的论证 (1)1.3第三种方案的论述 (1)1.4最终方案的确定 (1)第2章硬件设计 .................................................................................- 2 -2.1总体方案设计分析 .. (2)2.2系统逻辑框图 (2)2.3主要元器件简介 (2)2.3.1 8086CPU ················································································································ - 2 -2.3.2 地址锁存器74LS373的内部电路与工作原理····················································· - 4 -2.3.3 可编程外围接口芯片8255A的简介···································································· - 5 -第3章软件设计 ·················································································- 9 -3.1程序流程设计 (9)3.1.1 主程序流程··········································································································· - 9 -3.1.2 程序流程图········································································································· - 10 -3.1.3 系统硬件连接图 ································································································· - 11 -3.1.4 源程序设计(附录) ............................................................................................... - 11 -3.2设计最终理想结果及原理 (11)3.2.1 左向移动流水灯 ································································································· - 11 -3.2.2 右向移动流水灯 ································································································· - 11 -设计心得 ·····························································································- 12 -参考文献 ·····························································································- 13 -附录······································································································- 14 -- 1 -微机原理课程设计第1章方案的论述以及与最终方案的确定1.1 第一种方案的论述第一种方案,使用AT89C51单片机实现流水灯闪烁设计。

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

微机原理课程设计
流水灯控制系统
姓名 :XX
学院:物理电气信息学院
班级: 2010 电子
姓名 :12010245
流水灯控制系统
一、设计内容:
本课程设计选用8086 对 8255A的 A口控制来实现模拟流水灯功能的
实现。

编写相关程序,通过proteus仿真软件来实现我名字“安亮”
两个字的闪烁,“安”字接 8255 的 A 口的 P0,“亮”字接 A 口的 P1。

先让“安”字和“亮”字同时点亮,再让两个字同时暗,接着让“安”字点亮,再让“亮”字点亮,然后让“安”字和“亮”字同时亮暗闪
烁八次,再跳到开始,以此循环。

二、设计目的:
1、了解流水灯的基本工作原理
2、熟悉 8255A 并行接口的各种工作方式和应用
3、利用 8255A 接口,LED 发光二极管,设计一个流水灯模拟系统,让我的名字“安亮”两个字按一定规律点亮。

三、实验原理
在 8086 系统中,采用 16 位数据总线,进行数据传输时,CPU
总是将低 8 位数据线上的数据送往偶地址端口,而过高8位数据线上
的数据送往奇地址端口反过来,从偶地址端口取得的数据总是通过低
8 位数据线传送到CPU,从奇地址端口取得的数据总是通过高8 位数据线送到 CPU。

在 8086 系统中,将 8255A的 A1端和地址总线的 A29255A 在对 CPU并且,相连, A1 端和地址总线的 A0 的 8255A 而将相连,
的端口进行访问时,将地址总线的 A0 位总是设置为 0。

本课程设计通
过对 8255A 的 A 口控制来实现模拟流水灯功能的实现。

“安”接 A 口
的 P0,“亮”接 A口的 P1,实现两个字按一定规律的一个闪烁。

8255 的内部结构
255A 内部结构由以下四部分组成:数据端口A、B、C;A组控制和 B 组控制;读 / 写控制逻辑电路;数据总线缓冲器。

端口 A:包括一个 8 位的数据输出锁存 / 缓冲器和一个 8 位的数据
输入锁存器,可作为数据输入或输出端口,并工作于三种方式中的任何一种。

端口 B:包括一个 8 位的数据输出锁存 / 缓冲器和一个 8 位的数据输入缓冲器,可作为数据输入或输出端口,但不能工作于方式2。

端口 C:包括一个 8 位的数据输出锁存 / 缓冲器和一个 8 位的数据,端口上和下)C(位的端口 4 可在方式字控制下分为两个输入缓冲器,每个 4 位端口都有 4 位的锁存器,用来配合端口 A 与端口 B 锁存输出控制信号和输入状态信号,不能工作于方式1或2。

A组和 B 组控制的作用如下:
A组控制逻辑控制端口A及端口 C的上半部;
B组控制逻辑控制端口B及端口 C的下半部。

2.8255A 芯片介绍
芯片引脚图:
(和外设一边相连的):
PA7-PA0:A 组数据信号
PB7-PB0:B 组数据信号
PC7-PC0:C组数据信号
(和 CPU一边相连的):
RESET:复位信号,低电平有效。

当RESET信号来到时,所有内部寄存
器就被清除,同时, 3 个数据端口被自动设为输入端口。

的数据线,和系统数据总线相连。

8255A:它们是 D7-D0.
CS:芯片选择信号,低电平有效。

在一个系统中,一般根据全部接口
芯片来分配若干较低位地址(比如A5、A4、A3)来组成各种芯片选
择码,当这几位地址组成某一个代码时,译码器便往8255A的 CS端输出一个低电平,于是8255A被选中。

只有当CS有效时,读信号RD 和写信号 WR才对 8255A有效。

RD:芯片读出信号低电平有效。

WR:芯片写入信号低电平有效。

A1、A0:端口选择信号。

8255A 内部有 3 个数据端口和一个控制端口,共四个端口。

规定当A1、A0为 00 时,选中 A 端口;为 01 时,选中
B端口;为 10 时,选中 C 端口;为 11 时,选中控制口。

3.8255A 控制字
方式选择控制字
控制字 0置1/置 C端
口.
2.8255A 工作方式
方式 0:基本输入 / 输出方式
方式 0 是 8255A的基本输入 / 输出方式,其特点是与外设传送数据时,
不需要设置专用的联络(应答)信号,可以无条件的直接进行I/O 传送。

A,B,C 3 个端口都可以工作在方式0。

A 口和B 口工作在方式0 时,只能设置为以 8 位数据格式输入 / 输出。

C口工作在方式 0 时,
可以高 4 位和低 4 位分别设置为数据输入或数据输出方式。

方式 1:单向选通输入 / 输出方式
方式 1 是一种带选通信号的单方向输入/ 输出工作方式,其特点是:
与外设传送数据时,需要联络信号进行协调,允许用查询或中断方式传送数据。

由于 C 口的 PC0,PC1和 PC2定义为 B 口工作在方式 1 的联络信号线,PC3,PC4和 PC5定义为 A 口工作方式 1 的联络信号线,因此只允许 A 口和 B 口工作在方式 1。

如果 8255A 的端口 A 和端口 B 都工作在方式 1,那么,端口 C中就有 6 位被规定为配合方式 1 位扔作为输入或输出。

2 工作的信号,剩下的.方式 2:双向选通输入 / 输出方式
方式 2 为双向选通输入 / 输出方式,是方式 1 输入和输出的组合,即同一端口的信号线既可以输入又可以输出。

由于 C口的 PC7-PC3定义为A口工作在方式 2 时的联络信号线,因此只允许 A口工作在方式 2。

PA7-PA0为双向数据端口,既可以输入数据又可以输出数据。

方式 2 只适用于端口 A。

端口 A 工作于方式 2 时,端口 C用 5 个数位自动配合端口 A 提供控制信号和状态信号。

四、实验器材:
8086、8255、二极管、电源等
五、设计步骤
1)硬件原理图
2)软件流程图
3)程序设计清单
STACKS ENDS
CODES SEGMENT
ASSUME CS:CODES,DS:DATAS,SS:STACKS START:
MOV AX,DATAS
MOV DS,AX
MOV AL,80H
L: OUT 06H,AL;将 80H 送给 06H,10000000
MOV AL,0FCH
OUT 00H,AL ;将0FC 送给00H,11111100 (亮、亮)LOOP $ ;延时0.25 秒
MOV AL,0FFH
OUT 00H,AL ;11111111 (灭、灭)
LOOP $ ;延时0.25 秒
MOV AL,0FEH
;11111110 (灭、亮)
OUT 00H,AL
LOOP $ ; 延时0.25 秒
MOV AL,0FDH ;11111101 (亮、灭)
OUT 00H,AL
秒 0.25;延时 LOOP $
MOV BX,7 ;闪烁 8 次
L1: MOV AL,0FFH
OUT 00H,AL;11111111 (灭、灭)
MOV CX,6000
LOOP $;延时
MOV AL,0FCH
OUT 00H,AL;将 0FC 送给 00H,11111100 (亮、亮)MOV CX,6000
LOOP $;延时
DEC BX
JNZ L1
JMP L;跳到 L 循环
MOV AH,4CH
INT 21H
CODES ENDS
END START
六、实验结果
七、调试过程与分析
1、出现的问题
proteus刚开始,我们准备设计一个方波发生器,写好了程序,用
进行了仿真,结果出现了问题,无法仿真,我和合作者开始寻找错误,先从程序开始,请教同学,修改程序,之后看proteus的连线,也没有发现问题,但是还是无法仿真,就做了两天,没有做出来,我和合
作者商量果断放弃了方波发生器的设计,因为毕竟时间有限。

我们决定做流水灯,既简单,学的内容又可以充分利用。

在做流水灯的时候,我们想着,这次吸取教训,从简单入手,程序也简单,进行仿真后很
快成功,我们的设计也算完成。

2、心得体会
这次的课程设计结果虽然简单,可是过程很复杂,我们用的时间也
比较长,主要是自己的只是水平不高,花费了大量的时间,最后却
选择了一个最简单的设计。

通过这次设计实验,觉得自己的水平的确有待提高。

学习不踏实,以为学懂了,其实只是学了表面,细节根本没有注意到,以至于花费了时间,却没有出结果。

这也是一个自我检测的过程,发现自己的不足,弥补自己的缺点,给了我一个很大的启发。

相关文档
最新文档