当前位置:文档之家› 【实验四跑马灯设计】跑马灯实验

【实验四跑马灯设计】跑马灯实验

【实验四跑马灯设计】跑马灯实验
【实验四跑马灯设计】跑马灯实验

【实验四跑马灯设计】跑马灯实验

实验四跑马灯设计(8255A)

一、实验目的

掌握可编程并行接口8255A方式0的工作原理及使用方法。二、实验仪器与

1. TPC-H通用微机接口实验系统1台

2. PC微机1台

3. 导线若干三、实验内容

1. 实验电路如图,8255A的C口接逻辑电平开关K0-K7,A口接LED发光二极管显示

电路L0-L7。

2. 实现从8255的C口输入数据,再从A口输出,根据8个发光二极管的发光情况与

开关的状态来验证接口的正确性。

3. 试编写程序,实现跑马灯功能。即使相邻两个灯亮,延时一段时间后顺序使下两个

灯亮,循环下去……直到开关K0闭合,程序退出。

四、实验流程图

1.检验接口正确性

2.跑马灯

五、实验电路图

六、实验程序

1. 检查接口是否正确

IO EQU 288H;定义8255地址 CODE SEGMENT ASSUME CS: CODE START:

MOV DX, IO+3

MOV AL, 10001001B; 写控制字 OUT DX, AL

LP: MOV DX, IO+2

IN AL, DX;读开关状态 MOV DX, IO

OUT DX, AL;将开关状态输出到LED JMP LP;返回循环 CODE ENDS END START

2. 跳马灯

IO EQU 288H N EQU 0FFFFH CODE SEGMENT

ASSUME CS: CODE START:

MOV DX,IO+3 MOV AL,10001001B OUT DX,AL

MOV AL,03H LP:

MOV DX,IO OUT DX,AL ROL AL,1 ROL AL,1 MOV CX,N LP1: NOP

LOOP LP1

MOV CX,N LP2: NOP

LOOP LP2

MOV CX,N LP3: NOP

LOOP LP3

MOV CX,N ;定义8255地址

;定义延时时间 ;DX间址计8255控制口 ;写控制字 ;写循环初

值 ;DX间址计8255A口 ;输出循环初值 ;向左移位 ;向左移位 ;延时 ;延时 ;延时 ;延时

LP4: NOP

LOOP LP4

MOV BL,AL ;将AL数据转存到BL

MOV DX,IO+2 ;DX间址计8255C口 IN AL,DX ;读入开关状态 MOV CL,07H ;移位 SAL AL,CL

CMP AL,10000000B ;判断开关是否有动作 JZ EXIT ;K0闭合则退出

MOV AL,BL ;否则将BL数据存入AL JMP LP EXIT:

MOV AH,4CH ;退出程序 INT 21H

CODE ENDS END START

七、实验现象分析

1. 实现了用8 个二极管的发光情况与开关的状态来验证接口的正确性。

2. 实现了跑马等功能,在修改程序之前,8个二极管是全亮的,我认为出现这种情况

的原因是,延时太短,导致看不出来灯亮灭的变化。所以我们在程序中多加了几组延时,从而达到了跑马灯的实验效果。

内容仅供参考

跑马灯课程设计报告

课程设计报告 课题名称基于AT89S51的跑马灯设计 系别机电系 专业 班级 学号 学生姓名 指导教师 完成日期2010年月 教务处制 基于AT89S51的跑马灯设计 一、设计任务与要求 1.设计任务 选择采用AT89S51、74LS245、ULN2803、LED等器件,使用汇编语言实现各种跑马灯动态显示效果设计。 2.设计要求 实现16个LED的全亮、全灭、交错显示、流水灯显示等。可结合灯的排布以及程序设计实现各种跑马灯动态显示效果。三个输入按键,按键S2时,LED 灯亮点依次流动;按键S3时,依次点亮LED灯;按键S4时,LED灯交错点亮。 3.设计目的 通过本课程设计掌握单片机系统设计思路和基本步骤;掌握LED驱动电路、延时程序和按键处理程序设计。能熟练使用Wave6000软件、编程器或下载线。熟悉Keil、PROTEUS、Protel99se等相关软件的使用。 二、方案设计与论证 在日常生活中,我们总是花样百出的流水灯光,随着电子技术的飞速发展,人们对灯的花样要求也就更多,如全亮、全灭、交错显示、流水灯显示等。因此,跑马灯得到了广泛的应用。 一个由单片机控制的较简单的数字钟由电源电路、控制电路、驱动电路、显示电路4部分组成。

