单片机课程设计

发布 2022-10-04 22:09:28 阅读 4642

河南理工大学。

计算机科学与技术学院。

课程设计报告。

2009 — 2010 学年第 1 学期。

课程名称单片机课程设计

设计题目十字路**通灯的设计与实现

学生姓名。学号。

专业班级 指导教师。

2001 年 1 月 2 日。

目录。一、设计题目2

二、设计要求2

三、设计目的2

四、设计方案3

五、硬件设计5

六、软件分析8

七、总结与展望11

八、参考文献11

设计题目:十字路**通灯的设计与实现。

设计要求:发光二级管模拟交通灯,以塔南路某十字路口(自己定)交通规则编制控制程序。倒计时采用光柱渐熄方式,设置一个开关,当开关合上时(表示有救护车通过),所有路口均变成红灯,当开关打开时(表示救护车已经通过),交通灯继续按照正常情况运行。

设计目的:随着我国经济的高速发展,人们对私家车、公交车的需求越来越大。相应地,我国进入wto以后,我国经济**与世界接轨,汽车业关税大大降低,使很多人都能负担得起,买私家车不再是梦想。

但是,私家车、公交车的大增无疑会对我国交通系统带来沉重的压力。放眼现在的中国,如广州、香港、上海等大都市,无不受到交通堵塞的困扰。中国要发展,交通事业决不能停步不前。

有及于此,我国交通管制系统应当以人性化、智能化为目的,作出相应的改善。本**正是以此为出发点,对单片机控制的交通信号灯模型作了较详尽的介绍。

设计方案:设计的交通绿灯通行时间是30秒,红灯亮28秒,黄灯亮2秒;因为要用到两个方向上的交通灯,所以要设计两个定时器中断。

其次,根据题目要求,还要有处理紧急情况的功能,即有即救护车通过时,两个方向的灯要同时变为红色,让救护车优先通行,可以一个外部中断来实现这个功能;没有紧急情况的话,就按正常的交通规则通行,即红黄绿灯交替显示。

硬件设计:一、单片机主控电路。

1、 主要元器件介绍。

单片机主控电路的主要元件是at89c52,其外型如图:

at89c52是一个低电压,高性能cmos 8位单片机,片内含8k bytes的可反复擦写的flash只读程序存储器(perom)和256 bytes的随机存取数据存储器(ram),器件采用atmel公司的高密度、非易失性存储技术生产,兼容标准mcs-51指令系统,片内置通用8位**处理器和flash存储单元,内置功能强大的微型计算机的at89c52提供了高性价比的解决方案。

at89c52是一个低功耗高性能单片机,40个引脚,32个外部双向输入/输出(i/o)端口,3个16位定时/计数器,一个6向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。at89c52可以按照常规方法进行编程,也可以**编程。其将通用的微处理器和flash存储器结合在一起,特别是可反复擦写的flash存储器可有效地降低开发成本。

2、管脚说明:

vcc:供电电压。

gnd:接地。

p0口:p0口为一个8位漏级开路双向i/o口,每脚可吸收8ttl门流。当p1口的管脚第一次写1时,被定义为高阻输入。

p0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在fiash编程时,p0 口作为原码输入口,当fiash进行校验时,p0输出原码,此时p0外部必须被拉高。

p1口:p1口是一个内部提供上拉电阻的8位双向i/o口,p1口缓冲器能接收输出4ttl门电流。p1口管脚写入1后,被内部上拉为高,可用作输入。

做输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流。p1.0和p1.

1还可分别作为定时/计数器2的外部计数输入(p1.0/t2)和输入(p1.1/t2ex)。

flash编程和程序校验期间,p1接受低8位地址。

p2口:p2口为一个内部上拉电阻的8位双向i/o口,p2口缓冲器可接收,输出4个ttl门电流,当p2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,p2口的管脚被外部拉低,将输出电流。

这是由于内部上拉的缘故。p2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,p2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,p2口输出其特殊功能寄存器的内容。

p2口在flash编程和校验时接收高八位地址信号和控制信号。

p3口:p3口管脚是8个带内部上拉电阻的双向i/o口,可接收输出4个ttl门电流。当p3口写入“1”后,它们被内部上拉为高电平,并用作输入。

作为输入,由于外部下拉为低电平,p3口将输出电流(ill)这是由于上拉的缘故。

p3口也可作为at89c52的一些特殊功能口,如下表所示:

口管脚备选功能。

p3.0 rxd(串行输入口)

p3.1 txd(串行输出口)

p3.2 /int0(外部中断0)

p3.3 /int1(外部中断1)

