单片机实验报告(键盘显示)

单片机实验报告(键盘显示)
单片机实验报告(键盘显示)

实验三和附录实验报告

实验者:孔维池班别:自动化10(3)班学号:3110000918 实验三、外部中断与数码管显示实验

一、实验目的:

(1)了解MCS—51单片机的中断原理,掌握中断程序的设计方法。

(2)熟悉SST89E554RC的工作方式及应用,了解数码显示的基本原理。

二、实验主要内容和要求:

1、实验内容:按图3-3(略)接线,利用SST89E554RC单片机上的INT0、ITN1外

中断口实现中断功能。运行显示000000,当INT0中断时,七段数码管显示012345;

INT1中断时,七段数码管实现ABCDEF,循环显示。

2、实验要求:每位学生独立完成。

三、实验方案与过程:

1、实验方案:逐个数码管显示,利用数码管的余晖作用,动态显示,让人看上去感觉

是同时点亮的。

2、实验过程:

参考代码如下:

ORG 0000H

LJMP MAIN

ORG 0003H

LJMP EINT0

ORG 0013H

LJMP EINT1

ORG 0100H

MAIN: SETB IT0

SETB EX0

SETB IT1

SETB EX1

SETB EA

MOV R0,#00H

MOV R1,#00H

MOV R2,#00H

MOV R3,#00H

MOV R4,#00H

MOV R5,#00H

A00: MOV P1,R0

MOV P0,#0FEH

CALL DELAY

MOV P1,R1

MOV P0,#0FDH

CALL DELAY

MOV P1,R2

MOV P0,#0FBH

CALL DELAY

MOV P1,R3

MOV P0,#0F7H

CALL DELAY

MOV P1,R4

MOV P0,#0EFH

CALL DELAY

MOV P1,R5

MOV P0,#0DFH

CALL DELAY

JMP A00

DELAY: MOV R7,#0FFH

AD: DJNZ R7,AD

RET

EINT0: MOV R0,#3FH

MOV R1,#06H

MOV R2,#5BH

MOV R3,#4FH

MOV R4,#66H

MOV R5,#6DH

RETI

EINT1: MOV R0,#77H

MOV R1,#7CH

MOV R2,#39H

MOV R3,#5EH

MOV R4,#79H

MOV R5,#71H

RETI

END

实验步骤:1)输入代码;

2)运行程序,然后按下KK1-还有KK2-,看实现现象。

四、实验结果:

运行显示000000,当INT0中断时,七段数码管显示012345;INT1中断时,七段数码管实现ABCDEF,循环显示。

五、实验心得:

通过本次实验,让我了解了中断的使用方法,运用理论与实际相结合,把理论运动到实际中,加深了对中断和数码管显示的使用的认识和了解。

单片机交通灯实训报告

机电工程学院课程设计报告 课程名称:单片机课程设计 专业班级: 13电本2班 学号: 2013041632 学生:罗炜 指导教师:王清辉、何文丰 完成时间: 报告成绩:

交通灯设计 一、设计任务与要求 设计基本要求: (1)车辆通行繁忙的十字交叉路口,设计一交通灯控制器,设东西方向通行时间为30秒,当剩余3秒时黄灯亮,南北方向通行时间为20秒,当剩余3秒时黄灯亮。(2)东西、南北方向各用三个(绿、黄、红)LED表示,并用数码管显示东西、南北方向的剩余时间。 (3)可利用按键修改时间参数,可以利用按键切换东西南北交通灯的当前状态(即立刻东西由红变绿,南北有绿变红,并按设定的时间工作)。 二、方案设计与论证 表2-1:交通灯的工作状态表 根据表2-1所示可将交通灯的工作状态设为以下几个步骤: 1、初始状态时即为东西方向绿灯通行27秒+3秒黄灯,此时南北红灯亮。 2、随后是南北方向绿灯通行17秒+3秒黄灯,此时东西红灯亮。 3、通过按模式选择键一次来切换东西南北交通灯的当前状态。(通过设置定时计时器T1实现交通灯的计时) 4、通过按模式选择键第二次切换至南北方向红绿灯的计时设置,通过加减按键来确定南北方向红绿灯的计时数。 5、确定南北方向计数值后,通过按模式选择键第三次切换至东西方向红绿灯的计

时设置,通过加减按键来确定东西方向红绿灯的计时数。 6、确定交通灯计时数后再按下模式选择键后,交通灯便进入工作状态。 时间计时的实现:采用定时中断实现秒的精确计时(详细方案入下列程序设计所示)。 按键输入的实现:通过编写按键读取函数,来实现交通灯的状态以及时间值得设定(详细方案入下列程序设计所示)。

单片机键盘显示接口电路设计说明

中北大学 单片机及其接口技术 课程设计说明书 学生:学号: 学院: 专业: 题目:单片机键盘显示接口电路设计 指导教师:小林职称: 副教授 2012年6月17日

中北大学 单片机及其接口技术 课程设计任务书 11/12 学年第二学期 学院: 专业: 学生姓名:学号: 课程设计题目:单片机键盘显示接口电路设计 起迄日期:6月11日~6月17日 课程设计地点:中北大学 指导教师:小林 系主任:王忠庆

下达任务书日期: 2012年06月11日课程设计任务书

课程设计任务书

第一章、绪论89C51是一种带4KB闪烁可编程可擦除只读存储器(FPEROM—Falsh Programmable and Erasable Read Only Memory)的低电压、高性能CMOS8位微处理器,俗称单片机。单片机的可擦除只读存储器可以反复擦除100次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL 的89C51是一种高效微控制器,89C2051是它的一种精简版本。89C 单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。在本次课程设计中,便采用89C51单片机。 第二章、设计容 一、4×4键盘 原理:4 行 行 行 行