1. 控制电路 控制电路时整个电路的核心,主要由单片机 来完成。AT89S51单片机的管脚图如图(1)所示。 单片机执行指令是在时钟脉冲控制下进行的,因 此,单片机必须外接振荡器构成时钟电路才能正 常工作。另外,还应该在单片机的RES端外接电 阻电容构成复位电路,当单片机运行错误时可以 给一个复位信号使其复位。 单片机的对接口电路的控制是由软件向单片 机的I/O口(即P0~P3口)来实现的。AT89S51 单片机内部由两个定时/计数器,可以用其中一个 定时/计数器来对时间进行计数,而另一个可以对 显示器的显示延时进行定时并通过中断把相应的 数据通过I/O 口送给显示器显示。同时,通过对图1 A T89S51管脚图 外部按键的状态判断来进行时间的调整。 2. 显示电路 作为显示电路,采用16个LED灯来进行显示,实现全亮、全灭、交错显示、流水灯显示等。 3. 驱动电路 由于单片机的I/O口输出电流比较弱,不够驱动一位LED数码管,因此,必须在I/O 口和LED数码管之间接一驱动器和限流电阻来驱动LED数码管。 4. 电源电路 由于外部的干扰如电压、电流的波动可能造成直流电源的不稳定,因此,可在电源两端接上滤波器来降低外部干扰对电源造成的影响。 三、单元电路设计 1.时钟电路 单片机执行指令是在时钟脉冲控制下进行的,因此时钟信号时单片机的基本工作条件。可以通过测量第30脚ALE是否有输出时钟脉冲的六分频信号来判断时钟信号是否正常。 时钟可以由内部和外部两种方式产生,本设计采用内部方式。如图(2)所示,在XTAL1和XTAL2引脚上外接定时元件。定时元件通常采用振荡器和电容组成的并联谐振电路。X1为振荡器,C1、C2为电容。振荡器的振荡频率主要取决于晶体,电容对振荡频率由微调作用。外接晶体振荡器时,电容值可选在30pF左右。 图2 内部时钟电路图3 电源滤波电路2.电源电路 如图(3)所示,为了提高电源的稳定,由两个电容并联连接电源两极构成电源滤波电路。C4电容值比较大,用于滤低频;C5容值比较小,用于滤高频。 3.复位电路 一个时钟周期为振荡周期的2倍,6个时钟周期构成一个机器周期,即12个时钟周期构成一个机器周期。在RES引脚上输入一个超过两个机器周期的高电平信号,单片机就可以复位。如时钟频率为12MHz,则有效的复位信号至少应保持2μs以上。 复位电路可以有两种方式:上电复位电路和外部按键复位电路。图(4)所示为单片机的上电复位电路。在上电瞬间,因为电容两端的电压不能突变,RST引脚上电位与Vcc相同。随着电容器充电过程的进行,RST引脚上的电位逐渐下降。只要适当选择C和R的数值,即可顺利实现复位操作。

跑马灯实验报告.

山西大学数字电子技术基于硬件设计的跑马灯电路 系别:电力工程系 班级:电本1254班 姓名:所谓伊人 学号: 12322454**

一、实验目的 1. 熟悉NE555定时器,计数器CD4017的逻辑特性。 2. 熟悉NE555构成多谐振荡器原理。 3. 设计跑马灯电路并利用Multisim软件仿真电路。 二、实验要求 1. 知道NE555、CD4017的管脚排列顺序。 2. 利用NE555构成多谐振荡器。 3. 知道电阻的主要参数及其标注方法。(见实验指导书116页)。 4. 知道电容器的主要作用。(见实验指导书122页)。 5. 了解有关焊接的知识。 三、实验器材 电路板1块。电容:1μF(1个)。集成芯片:NE555(1个)、CD4017(1个)。电阻:22K?、1K?、500?各一个。二极管:IN4148(8个)、发光二极管(10个)。(自行提供)电池:5V 四、电路的安装 1.555用来定时,用它产生某种方波,相当于有的时钟信号 2.4017是个十进制计数器,按照时钟信号从10个口依次输出 1. 检查集成芯片NE555,CD4017的安装位置有无错误. 2. 检查电解电容的极性有无错误; 3. 检查二极管IN4148及发光二极管的安装方向有无错误; 4. 检查各个电阻的安装是否有误。 5. 检查有无虚焊。 五、电路的调试 1. 电路焊接好后,先将电路板正负端接到直流电压5V及地线处,观察发光二极管是否变亮。 2. 适当改变电位器阻值,观察其对CD4017

循环周期(发功二极管依次循环一周)的影响。 3. 利用秒表记录CD4017一个合适循环周期的时间。(分别测量电阻最大时、最小时、合适时的周期) 附录 1. 跑马灯电路图

微机原理————走马灯实验设计

微型计算机技术课程设计 指导教师:赵立辉李鹏 学生班级:计科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个,排电阻一个。 ③导线若干。 ④示波器、万用表、常用工具等共用(从实验室现借现还)

可以调控的跑马灯

单片机原理及应用课程设计 ( 2013 年至2014学年度第 2 学期) 题 目: 可以调控的走马灯 学 生 姓 名: 院(系、部): 机电工程学院 指 导 教 师: 设 计 时 间: 2014.6.9—2014.6.13 Hebei Normal University of Science & Technology 专业: 电子信息工程 学号: 0414110102

