电梯楼层显示电路设计

  • 格式:pdf
  • 大小:536.59 KB
  • 文档页数:7

下载文档原格式

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

else {do {count++;P2=table[count];delay(10);}while(5-count>0);}
}
if(sw6==0)
{
if(count==6){P2=table[count];delay(10);}
else
if(count>6){do
{count--;P2=table[count];delay(10);}while(count-6>0);}
else {do{count++;P2=table[count];delay(10);}while(4-count>0);}
பைடு நூலகம்
}
if(sw5==0)
{
if(count==5){P2=table[count];delay(10);}
else
if(count>5){do
4
单片机原理及应用课程设计
{count--;P2=table[count];delay(10);}while(count-5>0);}
三.实验方案
四.实验源程序 #include<reg51.h> #define uchar unsigned char #define uint unsigned int sbit led=P2; sbit sw1=P1^0;
3
单片机原理及应用课程设计
sbit sw2=P1^1;
sbit sw3=P1^2;
else {P2=table[count];delay(10);}
}
if(sw3==0)
{
if(count==3){P2=table[count];delay(10);}
else
if(count>3){do
{count--;P2=table[count];delay(10);}while(count-3>0);}
线送入字符编码,而选中哪个位选线,那个数码管便会被点亮。数码管的 8 段,对应一个字 节的 8 位,a 对应最低位,dp 对应最高位。所以如果想让数码管显示数字 0,那么共阴数码 管的字符编码为 00111111,即 0x3f;共阳数码管的字符编码为 11000000,即 0xc0。可以看 出两个编码的各位正好相反。 3.Proteush 仿真软件介绍 Proteus 软件是英国 Labcenter electronics 公司出版的 EDA 工具软件。它不仅具有其它 EDA 工具软件的仿真功能,还能仿真单片机及外围器件。它是目前最好的仿真单片机及外围器件 的工具。虽然目前国内推广刚起步,但已受到单片机爱好者、从事单片机教学的教师、致力 于单片机开发应用的科技工作者的青睐。Proteus 是世界上著名的 EDA 工具(仿真软件),从 原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到 PCB 设计,真正实现了从 概念到产品的完整设计。是目前世界上唯一将电路仿真软件、PCB 设计软件和虚拟模型仿真 软件三合一的设计平台,其处理器 8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、 8086 和 MSP430 等,2010 年即将增加 Cortex 和 DSP 系列处理器,并持续增加其他系列处理 器模型。在编译方面,它也支持 IAR、Keil 和 MPLAB 等多种编译器。 该软件的特点: a.全部满足我们提出的单片机软件仿真系统的标准,并在同类产品中具有明显的优势。 b.具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统的仿真、RS 一 232 动态仿真、1C 调试器、SPI 调试器、键盘和 LCD 系统仿真的功能;有各种虚拟仪器,如示波 器、逻辑分析仪、信号发生器等。 c.目前支持的单片机类型有:68000 系列、8051 系列、AVR 系列、PIC12 系列、PIC16 系列、 PIC18 系列、Z80 系列、HC11 系列以及各种外围芯片。 d.支持大量的存储器和外围芯片。总之该软件是一款集单片机和 SPICE 分析于一身的仿真软 件,功能极其强大,可仿真 51、AVR、PIC。
{
int i;
while(n--)
{ for(i=0;i<10000;i++){;}}
}
void main()
{
int count=1;
P2=0x06;
while(1)
{
if(sw1==0)
{
if(count==1){P2=table[count];delay(10);}
else {do {count--;P2=table[count];delay(10);}while(count-1>0);}
sbit sw4=P1^3;
sbit sw5=P1^4;
sbit sw6=P1^5;
sbit sw7=P1^6;
sbit sw8=P1^7;
char code table[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x67};
void delay(int n)
else {do{count++;P2=table[count];delay(10);}while(7-count>0);}
}
if(sw8==0)
{
if(count==8){P2=table[count];delay(10);}
else {do{count++;P2=table[count];delay(10);}while(8-count>0);}
<<单片机原理及应用>>课程设计
姓名:纪乐 学号:12013241906 专业:通信工程 班级:2013 级 1 班 指导老师:陈潮红 学院:物理电气信息学院 完成日期:2015 年 12 月 10 日
单片机原理及应用课程设计
电梯楼层显示电路设计
前言:近年来随着科技的飞速发展,单片机的应用正在不断地走向深入,同时 带动传统控 制检测日新月益更新。在实时检测和自动控制的单片机应用系统中,单片机往往是作为一个 核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构,以及针对具体应用 对象特点的软件结合,加以完善。本次设计通过了解单片机的基本知识,简单的扩展外围电 路,完成基本的功能。 摘要:AT89C51 单片机 电梯楼层 Proteus 仿真
一.设计任务 1、掌握 51 单片机的基本结构及相关知识,掌握 Keil 和 Protues 软件的使用和两者的关系, 并能更好的用两种软件来做单片机实验的仿真。利用 51 单片机、数码管显示器设计一个单 片机显示系统,要求在液晶上显示楼层“1,2,3,4,5,6,7,8”。 2、按照设计任务在 Proteus Professional 中绘制电路原理图; 3、了解电梯楼层显示电路的编程方法和相关知识,根据设计任务的要求编写程序,画出程 序流程图,并在 Proteus 下进行仿真,实现相应功能。 4、培养学生自主学习、正确分析和解决问题的能力
其中引脚图的两个 COM 端连在一起,是公共端,共阴数码管要将其接地,共阳数码管将其 接正 5 伏电源。一个八段数码管称为一位,多个数码管并列在一起可构成多位数码管,它们 的段选线(即 a,b,c,d,e,f,g,dp)连在一起,而各自的公共端称为位选线。显示时,都从段选
2
单片机原理及应用课程设计
}
}
}
五.实验步骤
1、打开 Protues 软件,画出实验电路仿真图:如下
2、打开 keil 软件,project—new uvision project—输入工程名 loucengxianshi,保存。
然后新建 Text,输入上面的 C 语言程序(见附页),编译。保存成后缀名为.C 的文件。然后
左击左面栏里的 sourcegroup1—Add file to source group1,选择刚刚保存的.C 文件,点
2.数码管显示原理 我们最常用的是七段式和八段式 LED 数码管,八段比七段多了一个小数点,其他的基
本相同。所谓的八段就是指数码管里有八个小 LED 发光二极管,通过控制不同的 LED 的亮灭 来显示出不同的字形。数码管又分为共阴极和共阳极两种类型,其实共阴极就是将八个 LED 的阴极连在一起,让其接地,这样给任何一个 LED 的另一端高电平,它便能点亮。而共阳极 就是将八个 LED 的阳极连在一起。其原理图如下。
二.实验原理 电梯楼层显示电路是由单片机控制的,主要的部件有 51 单片机、开关控制和数码显示管组 成。通过数码管显示楼层,开关控制。
1.AT89C51 的基本概述 AT89C5l 单片机,是一种低功耗、高性能的、片内含有 4KB Flash ROM 的 8 位 CMOS 单片机, 工作电压范围为 2.7~6V(实际使用+5V 供电),8 位数据总线。它有—个可编程的全双工串 行通信接口,能同时进行串行发送和接收。AT89C51 具有 4K 并行可编程的非易失性 FLASH 程序存储器,可实现对器件串行在系统编程 ISP 和在应用中编程(IAP)。在系统编程 ISP (In-System Programming)当 MCU 安装在用户板上时允许用户下载新的代码在应用中编程。 IAP(In-Application Programming)MCU 可以在系统中获取新代码并对自己重新编程,这 种方法允许通过调制解调器连接进行远程编程。片内 ROM 中固化的默认的串行加载程序 Boot Loader 允许 ISP 通过 UART 将程序代码装入 Flash 存储器,而 Flash 代码中则不需要加载程 序对于 IAP 用户程序通过使用片内 ROM 中的标准程序对 Flash 存储器进行擦除和重新编程。
else {do{count++;P2=table[count];delay(10);}while(3-count>0);}
}
if(sw4==0)
{
if(count==4){P2=table[count];delay(10);}
else if(count>4){do {count--;P2=table[count];delay(10);}while(count-4>0);}
引脚功能说明: VCC:电源电压。 GND:接地。 P0 口:一组 8 位漏极开路型双向 I/O 口,也即地址/数据总线复用口。作为输出口时,每位
1
单片机原理及应用课程设计 能吸收电流的方式驱动 8 个 TTL 逻辑门电路,对端口写“1”可作为高阻抗输入端用。在 Flash 编程中,P0 口接收指令字节;在校验时,输出指令字节,校验时,要求外接上拉电阻。 P1 口:一个带内部上拉电阻的 8 位双向 I/O 口,P1 口的输出缓冲级可驱动 4 个 TTL 逻辑门 电路。 P2 口:一个带有内部上拉电阻的 8 位双向 I/O 口,P2 口的输出缓冲级可驱动 4 个 TTL 逻辑 门电路。 P3 口:一组带有内部上拉电阻的 8 位双向 I/O 口,P3 口的输出缓冲级可驱动 4 个 TTL 逻辑 门电路。第二功能如 1 所示: RST:复位输入。在振荡器工作时,该引脚出现两个机器周期以上的高电平将使单片机复位。 PSEN:程序储存允许输出是读通信号。当 AT89C51 由外部程序存储器取指令(数据)时,每 个机器周期两次 PSEN 有效。 EA/VPP:外部访问允许。要使 CPU 仅仅访问外部程序存储器,EA 端必须保持低电平。如果 EA 端为高电平,接 Vcc 端,CPU 则执行内部程序存储器中的指令。 XTAL1:振荡器反向放大器及内部时钟发生器的输入端。 XTAL2:振荡器反向放大器输入端。
else {do {count++;P2=table[count];delay(10);}while(6-count>0);}
}
if(sw7==0)
{
if(count==7){P2=table[count];delay(10);}
else
if(count>7){do
{count--;P2=table[count];delay(10);}while(count-7>0);}
}
if(sw2==0)
{
if(count<2){do{count++;P2=table[count];delay(10);}while(2-count>0);}
else
if(count>2){do
{count--;P2=table[count];delay(10);}while(count-2>0);}