图1 电路原理图见附图一 本次设计为4×4的矩阵键盘,这样的设计可以有效的减少键盘与单片机接口时所占用的I/O接口。在这种非编码键盘的单片机系统中,键盘处理程序首先执行有无按键按下的程序段,当确认有按键按下后,下一步就要识别哪一个按键被按下,对键的识别常采用逐行(逐列)扫描的方法。 首先判断有无按键按下。方法是:向行线输出全扫描字00H,把全部行线置为低电平,然后将列线的电平状态读入到累加器A中,如果有按键按下,会使列线电平被拉至低电平,是列输入不全为1。 判断键盘哪一个键被按下。方法是:一次给行线送低电平,然后查所有列线状态,称为行扫描,如果全为1,则所按下键不在此行,如果不全为1,则所按下键必在此行,而且是在与零电平列线相交的交点上的那个键。 在此,按键的位置码并不等于按键的实际定义键值,因此还必须进行转换,即键值译码,本次设计中采用软件实现键值的译码,译码方式如下: 第0行键值为:0行×4+列号(0~3)为0、1、2、3; 第1行键值为:1行×4+列号(0~3)为4、5、6、7; 第2行键值为:2行×4+列号(0~3)为8、9、A、B; 第3行键值为:3行×4+列号(0~3)为C、D、E、F; 译码程序如下:

键盘与LED显示实验

实验三键盘及LED显示实验 一、实验内容 利用8255可编程并行接口控制键盘及显示器,当有按键按下时向单片机发送外部中断请求(INT0,INT1),单片机扫描键盘,并把按键输入的键码一位LED显示器显示出来。 二、实验目的及要求 (一)实验目的 通过该综合性实验,使学生掌握8255扩展键盘和显示器的接口方法及C51语言的编程方法,进一步掌握键盘扫描和LED显示器的工作原理;培养学生一定的动手能力。 (二)实验要求 1.学生在实验课前必须认真预习教科书与指导书中的相关内容,绘制流程图,编写C51语言源程序,为实验做好充分准备。 2.该实验要求学生综合利用前期课程及本门课程中所学的相关知识点,充分发挥自己的个性及创造力,独立操作完成实验内容,并写出实验报告。 三、实验条件及要求 计算机,C51语言编辑、调试仿真软件及实验箱50台套。 四、实验相关知识点 1.C51编程、调试。 2.扩展8255芯片的原理及应用。 3.键盘扫描原理及应用。 4.LED显示器原理及应用。

5.外部中断的应用。 五、实验说明 本实验仪提供了8位8段LED 显示器,学生可选用任一位LED 显示器,只要按地址输出相应的数据,就可以显示所需数码。 显示字形 1 2 3 4 5 6 7 8 9 A b C d E F 段 码 0xfc 0x60 0xda 0xf2 0x66 0xb6 0xbe 0xe0 0xfe 0xf6 0xee 0x3e 0x9c 0x7a 0x9e 0x8e 六、实验原理图 01e 1d 2dp 3 c 4g 56 b 78 9 a b c g d dp f 10a b f c g d e dp a 11GND3a b f c g d e dp 12 GND4 a b f c g d e dp GND1GND2DS29 LG4041AH 234 567 89A B C D E F e 1d 2dp 3 c 4g 56 b 78 9 a b c g d dp f 10a b f c g d e dp a 11GND3a b f c g d e dp 12 GND4 a b f c g d e dp GND1 GND2DS30 LG4041AH 1 2 3 4 5 6 7 8 JP4112345678 JP4712345678JP42 SEGA SEGB SEGC SEGD SEGE SEGG SEGF SEGH SEGA SEGB SEGC SEGD SEGE SEGG SEGF SEGH A C B 12345678 JP92D 5.1K R162 5.1K R163VCC VCC D034D133D232D331D430D529D628D727PA04PA13PA22PA31PA440PA539PA638PA737PB018PB119PB220PB321PB422PB523PB624PB725PC014PC115PC216PC317PC413PC512PC611PC7 10 RD 5WR 36A09A18RESET 35CS 6 U36 8255 D0D1D2D3D4D5D6D7WR RD RST A0A1PC5PC6PC7 PC2PC3PC4PC0PC1CS 12345678JP56 12345678JP53 12345678 JP52 PA0PA1PA2PA3PA4PA5PA6PA7PB0PB1PB2PB3PB4PB5PB6PB7 (8255 PB7)(8255 PB6)(8255 PB5)(8255 PB4)(8255 PB3)(8255 PB2)(8255 PB1)(8255 PB0) (8255 PC7)(8255 PC6)(8255 PC5)(8255 PC4)(8255 PC3)(8255 PC2)(8255 PC1)(8255 PC0) (8255 PA0) (8255 PA1) (8255 PA2) (8255 PA3) (8255 PA4) (8255 PA5) (8255 PA6) (PA7) I N T 0(P 3.2) I N T 0(P 3.3) 七、连线说明

PLC实验报告(交通灯控制系统)

交通灯控制系统 一、实验目的 (1)用PLC构成十字路口交通灯控制系统。 (2)掌握程序调试的步骤和方法。 (3)掌握构建实际PLC控制系统的能力。 二、实验要求 (1)复习PLC常用指令的功能及用法。 (2)复习PLC程序设计的一般方法。 (3)根据实验要求提前编写程序,待上机验证调试修改。 三、实验环境 软件:STEP 7-Micro_WIN V40+ SP9:S7-200的编程软件 STEP 7-Micro_WIN V32指令库 硬件:THSMS-2A型PLC实验箱(西门子)、电脑、连接导线、USB-PPI 通信电缆 四、实验内容及步骤 交通灯控制系统面板图如上图所示,控制要求如下: 交通信号灯受一个总控制开关控制,当总控制开关接通时,信号灯系统开始工作。 开始工作后,南北红灯和东西绿灯同时点亮,4秒后东西绿灯开始闪烁,闪烁2秒后熄灭,熄灭同时切换成东西黄灯亮,2秒后东西黄灯和南北红灯同时熄灭,东西红灯和南北绿灯同时点亮。4秒后南北绿灯开始闪烁,闪烁2秒后熄灭,熄灭同时切换成南北黄灯亮,2秒后南北黄灯和东西红灯同时熄灭,再次切换成南北红灯和东西绿灯同时点亮。如此循环,周而复始。 当总控制开关断开时,所有信号灯都熄灭。