可以调控的走马灯 摘要:单片机自20世纪70年代问世以来,以其极高的性能价格比,受到人们的重视和关注,应用很广、发展很快,而51单片机是各单片机中最为典型和最有代表性的一种。本课程设计是基于MCS51系列单片机所设计的,用AT89S52芯片控制跑马灯(流水灯),整个系统有8种跑马灯模式可以选择,K1是选择模式键,并将相应的模式在LED七段数码管中显示出来,K2可以对跑马灯的速度进行加速,K3可以对跑马灯的速度进行减速。整个系统可以实现对跑马灯模式的多层控制,还可以进行加减速。 关键词:MCS51、跑马灯、加减速、七段数码管 一、概论 1.1 单片机基础知识 单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。概括的讲,一块芯片就成了一台计算机。 单片机具有体积小、功能强、应用面广等优点,目前正以前所未见的速度取代着传统电子线路构成的经典系统,蚕食着传统数字电路与模拟电路固有的领地。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。同时,学习使用单片机了解计算机原理与结构的最佳选择。 现在,这种单片机的使用领域已十分广泛。彩电、冰箱、空调、录像机、VCD、遥控器、游戏机、电饭煲等无处不见单片机的影子,单片机早已深深地融入我们每个人的生活之中。单片机能大大地提高这些产品的智能性,易用性及节能性等主要性能指标,给我们的生活带来舒适和方便的同时,在工农业生产上也极大地提高了生产效率和产品质量。单片机按用途大体上可分为两类,一种是通用型单片机,另一种是专用型单片机。 MCS-51单片机是美国INTEL公司于1980年推出的产品,与MCS- 48单片机相比,它的结构更先进,功能更强,在原来的基础上增加了更多的电路单元和指令,指令数达111条,MCS-51单片机可以算是相当成功的产品,一直到现在,MCS-51系列或其兼容的单片机仍是应用的主流产品,各高校及专业学校的培训教材仍与MSC-51单片机作为代表进行理论基础学习。MCS-51系列单片机主要包括8031、8051和8751等通用产品。 1.2 单片机的发展趋势 单片机现在可以说是百花齐放,百家争鸣的时期,世界上各大芯片制造公司都推出了自己的单片机,从8位、16位到32位,数不胜数,应有尽有,有与主流C51系列兼容的,也有不兼容的,但它们各具特色,互成互补,为单片机的应用提供了广阔的天地。现在常规的

跑马灯实验报告

电子系统综合设计报告 学号 201009120229 姓名李文海年级专业 2010级电子信息工程(二) 指导 教师刘怀强 学院理学院 走马灯实验论文--《嵌入式系统技术》 1、实验目的 1、学会dp-51pro实验仪监控程序下载、动态调试等联机调试功能的使用; 2、理解和学会单片机并口的作为通用i/o的使用; 3、理解和学会单片机外部中断的使用; 4、了解单片机定时器/计数器的应用。 2、实验设备 z pc 机、arm 仿真器、2440 实验箱、串口线。 3、实验内容 z 熟悉 arm 开发环境的建立。 z 使用 arm 汇编和 c 语言设置 gpio 口的相应寄存器。 z 编写跑马灯程序。 5、实验原理 走马灯实验是一个硬件实验,因此要求使用dp-51pro 单片机综合仿真实验仪进行硬件 仿真,首先要求先进行软件仿真,排除软件语法错误,保证关键程序段的正确。然后连接仿 真仪,下载监控程序,进行主机与实验箱联机仿真。 为了使单独编译的 c 语言程序和汇编程序之间能够相互调用,必须为子程序间的调用规 定一定的规则。atpcs ,即 arm , thumb 过程调用标准(arm/thumb procedure call standard),是 arm 程序和 thumb 程序中子程序调用的基本规则,它规定了一些子程序间调 用的基本规则,如子程序调用过程中的寄存器的使用规则,堆栈的使用规则,参数的传递规 则等。 下面结合实际介绍几种 atpcs 规则,如果读者想了解更多的规则,可以查看相关的书 籍。 1.基本 atpcs 基本 atpcs 规定了在子程序调用时的一些基本规则,包括下面 3 方面的内容: (1)各寄存器的使用规则及其相应的名称。 (2)数据栈的使用规则。 (3)参数传递的规则。 相对于其它类型的 atpcs,满足基本 atpcs 的程序的执行速度更快,所占用的内存更少。 但是它不能提供以下的支持: arm 程序和 thumb 程序相互调用,数据以及代码的位置无关 的支持,子程序的可重入性,数据栈检查的支持。 而派生的其他几种特定的 atpcs 就是在基本 atpcs 的基础上再添加其他的规则而形成 的。其目的就是提供上述的功能。 2.寄存器的使用规则 寄存器的使用必须满足下面的规则: (1) 子程序间通过寄存器 r0~r3 来传递参数。这时,寄存器 r0~r3 可以记作 a0~a3。 被调用的子程序在返回前无需恢复寄存器 r0~r3 的内容。 (2) 在子程序中,使用寄存器 r4~rll 来保存局部变量。这时,寄存器 r4~r11 可以记 作 v1~v8。如果在子程序中使用到了寄存器 v1~v8 中的某些寄存器,子程序进入时必须保

stm32跑马灯实验

详细了解,请点击https://www.doczj.com/doc/8611018357.html,/ 跑马灯实验 跑马灯实验是最简单,也是一般最先开始的一个实验,他可以搭建一个最小的工程项目,之后,所有的实验都可以建立在该项目之上,从而节省了在搭建过程中所消耗的时间和精力。所有的GPIO操作都是以跑马灯为基础进行的。 建议:当该实验顺利完成后,作为一个模板,供以后实验使用,最好把相关的某些代码封装起来,方便其他程序重用和其他功能调试时使用,这样可以确保您可以将精力花费在其他需要实现的功能上,而不是多次写下重复的代码。 实验目的: 1.分析和学习固件库 2.理解固件库的结构 3.通过stm32f10x_gpio.c/.h文件,熟悉GPIO的控制和工作原理 4.对开发板LED灯的再次软件封装 实验要求: 1.利用原理图和固件库的实例,移植开发板LED灯的驱动程序,即自己创建一个LED.c/.h 2.用两种方法实现跑马灯程序: 1.LED驱动 2.直接GPIO寄存器控制 硬件分析:

如上所示,4个LED链接在4个不同管脚上,即GPIOF6,GPIOF7,GPIOF8,GPIOC7. 当这4个管脚被置为低电平时,二极管导通。 通用输入输出接口(GPIO)介绍: 多达112多功能的双向IO口:80%的IO口利用率 所有的IO被分成7个端口,即7组GPIO口(GPIOA..GPIOG); 多达21路模拟输入; 可改变功能引脚(如:USARTx、TIMx、I2Cx、SPIx、CAN、USB等); 多达112个IO口可以设置为外部中断(同时可最多可有16个); 一个IO口可用于将MCU从待机模式唤醒(PA.0); 一个IO口可用作防入侵引脚(PC.13); 标准的I/O口可承受5V; IO口可以吸收25mA(总共可吸收150mA); 18MHz翻转速度; 可设置输出速度达到50MHz; 使用BSRR和BRR寄存器可对IO口的位进行位设置或清除; 锁定机制可以避免对IO口的寄存器的误写操作: 每个GPIO引脚都可以由软件配置成输出(推挽或开漏)、输入(带或不带上拉或下拉)或复用的外设功能端口。多数GPIO引脚都与数字或模拟的复用外设共用。 除了具有模拟输入功能的端口,所有的GPIO引脚都有大电流通过能力。 在需要的情况下,I/O引脚的外设功能可以通过一个特定的操作锁定,以避免意外的写入I/O寄存器。 7组GPIO的端口映射地址为:

走马灯教案

走马灯 一、教学目标: 1、知识目标 通过探究走马灯的动力来源,帮助学生掌握热动力方面的知识。 2、能力目标 锻炼学生利用实验器材完成实验的动手能力。 3、思维目标 通过以上两点提升学生的观察、分析的思维能力。 二、教学设计: 通过演示走马灯引发学生兴趣→观察走马灯的结构特点→探究使走马灯动起来的原因→从而使学生了有关热动力方面的知识 三、教学流程: 1、复习前课: 2、导入: 大家看到视频中的是什么?玩过吗?是什么原理? 我们来做几个小实验验证一下吧! ①酒精灯上空放手,感受热量。 ②在酒精灯火苗上方放塑料袋 ③拿两个杯子做一个天平,一边用灯在下方烧,观察情况。 ④纸蛇舞引出走马灯 【教师发问】在中国有一种传统的玩具,属于灯笼的一种,这个灯笼十分有趣, 当你点燃它时,它会马不停蹄的转起来。大家知道是什么吗? 对,它就是“走马灯”。有幅对联的上联说:“走马灯,灯走马,灯熄马停步。”为什么灯停了马就不走了呢?下面就让我们一起去找寻答案吧! 3、实验记录: 4、学生实验:通过以上演示实验,让学生掌握实验规律,独立完成本节课实验。(教师可适当点拨) 5、总结回顾:走马灯之所以会转动,是因为当走马灯下端的蜡烛点燃后,加热产生热空气,热空气上升形成气流,气流推动走马灯灯罩的叶片,所以走马灯就旋转起来了。热空气为什么会向上升呢?当空气中有热源的时候,热源周围的空气膨胀、稀薄而轻盈,热空气的密度要比冷空气的密度小,所以就会向上形成气流了,上升的热空气产生动力推动叶片使叶轮动

起来。 6、学生秀:学生展示自己的作品,并说出相关的知识点或原理 教师根据学生的展示,对学生表现做出肯定和表扬,可让学生相互点评并对相关知识点做补充,师做小结帮助学生巩固所学的知识点。 7、重点知识回顾:(1)走马灯能旋转与它的结构有关,要有转动起来的轴,要有同一方向倾斜的叶轮,要有灯罩,而且跟灯罩的材质有关,选用比较轻的材质。(2)走马灯能旋转要有足够的热动力。 8、课后作业及知识拓展: (1)、利用课余时间,根据走马灯的知识原理做一个热气球。 (2)、拓展视野: 走马灯名字的由来:当灯笼内灯烛点燃后,热气上升,形成气流,从而推动叶轮旋转,于是灯罩随轮轴转动,上面的图画动起来像你追我赶的感觉,所以故名走马灯。正月15元宵节,民间风俗要挂花灯,走马灯为其中一种。外形多为宫灯状,内以剪纸粘一轮,将即绘好的图案粘贴其上。燃灯以后热气上熏,纸轮旋转,灯屏上即出现人马追逐、物换景移的影像。宋时已有走马灯,当时称“马骑灯”。 (3)有趣的高空热气球荡秋千。

51单片机的音乐跑马灯设计