p3.4 t0(记时器0外部输入)

p3.5 t1(记时器1外部输入)

p3.6 /wr(外部数据存储器写选通)

p3.7 /rd(外部数据存储器读选通)

p3口同时为闪烁编程和编程校验接收一些控制信号。

rst:复位输入。当振荡器复位器件时,要保持rst脚两个机器周期的高电平时间。

ale/prog:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在flash编程期间,此引脚用于输入编程脉冲。

在平时,ale端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:

每当用作外部数据存储器时,将跳过一个ale脉冲。如想禁止ale的输出可在sfr8eh地址上置0。此时, ale只有在执行movx,movc指令是ale才起作用。

另外,该引脚被略微拉高。如果微处理器在外部执行状态ale禁止,置位无效。

/psen:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/psen有效。但在访问外部数据存储器时,这两次有效的/psen信号将不出现。

ea/vpp:当/ea保持低电平时,则在此期间外部程序存储器(0000h-ffffh),不管是否有内部程序存储器。注意加密方式1时,/ea将内部锁定为reset;当/ea端保持高电平时,此间内部程序存储器。

在flash编程期间,此引脚也用于施加12v编程电源(vpp)。

xtal1:反向振荡放大器的输入及内部时钟工作电路的输入。

xtal2:来自反向振荡器的输出。

3、 硬件设计如图。

上面是at89c52单片机,一个8电阻排阻和两个数据输入缓冲器74ls244,从at89c52中导入“校西门交通灯。hex”文件,然后从p3.2引脚引出一个开关,用来控制紧急情况(比如救护车通行时两个方向的交通灯都要变为红色)。

排阻和12个交通灯相连,数据输入缓冲寄存器和四个数码管相连,用来传输数据给数码管显示。

软件分析。交通信号灯模拟控制系统主程序及中断服务程序的流程图如下图所示。

1. 程序流程图。

程序。#include<>

#define uchar unsigned char

#define unit unsigned int

unit num1=30,num2=28; /通行和等待时间初值。

uchar count1=0,count2=0;

uchar flag=0;

const uchar tab=数码管显示数字0到9

sbit key1=p3^2; /紧急情况开关。

sbit p20=p2^0;

sbit p21=p2^1;

sbit p27=p2^7;

sbit p26=p2^6;

void delay(uchar z) /延时函数。

uchar x,y;

for(x=z;x>0;x--)

for(y=100;y>0;y--)

void int0() interrupt 0//外部中断0

while(key1==0)

void display(unit num1,unit num2)//显示函数。

p1=tab[num1%10];

p21=1;

delay(5);

p21=0;

p1=tab[num1/10];

p20=1;

delay(5);

p20=0;

p1=tab[num2/10];

p26=1;

delay(5);

p26=0;

p1=tab[num2%10];

p27=1;

delay(5);

p27=0;

void timer0() interrupt 1 //定时器中断0(南北通行)

th0=(65536-50000)/256;

tl0=(65536-50000)%256;

if(!flag)

//南北方向等待,东西方向开始通行。

num1--;

num2--;

void timer1() interrupt 3 //定时器中断1(东西通行)

th1=(65536-50000)/256;

tl1=(65536-50000)%256;

if(flag)

//东西方向等待,南北方向开始通行。

num1--;

num2--;

void main()

单片机课程设计

可变程序控制器是集微机技术 自动化技术 通讯技术于一体的通用工业控制装置。它可靠性强 性能 比高 使用方便,已在工业控制的各个领域里得到了极为广泛的应用,成为实现工业自动化的一种强有力的工具 1 plc的定义有许多种。国际电工委员会 iec 对plc的定义是 可编程控制器是一种数字运算操作的电子系统...

单片机课程设计

目录。内容提要2 关键词2引言3 一 硬件电路设计3 一 电路板原理3 二 电路元器件3 二 软件设计3 一 秒钟设计方案3 二 时钟设计方案4 结语7单片机时钟设计。内容摘要 一 在实验板上用动态扫描显示00 59秒钟,具体要求如下 一 6m晶振 二 l9 l10显示00 59十进制数并循环,间隔...

单片机课程设计

1 选题背景。1.1 家庭智能防盗报警系统设计的背景及目的。随着经济的发展,人们对防盗 防劫 防火保安设备的需求量大大增加。针对偷盗 抢劫 火灾 煤气泄漏等事故进行检测和报警的系统,其需求也越来越高。家居智能是以家为平台,兼备建筑 自动化,智能化于一体的高效 舒适 安全 便利的家居环境。自动化的家居...