(1)确定I/O点数。列出详细的I/O地址分配表。如(该表仅为举例, (3)输入编好的PLC控制程序。 (4)运行程序,按控制要求设置各输入量,观察PLC运行情况,记录南北、东西各灯顺序亮、灭的运行情况。调试程序直至正确为止。 解:由题目要求得,

②梯形图如下图①,语句表如下图②,时序图如下图③: 图①图① 图②图② 图③ 五、注意事项

单片机实验三(急救车与交通灯)

单片机技术与应用 实验报告 实验名称:外部中断实验(急救车与交通灯)班级:11062811 学号:11061118 姓名:吕琳涛 指导老师:谷雨 2013年5月20日

1. 实验要求 由以74LS273作为输出口,控制4个双色LED灯(可发红,绿,黄光),模拟交通灯管理,并允许急救车优先通过的要求。有急救车到达时,两向交通信号为全红,以便让急救车通过。假定急救车通过路口时间为10秒,急救车通过后,交通灯恢复中断前状态。本实验以按键为中断申请,表示有急救车通过。 2. 实验目的 1.学习外部中断技术的基本使用方法。 2.学习中断处理程序的编程方法。 3. 程序说明: 在本次实验中,我们可以确定外部中断的作用是用于有救护车行驶过来时对程序的进行的简单的控制。对于正常的红绿灯的亮灭我们可以参考第一个实验中流水灯的设计理念。综上所述我们这一次的实验就是流水灯与外部中断的结合。 通过对七种情况的罗列 1 0 0 1 0 1 1 0 南北绿,东西红 0 1 1 0 1 0 0 1 南北红,东西绿 1 0 0 1 1 1 1 1 只亮东西红 0 1 1 0 1 1 1 1 只亮南北红 0 0 0 0 0 1 1 0 南北黄,东西红 0 0 0 0 1 0 0 1 南北红,东西黄 0 0 0 0 1 1 1 1 全红 我们可以利用XBYTE[0xf200]这个函数对这几种情况进行读取与显

示,在不同情况进行显示的过程中我们用以前的delay函数进行时间上的规划从而达到依次显示的效果。 0x0f 全红XBYTE[0xf200]=0x0f; 0x96 南北绿,东西红XBYTE[0xf200]=0x96; 0x9f 只亮东西红XBYTE[0xf200]=0x9f; 0x06 南北黄,东西红XBYTE[0xf200]=0x06; 0x69 南北红,东西绿XBYTE[0xf200]=0x69; 0x6f 只亮南北红XBYTE[0xf200]=0x6f; 0x09 南北红,东西黄XBYTE[0xf200]=0x09; 在具体的实验代码编写过程中,我们会用到EA=1;EX0=1;IT0=1;用于设定外部中断0为跳变沿触发方式,默认为电平触发方式。interrupt 0函数是处理有救护车驶过时的情况。 至此,程序编写完成,放入软件中进行编译和下载。

根据C51单片机的键盘及LCD显示

基于C51单片机的键盘及LCD显示 一、实验目的 1.掌握矩阵式键盘的数字键和功能键的编程方法。 2.掌握LCD的接口技术和编程方法。 3.掌握仪器监控程序设计和调试方法。 二、预习与参考 1. 结合ST7920 控制器系列中文图形液晶模块有关资料手册,详细了解ST7920接口设计技术。 2. 参考资料 1)实验板说明书 2)ST7920 控制器系列中文图形液晶模块资料手册 三、设计指标 利用实验板上提供的键盘电路,LCD显示电路,设计一人机界面,能实现以下功能: 1.LCD上显示“重庆科技学院” 2.按键至少包括0-9的数字键 3.LCD显示按键值 4.电子钟显示:时,分,秒(选作) 四、实验要求 1.以单片机为核心,设计4*4非编码键盘及LCD的硬件电路,画出电路原理图。 2.设计4*4非编码键盘及LCD的控制软件,画出流程图,编写控制程序。

五、实验仪器设备和材料清单 单片机实验板、连接导线、ST7920图形液晶模块、PC机; Keil c51软件 六、实验设计及实施的指导 1.实验课前布置实验任务,提出实验要求,预习相关资料,完成硬件草图设计和软件流程图备查。 2.经指导教师检查,预习达到要求者进入实验室实验。 3.按照设计的电路连线,构建键盘及显示系统,经检查无误方可进入下一步。 4.在指导教师指导下调试LCD显示程序。 5.在指导教师指导下调试按键程序。 6.综合调试直到满足设计要求。 七、实验成绩评定方法 实验成绩包括预习、实验完成质量、实验报告质量4部分组成,各部分所占比例分别为30%、30%、40%。 八、实验报告要求 1.实验报告格式: 一.实验名称 二.实验目的 三.实验内容 四.设计思想 五.硬件设计 六.程序代码

数字系统课程设计-交通灯控制器实验报告

交通灯控制器 ——数字系统设计报告 姓名: 学号:

一.实验目的 1.基本掌握自顶向下的电子系统设计方法 2.学会使用PLD和硬件描述语言设计数字电路,掌握 Quartus II等开发工具的使用方法 3.培养学生自主学习、正确分析和解决问题的能力 二.设计要求 我所选择的课题是用Verilog HDL实现交通灯控制器。该课题的具体内容及要求如下: 主干道与乡村公路十字交叉路口在现代化的农村星罗棋布,为确保车辆安全、迅速地通过,在交叉路口的每个入口处设置了红、绿、黄三色信号灯。红灯禁止通行;绿灯允许通行;黄灯亮则给行驶中的车辆有时间行驶到禁行线之外。主干道和乡村公路都安装了传感器,检测车辆通行情况,用于主干道的优先权控制。 (1)当乡村公路无车时,始终保持乡村公路红灯亮,主干道绿灯亮。 (2)当乡村公路有车时,而主干道通车时间已经超过它的最短通车时间时,禁止主干道通行,让乡村公路通行。主干道最短通车时间为25s 。 (3)当乡村公路和主干道都有车时,按主干道通车25s,乡村公路通车16s交替进行。 (4)不论主干道情况如何,乡村公路通车最长时间为16s。 (5)在每次由绿灯亮变成红灯亮的转换过程中间,要亮5s时