摘要 单片机技术是一门不可或缺的技术,对我们将来的工作以及生活和学习都有很密切的联系。近年来,随着电子技术和微机计算机的迅速发展,单片机的档次不断提高,其应用领域也在不断的扩大,已在工业控制、尖端科学、智能仪器仪表、日用家电、汽车电子系统、办公自动化设备、个人信息终端及通信产品中得到了广泛的应用,成为现代电子系统中最重要的智能化的核心部件。 本设计使用AT89C52芯片,利用P0的8个端口连接8个发光二极管,P1的8个端口连接8个发光二极管,通过P0.0到P0.7的值和P1.0到P1.7的值控制“跑马灯”的亮灭,以达到显示效果。设计的中断程序要对多个按键动作进行响应,灯光变换的花样有15种,用模式按钮切换。按下模式按钮键,程序将按十五种模式切换,每按一次模式按钮键,切换一次跑马灯模式,而加速按钮和减速按钮可以改变闪烁速度;最后一种模式为音乐模式,加速按钮可切换音乐。 在单片机运行时,可以在不同状态下让跑马灯显示不同的组合,作为单片机系统正常的指示。当单片机系统出现故障时,可以利用跑马灯显示当前的故障码,对故障做出诊断。此外,跑马灯在单片机的调试过程中也非常有用,可以在不同时候将需要的寄存器或关键变量的值显示在跑马灯上,提供需要的调试信息。 关键词:音乐跑马灯;AT89C52单片机;74LS245驱动芯片;LED发光二极管

1 设计概述 (1) 1.1设计目的 (1) 1.2设计作用 (1) 1.3设计要求 (1) 1.4系统设计框图 (1) 2元器件介绍 (3) 2.1AT89C52单片机 (3) 2.2驱动芯片74LS245 (3) 2.3其他元件及功能 (4) 3 硬件电路设计 (6) 3.1单片机最小系统 (6) 3.2LED显示部分 (7) 3.3按钮控制部分 (7) 3.4数码管显示电路 (8) 3.5蜂鸣器部分 (8) 3.6系统总电路图 (9) 4 软件设计 (10) 4.1 程序流程图 (10) 4.2 程序设计 (10) 5 结束语 (32) 参考文献 (33)

跑马灯实验报告.

跑 马 灯 实 验 报 告 姓名: 班级:

跑马灯实验报告 试验目的 1.学习8031内部计数器的使用和编程方法。 2.进一步掌握中断处理程序的编程方法。 3.学习端口的输入输出操作。 实验原理 1、软件流程图: 2.程序设计内容 我们可以运用输出端口指令MOV P1,A 或MOV P1,#DATA ,只要给累加器值 或常数值,然后执行上述的指令,即可达到输出控制的动作。

3、硬件连接图: 4.软件清单 ADR EQU 8000H ORG 0000H LJMP START ORG 001BH LJMP OT1

ORG 00F0H START:MOV TMOD,#10H MOV TL1,#0B0H MOV TH1,#3CH SETB EA SETB ET1 MOV R2,#14H MOV R3,#00H SETB TR1 SJMP $ OT1:CLR TR1 CLR EA MOV TH1,#3CH MOV TL1,#0B0H DJNZ R2,BACK NEXT:MOV R2,#14H MOV DPTR,#0200h MOV A,R3 MOVC A,@A+DPTR MOV DPTR,#ADR MOVX @DPTR,A INC R3 CJNE R3,#08H,BACK SJMP ROUND BACK:SETB EA SETB TR1 RETI ROUND:MOV R3,#00H SJMP BACK ORG 0200H DB 05H,0AH,50H,0A0H,55H,0AAH,0FFH,00H END 5.C语言源程序 #include unsigned char i; unsigned char temp;

