微机原理课程设计跑马灯
《微型计算机系统》课程设计基于单片机的跑马灯设计大学论文
《微型计算机系统》课程设计任务书题目名称:基于单片机的跑马灯设计专业自动化班自本132 姓名刘鑫伟学号201328201 学校:青岛理工大学自动化学院指导教师:史贺男2015年11月30日青岛理工大学自动化工程学院课程设计任务书课程名称:微型计算机系统设计题目:基于单片机的跑马灯设计系统硬件要求:根据实际要求,以MCS-51单片机为核心,设计3个按键,每个按键对应一个花样,可手动显示,即按一个按键,显示一种花样,也可以再设计一个按键用于连续显示每个花样,每个花样显示的时间和花样设计者自己规定,并在论文中给定。
设计控制系统硬件电路,编写C语言或汇编语言程序,并用PROTEUS软件进行实时仿真。
要求:(1)扩展接口(8255或8155),设计至少4个按键(2)设计至少32个LED(3)LED显示至少有3种花样,可单独显示也可自动循环显示软件设计:1)主程序设计2)各功能子程序设计其他要求:1、每位同学独立完成本设计。
2、依据题目要求,提出系统设计方案。
3、设计系统电路原理图。
1、调试系统硬件电路、功能程序。
2、编制课程设计报告书并装订成册,报告书内容(按顺序)(1)报告书封面(2)课程设计任务书(3)系统设计方案的提出、分析(4)系统中典型电路的分析(5)系统软件结构框图(6)系统电路原理图(7)源程序(8)课设字数不少于3000字目录第一节AT89C51芯片分析 (I)第二节设计概述 (3)第三节算法 (5)第四节编程技巧 (7)第五节电路设计及功能说明,硬件原理框图及电路图(包括接口芯片简介).8 第六节调试过程中的主要难点(自己遇到的)及解决思路和办法; (8)课设结果及分析、收获、体会和建议; (9)参考文献 (10)附录1 (11)附录2 (12)第一节AT89C51芯片分析ATMEL的AT89S51是一种高效微控制器,将多功能8位CPU和闪烁存储器组合在单个芯片中,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
微机原理————走马灯实验设计
微型计算机技术课程设计指导教师:赵立辉李鹏学生班级:计科10802学生姓名:陈东学号:200803939班内序号:11目录1.……………………………………………………….课设目的2.………………………………………………………课设内容3.…………………………………………问题分析及设计思路4.…………………………………………电路设计及功能说明5.………………………………硬件原理图及接口芯片的介绍6.……………………………………程序流程图及相关源程序7. …………………………………………………实验结果及分析8.…………………………………………………………课设总结一.课设目的1.通过本设计,使学生综合运用《微型计算机技术》、《汇编语言程序设计》以及电子技术等课程的内容,为以后从事计算机检测与控制工作奠定一定的基础。
2.主要掌握接口芯片8253、8255A等可编程器件的使用,掌握译码器74LS138的使用。
3.学会用汇编语言编写一个较完整的实用程序。
4.掌握微型计算机技术应用开发的全过程:分析需求、设计原理图、选用元器件、布线、编程、调试、撰写报告等步骤。
二.课设内容1.功能要求:采用8253设计一个1s定时电路,将定时信号接到8255的PC 口的某一位,编程查询该位的状态,若为低电平,则从8255A的PA口输出不同的值使和PA口相接的发光二极管依次变化,实现走马灯的效果。
按下Esc键结束程序。
2.设计所需器材及介绍①一块实验面包板(内含时钟信号1MHz或2MHz)。
②可编程芯片8253、8255A、74LS138、74LS245各一片。
74LS06两片,发光二极管8个,排电阻一个。
③导线若干。
④示波器、万用表、常用工具等共用(从实验室现借现还)三.问题分析及设计思路1.利用74LS138设计地址译码电路,8255A端口地址:300H~303H,8253的端口地址:304H~307H。
2.74LS245用于总线和8253、8255A之间的双向传输和隔离。
微机原理(基于PROTEUS的跑马灯系统设计及仿真)
学号:课程设计题目基于PROTEUS的跑马灯系统设计及仿真学院自动化学院专业自动化班级姓名指导教师2012 年 1 月12 日任务书目录引言 (1)1总体方案论证 (2)1.1功能分析 (2)1.2系统连接图设计 (2)1.2.1锁存控制电路 (5)1.2.2可编程并行通信接口芯片8255A (6)2程序流程图设计及其说明 (9)3关键程序段落说明 (11)3.1数据段定义 (11)3.2程序初始化 (11)3.3芯片初始化 (12)3.4初始LED亮灭状态 (12)3.5检测按键开关子程序 (12)3.6延时程序片段 (14)3.7灯光变换控制 (15)4程序调试说明 (16)5结果记录及分析 (17)心得体会 (19)参考文献 (20)引言微型计算机简称微机,由于具备人脑某些功能,所有又叫做微机。
是由大规模集成电路组成的、体积较小的电子计算机。
它是以微处理器为基础,配以存储器及输入输出接口电路和相应的辅助电路构成的裸机。
把微型计算机集成在一个芯片上即构成单片微型计算机。
学习微机原理与接口技术,主要容包括微型计算机体系结构、8086微处理器和指令系统、汇编语言、设计以及微型计算机各个组成部分,而其中很大一块就是汇编语言的学习。
汇编语言是面向机器的程序设计语言,也是利用计算机所有硬件特性并能直接控制硬件的语言。
用汇编语言编写的程序由于目标程序占用存少,运行速度快,它有着高级语言不可替代的用途。
因此,学习汇编语言是很必要的,通过学习汇编语言可以体会它的作用。
通过本次课程设计让我们进一步深入汇编语言的学习,掌握简单的接口设计技术,将理论知识联系实际,进一步学习微机原理与接口技术的相关知识,为以后深入学习打下良好的基础。
1总体方案论证1.1功能分析此次课程设计的要求为,设计微型计算机最小系统,实现跑马灯的模拟显示功能。
具体要求为:(1)、输入设备三个启动按钮、一个停止按钮,输出设备为八个跑马灯;(2)、三个启动按钮对应三种跑马灯显示效果,按下任意一个启动按钮,跑马灯显示对应的效果,按下停止按钮则跑马灯全部熄灭。
微机原理(基于PROTEUS的跑马灯系统设计及仿真)资料
课程设计题目基于PROTEUS的跑马灯系统设计及仿真学院自动化学院专业自动化班级姓名指导教师2012 年 1 月12 日任务书目录引言 (1)1总体方案论证 (2)1.1功能分析 (2)1.2系统连接图设计 (2)1.2.1锁存控制电路 (5)1.2.2可编程并行通信接口芯片8255A (6)2程序流程图设计及其说明 (9)3关键程序段落说明 (11)3.1数据段定义 (11)3.2程序初始化 (11)3.3芯片初始化 (12)3.4初始LED亮灭状态 (12)3.5检测按键开关子程序 (12)3.6延时程序片段 (14)3.7灯光变换控制 (15)4程序调试说明 (16)5结果记录及分析 (17)心得体会 (19)参考文献.................................................................. 错误!未定义书签。
引言微型计算机简称微机,由于具备人脑某些功能,所有又叫做微机。
是由大规模集成电路组成的、体积较小的电子计算机。
它是以微处理器为基础,配以内存储器及输入输出接口电路和相应的辅助电路构成的裸机。
把微型计算机集成在一个芯片上即构成单片微型计算机。
学习微机原理与接口技术,主要内容包括微型计算机体系结构、8086微处理器和指令系统、汇编语言、设计以及微型计算机各个组成部分,而其中很大一块就是汇编语言的学习。
汇编语言是面向机器的程序设计语言,也是利用计算机所有硬件特性并能直接控制硬件的语言。
用汇编语言编写的程序由于目标程序占用内存少,运行速度快,它有着高级语言不可替代的用途。
因此,学习汇编语言是很必要的,通过学习汇编语言可以体会它的作用。
通过本次课程设计让我们进一步深入汇编语言的学习,掌握简单的接口设计技术,将理论知识联系实际,进一步学习微机原理与接口技术的相关知识,为以后深入学习打下良好的基础。
1总体方案论证1.1功能分析此次课程设计的要求为,设计微型计算机最小系统,实现跑马灯的模拟显示功能。
微机原理流水灯
微机原理流水灯流水灯,又称为跑马灯,是一种常见的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开发板连接到电脑上,上传这段代码到开发板中。
微机原理跑马灯的设计原理
微机原理跑马灯的设计原理
跑马灯是一种实现循环显示效果的电路,常用于LED灯条、数字管、点阵等显示设备中。
它的设计原理与微机系统有关,具体包括以下几个方面:
1.微机系统:跑马灯的实现需要使用微机系统,包括CPU、存储器、输入输出接口等。
CPU用于控制程序的执行,存储器用于存储程序和数据,输入输出接口用于控制LED灯条的显示。
2.循环显示:跑马灯的核心是循环显示。
通过不断循环变化LED灯条的状态,形成灯条上移或下移的效果。
具体可以通过移位操作实现,将灯条的状态左移或右移,从而达到循环显示的效果。
3.定时器:为了保证跑马灯循环显示的频率和速度,需要使用定时器。
定时器可以产生一定的脉冲信号,控制每个LED灯的亮灭时间和显示周期。
定时器还可以配合中断技术实现自动循环和停止功能。
4.程序设计:跑马灯的程序设计需要采用适当的算法和流程控制语句。
一般采用循环结构控制灯条的状态变化,同时利用函数和数组等数据结构优化程序的效率和可维护性。
总之,跑马灯的设计涉及多个方面的技术,并需要综合考虑程序效率、硬件资源、用户体验等多个因素。
只有充分理解微机系统的原理和设计思路,才能更好地实
现跑马灯的功能和效果。
微机原理(基于PROTEUS的跑马灯系统设计及仿真)
dl3:decbx
jnz dl3
deccx
jnz dl4
jmp ledflash
exit:
movnum,0
jmp here
ledflash endp
csegends
endstart
4程序调试说明
(1)、内存空间分配,汇编语言的重要特点之一是能够直接利用机器指令或者伪指令为数据或者代码程序分配内存空间,86系列(如8086微处理器)的存储器结构是分段的,有代码段,数据段,堆栈段或附加段,在程序设计时要充分考虑分段结构,要执行的程序段应设在当前段(活动段)中;分配内存空间:直接在proteus里面将8086CPU的internal memory size设置成一个足够用的空间大小,如0x1000,默认的空间大小是0x00000,如不改则仿真不成功。
[SPICE]error---too many iterations without coFra bibliotekvergence
在仿真过程中,出现以上两行的错误,太多的迭代没有收敛性,和某个汇编语言在编码过程中的地址不正确,经过排查程序去除无用代码,proteus不再报错。
(3)、8255A隐藏引脚问题,需要设置芯片Hidden Pins里的GND改为VSS,VCC改为VDD。
如图所示我们利用启动按钮作为输入信号,通过8255A端口扩展芯片,调节输出端口的电平变化,来控制共阳极的LED灯的亮与灭,实现跑马灯不同的花样变化。
图跑马灯电路图
1.2.1锁存控制电路
锁存控制电路电路如图所示,在微控制器单元(MCU)中,寄存器是十分重要的资源。寄存器的主要作用是快速寄存算术逻辑运算单元(ALU)运算过程中的数据,其锁存功能利用74LS273来实现,74LS273是一种带清除功能的8D触发器,1D~8D为数据输入端,1Q~8Q为数据输出端,正脉冲触发,低电平清除,常用作数据锁存器,地址锁存器。
微型计算机技术及应用课程设计
微型计算机技术及应用课程设计课程题目:跑马灯的设计与实现院系:专业:姓名:学号:指导老师:完成日期:跑马灯的设计与实现一实验目的1.巩固和加深课堂所学知识;熟悉各种指令的应用及条件;2.深入了解与掌握8086微处理器、8255A、74ls154 和74LS273的工作原理3.通过走马灯的设计与制作,深入了解与掌握利用可编程8255A进行开关量控制的原理与方法。
二实验要求1.产生6种彩灯(8位LED)的走马灯花样;2.键控(或拨码开关控制)发光实验。
通过按下不同的开关来控制灯的不同的走向。
三实验内容1.进行走马灯的系统电路设计,掌握基本原理;2.利用PROTEUS软件画出电路原理图;3.进行走马灯的控制程序设计(采用ASM语言);4.将程序导入8086中进行仿真,完成4种不同的走向。
四程序流程图YN五.设计原理与硬件电路 开始 系统初始化 8255初始化 按下开关 判断1-6的哪种 方式选择发光方式 结束 熄灭LED 灯1.功能分析此次课程设计具体功能为:(1)采用不同的开关作为输入信号,8个LED灯作为输出信号。
(2)当按下不同的开关时(每次只能按下一个开关,不能同时按下多个开关)LED灯会出现不同的闪烁方式。
当开关段开始,LED灯自动熄灭。
2.实验原理(系统连接图的设计)8255A是一种通过可编程并行I/O接口芯片。
广泛用于几乎所有系列的微机系统中,8255A具有三个带锁存或缓冲的数据端口,可与外设并行进行数据交换,8255A有多种操作方式,通用性较强,可为CPU与外设之间提供输入/输出通道。
8255A和各端口内具有中断控制逻辑,在外设与CPU之间可用中断方式进行信息交换,使用条件传输方式时可用“联络”线进行控制。
在实验中,我们运用8255为CPU与外设之间提供输入输出输出通道来实现对走马灯花样变换的控制。
8086微处理器,选择最小工作模式,所有的总线控制信号均由8086产生;8086CPU的地址\数据总线AD15-AD0和地址\状态总线A16/S3-A19/S6是复用的,必须通过地址锁存器把地址总线和数据总线分离。
61单片机课程设计可以调控的跑马灯
61-单片机课程设计-可以调控的跑马灯1000字设计目的本课程设计旨在通过单片机编程实现一个可调控的跑马灯,加深学生对单片机概念、程序设计、输入输出等方面的理解,提高学生的程序设计能力。
设计实验材料1. 基于8051单片机的电路板2. LED灯3. 电阻器4. 按钮5. 电源(可使用9V电池或其他稳定的直流电源)实验过程1. 搭建基于8051单片机的电路板,连接LED灯和电阻器2. 编写跑马灯程序,其中需要实现以下功能:(1)通过按下按钮,控制灯的亮灭(2)通过另一个按钮,调整灯的亮度(3)通过另一个按钮,调整灯的闪烁频率3. 烧录程序到单片机中4. 连接电源,测试跑马灯的各项功能程序设计本跑马灯程序采用C语言编写,主要实现以下几个功能:1. 初始化LED灯、按键和定时器等相关IO口2. 判断按键被按下,执行相应的操作3. 调整LED灯的亮灭状态,并通过调整亮度和闪烁频率实现可调控功能程序流程:1. 初始化相关IO口和定时器2. 进入主循环3. 判断按钮是否被按下4. 若开始按钮被按下,则设置灯的状态为ON5. 若结束按钮被按下,则设置灯的状态为OFF6. 若调整亮度按钮被按下,则调整PWM占空比,实现亮度调整7. 若调整闪烁频率按钮被按下,则调整定时器的周期,实现闪烁频率调整8. 延时一段时间9. 回到主循环程序代码:```#include <reg52.h>#define LED P1 // LED灯#define PWM P2 // 调整亮度sbit startButton = P3^0; // 开始按钮sbit endButton = P3^1; // 结束按钮sbit pwmButton = P3^2; // 调整亮度按钮sbit freqButton = P3^3; // 调整闪烁频率按钮void timer0_init() // 初始化定时器{TMOD = 0x01;TH0 = 0x3C;TL0 = 0xB0;TR0 = 1;}void pwm_init() // 初始化PWM {TMOD |= 0x02;TL1 = 0x00;TH1 = 0xFD;ET1 = 0;TR1 = 1;}void main(){unsigned long cnt = 0;unsigned char pwm_value = 0; LED = 0x00;PWM = 0x00;timer0_init();pwm_init();while (1){if (startButton == 0){LED = 0x01;}else if (endButton == 0){LED = 0x00;}else if (pwmButton == 0){pwm_value++;if (pwm_value >= 255){pwm_value = 0;}CCAP0H = pwm_value;}else if (freqButton == 0){cnt++;if (cnt >= 1000){cnt = 0;}TH0 = (65536 - 1000) / 256; TL0 = (65536 - 1000) % 256; }while (TF0 == 0); // 等待定时器 TF0 = 0;}}```实验结果将程序烧录到单片机后,连接电源,按下不同的按钮,可调控跑马灯的亮度和闪烁频率。
单片机课程设计--跑马灯设计
单片机课程设计(跑马灯设计)专业:电气自动化摘要AT89C51是一种带4K字节闪存可编程可擦除只读存储器(FPEROM—Flash Programmable and Erasable Read Only Memory)的低电压、高性能CMOS 8位微处理器,即单片机。
AT89C2051是一种带2K字节闪存可编程可擦除只读存储器的单片机。
单片机的可擦除只读存储器可以反复擦除1000次。
该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。
该设计使用AT89C51芯片作为控制芯片,利用P1口连接8个发光二极管,通过I/O的值控制“跑马灯”的亮灭,以达到显示效果。
开始时所有灯全亮,按下按键S时开始跑马灯,再按下按键S时停止,再按下S时继续,并要求有多种亮暗组合。
关键词:AT89C51单片机跑马灯按键目录摘要 (I)第一章芯片分析和设计概述 (3)第一节AT89C51芯片分析 (3)第二节设计概述 (8)第二章硬件电路设计 (9)第三章程序部分设计 (10)参考文献 (18)第一章芯片分析和设计概述第一节AT89C51芯片分析ATMEL的AT89S51是一种高效微控制器,将多功能8位CPU和闪烁存储器组合在单个芯片中,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
AT89C51的芯片引脚图如下:图1.1 AT89C51引脚图各引脚的说明和功能分析如下:VCC:供电电压。
GND:接地。
P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。
当P1口的管脚第一次写1时,被定义为高阻输入。
P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。
在FIASH 编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。
P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。
微机原理课程设计音乐跑马灯程序
dseg segmentnumdw 0num1dw 0data1db 0FEh,0FDh,0FBh,0F7h,0EFh,0DFh,0BFh,7Fhdata2db 7Fh,0BFh,0DFh,0EFh,0F7h,0FBh,0FDh,0FEhdata3db 7Eh,0BDh,0DBh,0E7h,0E7h,0DBh,0BDh,7Ehdata4db 0fch,0f9h,0f3h,0e7h,0e7h,0cfh,09fh,03fhdata5db 03fh,09fh,0cfh,0e7h,0e7h,0f3h,0f9h,0fchdseg endscode segmentassumecs:code,ds:dsegstart:movax,dsegmovds,axmov dx,406hmov al,36houtdx,almov ax,20000mov dx,400houtdx,almoval,ahmov dx,400hout dx,al ;初始化8253mov dx,0206h ;取8255A的控制端口的地址mov al,8bh ;初始化8255A的A口为输出模式,B口为输入模式,c输入outdx,almov dx,0200h ;取8255的端口A的地址mov al,0FFh ;使8255的PA0-PA7全为1outdx,almov dx,0202h ;取8255的端口B的地址in al,dx ;检测B口输入信号mov dx,0200h ;取8255的端口A的地址mov al,0FFh ;使8255的PA0-PA7全为1out dx,al ;使所有的灯LED全灭ledflashproc ;检测开关闭合,以便确定哪种闪烁方式mov dx,0202h ;取8255A的端口B的地址in al,dx ;检测B口输入信号choice1:cmp al,07ehjne choice2movsi,offset data1 ;置第一种灯光变幻组合jmp herechoice2:cmp al,07dhjne choice3movsi,offset data2 ;置第二种灯光变幻组合jmp herechoice3:cmp al,07bhjne choice4movsi,offset data3 ;置第三种灯光变幻组合jmp herechoice4:cmp al,077hjne choice5movsi,offset data4 ;置第四种灯光变幻组合jmp herechoice5:cmp al,06fhjne choice6movsi,offset data5 ;置第五种灯光变幻组合jmp herechoice6:cmp al,05fhjne choice7mov al,0mov dx,0200houtdx,alchoice7: ;每盏灯亮完检测开关,如果停止开关没有按下跳到choice5 cmp al,07fhjne choice8jmp exitchoice8:cmp num,0h;检测num是否为0,若为0扫描开关,若不为0继续执行jne herejmpledflashhere:movbx,nummov al,[si+bx]mov dx,0200h ;取8255的端口A的地址out dx,al ;输出加电数据到端口Aincnum ;改变数字变量的值cmp num,09hje exitcall delayjmpledflashexit:mov num,0jmpledflashretledflashendpdelayproc neardl4: mov dx,0204hinal,dxand al,01hcmp al,1jz dl4retdelay endpcode endsend start。
PROTEUS 跑马灯 单片机课程设计
微型计算机技术课程设计报告专业:通信工程班级:xxxxxxxxx姓名:XXX学号:xxxxxxx指导教师:XX时间:xxx通信与电子信息工程学院8255扩展一、课设目的、内容;1.目的:为了进一步巩固学习的理论知识,增强学生对所学知识的实际应用能力和运用所学的知识解决实际问题的能力,开始为期两周的课程设计。
通过设计使学生在巩固所学知识的基础之上具有初步的单片机系统设计与应用能力。
(1).通过本设计,使学生综合运用《微型计算机技术》、《C语言程序设计》以及《数字电路》、《模拟电路》等课程的内容,为以后从事电子产品设计、软件编程、系统控制等工作奠定一定的基础。
(2).学会使用KEIL C和PROTEUS等软件,用C语言或汇编语言编写一个较完整的实用程序,并仿真运行,保证设计的正确性。
(3).了解单片机接口应用开发的全过程:分析需求、设计原理图、选用元器件、布线、编程、调试、撰写报告等。
2.内容:8155或8255扩展用8155或8255扩展IO实现16个LED的跑马灯,提供多种跑马灯运行模式二、问题分析、方案的提出、设计思路及原因;本次课程设计的题目是8255的扩展,利用AT89C52驱动扩展8255数据输出口来实现16个LED跑马灯的显示。
但是在80C52系列单片机中,有四个8位I/O 端口,但真正能够提供给用户使用的只有P1口,因为P0口和P2口通常需要用来传送外部存储器的地址和数据,P3口也需要使用它的第二功能。
因此,单片机提供给用户的I/O接口线并不多,对于复杂的一些的应用系统都应该进行I/O 口的扩展。
8255具有24个可编程设置的I/O口,即使3组8位的I/O口为PA口,PB 口和PC口.而8255又有多种运行模式,而这些操作模式完全由控制寄存器的控制字决定。
利用8255的控制字模式来定义8255输出口的个数,驱动所需的LED 灯的个数,实现课题目的。
在仿真实验中,两个按键分别控制跑马灯的顺序显示、跳跃显示两种运行方式,顺序显示分别是一个、两个、四个、八个LED灯依次亮。
跑马灯控制器 微机原理课程设计 丁同飞 0904013004
合肥学院计算机科学与技术系微机原理与接口技术课程设计报告2011~2012学年第1学期课程微机原理与接口技术课程设计名称跑马灯控制器学生姓名丁同飞学号**********专业班级计算机科学与技术专业(09计本3)指导教师张向东教授2012 年 1 月一、题意分析及解决方案1、题意需求分析本次实验需要用STAR ES598PCI单板开发机和接口设计跑马灯控制器,应用软件控制并行接口电路,使连接在该接口上的8个发光二极管和8个控制开关,按控制开关定义的功能形式闪烁。
跑马灯的含义:通过开关来控制LED指示灯的不同闪烁形式,而不同的闪烁形式通过给开关设定不同的编码来确定不同的闪烁形式,使LED指示灯呈现一种流动闪烁的状态。
下面列出跑马灯可能的闪烁形式:1、依次左移或右移闪烁2、隔一左移或隔一右移闪烁3、隔二左移或隔二右移闪烁4、左右相向移动闪烁5、左右从中间向两边依次闪烁6、从左至右先依次点亮再反向熄灭为了实现上述功能,需要解决一些问题:1、需要使用什么芯片来实现跑马灯控制器的运行?2、开关的扫描问题?如何设置开关的编码?3、选择了芯片后,如何设置芯片控制口的端口地址以及各端口的输入输出形式?4、开关的不锁存是否有影响?5、如何使显示灯变化过程中给人视觉上产生依次闪烁的效果?2、解决问题及思路(1)硬件部分本实验需要在STAR ES598PCI单板开发机中执行,所用到用户程序存储器共32KB,集成环境为Winxp Xingyan,接口选择8255A芯片,控制用逻辑开关。
接口方面:8255芯片是可编程的并行接口芯片,不需要附加外部电路便可和大多数并行传输数据的外部设备相连,数据的各位同时传送,使用十分方便。
8255A芯片内部有三个8位端口,分别为A口、B口和C口。
这三个端口可与外部设备相连接,可用来与外设进行数据信息、控制信息和状态信息的交换。
本实验为了实现跑马灯的并行输入输出,选择奖8255A中的A口作为输出口,B口作为输入口,A口接8个LED指示灯,通过指示灯的移动闪烁来实现跑马。
跑马灯实验
数学计算机科学学院实验报告专业名称:物联网工程实验室:学苑南楼1幢403室实验课程:微机原理和接口技术实验名称:跑马灯姓名:高鹏飞学号:120706006实验日期:2014年11月1日星期一一、实验目的1.掌握跑马灯实验原理2.熟悉debug环境下编写程序3.在独立运行的单板机配置方式下,输入目标代码,运行,观察实验现象,分析其结果的正确性。
二、实验仪器1、AEDK8688ET教学实验机2.pc机三、实验原理CPU将数据通过8255并口送入LED,控制显示输出并口8255内部结构框图工作方式控制字:方式0-基本输入输出方式8255驱动LED显示输出jmp abc(3)修改程序,每输出一个数据延迟一段时间mov cx,ffffhdely: loop dely观察实验现象(4)在debug环境下,反汇编找出其目标代码(5)在独立运行的单板机配置方式下,输入目标代码,运行,观察实验现象,分析其结果的正确性。
(6)全速运行:GO IP.在实验箱的具体操作步骤(1)在实验箱上先执行EB命令显示/修改内存单元的内容。
(2)将段地址设置为8000,偏移地址设置为300(在“-”状态下,按“EB”出现“.”提示符,输入段地址8000“:”偏移地址300“,”出现该单元内容,按“,”出现下一单元内容,继续按“,”出现下一单元内容,此时输入新的内容,此单元内容可以修改(内容即反汇编中输入内容),按“ .”可以退出。
)在跑马灯实验当中即(B080BA1B02EEBOFEBA1802EED0C0EBFB000000000000000000000000340053130 0)(3)在“-”状态下,按“ST”出现,出现IP的值,若和输入的不符,直接新值,按“,”执行。
即把段地址和偏移地址改成8000和300五、实验结果和分析跑马灯从左至右依次亮起。
微机基础原理(根据PROTEUS的跑马灯系统设计及仿真)
学号:课程设计题目基于PROTEUS的跑马灯系统设计及仿真学院自动化学院专业自动化班级姓名指导教师2012 年 1 月12 日任务书目录引言 (1)1总体方案论证 (2)1.1功能分析 (2)1.2系统连接图设计 (2)1.2.1锁存控制电路 (5)1.2.2可编程并行通信接口芯片8255A (6)2程序流程图设计及其说明 (9)3关键程序段落说明 (11)3.1数据段定义 (11)3.2程序初始化 (11)3.3芯片初始化 (12)3.4初始LED亮灭状态 (12)3.5检测按键开关子程序 (12)3.6延时程序片段 (14)3.7灯光变换控制 (15)4程序调试说明 (16)5结果记录及分析 (17)心得体会 (19)参考文献..................................................................... 错误!未定义书签。
引言微型计算机简称微机,由于具备人脑某些功能,所有又叫做微机。
是由大规模集成电路组成的、体积较小的电子计算机。
它是以微处理器为基础,配以内存储器及输入输出接口电路和相应的辅助电路构成的裸机。
把微型计算机集成在一个芯片上即构成单片微型计算机。
学习微机原理与接口技术,主要内容包括微型计算机体系结构、8086微处理器和指令系统、汇编语言、设计以及微型计算机各个组成部分,而其中很大一块就是汇编语言的学习。
汇编语言是面向机器的程序设计语言,也是利用计算机所有硬件特性并能直接控制硬件的语言。
用汇编语言编写的程序由于目标程序占用内存少,运行速度快,它有着高级语言不可替代的用途。
因此,学习汇编语言是很必要的,通过学习汇编语言可以体会它的作用。
通过本次课程设计让我们进一步深入汇编语言的学习,掌握简单的接口设计技术,将理论知识联系实际,进一步学习微机原理与接口技术的相关知识,为以后深入学习打下良好的基础。
1总体方案论证1.1功能分析此次课程设计的要求为,设计微型计算机最小系统,实现跑马灯的模拟显示功能。
论文-利用8255实现花式跑马灯
太原工业学院汇编语言与微机原理课程设计报告学生姓名:学号:系部: 计算机工程系专业: 计算机科学与技术题目: 利用8255实现花式跑马灯成绩指导教师2016年6月28日1.设计内容1)设计电路;2)实现6种不同的跑马灯样式;3)跑马灯的运行状态可由开关控制4)要有暂停跑马灯按钮控制即跑马灯的状态切换。
2.总体设计1)设计原理本实验通过循环检测A口数据,判断按得是哪个开关,如开关1按下,则向AL送01h,并送至B口,循环左移AL达到灯的流水下移,调用延时子程序控制灯闪亮时间,通过BH的赋值控制循环次数,达到时间定时效果。
每循环一个周期,CPU都会检测A口的值,从而能即时切换跑马灯花式。
2)设计跑马灯方案a)按下开关1,跑法1,AL初值01H,循环左移,控制一个亮灯自上而下跑动。
b)按下开关2,跑法2,AL初值81H,循环右移,控制一个亮灯自下而上跑动。
c)按下开关3,跑法3,AL初值0AAH,循环左移,控制间隔4个灯同时闪亮。
d)按下开关4,跑法4,AL初值0C0H,循环右移,控制两个亮灯自下而上跑动。
e)按下按键5,跑法5,AL初值05H,循环左移,控制亮暗亮3灯自上而下跑动。
f)按下开关6,跑法6,AL初值0AAH,循环左移,控制间隔4个灯同时闪亮,相比按键3,跑动时间更长,以显示定功能。
g)按下开关7按下,跑马灯暂停工作,再次按下跑马灯继续工作。
3.硬件设计1)Proteus元件清单及功能说明元件名称功能说明8086 微处理器8255A 可编程外设接口电路,主要接收外设的开关状态来判断跑马灯的样式,以及输出所要的结果74LS273 是带有清除端的8D触发器,只有在清除端保持高电平时,才具有锁存功能,锁存控制端为11脚CLK,采用上升沿锁存74154 4-16译码器7427 3输入与非门LED-RED 红LED发光管NOT 非门PULLUP 上拉电阻,分压作用BUTTON 按钮式开关,鼠标点击开关后会自动弹起2)电路设计图a)8086微处理机与锁存器、译码器连接b)8255A与跑马灯开关控制连接图c)8255A与跑马灯LED显示灯连接图4. 软件设计1)程序设计思路利用查询式不断循环查询控制跑马灯样式的开关状态,进而编写程序来控制跑马灯的输出样式。
微机原理课程设计跑马灯
微机原理课程设计走马灯运用8086最小模式和8255等芯片设计出一个跑马灯电路,要求至少有5中花式,在ISIS 7 Professional软件中运行。
设计电路图如图所示:源代码DATA SEGMENTDATA ENDSCODE SEGMENTASSUME CS:CODE ,DS:DATA START :MOV AX,DATAMOV DS,AXMOV AL,10010000B OUT 96H,ALA0: IN AL,90HNOT ALMOV BL,ALOUT 92H,ALCMP AL,1JNZ A3A2: MOV DL,AL ;第一个开关实现从上至下的流水 OUT 92H,ALIN AL,90HNOT ALCMP AL,BLJNZ A0MOV CX,50000A1: LOOP A1MOV AL,DLROL AL,1JMP A2A3: CMP AL,2 ; 实现第二个开关从下至上的流水 JNZ A6MOV AL,80HA5: MOV DL,ALOUT 92H,ALMOV CX,50000A4: LOOP A4IN AL,90HNOT ALCMP AL,BLJNZ A0ROR AL,1JMP A5A6: CMP AL,4 ;第三个开关实现相隔的两个灯自上而下流水JNZ A9MOV AL, 05HA8: MOV DL,ALOUT 92H,ALMOV CX,20000A7: LOOP A7IN AL,90HNOT ALCMP AL,BLJNZ A0MOV AL,DLROL AL,1JMP A8A9: CMP AL,8 ;第四个开关实现相隔的两个灯从下而上流水JNZ A12MOV AL,0A0HOUT 92H,ALMOV CX,20000A10: LOOP A10IN AL,90HNOT ALCMP AL,BLJNZ A0MOV AL,DLROR AL,1JMP A11A12: CMP AL,10HJNZ A17A16: MOV AL,18H ;第五个开关实现从中间向两边流水 A14: MOV DL,ALOUT 92H,ALMOV CX,20000A13: LOOP A13IN AL,90HNOT ALCMP AL,BLJNZ A0CMP AL,81HJZ A16AND AL,0F0HMOV CX,0MOV CH,ALROL CH,1MOV AL,DLAND AL,0FHMOV CL,ALROR CL,1ADD CH,CLMOV AL,CHJMP A14A17: CMP AL,20H ;第六个开关实现从两边向中间流水 JNZ A0A19: MOV AL,81HA20: MOV DL,ALOUT 92H,ALMOV CX,20000A18: LOOP A18IN AL,90HNOT ALCMP AL,BL JNZ A0MOV AL,DL CMP AL,18H JZ A19AND AL,0F0H MOV CX,0MOV CH,AL ROR CH,1MOV AL,DL AND AL,0FH MOV CL,AL ROL CL,1ADD CH,CL MOV AL,CH JMP A20RETCODE ENDSEND START运行后程序如图所示:。
闪烁式跑马灯课程设计
闪烁式跑马灯课程设计一、课程目标知识目标:1. 学生能理解跑马灯的基本原理,掌握闪烁式跑马灯电路的设计与搭建。
2. 学生能够运用所学的电子元件知识,正确选择并使用所需的元器件。
3. 学生理解并掌握跑马灯程序设计的基本思路,能够编写简单的跑马灯程序。
技能目标:1. 学生通过动手实践,培养电路搭建和调试的能力。
2. 学生通过编程实践,提高逻辑思维能力和问题解决能力。
3. 学生能够运用团队协作,共同完成跑马灯项目的制作。
情感态度价值观目标:1. 学生培养对电子技术的兴趣,激发学习科学技术的热情。
2. 学生在学习过程中,树立正确的价值观,认识到科技进步对生活的影响。
3. 学生通过团队协作,培养沟通与合作的意识,增强团队荣誉感。
课程性质:本课程为电子技术实践课,以项目式教学为主,注重学生的动手实践能力和创新思维能力的培养。
学生特点:本课程针对的是初中年级学生,他们对电子技术有一定的好奇心,喜欢动手实践,但理论知识相对薄弱。
教学要求:结合学生特点,教师应以引导为主,让学生在实践中学习,注重培养学生的创新意识和实际操作能力。
在教学过程中,将课程目标分解为具体的学习成果,以便于教学设计和评估。
二、教学内容1. 理论知识:- 介绍跑马灯的基本原理,包括电路工作原理和程序设计思路。
- 讲解并认识所需的电子元器件,如LED灯、电阻、微控制器等。
- 概述编程基础知识,如循环结构、条件语句等。
2. 实践操作:- 搭建闪烁式跑马灯电路,学习电路连接和调试方法。
- 编写跑马灯程序,掌握程序设计的基本步骤和技巧。
- 实践团队协作,共同完成跑马灯项目制作。
3. 教学大纲:- 第一阶段(1课时):介绍跑马灯原理和电子元器件,明确学习目标。
- 第二阶段(2课时):指导学生搭建电路,讲解编程基础知识。
- 第三阶段(3课时):编写程序,调试电路,完成跑马灯制作。
- 第四阶段(1课时):成果展示,总结评价,交流经验。
4. 教材关联:- 本教学内容与教材中关于电子技术基础、编程入门等章节相关。
微机原理跑马灯课设报告
微机原理课程设计说明书设计题目:跑马灯学院计算机科学与工程学院专业计算机科学与技术专业班级学生学号同组者指导教师目录一、实验简介.......................................................... - 2 -1、基本要求 ............................................................................. - 2 -2、设计提示 ............................................................................. - 2 -3、进一步设计要求 ................................................................. - 2 -二、实验原理.......................................................... - 2 -1、实验原理描述 ................................................................... - 2 -2、8254芯片............................................................................. - 3 -2.1、8254芯片组成部分 .................................................. - 3 -2.2、8254芯片工作方式 .................................................. - 3 -3、8255芯片............................................................................. - 4 -3.1、8255芯片的组成部分 .............................................. - 4 -3.2、8255芯片工作方式 .................................................. - 6 -4、实验原理图.................................................................................... - 6 -三、实验流程图与源程序...................................... - 6 -1、流程图 ............................................................................... - 6 -1.1、主程序流程图 ...................................................... - 7 -1.2 Appmain 子程序流程图............................................. - 7 -1.3 灯跳转阶段流程图 ..................................................... - 9 -2、源程序(见附录) ................................................................... - 9 -四、实验结果与测试............................................ - 15 -五、实验提高与扩展............................................ - 16 -六、个人心得与体会............................................ - 16 - 附录 .......................................................................... - 18 -一、实验简介:1、基本要求:采用8254精确定时,LED的点亮规律为LED7--->LED0,每一个LED 的点亮时间间隔由逻辑电平开关K1、K2、K3选择,K1的时间间隔为0.5s,K2的时间间隔为1.0s,K3的时间间隔为1.5s。
课题4 跑马灯的设计与调试
29
INT1/ P3.3 13
28
T0/ P3.4 14
27
T1/ P3.5 15
26
WR/ P3.6 16
25
RD/ P3.7 17
24
XTAL2 18
24
XTAL1 19
22
VSS 20
21
VCC P0. 0 P0.1 P0.2 P0.3 P0.4 P0.5 P0.6 P0.7 EA ALE
PSEN P2.7 P2.6 P2.5 P2.4 P2.3 P2.2 P2.1 P2. 0
❖ 对I/O口的操作,是一个“读-改-写”的过程。
❖ 当P3口的通用I/O口和第二功能不能同时兼用。
浙江机电职业技术学院
单片机的并行I/O口
8051 #1111 1111 B
P0.0
SFR区
P1.0 1 1
P0.1
P1.1 1
.
.
P0
P1
.1 1
.
.
P3
P2
.1
.
.
.1
P0.7
P1.7 1
MOV P1 , #1111 1111B
4 5
37 P0.2 36 P0.3
1 P1.5 6
35 P0.4
P1.6 7 8051 34 P0.5
1 P1.7 8
33 P0.6
RST
RX1D/ P3. 0
9 10
32 P0.7 31 EA
ITNXT1D0//
P3.1 P3.2
11 12
30 ALE 29 PSEN
INT1/ P3.3 13
28 P2.7
2
位或指令
2
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
微机原理课程设计走马灯
运用8086最小模式和8255等芯片设计出一个跑马灯电路,要求至少有5中花式,在ISIS 7 Professional软件中运行。
设计电路图如图所示:
源代码
DATA SEGMENT
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE ,DS:DATA START :MOV AX,DATA
MOV DS,AX
MOV AL,10010000B OUT 96H,AL
A0: IN AL,90H
NOT AL
MOV BL,AL
OUT 92H,AL
CMP AL,1
JNZ A3
A2: MOV DL,AL ;第一个开关实现从上至下的流水 OUT 92H,AL
IN AL,90H
NOT AL
CMP AL,BL
JNZ A0
MOV CX,50000
A1: LOOP A1
MOV AL,DL
ROL AL,1
JMP A2
A3: CMP AL,2 ; 实现第二个开关从下至上的流水 JNZ A6
MOV AL,80H
A5: MOV DL,AL
OUT 92H,AL
MOV CX,50000
A4: LOOP A4
IN AL,90H
NOT AL
CMP AL,BL
JNZ A0
ROR AL,1
JMP A5
A6: CMP AL,4 ;第三个开关实现相隔的两个灯自上而下流水
JNZ A9
MOV AL, 05H
A8: MOV DL,AL
OUT 92H,AL
MOV CX,20000
A7: LOOP A7
IN AL,90H
NOT AL
CMP AL,BL
JNZ A0
MOV AL,DL
ROL AL,1
JMP A8
A9: CMP AL,8 ;第四个开关实现相隔的两个灯从下而上流水
JNZ A12
MOV AL,0A0H
OUT 92H,AL
MOV CX,20000
A10: LOOP A10
IN AL,90H
NOT AL
CMP AL,BL
JNZ A0
MOV AL,DL
ROR AL,1
JMP A11
A12: CMP AL,10H
JNZ A17
A16: MOV AL,18H ;第五个开关实现从中间向两边流水 A14: MOV DL,AL
OUT 92H,AL
MOV CX,20000
A13: LOOP A13
IN AL,90H
NOT AL
CMP AL,BL
JNZ A0
CMP AL,81H
JZ A16
AND AL,0F0H
MOV CX,0
MOV CH,AL
ROL CH,1
MOV AL,DL
AND AL,0FH
MOV CL,AL
ROR CL,1
ADD CH,CL
MOV AL,CH
JMP A14
A17: CMP AL,20H ;第六个开关实现从两边向中间流水 JNZ A0
A19: MOV AL,81H
A20: MOV DL,AL
OUT 92H,AL
MOV CX,20000
A18: LOOP A18
IN AL,90H
NOT AL
CMP AL,BL JNZ A0
MOV AL,DL CMP AL,18H JZ A19
AND AL,0F0H MOV CX,0
MOV CH,AL ROR CH,1
MOV AL,DL AND AL,0FH MOV CL,AL ROL CL,1
ADD CH,CL MOV AL,CH JMP A20
RET
CODE ENDS
END START
运行后程序如图所示:。