间的黄灯作为过渡。 (6)用开关代替传感器作为检测车辆是否到来的信号。用红、绿、黄三种颜色的发光二极管作交通灯。 (7)要求显示时间,倒计时。 (C表示乡村道路是否有车到来,1表示有,0表示无;SET用来控制系统的开始及停止;RST是复位信号,高电平有效,当RST=1时,恢复到初始设置;CLK是外加时钟信号;MR、MY、MG分别表示主干道的红灯、黄灯和绿灯;CR、CY、CG分别表示乡村道路的红灯、黄灯和绿灯,1表示亮,0表示灭) 系统流程图如下:(MGCR:主干道绿灯,乡村道路红灯;MYCR:主干道黄灯,乡村道路红灯;MRCG:主干道红灯,乡村道路绿灯;MRCY:主干道红灯,乡村道路黄灯;T0=1表示主干道最短通车时间到,T1=1表示5秒黄灯时间到,T2=1表示乡村道路最长通车时间到。)

51单片机数码管显示矩阵键盘键入值

51单片机实现数码管显示矩阵键盘键入值 #include #define uchar unsigned char uchar code decode[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1 ,0x86,0x8e}; void delay(uchar); uchar temp,b,c,d,num; void display(uchar); void main() { while(1) { P0=0xfe; temp=P0; temp=temp&0xf0; if(temp!=0xf0) { delay(100); if(temp!=0xf0) { switch(temp)