微机原理(基于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微处理器和指令系统、汇编语言、设计以及微型计算机各个组成部分,而其中很大一块就是汇编语言的学习。 汇编语言是面向机器的程序设计语言,也是利用计算机所有硬件特性并能直接控制硬件的语言。用汇编语言编写的程序由于目标程序占用存少,运行速度快,它有着高级语言不可替代的用途。因此,学习汇编语言是很必要的,通过学习汇编语言可以体会它的作用。 通过本次课程设计让我们进一步深入汇编语言的学习,掌握简单的接口设计技术,将理论知识联系实际,进一步学习微机原理与接口技术的相关知识,为以后深入学习打下良好的基础。

跑马灯设计方案EDA课程设计方案

第一章设计内容与设计方案 1.1课程设计内容 控制8个LED进行花样性显示。 设计4种显示模式:s0,从左到右逐个点亮LED;s1,从右到左逐个点亮LED;s2,从两边到中间逐个点亮LED;s3,从中见到两边逐个点亮LED。 4种模式循环切换,复位键(rst)控制系统的运行停止。数码管显示模式编号。 可预置彩灯变换速度,4档快、稍快、中速、慢速,默认工作为中速。 1.2设计方案 在掌握常用数字电路功能和原理的基础上,根据EDA技术课程所学知识,以及平时实验的具体操作内容,利用硬件描述语言HDL,EDA软件QuartusⅡ和硬件平台cycloneⅡFPGA进行一个简单的电子系统设计,本次课程设计采用Verilog HDL硬件描述语言编写控制程序,应用Quartus Ⅱ软件实现仿真测试。采用FPGA芯片对LED灯进行控制,使其达到流水跑马灯显示的效果,LED灯采用共阳极接法,当给它一个低电平时,LED点亮,我们利用移位寄存器使各输出口循环输出高低电平,达到控制的目的。

2.1设计原理及设计流程 本次试验我所完成的内容是跑马灯的设计,下面我简单的进行一下原理的阐述。 跑马灯课程设计的要求是控制8个LED进行花样显示,设计四种显示模块:第一种显示是从左向右逐个点亮LED。第二种显示:从右向左逐个点亮LED。第三种显示:从两边向中间逐个点亮LED。第四种显示:从中间到两边逐个点亮LED。四种显示模式循环切换,并带有一位复位键控制系统的运行停止。为了完成要求的效果显示,由于要求比较简单,所以不用分为很多模块来具体控制,所以我先择利用移位寄存器来完成灯的点亮,我们将LED灯采用共阳极接法,当给于低电平时点亮,那么当我们需要点亮某位LED灯时,只需在该位上赋予低电平即可,比如:如果我们要实现8个数码灯从左到右依次点亮,那么我们就可以给这8个数码灯分别赋值10000000,经过一段时间的延时后再给其赋值01000000,再经过一段时间延时后再给其赋值00100000,依次类推,则最后一种赋值状态为00000001,这样就得到了相应的现象。同理,要实现数码灯从右向左依次点亮,从中间向两端依次点亮,从两端向中间依次点亮都可以采用这样赋值的方法。为了达到四种显示模式循环切换的目的,可以将以上的所有赋值语句以顺序语句的形式置于进程中,这样在完成了一种显示方式后就会自动进入下一种设定好的显示模式,如此反复循环。当需要程序复位时,只需按下rst键即可,程序不管走都那里,执行那条语句,只要确定复位键按下时,程序立刻返回到程序执行语句的第一步,程序接着进行新的循环点亮。

走马灯实验报告

电子系统综合设计报告 学号201009120229 姓名李文海 年级专业2010级电子信息工程(二) 指导教师刘怀强 学院理学院

走马灯实验论文--《嵌入式系统技术》 1、实验目的 1、学会DP-51PRO实验仪监控程序下载、动态调试等联机调试功能的使用; 2、理解和学会单片机并口的作为通用I/O的使用; 3、理解和学会单片机外部中断的使用; 4、了解单片机定时器/计数器的应用。 2、实验设备 z PC 机、ARM 仿真器、2440 实验箱、串口线。 3、实验内容 z熟悉A RM 开发环境的建立。 z使用A RM 汇编和C语言设置G PIO 口的相应寄存器。 z编写跑马灯程序。 5、实验原理 走马灯实验是一个硬件实验,因此要求使用DP-51PRO 单片机综合仿真实验仪进行硬件仿真,首先要求先进行软件仿真,排除软件语法错误,保证关键程序段的正确。然后连接仿真仪,下载监控程序,进行主机与实验箱联机仿真。 为了使单独编译的C语言程序和汇编程序之间能够相互调用,必须为子程序间的调用规定一定的规则。A TPCS ,即ARM ,Thumb 过程调用标准(ARM/Thumb Procedure Call Standard),是A RM 程序和T humb 程序中子程序调用的基本规则,它规定了一些子程序间调用的基本规则,如子程序调用过程中的寄存器的使用规则,堆栈的使用规则,参数的传递规则等。 下面结合实际介绍几种A TPCS 规则,如果读者想了解更多的规则,可以查看相关的书 籍。 1.基本A TPCS 基本A TPCS 规定了在子程序调用时的一些基本规则,包括下面3方面的内容: (1)各寄存器的使用规则及其相应的名称。 (2)数据栈的使用规则。 (3)参数传递的规则。 相对于其它类型的A TPCS,满足基本A TPCS 的程序的执行速度更快,所占用的内存更少。但是它不能提供以下的支持:ARM 程序和T humb 程序相互调用,数据以及代码的位置无关的支持,子程序的可重入性,数据栈检查的支持。 而派生的其他几种特定的A TPCS 就是在基本A TPCS 的基础上再添加其他的规则而形成的。其目的就是提供上述的功能。 2.寄存器的使用规则 寄存器的使用必须满足下面的规则:

跑马灯实验报告

基于Proteus 的跑马灯 一、实验目的 1、 掌握Proteus 系统的使用,能够建立、保存,打开和修改文件。 2、 掌握使用各种元器件绘制电路原理图的方法,实现电路的仿真。 二、实验内容 跑马灯电路,即完成P1口上的八个发光二极管循环闪亮。 三、实验程序 ORG 0000H AJMP MAIN ORG 30H MAIN: MOV R2,#16 MOV A,#0FEH LOOP: MOV P1,A LCALL D1 RL A DJNZ R2,LOOP D1: MOV R4,#10 D2: MOV R5,#100 D3: MOV R6,#249 DJNZ R6,$ DJNZ R5,D3 DJNZ R4,D2 RET END 四、实验硬件电路 XTAL2 18 XTAL1 19 ALE 30EA 31 PSEN 29RST 9 P0.0/AD039P0.1/AD138P0.2/AD237P0.3/AD336P0.4/AD435P0.5/AD534P0.6/AD633P0.7/AD732P1.0/T21P1.1/T2EX 2P1.23P1.34P1.45P1.56P1.67P1.78 P3.0/RXD 10P3.1/TXD 11P3.2/INT012P3.3/INT113P3.4/T014P3.7/RD 17 P3.6/WR 16P3.5/T115P2.7/A1528P2.0/A821P2.1/A922P2.2/A1023P2.3/A1124P2.4/A1225P2.5/A1326P2.6/A1427U1 AT89C52 R1 10k C1 1nF C2 1nF C3 1uF X1 CRYSTAL D1 LED-BIBY D2 LED-BIBY D3 LED-BIBY D4 LED-BIBY D5 LED-BIBY D6 LED-BIBY D7 LED-BIBY D8 LED-BIBY 23456789 1 RP1 RESPACK-8 五、运行Proteus 仿真结果

基于单片机的跑马灯课程设计(1)

电气及自动化课程设计报告题目:基于单片机的跑马灯课程设计 课程:单片机原理及其应用 学生姓名:刘昊杰 学生学号: 1414050319 年级: 2014级 专业:电气工程及其自动化 班级: 3班 指导教师:缪玉桂 机械与电气工程学院制 2016年11月

目录 1 设计的任务与要求 (1) 1.1 课程设计的任务 (1) 1.2课程设计的要求 (1) 2 芯片分析和设计概述 (2) 2.1 AT89C51芯片分析 (2) 3 设计概述 (5) 4 硬件电路设计 (6) 5 程序部分设计 (7) 6 实验总结 (12) 7 参考文献 (12)

基于单片机的跑马灯课程设计 学生:刘昊杰 指导教师:缪玉桂 机械与电气工程学院电气工程及其自动化专业 1 设计的任务与要求 1.1 课程设计的任务 (1)掌握单片机的接口技术及相关外围芯片的外特性,控制方法。 (2)通过课程设计,掌握以单片机核心的电路设计的基本方法和技术。 (3)通过实际程序设计和调试,逐步掌握模块化程序设计方法和调试技术。 (4)与模拟电子技术,数字电子技术等课程相结合,进一步熟悉和掌握单片机的结构及工作原理,为以后所学的后续课程打下良好的基础。 (5)通过完成一个包括电路设计和程序开发的完整过程,使学生了解开发一单片机应用系统的全过程,为今后从事相应打下基础。 1.2课程设计的要求 该设计使用AT89C51芯片作为控制芯片,利用P1口连接8个发光二极管,通过I/O 的值控制“跑马灯”的亮灭,以达到显示效果。开始时所有灯全亮,按下按键S时开始跑马灯,再按下按键S时停止,再按下S时继续,并要求有多种亮暗组合。

走马灯花样实验设计

走马灯花样实验设计 实验报告 实验人:______________ 学号:_________ 日期:— 院(系):软件学院软件工程__________ 专业(班级): 实验题目:走马灯花样实验设计____________________ 一.实验目的 1.进一步了解和掌握计算机各部分的组成及相互关系; 2.了解微指令的执行过程,掌握微程序的设计方 法;

3.进一步认识和掌握计算机各指令的执行过程,搞清楚计算机的运行原理; 二.实验内容 P27(实验四)在走马灯花样实验设计的基础上,增加在七段数码显示器上滚动显示自己的学号、8X8 点阵上滚动显示自己的名字并控制滚动速度(有些同学姓名笔画较多应简化或用别名)。用到的芯片为

8255、8253、8259 (中断)、ADC0809、点阵等 三. 实验器材 (1) 装有TPC-USB 并连接好TPC-USB 的电脑 —一台 (2) TPC-USB 机 四. 实验原理 1.关于ADC0809的连接: KUl lBkl 2.关于8255的接法: 1 NHZ JITLTL^ 1 3k N m + £. \ 12 QI ______ 13 r~~ITE i s 28 1 N i| reft +) VCC reft 7 >CLDCK Is IN-2 ADD-C APD-B IM-i ADD-A EOC ALE START IN-0 ENABLE EOC 1234567S 7- - z z - 22222222 76543210 210 DDD-DDDDD AAA 299H* 29FH 74LS02

3.关于74LS273的接法: I QU 4. 关于双色点阵发光二极管显示器的接法: CS1连接:程序中的ROW 端口,也就是290H CS2连接: 程序中的COL 端口,也就是298H 5. 关于七段数码管的接法: KO KI K2 K3 K-l K5 K6 K7 PCO PAO ■ PC1 PAI PC2 PA2 PC 3 l J A3 PCI PAI PC? PA5 PC6 PA6 PC 7 PA7 CS ? LO ?11 ? L2 ? L3 * Lt ? L5 * L6 ■ L7 tlH K255 ? 11 74LS273 ? nj D"… &3?- D 4 ?'■■ D5?- D6?- D?*- >CUK CLR E £ 1 2 7 9 H L0 L i L 2 L 3 L 4 L5 L6 L7 1 8

微机原理课程设计跑马灯

微机原理课程设计走马灯 运用8086最小模式和8255等芯片设计出一个跑马灯电路,要求至少有5中花式,在ISIS 7 Professional软件中运行。 设计电路图如图所示:

源代码 DA TA SEGMENT DA TA ENDS CODE SEGMENT ASSUME CS:CODE ,DS:DA TA START :MOV AX,DA TA 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

嵌入式系统原理实验三跑马灯

实验三跑马灯实验 实验目的: 通过一个经典的跑马灯程序,了解STM32F1 的IO 口作为输出使用的方法。通过代码控制ALIENTEK 战舰STM32 开发板上的两个LED:DS0 和DS1 交替闪烁,实现类似跑马灯的效果 内容要点: 1.硬件设计 本章用到的硬件只有LED(DS0 和DS1)。其电路在ALIENTEK 战舰STM32F103 开发板上默认是已经连接好了的。DS0 接PB5,DS1 接PE5。所以在硬件上不需 要动任何东西。其连接原理图如图: 2.软件设计 跑马灯实验我们主要用到的固件库文件是: stm32f10x_gpio.c /stm32f10x_gpio.h stm32f10x_rcc.c/stm32f10x_rcc.h misc.c/ misc.h stm32f10x_usart /stm32f10x_usart.h 其中stm32f10x_rcc.h 头文件在每个实验中都要引入,因为系统时钟配置函数以及 相关的外设时钟使能函数都在这个其源文件stm32f10x_rcc.c 中。 stm32f10x_usart.h 和misc.h 头文件在我们SYSTEM 文件夹中都需要使用到,所 以每个实验都会引用。 首先,找到之前新建的Template 工程,在该文件夹下面新建一个HARDWARE 的文件夹,用来存储以后与硬件相关的代码,然后在HARDWARE 文件夹下新 建一个LED 文件夹,用来存放与LED 相关的代码。新建led.h和led.c文件, 一个外设对应一个.h和.c文件。 在Manage Components 管理里面新建一个 HARDWARE 的组,并把led.c 加入到这个组里面, 将led.h 头文件的路径加入到工程里面 一般的头文件有固定的格式,多个地方调用头文件会重复引用,为了避免头文件内 容重复引用,一般通过预编译的方式来写头文件。一般的格式如下:

单片机跑马灯实验报告-叶坤

单片机实验报告—Delay函数和中断系统实现跑马灯14级通信2班叶坤学号:201400800679 一、硬件组成介绍 1、最小系统 STC12C5A16S2单片机、开发板、12兆的晶振、电源。 2、其他 共有40个引脚,两个外部中断,两个定时器,一个串行口中断。四个独立按键,四个数码管,一个蜂鸣器,还有一块拓展区域,可作为日后拓展功能使用,开发单片机的更多功能。 二、软件开发流程 1、新建工程 打开Keil软件,点击“Project | New Project…”,弹出一个名为“Create New Project”的对话框。然后选择一个合适的文件夹准备来存放工程文件。 2、选择CPU Keil提示选择CPU 器件。选中ATMEL中的89c52即可。接下来弹出一个对话框。该对话框提示是否要把标准8051 的启动代码添加到工程中去,一般选择“否”。 3、新建一个.c文件 点击新建文件,将文件名改为“text.c”,然后保存在合适的文

件夹里。扩展名“.c”不可省略。 4、添加源程序文件到工程中 一个空的源程序文件“text.c”已经建立,但是这个文件与刚才新建的工程之间并没有什么内在联系,因此我们需要把它添加到工程中去。单击Keil软件左边项目工作窗口“Target 1 ”上的“+”,将其展开。然后右击“Source Group 1”文件夹,会弹出选择菜单。单击其中的“Add Files to Group 'Source Group 1' ”项。这时,对话框内将出现刚才保存过的“text.c”。双击文件“text.c”,这时,源程序文件“text.c ”已经出现在项目工作窗口的“Source Group 1 ”文件夹内。 5、设计和编辑C语言程序 单根据实验要求编辑C语言程序,并且通过反复的编译和调试以确保程序的正确性。编辑“text.c ”文件,然后点击“Project”中的“compile”,根据运行结果调试程序,以达到目的。 6、勾选产生.hex文件 单击Keil C51 工具栏的“”图标,弹出名为“Options for Target ‘Target 1’ ”的对话框。单击“Output”标签页,选中“Create HEX File”项,然后“确定”。 7、仿真调试 用鼠标左键单击菜单命令“Debug”→ “Start/Stop Debug

(整理)实验52跑马灯实验.

实验 5.2 跑马灯实验 ·实验说明 在FPGA 实验板上用VHDL 语言或者Verilog语言都能够很快地写出跑马灯实验程序。本实验要求完成的是基于SOPC 的跑马灯设计,具有一定的操作复杂性。 ·实验步骤 5.2.1建立Quartus 工程 1.新建Quartus 工程RunningLED,顶层实体名RunningLED。 2.重新设置编译输出目录为../ RunningLED/release。 5.2.2建立SOPC系统 3.点击Quartus II 软件右上方图标打开SOPC Builder,创建一个SOPC 系统。填写系统名称为RinningLED_System,并指定VHDL 为描述系统的语言,如图5-23。 图5-23 添加系统名称并指定语言 4.在系统上添加On-Chip Memory 在程序左侧列表中选择Memory and Memory Controllers -> On-Chip -> On-Chip Memory (RAM or ROM),双击添加至系统中。 在弹出的对话框中指定片上RAM 的属性,因为不需要显示,编译结果很小,保持默认即可。

图5-24 指定On-Chip Memory 属性 鼠标移动到片内存储器的名称onchip_memonry2.0上并点击右键,在弹出菜单中选择Rename,然后更改名称为onchip_mem。 5.添加Nios II Processor 双击Altera SOPC Builder -> Nios II Processor,在弹出的对话框中间选择处理器NIOS II/s;硬件乘法器(Hardware Multiply)选择None,即不需要硬件乘法器;复位向量和异常向量存储器(Memory)均选择前面刚刚添加的片内存储器onchip_mem,此时二者的偏移量(Offset)自动设置为0x0和ox20。复位向量是指整个系统软件复位后启动的程序地址,一般为非易失存储器。异常向量是软件的起始地址,一般是易失存储器,如SDRAM等。如图5-24 所示。 选择

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