case 0xe0:num=0;break; case 0xd0:num=1;break; case 0xb0:num=2;break; case 0x70:num=3;break; } } } P0=0xfd; temp=P0; temp=temp&0xf0; if(temp!=0xf0) { delay(100); if(temp!=0xf0) { switch(temp) { case 0xe0:num=4;break; case 0xd0:num=5;break; case 0xb0:num=6;break; case 0x70:num=7;break;

} } P0=0xfb; temp=P0; temp=temp&0xf0; if(temp!=0xf0) { delay(100); if(temp!=0xf0) { switch(temp) { case 0xe0:num=8;break; case 0xd0:num=9;break; case 0xb0:num=10;break; case 0x70:num=11;break; } } } P0=0xf7; temp=P0;

单片机实验报告——矩阵键盘数码管显示

单片机实验报告 信息处理实验 实验二矩阵键盘 专业:电气工程及其自动化 指导老师:高哲 组员:明洪开张鸿伟张谦赵智奇 学号:152703117 \152703115\152703118\152703114室温:18 ℃日期:2017 年10 月25日

矩阵键盘 一、实验内容 1、编写程序,做到在键盘上每按一个键(0-F)用数码管将该建对应的名字显示出来。按其它键没有结果。 二、实验目的 1、学习独立式按键的查询识别方法。 2、非编码矩阵键盘的行反转法识别方法。 3、掌握键盘接口的基本特点,了解独立键盘和矩阵键盘的应用方法。 4、掌握键盘接口的硬件设计方法,软件程序设计和贴士排错能力。 5、掌握利用Keil51软件对程序进行编译。 6、会根据实际功能,正确选择单片机功能接线,编制正确程序。对实验结果 能做出分析和解释,能写出符合规格的实验报告。 三、实验原理 1、MCS51系列单片机的P0~P3口作为输入端口使用时必须先向端口写入“1”。 2、用查询方式检测按键时,要加入延时(通常采用软件延时10~20mS)以消除抖动。 3、识别键的闭合,通常采用行扫描法和行反转法。行扫描法是使键盘上某一行线为低电平,而其余行接高电平,然

后读取列值,如读列值中某位为低电平,表明有键按下,否则扫描下一行,直到扫完所有行。 行反转法识别闭合键时,要将行线接一并行口,先让它工作在输出方式,将列线也接到一个并行口,先让它工作于输入方式,程序使CPU通过输出端口在各行线上全部送低电平,然后读入列线值,如此时有某键被按下,则必定会使某一列线值为0。然后,程序对两个并行端口进行方式设置,使行线工作于输入方式,列线工作于输出方式,并将刚才读得的列线值从列线所接的并行端口输出,再读取行线上输入值,那么,在闭合键所在行线上的值必定为0。这样,当一个键被接下时,必定可以读得一对唯一的行线值和列线值。 由于51单片机的并口能够动态地改变输入输出方式,因此,矩阵键盘采用行反转法识别最为简便。 行反转法识别按键的过程是:首先,将4个行线作为输出,将其全部置0,4个列线作为输入,将其全部置1,也就是向P1口写入0xF0;假如此时没有人按键,从P1口读出的值应仍为0xF0;假如此时1、4、7、0四个键中有一个键被按下,则P1.6被拉低,从P1口读出的值为0xB0;为了确定是这四个键中哪一个被按下,可将刚才从P1口读出的数的低四位置1后再写入P1口,即将0xBF写入P1口,使P1.6为低,其余均为高,若此时被按下的键是“4”,则P1.1被拉低,从P1口读出的值为0xBE;这样,当只有一个键被按下时,每一个键只有唯一的反转码,事先为12个键的反转码建一个表,通过查表就可知道是哪个键被按下了。

EDA实验报告实验五:交通灯控制器设计

实验五十字路口交通灯控制器设计一.实验目的 1.进一步加强经典状态机的设计 2.学会设计模可变倒计时计数器 二.实验要求 一条主干道,一条乡间公路。组成十字路口,要求优先保证主干道通行。有MR(主红)、MY(主黄)、MG(主绿)、CR(乡红)、CY(乡黄)、CG(乡绿)六盏交通灯需要控制;交通灯由绿→红有4秒黄灯亮的间隔时间,由红→绿没有间隔时间;系统有MRCY、MRCG、MYCR、MGCR四个状态; 乡间公路右侧各埋有一个传感器,当有车辆通过乡间公路时,发出请求信号S=1,其余时间S=0; 平时系统停留在MGCR(主干道通行)状态,一旦S信号有效,经MYCR(黄灯状态)转入MRCG(乡间公路通行)状态,但要保证MGCR的状态不得短于一分钟;一旦S信号无效,系统脱离MRCG状态。随即经MRCY(黄灯状态)进入MGCR 状态,即使S信号一直有效,MRCG状态也不得长于20秒钟。 三.实验设计: 1.一条主道,一条乡道,组成十字路口,要求优先保证主道通行。 2.当主道没有车通行,且乡道友车要通行时,并且此时主道通行时间大于1分钟,则主道变黄灯,乡道保持红灯,经过4秒倒计时时间进入主道为红灯乡道为绿灯的状态。再倒计时20秒钟。在倒计时过程中,若乡道突然没有车通行,马上进入主道红灯,乡道黄灯状态,倒计时4秒。 3.之后主道变为绿灯,乡道为红灯,这时无论乡道有无车通行都要倒计时60秒,然后若乡道有车通行则主道为黄灯,乡道为红灯,若乡道一直没有车要通行则保持主道通行,若乡道友车通行则按照上面的状态依次进行转换。 按照以上的思路,设计两个底层文件和一个顶层文件: 1.模块1是状态改变控制6盏灯的亮与灭。

单片机交通灯实验报告(汇编语言)

实验四单片机交通灯实验 1、实验要求 本实验分两部分,第一部分是普通交通灯的模拟:初始状态0为东西红灯,南北红灯.然后转状态1南北绿灯通车,东西红灯.过一段时间转状态,南北绿灯闪几次转两黄灯,延时几秒,东西仍然红灯,再转状态3,东西绿灯通车,南北红灯.过一段时间转状态4.东西绿灯山几次转黄灯,延时几秒,南北仍然红灯,,最后循环至状态1。 第二部分在以上的基础上当有急救车到达时,两项交通信号为全红,以便让急救车通过.假定急救车通过路口时间为10秒,急救车通过后,交通恢复中断前状态.被实验已按键为终端申请,表示有急救车通过. 2、实验电路图 (1)十二端口控制 (2)六端口控制

3、实验程序如下 (1) 十二位控制ORG 0000H LJMP MAIN ORG 000BH LJMP IT0P MAIN: MOV P1,#0F0H MOV P0,#0FFH MOV A,#00H MOV TMOD,#01H MOV TL0,#0B0H MOV TH0,#3CH SETB ET0 SETB EA SETB TR0 HERE: SJMP HERE IT0P: MOV TL0,#0B0H MOV TH0,#3CH INC A CJNE A,#50,L1 MOV P1,#0FCH MOV P0,#0F3H RETI L1: CJNE A,#100,L2 MOV P1,#03CH MOV P0,#0FFH RETI L2: CJNE A,#110,L3

MOV P1,#0FCH MOV P0,#0FFH RETI L3: CJNE A,#120,L4 MOV P1,#03CH MOV P0,#0FFH RETI L4: CJNE A,#130,L5 MOV P1,#0F3H MOV P0,#0FCH RETI L5: CJNE A,#180,L6 MOV P1,#0C3H MOV P0,#0FFH L6: CJNE A,#190,L7 MOV P1,#0F3H MOV P0,#0FFH RETI L7: CJNE A,#200,L8 MOV P1,#0C3H MOV P0,#0FFH L8: CJNE A,#210,BUTTON MOV P1,#0F0H MOV P0,#0FFH CLR A RETI BUTTON:RETI END (2) 六位控制ORG 0000H LJMP MAIN ORG 000BH LJMP IT0P ORG 0013H LJMP IT1P MAIN: MOV P0,#09H MOV A,#00H MOV TL0,#0B0H MOV TMOD,#61H MOV TL0,#0FFH MOV TH0,#0FFH SETB ET0 SETB EA SETB TR0 SETB PX1

单片机课程设计 模拟键盘输入及显示系统设计..

课程设计说明书课程名称:单片机应用基础 设计题目:模拟键盘输入及显示系统设计专业:机械设计制造及其自动化 指导教师: 设计者: 学号:

目录 第一章课程设计的目的和要求 (1) 1.1课程设计的目的和要求 (1) 1.2课程设计预备知识 (1) 1.3课题设计的任务 (2) 第二章总体设计 介绍对系统设计的总体认识及解决方案,并对采取的方案进行论证 第三章硬件设计 介绍本系统所选用的各种芯片的功能、引脚、相应的命令控制字格式等,画出系统工作原理图及实现方法 第四章软件设计 介绍本系统的主要功能模块程序的框图,以及总体程序框图和设计思路 第五章系统调试 介绍系统调试过程以及出现的问题、解决方法 第六章结束语 简述课程设计的收获、体会以及对本教学环节的意见和建议 参考文献

第一章、课程设计目的和要求 1.1 课程设计目的和要求 《单片机应用基础》课程设计是学好本门课程的又一重要实践性教学环节,课程设计的目的就是配合本课程的教学和平时实验,以达到巩固消化课程的内容,进一步加强综合应用能力及单片机应用系统开发和设计能力的训练,启发创新思维,使之具有独立单片机产品和科研的基本技能,是以培养学生综合运用所学知识的过程,是知识转化为能力和能力转化为工程素质的重要阶段。 1.2课程设计预备知识 总的来说,设计者要具备Mcs-51单片机的有关硬件及软件知识,汇编语言编程或者C 语言编程的有关知识,I\O接口的有关知识,WAVE6000集成调试软件的应用,能利用PROTEUS 软件绘制系统工作原理,一定的设计经验等等。本次设计所要掌握的一些基本知识如下:(1)键盘工作原理 键盘是由若干按键组成的开关矩阵,是嵌入式控制系统的一种输入部件。键盘分两种:一种是独立式按键,另一种是矩阵式按键。如图所示。独立式按键用的比较少,可以直接与单片机的P1口某一位进行连接,通过判断这一位的状态知道是否有键输入。在应用中通常需要数量较多的按键,为了减少I/O口的占用,通常将按键排列成矩阵形式,如图所示。在矩阵式键盘中,每条水平线和垂直线在交叉处不直接连通,而是通过一个按键加以连接。这样,一个端口(如P1口)就可以构成4*4=16个按键,比之直接将端口线用于键盘多出了一倍,而且线数越多,区别越明显,比如再多加一条线就可以构成20键的键盘,而直接用端口线则只能多出一键(9键)。由此可见,在需要的键数比较多时,采用矩阵法来做键盘是合理的。 独立式键盘和4*4矩阵式键盘

单片机4X4键盘扫描和显示课程设计

二、设计内容 1、本设计利用各种器件设计,并利用原理图将8255单元与键盘及数码管显示单元连接,扫描键盘输入,最后将扫描结果送入数码管显示。键盘采用4*4键盘,每个数码管可以显示0-F共16个数。将键盘编号,记作0-F,当没按下其中一个键时,将该按键对应的编号在一个数码管上显示出来,当在按下一个 键时,便将这个按键的编号在下一个数码管上显示,数码管上 可以显示最近6次按下的按键编号。 设计并实现一4×4键盘的接口,并在两个数码管上显示键盘所在的行与列。 三、问题分析及方案的提出 4×4键盘的每个按键均和单片机的P1口的两条相连。若没有按键按下时,单片机P1口读得的引脚电平为“1”;若某一按键被按下,则该键所对应的端口线变为地电平。单片机定时对P1口进行程序查询,即可发现键盘上是否有按键按下以及哪个按键被按下。 实现4×4键盘的接口需要用到单片机并编写相应的程序来识别键盘的十六个按键中哪个按键被按下。因为此题目还要求将被按下的按键显示出来,因此可以用两个数码管来分别显示被按下的按键的行与列

表示任意一个十六进制数)分别表示键盘的第二行、第三行、第四行;0xXE、0xXD、0xXB、0xX7(X表示任意一个十六进制数)则分别表示键盘的第一列、第二列、第三列和第四列。例如0xD7是键盘的第二行第四列的按键 对于数码管的连接,采用了共阳极的接法,其下拉电阻应保证芯片不会因为电流过大而烧坏。 五、电路设计及功能说明 4×4键盘的十六个按键分成四行四列分别于P1端口的八条I/O 数据线相连;两个七段数码管分别与单片机的P0口和P2口的低七 位I/O数据线相连。数码管采用共阳极的接法,所以需要下拉电阻 来分流。结合软件程序,即可实现4×4键盘的接口及显示的设计。 当按下键盘其中的一个按键时,数码管上会显示出该按键在4×4键 盘上的行值和列值。所以实现了数码管显示按键位置的功能 四、设计思路及原因 对于4×4键盘,共有十六个按键。如果每个按键与单片机的一个引脚相连,就会占用16个引脚,这样会使的单片机的接口不够用(即使够用,也是对单片机端口的极大浪费)。因此我们应该行列式的接法。行列式非编码键盘是一种把所有按键排列成行列矩阵的键盘。在这种键若没有按键按下时,单片机从P1口读得的引脚电平为“1”;若某一按键被按下,则该键所对应的端口线变为地电平。因此0xEX(X表示任意4×4键盘的第一行中的某个按键被按下,相应的0xDX、0xBX、0x7X(X 二、实验内容

交通灯控制器课程设计实验报告

2011级课程设计实验报告 交 通 灯 控 制 器 院(系):计算机与信息工程学院 专业年级: 2011级通信工程一班 姓名: 谢仙 学号: 指导教师: 杨菊秋 2013年06月25日

目录 1 引言 (3) 2 任务与要求 (3) 3 课程设计摘要及整体方框图 (3) 4 课程设计原理 (4) 555定时器 (5) 七位二进制计数器4024 (6) 二进制可逆计数器74LS193 (8) 数码显示电路 (9) 结论 (10) 体会与收获 (10) 附录: 1、整体电路原理图 (11) 2、元件表 (12) 3、焊接与调试 (12) 1引言

交通信号灯常用于交叉路口,用来控制车辆的流量,提高交叉路口车辆的通行能力,减少交通事故。本交通灯设计主要由秒脉冲发生器、计数器、译码显示电路组成。秒脉冲发生器由NE555产生脉冲,计数器由74LS193和4024实现,译码电路采用74LS48和七段数码管来显示。 2设计任务与要求 交通灯控制信号的应用非常广泛。本电路设计一个交通灯控制器,需要达到的目的如下; 一个周期64秒,平均分配,前32秒红灯亮,后32秒绿灯亮。 在红灯亮的期间的后8秒与红灯在一起的黄灯闪烁(注意:红灯同时亮)。为了显示效果明显,设计闪烁频率为1。 在绿灯亮的期间的后8秒与绿灯在一起的黄灯闪烁(注意:绿灯同时亮),为了显示效果明显,设计闪烁频率为1。 在黄灯闪烁期间,数码管同时倒计时显示,在此期间以外,数码管不亮。 3课程设计摘要及整体方框图 为了完成交通灯控制电路的设计,方案考虑如下: 一个脉冲信号发生器,一个二进制加法计数器,一个十进制减法计数器,红灯与绿灯以及黄灯是否亮是由二进制加法计数器的输出端状态来决定的,因此,设计一个组合逻辑电路,它的输入信号就是二进制加法计数器的输出信号,它的输出就是发光二极管的控制信号,因此,需要一个组合逻辑电路,六个发光二极管(二个红色发光二极管,二个绿色发光二极管,二个黄色发光二极管)电路,一个数码管显示电路。结构图如下: 4 课程设计原理分析及相关知识概述

基于单片机的交通灯设计实训报告

重庆三峡学院 课程设计报告书题目:基于单片机的交通灯设计 学院(系): 学号: 学生姓名: 指导教师: 教师职称: 制作日期2011年12月25日 目录

1.设计要求---------------------------------------------------- 01 2.系统设计方案---------------------------------------------- 01 3.硬件电路设计---------------------------------------------- 02 4.软件系统设计---------------------------------------------- 06 5.仿真与调试------------------------------------------------- 08 6.实训体会---------------------------------------------------- 13 7.附录---------------------------------------------------------- 14 摘要

单片微型计算机简称单片机,即把组成微型计算机的各个功能部件,如中央处理器(CPU )、随机存储器(RAM )、只读存储器(ROM )、I/O 接口电路、定时器/计数器以及串行接口等集成在一块芯片中构成一个完整的微型计算机。设计一个基于单片机的交通灯设计。主要包括AT89c51单片机、复位电路、驱动控制芯片74LS240和74LS07及外中断等。实现控制各个路口的交通灯变化,通过外中断起 到紧急开关作用,加上复位电路,使其恢复成初始状态。 本设计主控芯片采用AT89C51单片机,配合其他基本设备完成设计。采用C51语言进行编程,编程后利用KEIL C51进行编译,生成对应用的HEX 文件,采用PROETUS 软件进行系统硬件的仿真模拟,检验功能。模拟试验成功后,焊接硬件电路,通过ISP 下载线将HEX 文件载入单片机内,完成整个设计进行实际操作,并实际记录单片机工作情况。 设计一个基于单片机的交通灯设计。主要包括AT89c51单片机、复位电路、驱动控制芯片74LS240和74LS07及外中断等。实现控制各个路口的交通灯变化,通过外中断起到紧急开关作用,加上复位电路,使其恢复成初始状态。 1. 设计要求 设计一个基本十字路口交通灯管理系统。初始化4个路口红灯全亮,2秒后切换为东西 路口红灯亮,南北绿灯亮,持续60秒,红绿灯切换过渡时红灯依旧亮,绿灯亮转变为黄灯闪烁5次,过程时间为5秒,然后切换为南北路口红灯亮,东西路口绿灯亮,持续时间60秒,过渡过程切换方式同上,5秒后,再次切换为东西路口红灯亮,南北绿灯亮。如此周而复始。 2.系统设计图 利用单片机完成交通信号灯控制器的设计,该交通信号灯控制器由一条主干道和一条支 干道汇合成十字路口,在每个入口处设置红、绿、黄三色信号灯,红灯亮禁止通行,绿灯亮 南 东

矩阵键盘单片机识别实验与程序

4×4矩阵键盘51单片机识别实验与程序1.实验任务 图4.14.1 2.硬件电路原理图 图4.14.2 3.系统板上硬件连线 (1.把“单片机系统“区域中的P3.0-P3.7端口用8芯排线连接到“4X4行列式键盘”区域中的C1-C4 R1-R4端口上; (2.把“单片机系统”区域中的P0.0/AD0-P0.7/AD7端口用8芯排线连接到“四路静态数码显示模块”区域中的任一个a-h端口上;要求:P0.0/AD0对应着a,P0.1/AD1对应着b,……,P0.7/AD7对应着h。 4.程序设计内容 (1.4×4矩阵键盘识别处理 (2.每个按键有它的行值和列值,行值和列值的组合就是识别这个按键的编码。矩阵的行线和列线分别通过两并行接口和CPU通信。每个按键的状态同样需变成数字量“0”和 “1”,开关的一端(列线)通过电阻接VCC,而接地是通过程序输出数字“0”实现的。 键盘处理程序的任务是:确定有无键按下,判断哪一个键按下,键的功能是什么;还要 消除按键在闭合或断开时的抖动。两个并行口中,一个输出扫描码,使按键逐行动态接 地,另一个并行口输入按键状态,由行扫描值和回馈信号共同形成键编码而识别按键, 通过软件查表,查出该键的功能。 5.程序框图 图4.14.3 C语言源程序 #include unsignedcharcodetable[]={0x3f,0x06,0x5b,0x4f, 0x66,0x6d,0x7d,0x07,

0x39,0x5e,0x79,0x71}; unsignedchartemp; unsignedcharkey; unsignedchari,j; voidmain(void) { while(1) { P3=0xff; P3_4=0; temp=P3; temp=temp&0x0f; if(temp!=0x0f) { for(i=50;i>0;i--) for(j=200;j>0;j--); temp=P3; temp=temp&0x0f; if(temp!=0x0f) { temp=P3; temp=temp&0x0f; switch(temp)

交通灯控制逻辑电路设计实验报告

《数字设计》课程实验报告 实验名称:交通灯控制逻辑电路的设计与仿真实现 学员:学号: 培养类型:年级: 专业:所属学院: 指导教员:职称: 实验室:实验日期:

交通灯控制逻辑电路的设计与仿真实现 实验目的: 1. 熟悉Multisim仿真软件的主要功能和使用。 2. 熟悉各种常用的MSI时序逻辑电路的功能和使用。 3. 运用逻辑设计知识,学会设计简单实用的数字系统。 二、实验任务及要求: 1.设计一个甲干道和乙干道交叉十字路口的交通灯控制逻辑电路。每个干道各一组指示灯(红、绿、黄)。要求:当甲干道绿灯亮16秒时,乙干道的红灯亮;接着甲干道的黄灯亮5秒,乙干道红灯依然亮;紧接着乙干道的绿灯亮16秒,这时甲干道红灯亮;然后乙干道黄灯亮5秒,甲干道红灯依然亮;最后又是甲干道绿灯亮,乙干道变红灯,依照以上顺序循环,甲乙干道的绿红黄交通指示灯分别亮着。 2.要求: (1)分析交通灯状态变换,画出基于格雷码顺序的交通灯控制状态图。 (2)设计时序逻辑电路部分,写出完整的设计过程,画出逻辑电路图。在Multisim 仿真平台上,搭建设计好的该单元电路,测试验证,将电路调试正确。 (3)设计组合逻辑电路部分,写出完整的设计过程,画出逻辑电路图。在Multisim 仿真平台上,搭建设计好的该单元电路,测试验证,将电路调试正确。 (4)用74LS161计数器构造16秒定时和5秒定时的定时电路,画出连线图。在Multisim仿真平台上,选用74LS161芯片连线,测试验证,将电路调试正确。(5)在Multisim仿真平台上形成整个系统完整的电路,统调测试结果。 三、设计思路与基本原理: 依据功能要求,交通灯控制系统应主要有定时电路、时序逻辑电路及信号灯转换器组合逻辑电路组成,系统的结构框图如图1所示。其中定时电路控制时序逻辑电路状态的该表时间,时序逻辑电路根据定时电路的驱动信号而改变状态,进而通过组合逻辑电路控制交通灯系统正常运行。 在各单元电路的设计顺序上,最先设计基础格雷码顺序的交通灯控制状态图,由此确定时序逻辑电路的设计,并完成该部分电路的调试。接着在设计好时序路逻辑电路的基础上,根据状态输出设计组合逻辑电路,并完成该部分的调试。最后完成定时电路的设计与调试。整合电路,形成整个系统完整的电路,统调测试结果。

单片机交通灯实训报告完整版

课程设计 课题名称智能交通信号灯姓名 学号 班级 专业 所在系 指导教师 完成日期

智能交通信号灯 摘要 本设计是在熟练掌握单片机及其仿真系统使用方法基础上,综合应用单片机原理、微机原理等课程方面的知识,设计一个采用AT89C52单片机控制的交通灯控制电路。该设计结合实际情况给出了一种简单低成本城市交通灯控制系统的硬件及软件设计方案、各个路口交通灯的状态循环显示,并对程序流程图进行详细讲解分析。交通在人们的日常生活中占有重要的地位,随着人们社会活动的日益频繁,这点更是体现的淋漓尽致。交通信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。近年来随着科技的飞速发展,单片机的应用正在不断深入,同时带动传统控制检测技术日益更新。在实时检测和自动控制的单片机应用系统中,单片机往往作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构软硬件结合,加以完善。根据给出的要求设计交通灯东西、南北两干道交于一个十字路口各干道有一组红、黄、绿三色的指示灯指挥车辆和行人安全通行。红灯亮禁止通行绿灯亮允许通行。黄灯亮提示人们注意红、绿灯的状态即将切换且黄灯亮的时间为东西、南北两干道的公共停车时间。关键词:电子线路;AT89C52 ; LED 交通灯。

目录 一、绪论 (4) 二、总体设计方案 (4) 1.设计思路 (4) 2.设计目的 (5) 3.设计任务和内容 (5) (1)设计任务 (5) 4.电源提供方案 (5) 5.复位方案 (5) 6.输入方案 (5) 三、显示界面方案 (6) 四、交通管理的方案论证 (7) 五、芯片简介 (7) 1.AT89S52单片机简介 (7) 2.主要性能 (8) 3.功能特性描述 (8) 六、设计原理分析 (10) 1.交通灯显示时序的理论分析与计算 (10) 2.交通灯显示时间的理论分析与计算 (12) 七、LED数码管显示模块 (13) 1.静态显示方式 (13) 八、复位电路 (14) 九、晶振电路 (15) 十、总结与谢词 (15) 十一、参考文献 (16) 十二、附录 (16) 附录1:程序清单 (16) 附录2:电路设计图 (18)

交通灯控制器的设计

EDA实验报告 一、课程设计题目及要求 题目: 十字路口交通灯 具体要求: 设计一个十字路口得交通灯控制器,能显示十字路口东西、南北两个方向红、黄、绿灯得指示状态。用两组红、黄、绿三种颜色得灯分别作为东西、南北两个方向红、黄、绿等。变化规律为:东西绿灯亮,南北红灯亮——东西黄灯亮,南北红灯亮——东西红灯亮,南北绿灯亮——东西红灯亮,南北黄灯亮——东西绿灯亮,南北红灯亮······,这样循环下去。南北方向每次通行时间为45秒,东西方向每次通行时间为45秒,要求两条交叉道路上得车辆交替运行,时间可设置修改。绿灯转为红灯时,要求黄灯先亮5秒钟,才能变换运行车道。并要求所有交通灯得状态变化在时钟脉冲上升沿处。 二、实验编程环境 QuartusII 8、0 三、课程设计得详细设计方案 (一)、总体设计方案得描述 1、1、根据交通灯系统设计要求,可以用一个有限状态机来实现这个交通灯控制器。首先根据功能要求,明确两组交通灯得状态,这两组交通灯总共共有四种状态,我们用ST0,ST1,ST2,ST3 来表示: St0表示东西路绿灯亮,南北路红灯亮; St1表示东西路黄灯亮,南北路红灯亮; St2表示东西路红灯亮,南北路绿灯亮; St3表示东西路红灯亮,南北路黄灯亮; 1、2、根据上述四种状态描述列出得状态转换表 1、3、根据状态转换表得到交通灯控制器得状态转移图如图所示。

交通灯控制器得状态转移图 (二)各个模块设计 2、1、控制器模块 控制器模块示意图 其中,clk 为时钟信号,时钟上升沿有效。hold 为紧急制动信号,低电平有效。ared,agreen,ayellow 分别表示东西方向得红灯,黄灯,绿灯显示信号,高电平有效。 bred,bgreen,byellow 分别表示南北方向得红灯,黄灯,绿灯显示信号,高电平有效。 用于控制红绿黄灯得亮暗情况。 2、2、45秒倒计时计数器模块 45秒倒计时计数器模块示意图 其中,CLK 为时钟信号,时钟上升沿有效。EN 为使能端,高电平有效。CR 为紧急制动信号低电平有效。QL{3、、0}就是计数低位。QH{3、、0}就是计数高位。 用于45秒得倒计时计数。 2、3、7位译码器模块 7位译码器模块示意图 其中dat{3、、0}为要译码得信号。a,b,c,d,e,f,g 为译码后得信号。 用于将45秒倒计时计数得信号译码成数码管可以识别得信号。 2、4、50MHZ 分频器模块 50MHZ 分频器模块示意图 其中clk 为50MHZ 时钟信号,时钟上升沿有效。输出clk_out 为1HZ 时钟信号,时钟上升CLK EN CR QL[3、、0] QH[3、、0] OC m45 inst2

相关文档
最新文档