文档库 最新最全的文档下载
当前位置:文档库 › 51单片机制作的电子时钟的proteus仿真

51单片机制作的电子时钟的proteus仿真

通过proteus仿真51单片机制作的电子钟

----------by lyz

这是一个利用proteus仿真简易电子钟的例子,通过c51单片机和一块1602液晶显示屏来工作,十分简单,这样的实践是初学者不错的练习。

第一步:

首先,点开isis.exe(切记不是ARES.EXE),如图1通过proteus把原理图布好。

单片机可以选用AT89c51,液晶显示可通过搜索关键字LM016L得到。由于本电路选用P0口,因此加上了RP1排阻作为上拉电阻。

图1

第二步:

编写程序如下,时间略有误差(us级),可通过keil中的debug调试地更为精确:#include

typedef unsigned char uchar;

typedef unsigned int uint;

sbit rs=P3^2;

sbit wr=P3^3;

sbit lcden=P3^4;

uchar timecount=0;

void delay(uint i)

{

uint a,b;

for(a=i;a>0;a--)

for(b=10;b>0;b--);

}

/********************1602*****************/ void write_com(uchar com)

{

P0=com;

rs=0;

lcden=0;

delay(10);

lcden=1;

delay(10);

lcden=0;

}

void write_date(uchar date)

{

P0=date;

rs=1;

lcden=0;

delay(10);

lcden=1;

delay(10);

lcden=0;

}

void init()

{

wr=0;

write_com(0x38);

delay(20);

write_com(0x0f);

delay(20);

write_com(0x06);

delay(20);

write_com(0x01);

delay(20);

}

/*********************************************************

主函数

**********************************************************/

void main()

{

uchar a,second=0,minute=0,hour=0;

uchar table[8];

TMOD|=0x01; //定时/计数器0工作于定时器模式,方式1

TH0=(65536-5000)/256;

TL0=(65536-5000)%256; //50ms定时常数

EA=1; //开总中断

ET0=1; //允许定时/计数器0 中断

TR0=1; //启动定时/计数器0 中断

P0=0;

P2&=0x1F;

init();

while(1)

{

if(timecount>19) //*****20乘50为1000ms {

timecount=0;

second++;

}

if(second==60)

{

second=0;

minute++;

}

if(minute==60)

{

minute=0;

hour++;

}

if(hour==24)

{

hour=0;

}

table[0]=hour/10+48; //***数字加上48对应的它的ascll码,用来显示在液晶上

table[1]=hour%10+48;

table[2]=58; //***58对应冒号

table[3]=minute/10+48;

table[4]=minute%10+48;

table[5]=0;

table[6]=second/10+48;

table[7]=second%10+48;

write_com(0x80);

delay(20);

for(a=0;a<8;a++)

{

write_date(table[a]);

delay(20);

}

}

}

/*********************************************************

中断服务函数

**********************************************************/

void Time0(void) interrupt 1 // using 0

{

TH0=(65536-5000)/256;

TL0=(65536-5000)%256; //50ms定时常数

timecount++;

}

/*********************************************************/

第三步:

双击电路图中的单片机,如下添加hex文件。

在里面添加进去通

过keil生成的hex

文件

第四步:

通过右下角的按钮控制单片机的工作,仿真开始

结果如下:

Let’s make things much more better!

毕业设计(论文)-基于单片机多功能电子时钟的设计与仿真(含程序仿真)[管理资料]

程序仿真等全套设计,联系153893706 第1章绪论 二十一世纪的今天,最具代表性的计时产品就是电子万年历,它是近代世界钟表业界的第三次革命。第一次是摆和摆轮游丝的发明,相对稳定的机械振荡频率源使钟表的走时差从分级缩小到秒级,代表性的产品就是带有摆或摆轮游丝的机械钟或表。第二次革命是石英晶体振荡器的应用,发明了走时精度更高的石英电子钟表,使钟表的走时月差从分级缩小到秒级。第三次革命就是单片机数码计时技术的应用(电子万年历),使计时产品的走时日差从分级缩小到1/600万秒,从原有传统指针计时的方式发展为人们日常更为熟悉的夜光数字显示方式,直观明了,并增加了全自动日期、星期、温度以及其他日常附属信息的显示功能,它更符合消费者的生活需求!因此,电子万年历的出现带来了钟表计时业界跨跃性的进步…… 我国生产的电子万年历有很多种,总体上来说以研究多功能电子万年历为主,使万年历除了原有的显示时间,日期等基本功能外,还具有闹铃,报警等功能。商家生产的电子万年历更从质量,价格,实用上考虑,不断的改进电子万年历的设计,使其更加的具有市场。 本设计为软件,硬件相结合的一组设计。在软件设计过程中,应对硬件部分有相关了解,这样有助于对设计题目的更深了解,有助于软件设计。基本的要了解一些主

要器件的基本功能和作用。 除了采用集成化的时钟芯片外,还有采用MCU的方案,利用AT89系列单片微机制成万年历电路,采用软件和硬件结合的方法,控制LED数码管输出,分别用来显示年、月、日、时、分、秒,其最大特点是:硬件电路简单,安装方便易于实现,软件设计独特,可靠。AT89C52是由ATMEL公司推出的一种小型单片机。95年出现在中国市场。其主要特点为采用Flash存贮器技术,降低了制造成本,其软件、硬件与MCS-51完全兼容,可以很快被中国广大用户接受。 本文介绍了基于AT89C52单片机设计的电子万年历。 选题背景及研究的目的与意义 设计的目的 电子钟已成为人们日常生活中必不可少的物品,广泛用于个人家庭以及车站码头、剧院、办公室等公共场所,给人们的生活、学习、工作、娱乐带来了极大的方便。随着技术的发展人们已经不再满足于钟表原先简单的计时功能,希望出现一些新的功能,诸如日历的显示闹钟的应用等,以带来更大的方便,而所有这些,又都以数字化的电子时钟为基础的。因此,研究实用电子时钟及其扩展应用,有着非常现实的意义,具有很大的实用价值。 研究的意义 由于数字集成电路的发展采用了先进的石英技术,现代电子时钟具有走时准确性能稳定制作维修简单等优点,弥补了传统钟表的许多不足之处。我们利用单片机技术设计制作的电子万年历,可以很方便的由软件编程进行功能的调整和改进,使其能够准确显示年月日时间星期的同时,还能具有很多其他功能。如设置闹钟语音报时阴阳历的转换二十四节气的显示等,有一定的新颖性和实用性,同时体积小携带方便,使用也更为方便,具有技术更新周期短成本低开放灵活等优点,具备一定的市场前景。这里介绍的就是一款可满足使用者特殊要求,输出方式灵活计时准确性能稳定维护方便的使用电子万年历。采用单片机进行遥控系统的应用设计,具有硬件接口简单方便,变成灵活多样,操作码个数可随意设定等优点。 研究内容 1、选用电子万年历芯片时,应重点考虑功能实在、使用方便、单片存储、低功耗、

基于51单片机的电子时钟

1、电子闹钟的硬件系统框架:设计出电子闹钟的基本整体框架。 2、电子闹钟的电源设计:采用交直流供电电源。电子钟一般采用数码管等显 示介质,因而必须以交流供电为主,以直流电源为后备辅助电源。 3、电子闹钟的主机电路设计:主要有 1)系统时钟电路设计:对时间要求不是很高,只要能使系统可靠起振并稳定运行就行。 2)系统复位电路设计:本系统采用的是RC复位方式 3)按键与按钮电路设计:按键与按钮电路设计中关键要考虑的就是按键的去抖动问题。本系统采用软件去抖。考虑到对时和设定闹铃时间操 作的使用频率不高,为了精简系统和降低成本,本系统只设置两个按 键。 a)SET键,对应系统的不同工作状态,具有3个功能:在复位后的待 机状态下,用于启动设定时间参数(对时或定闹);在设定时间参数状 态而且不是设定最低位(即分个位)的状态下,用于结束当前位的设 定,当前设定位下移;在设定最低位(分个位)的状态下,用于结束 本次时间设定。 b)+1键,用于对当前设定位进行加1操作。 4)闹铃声光指示电路设计:本系统采用声音指示,关键元件是蜂鸣器。 4、电子闹钟的显示电路设计:设计一个由LED数码管组成的显示电路,显示 采用共阳极数码管,其目的是为了简化限流电路的设计和实现亮度可调的 要求。 一功能模、设计指标: 1. 显示时、分、秒。 2. 可以24小时制或12小时制。 3. 具有校时功能,可以对小时和分单独校时,对分校时的时候,停止分向小时进位。校时时钟源可以手动输入或借用电路中的时钟。 4. 具有正点报时功能,正点前10秒开始,蜂鸣器1秒响1秒停地响5次。 5. 为了保证计时准确、稳定,由晶体振荡器提供标准时间的基准信号。 二、设计要求: 1. 画出总体设计框图,以说明数字钟由哪些相对独立的块组成,标出各个模块之间互相联系,时钟信号传输路径、方向和频率变化。并以文字对原理作辅助说明。 2. 设计各个功能模块的电路图,加上原理说明。 3. 选择合适的元器件,在面包上接线验证、调试各个功能模块的电路,在接线验证时设计、选择合适的输入信号和输出方式,在充分电路正确性同时,输入信号和输出方式要便于电路的测试和故障排除。 4. 在验证各个功能模块基础上,对整个电路的元器件和布线,进行合理布局,进行整个数字钟电路的接线调试。 三、制作要求: 自行装配、接线和调试,并能检查和发现问题,根据原理、现象和测量的数据分析问题所在,加以解决。学生要解决的问题包括元器件和面包板故障引起的问题。 四、设计报告内容要求: 1. 目的。

基于C51单片机的数字时钟课程设计(C语言带闹钟)

单片机技术课程设计 数字电子钟 学院: 班级: 姓名: 学号: 教师:

摘要 电子钟在生活中应用非常广泛,而一种简单方便的数字电子钟则更能受到人们的欢迎。所以设计一个简易数字电子钟很有必要。本电子钟采用AT89C52单片机为核心,使用12MHz 晶振与单片机AT89C52 相连接,通过软件编程的方法实现以24小时为一个周期,同时8位7段LED数码管(两个四位一体数码管)显示小时、分钟和秒的要求,并在计时过程中具有定时功能,当时间到达提前定好的时间进行蜂鸣报时。该电子钟设有四个按键KEY1、KEY2、KEY3、KEY4和KEY5键,进行相应的操作就可实现校时、定时、复位功能。具有时间显示、整点报时、校正等功能。走时准确、显示直观、运行稳定等优点。具有极高的推广应用价值。 关键词: 电子钟 AT89C52 硬件设计软件设计

目录 NO TABLE OF CONTENTS ENTRIES FOUND. 一、数字电子钟设计任务、功能要求说明及方案介绍 1.1 设计课题设计任务 设计一个具有特定功能的电子钟。具有时间显示,并有时间设定,时间调整功能。 1.2 设计课题的功能要求说明 设计一个具有特定功能的电子钟。该电子钟上电或按键复位后能自动显示系统提示符“d.1004-22”,进入时钟准备状态;第一次按电子钟启动/调整键,电子钟从12时59分0秒开始运行,进入时钟运行状态;按电子钟S5键,则电子钟进入时钟调整状态,此时可利用各调整键调整时间,调整结束后可按S5键再次进入时钟运行状态。 1.3 设计课的设计总体方案介绍及工作原理说明 本电子钟主要由单片机、键盘、显示接口电路和复位电路构成,设计课题的总体方案如图1所示:

(完整word版)51单片机数字钟

目录 1 设计任务与要求................................................... I 2 设计方案 (1) 3 硬件设计 (2) 3.1 AT89C51单片机简介 2 3.2单片机型号的选择 (6) 3.3数码管显示工作原理 (6) 4 软件设计 (7) 4.1主程序模块介绍 (7) 4.2主程序 (7) 5 仿真调试 ........................................ 错误!未定义书签。 5.1K EIL仿真结果................................. 错误!未定义书签。 5.2仿真结果分析 (13) 6 小结 ............................................ 错误!未定义书签。

1 设计任务与要求 1. 设计一个基于单片机的电子时钟,并且能够实现时分秒的现实和调节。 2. 设计出硬件电路。 3. 设计出软件编程方法,并写出源代码。 4. 用PROTEUS进行仿真。 5.用汇方式实现目的。 7.系统的各各功能模块要编语言编实现程序设计。 6.利用查表,中断等清楚,有序。 8.程序运行时有友好的用户界面。 2 设计方案 本设计主要设计了一个基于AT89C51单片机的电子时钟。并在数码管上显示相应的时间。并通过一个控制键用来实现时间的调节和是否进入省电模式的转换。应用Proteus的ISIS软件实现了单片机电子时钟系统的设计与仿真。该方法仿真效果真实、准确,节省了硬件资源。 该设计的硬件部分主要包括89C51多功能接口芯片用于开发电子时钟芯片、LED七段数码显示器用于显示时间、8031集成定时器用于定时、0.125W、8欧姆的扬声器用于定时发声。软件部分包括主程序、定时计数中断程序、时间调整程序、延时程序四大模块。通过中断程序进行定时器计数,时间调整程序是当键按下时间小于1秒,关闭显示(省电)进入调节时间状态,延时程序用于时间的延迟。先设计个秒钟程序,在秒钟程序中先不设计按钮,直接通电运行,使用40H 存放计数值,从00—59,一直循环,把40H中的数值拆分成个位和十位,分别存在30H与31H中,要求动态扫描时,使用21H当标志位,用指令JB控制显示个位与十位,程序中使用中间寄存器R0与R1用于存放拆分后的字型,再传到30H与31H中去,再设计时钟程序。

51单片机电子万年历设计带有proteus仿真

湖南文理学院课程设计 课程名称:单片机课程设计 设计题目:电子万年历 教学院部:电气与信息工程学院 专业班级:自动化09101班 指导教师:张晓虎 ( 学生姓名:邵泽 学号: 0120 完成时间: 2012 年6月12日 报告成绩: {

摘要: 电子万年历是一种非常广泛日常计时工具,对现代社会越来越流行。它可以对年、月、日、周日、时、分和秒进行计时,还具有闰年补偿等多种功能,而且DS1302的使用寿命长,误差小。对于数字电子万年历采用直观的数字显示,可以同时显示年、月、日、周日、时、分、秒等信息,还具有时间校准等功能。该电路采用AT89C52单片机作为核心,功耗小,能在3V的低压工作,电压可选用3到5V电压供电。 万年历的设计过程在硬件与软件方面进行同步设计。硬件部分主要由AT89C52单片机,液晶显示电路,复位电路,时钟电路,稳压电路电路以及串口下载电路等组成。在单片机的选择上使用了AT89C52单片机,该单片机适合于许多较为复杂控制应用场合。显示器使用液晶LCD1602。软件方面主要包括日历程序、液晶驱动程序,显示程序等。程序采用汇编语言编写。所有程序编写完成后,在Keil C51软件中进行调试,确定没有问题后,在Proteus软件中嵌入单片机内进行仿真。 关键词时钟电钟,DS1302,液晶LCD1602,单片机 Abstract: … Electronic calendar is a very extensive daily timing tool for modern society is more and more popular. It can be to year, month, day, Sunday, when, minutes, and seconds for the time, also has a leap year compensation and other functions, and the DS1302 long service life and small error. For digital electronic calendar using intuitive digital display, can also shows that year, month, day, Sunday, when the information such as, minutes and seconds, still have time calibration etc. Function. The AT89C52 single chip microcomputer as circuit adopts core, power consumption is small, can be in 3 V of low-pressure work, voltage can choose 3 to 5 V voltage power supply. The design process of the calendar in the hardware and software design of synchronization. Mainly by AT89C52 single chip microcomputer hardware part, liquid crystal display circuit, reset circuit, clocking circuit on the circuit circuit and serial download circuit etc. The processor on the choice of the single chip microcomputer AT89C52 use, the single chip microcomputer suitable for many more complex control applications. Use of liquid crystal display LCD1602. Software is mainly including calendar program, liquid crystal driver, show program, etc. Program using assembly language. All programming, after the completion of Keil C51 software in commissioning, make sure no, after Proteus software embedded in within the single

基于proteus的51单片机仿真

基于proteus的51单片机仿真实例及应用开发说明 一、单片机系统的开发流程 1、搭建硬件电路; 2、编写控制程序; 3、将程序“装”到单片机里面; 4、运行单片机系统,并检查、调试运行结果。 二、学习单片机的基本条件 单片机是一门实践性很强的技术,它牵涉到软件和硬件的学习。 软件指的是单片机控制程序;硬件则是保证单片机运行的基本电路。无论是程序设计还是电路设计,都需要经过大量的实践练习才能够准确理解和熟练掌握。 1、软件条件: 单片机软件的开发流程是:1)编写控制程序;2)对程序进行编译、排错、仿真、调试;3)生成可以用特定软件能烧写到单片机里面的二进制或十六进制文件。一般的单片机的软件开发用到以下软件: 程序编写、编译软件(其中用到最广泛的Keil51):用来编写、编译单片机的控制程序(其中用到最广泛的是AVR fighter或者是STCISPV38A); 仿真软件:proteus软件能很好地模拟展示单片机程序是否完成了既定功能; 2、硬件条件: 程序编写调试完成后,需要在硬件系统中运行,才能够组成一个完整的单片机系统。一般的必备硬件有: 编程器:用来将程序烧录到单片机中的工具; 单片机学习板:用来演示和检验单片机系统是否实现了既定功能。 三、对于单片机的硬件电路的设计

需要指出的是,单片机的硬件电路是千差万别的,尤其是在制作电路板的时候,牵涉到元器件的布局、走线、抗干扰等多种环境问题,所以单单依靠一个仿真软件是很难真实模拟单片机系统的工作的。 所以在这里的学习,只是作为一种辅助开发的手段,我们可以先将我们的电路和程序在该软件上进行验证,验证通过后在制作电路板进行实际验证。 四、下面简单地对proteus软件的入门进行以下介绍 PROTEUS软件是英国Labcenter electronics公司研发的EDA工具软件。它是一个集模拟电路、数字电路、模/数混合电路以及多种微控制器系统为一体的系统设计和仿真平台。是目前同类软件中最先进、最完整的电子类仿真平台之一。它真正实现了在计算机上完成从原理图、电路分析与仿真、单片机代码调试与仿真、系统测试与功能验证到PCB板生成的完整的电子产品研发过程。 已经安装了Proteus ISIS7软件的桌面上就会有图标。双击该图标,出现工作界面如图1所示。界面中包括:标题栏、下拉主菜单、快捷按钮栏、标准工具栏、绘图工具箱、状态栏、选择元器件按钮、预览对象方位控制按钮、仿真操作按钮、预览窗口、电路原理图编辑窗口等。 1、电路图的绘制 运行的程序后, 进入该仿真软件的主界面。 作图步骤: (1)绘图前, 为了便于作图, 可作一些设置。如设置栅格、栅格捕捉精度、图形界面颜色、大小等。 (2)通过对象选择按钮P, 利用其搜索引擎, 将所需元器件加入到对象选择器窗口。 列元件清单。 (3)放置元器件至图形编辑窗口, 并调整到合适位置。 (4)修改属性,如电阻, 设置电阻值 (5)放置总线至图形编辑窗口。 (6)完成元器件之间以及元器件与总线的连线。 (7)给与总线连接的导线贴标签, 以便于系统识别。

单片机电子时钟设计报告

一、实习题目 单片机数字钟设计 二、实习目的 随着我国科学技术的飞速发展,单片机的应用越来越广泛。单片机即单片微型计算机,由RAM ,ROM,CPU构成,定时计数和多种接口于一体的微控制器。它体积小,成本低,功能强,广泛应用于智能产业和工业自动化上。为了进一步了解51单片机的定时器,设计一个电子时钟,在此对AT89C51单片机在时钟计数上进行了研究。数字钟是一种用数字电路技术实现时、分、秒计时的钟表。与机械钟相比具有更高的准确性和直观性,具有更长的使用寿命,已得到广泛的使用。数字钟的设计方法有许多种,例如可用中小规模集成电路组成电子钟,也可以利用专用的电子钟芯片配以显示电路及其所需要的外围电路组成电子钟,还可以利用单片机来实现电子钟等等。 三、实习任务及内容 设计内容: 1、利用其定时器/计数器定时和记数的原理,结合显示电路、LED数码管以及外部中断电路来设计计时器。 2、系统能够实现六位LED显示,按照小时:分钟:秒显示时间。 3、在系统时间为整点时,LED闪烁(2Hz)5秒。 设计目标: 1.掌握单片机定时器及中断的应用方法。 2.掌握按键、数码管扩展方法。 四、团队合作情况 团队分工 队长:张诚 队员:于江东、张翔 本团队共三人,由张诚担任团队队长,分工合作,各司其职,具体分工如下:(1)负责数字钟硬件设计及调试:主要由张翔完成 (2)基于proteus的电路仿真:主要于江东完成 (3)负责数字钟程序编写:主要由张诚完成 (4)撰写报告:主要由张诚、于江东和张翔完成 我们组拿到任务书以后,首先我们对实习内容及任务进行了探讨,共同讨论用什么样的方法实现任务书的要求及细节问题,为了不浪费时间,然后大家开始进行分工,各自以自己的任务为主,同时互相帮助,在此过程中,我们同组人员之间相互合作、默契配合,遇到问题一起加以讨论解决,不同的思路与意见的两个人在一起分享讨论,并最终采用得到的最为理想与完善的方案。最终调试有我们一起进行,调试过程中遇到很多问题,遇到问题大家一起分析,查资料,百度想办法解决,在这个过程中锻炼了我们自己的团队协作能力与沟通能力。 这次单片机实习在我们三人的完美协作配合下很好地完成,每个人都很好的完成了自己的任务,充分体现了团结就是力量,同时也让我们意识到团队合作的重要

基于51单片机多功能电子时钟设计报告

多功能电子数字钟 姓名 : 学号 : 班级 : 指导教师: 目录 一课程设计题目-------------------------------- 3 二电路设计--------------------------------------- 4 三程序总体设计思路概述------------------- 5 四各模块程序设计及流程图---------------- 6 五程序及程序说明见附录------------------- ** 六课程设计心得及体会---------------------- 11

七参考资料--------------------------------------- 12 一题目及要求 本次单片机课程设计在Proteus软件仿真平台下实现,完成电路设计连接,编程、调试,仿真出实验结果。具体要如下: 用8051单片机设计扩展6位数码管的静态或动态显示电路,再连接几个按键和一个蜂鸣器报警电路,设计出一个多功能电子钟,实现以下功能: (1)走时(能实现时分秒,年月日的计时) (2)显示(分屏切换显示时分秒和年月日,修改时能定位闪烁显示) (3)校时(能用按键修改和校准时钟) (4)定时报警(能定点报时) 本次课程设计要求每个学生使用Proteus仿真软件独立设计制作出电路图、完成程序设计和系统仿真调试,验收时能操作演示。最后验收检查 结果,评定成绩分为: (1)完成“走时+显示+秒闪”功能 ----及格 (2)完成“校时修改”功能----中等 (3)完成“校时修改位闪”----良好 (4)完成“定点报警”功能,且使用资源少----优秀 二电路设计(电路设计图见附件电路图) (1)采用89C51型号单片机 (2)采用8位共阴数码管 (3)因为单片机输出高电平时输出的电流不足以驱动数码管,所以在P0口与8位数码管之间加74LS373来驱动数码管 (4)P2口与数码管选择位直接加74LS138译码器 (5)蜂鸣器接P3.7口。因为单片机输出高电平时输出的电流不足以驱动蜂鸣器所以蜂鸣器,所以P3.7口与蜂鸣器直接接反相器再接蜂鸣器的一端,蜂鸣器的另一端接5V电源。这样当P3.7口给高电平时蜂鸣器导通名声。否则反之。 (6)单片机XTAL1,XTAL2端接外部时钟电路(时钟电路参考课本),RAT端接复位电路(复位电路参考课本)。EA端接5V电源,使得单片机读取片内程序。

单片机原理----C51编程及Proteus仿真 习题答案 (金宁治) 习题1答案

思考题及习题1 一、填空 1.微型计算机由CPU、存储器、I/O 口三个必要的功能部件组成,各个功能部件之间数据总线、地址总线、控制总线等三类总线连接成为整体。 2.单片机是将CPU、ROM、RAM、I/O 口和中断系统、定时/计数器等功能模块集成到一块硅片上的芯片级微型计算机系统。 3.当今国际上大都采用MCU或者EMCU来代替“单片机” 一词。 二、简答: 1.单片机的编程语言总体上有哪三大类?它们各有什么特点? 答:单片机的编程语言总体上可以分为三大种类:机器语言、汇编语言和高级语言。 (1)机器语言是一种直接面向机器、唯一能被计算机直接识别和执行的计算机语言。它是一串由和“1”组成的二进制代码。目标程序的执行速度快,占用内存少,运行效率高,但它不易理解和记忆,编写、阅读、修改和调试都很麻烦。 (2)汇编语言是用助记符表示指令的语言,目的是使指令便于书写、识别和记忆。汇编语言实质上是机器语言的符号表示,即汇编指令和机器指令一一对应,故这种计算机语言也是面向机器的语言,用汇编语言编写的程序要比与其等效的高级语言程序,具有更高的目标代码转换效率,占用内存资源少,运行速度快;虽然引入了简单的指令助记符,但是汇编语言在使用上仍然比高级语言困难得多;汇编语言还缺乏良好的通用性和可移植性。 (3)C语言是当代应用最为广泛、影响最为深远的主流高级编程语言之一。用C语言编写的C源程序(*.c)可读性强,易学易理解,编程效率高,尤其具备汇编源程序所不具备的良好通用性和可移植性;同时它还支持结构化程序设计及其自动化集成开发工具/环境,这使得程序员能够集中时间和精力去从事对于他们来说更为重要的创造性劳动,从而显著提高了程序的质量和工作的效率。 2.单片机的主要特点是什么? 答:(1)集成度高,易于扩展;(2)面向应用,突出控制;(3)可靠性高,适应性强;(4) 性价比高,易于嵌入。 3.51内核的主流单片机产品有哪几种?它们各有什么特点? 答:(DMCS-51系列单片机分为基本型和增强型两大子系列:51子系列和52子系列,以芯片型号的最末位数字作为标志。 51子系列主要有8031、8051、8751三种机型。它们的指令系统与芯片引脚完全兼容,仅片内程序存储器有所不同:8031片内没有程序存储器;8051的片内程序存储器是4KB的掩膜ROM; 8751内部含有4KB的EPROMo 51子系列单片机的主要特性如下:8位CPU, 含布尔处理器;片内自带振荡器,最高时钟频率为12MHz; 4KB的程序存储器;128字节的数据存储器;128个用户位寻址空间;21个字节特殊功能寄存器;4个8位并行I/O接口;2个16位定时/计数器;具有2个优先级的5个中断源;1个全双工串行口;111条指令,含乘/除法指令;采用单一+5V电源供电。52子系列主要有8032、8052、8752三种机型。 52子系列与51子系列的不同之处在于:片内数据存储器增至256字节,特殊功能寄存器增至26个;片内程序存储器增至8KB (不包括8032); 3个16位定时器/计数器,6个中断源;其它性能均与51子系列相同。 22) AT89系列单片机也分为51和52两个子系列,每个子系列都有4种型号。AT89LS 和AT89LV机型可以在更低的电压(2.7V)和更宽的电压范围(2.7V〜6.0V)下工作。随着Atmel 公司

单片机原理及应用C51编程+Proteus仿真课程设计

单片机原理及应用C51编程+Proteus仿真课程设计引言 单片机作为一种广泛应用于各种电子设备中的CPU,其原理及应用已经越来越 引起人们的重视。而随着单片机市场的逐渐扩大,相应地,其应用的各个方面也有不断的发展。C51编程和Proteus仿真则成为了单片机应用的重要部分。在本文中,将会介绍单片机原理及应用C51编程+Proteus仿真的课程设计。 单片机原理概述 单片机是一种基于微处理器的计算机,只不过在一个芯片上将所需要的各个部 分集成在一起。因为这种芯片还要集成内存、输入/输出接口以及带有复杂定时器/计数器的时钟电路,所以单片机相比微处理器要更容易应用。单片机广泛应用于计算机外围设备、电子玩具、家用电器、汽车电子和移动通讯产品等。 C51编程 C51是一种基于C语言的嵌入式系统开发的编程语言,也是一种使用最广泛的 单片机编程语言。C51编程可以对单片机内部的各种功能模块进行编程控制,包括 输入输出、定时器、串口、中断等。C51编程采用的是线性方式,程序由主函数和 其他功能模块的函数调用组合而成。 C51编程语法 C51编程语法和C语言基本类似,但也有一些不同之处。 以下是C51编程语言的部分语法: #include// 引用单片机头文件 void mn()// 主函数 {

... } void timer0() interrupt 1// 定时器0中断 { ... } C51编程常用命令 以下是C51编程中常用的一些命令: •sbit: 用于定义单个I/O口 •sfr: 用于定义特殊功能寄存器 •xdata: 用于定义外部数据空间 •idata: 用于定义内部数据空间 •code: 用于定义程序空间 Proteus仿真 Proteus是一款电子设计自动化(EDA)软件,可以模拟电路、编程等各个方面。Proteus可以在虚拟环境中对电路进行仿真,让设计者能够在软件中对电路进行分析、测试和验证。在单片机原理及应用C51编程+Proteus仿真的课程设计中,Proteus可以很好地完成电路仿真的任务。 Proteus仿真使用 在Proteus中进行仿真需要先创建电路图。Proteus提供了许多电子元件、单 片机元件以及其他通用元件,我们可以根据自己的需求进行选用。此外,还可以编写自定义元件进行使用。

单片机原理----C51编程及Proteus仿真 习题答案 (金宁治) 习题8答案

思考题及习题8 一、填空题: 1.利用DAC0832产生两路同步模拟输出,那么须将其置于双缓冲工作方式。 2.对于电流输出型的D/A转换器,为了得到电压输出,应使用运算放大器构建流控电压源电路。 3.假设单片机发送给8位D/A转换器0832的数字量为65H,基准电压为5V,那么D/A转换器的输出电压为1.98V。 4.假设A/D转换器0809的基准电压为5V,输入的模拟信号为2.5V时,A/D转换后的数字量是7FH。 二、简答题: LD/A转换器的主要性能指标都有哪些?设某DAC为二进制12位,满量程输出电压为 5V,试问它的分辨率是多少? 答:主要性能指标有:分辨率、建立时间、转换精度等;12 位 D/A 转换分辨率:1 LSB = 5V/4096= 1.22mVo 2.分析A/D转换器产生量化误差的原因,一个8位的A/D转换器,当输入电压为0〜 5V时,其最大的量化误差是多少? 答:量化误差是把连续的模拟量转换为离散的数字量时必然存在的,是不可防止的。例如,8位ADC,单极性输入。〜5V,数字量为。〜255,它能分辨的最小输入信号是A = 5V / 256 = 20mV,如4.98〜5.00V输入对应的数字均为255,这是不可防止的。 3.简述DAC0832芯片的输入寄存器和DAC寄存器二级缓冲的原理。 答:DAC0832内部共有两级8位寄存器。 第一级为8位输入寄存器,用于存放单片机送来的数字量,使得该数字量得到缓冲和锁存,由国(即Ml=l时加以控制; 第二级为8位DAC寄存器。用于存放待转换的数字量,由说控制(即M3=l时)。 两级寄存器可以分别单独控制,从而形成二级缓冲式的工作方式。根据两个寄存器工作状态不同,DAC0832可以工作在三种工作方式:直通方式、单缓冲方式、双缓冲方式。 4.为什么要消除按键的机械抖动?消除按键机械抖动的方法有几种?分别加以说明。 答:按键开关过程的机械抖动可能会将一次按键动作误认为屡次按键操作,从而产生错误的控制动作,因此为了确保单片机对一次按键动作只确认一次按键有效,必须消除抖动的影响。 两种去抖动方法: (1)一种是用软件延时来消除按键抖动,基本思想: ①在检测到有键按下时,该键所对应的行线为低电平; ②执行一段延时10ms的子程序后,确认该行线电平是否仍为低电平; ③如果仍为低电平,那么确认该行确实有键按下; ④当按键松开时,行线的低电平变为高电平; ⑤执行一段延时10ms的子程序后,检测该行线为高电平,说明按键确实已经松开。 (2)另一种去除按键抖动的方法是采用专用的键盘/显示器接口芯片,这类芯片中都有自动去抖动的硬件电路。 ⑥.说明矩阵式键盘按键按下的识别原理? 答:矩阵式键盘的每个按键连接一条行线和一条列线。行线通过上拉电阻接+5V,每根行、列线连接单片机的一个I/O引脚。

基于51系列单片机与DS1302时钟芯片的电子时钟C语言Proteus仿真报告

基于单片机的电子时钟 : 班级: 学号: 指导教师: 完成日期: I / 20

目录 摘要 一、引言 (1) 二、基于单片机的电子时钟硬件选择分析 (2) 2.1主要IC芯片选择 (2) 2.1.1微处理器选择 (2) 2.1.2 DS1302简介 (4) 2.1.3 DS1302引脚说明 (4) 2.2电子时钟硬件电路设计 (5) 2.2.1时钟电路设计 (6) 2.2.2整点报时功能 (7) 三、Protel软件画原理图 (8) 3.1系统工作流程图 (8) 3.2原理图 (9) 四、proteus软件仿真与调试 (9) 4.1电路板的仿真 (9) 4.2软件调试 (9) 五、源程序 (10) 六、课设心得 (13) II / 20

七、参考文献 (13) 基于单片机电子时钟设计 摘要 电子时钟主要是利用电子技术将时钟电子化、数字化,拥有时钟精确、体积小、界面友好、可扩展性能强等特点,被广泛应用于生活和工作当中。另外,在生活和工农业生产中,也常常需要温度,这就需要电子时钟具有多功能性。 本设计主要为实现一款可正常显示时钟/日历、带有定时闹铃的多功能电子时钟。 本文对当前电子钟开发手段进行了比较和分析,最终确定了采用单片机技术实现多功能电子时钟。本设计应用AT89C52芯片作为核心,6位LED数码管显示,使用DS1302实时时钟日历芯片完成时钟/日历的基本功能。这种实现方法的优点是电路简单,性能可靠,实时性好,时间精确,操作简单,编程容易。 该电子时钟可以应用于一般的生活和工作中,也可通过改装,提高性能,增加新功能,从而给人们的生活和工作带来更多的方便。 关键词:电子时钟;多功能;AT89C52;时钟日历芯片 III / 20

Proteus7Professional仿真51单片机入门教程

Proteus 7 Professional 仿真51 单片机入门教程 Proteus 7 Professional 仿真51 单片机入门教程 初学单片机时,拿着一块实验板发呆,电路也不懂、程序也不懂, 只好慢慢弄,等弄懂了,实验板也差不多报销了。而proteus 正好可 以解决这个问题,它功能强大,这里只讨论仿真MCU 的功能。它可 以在原理图上仿真,不用出PCB 板,不怕你“啥弄”。 下面就先认识一下proteus.

上图是启动后的画面。 我们点中的“P”后,弹出下面的画面: 在里输入at89c51 后: 右侧出现AT89C51,双击它,左侧空白框中出现AT89C51.

左键单击它,它上面框中显示出它的原理图,把鼠标移到右侧框中,鼠标变成铅笔形状,单击左键,框中出现一个AT89C51 原理图的轮廓图,可以移动。鼠标移到合适的位置后,按下鼠标左键,原理图放好了。

好了,一个单片机的原理图放好了。按这个方法依次把元件 led-red、res 放到右侧的框中(单片机旁)。 这图太小了,看得不清楚,要是大的就好了。别着急,把鼠标 放在LED 旁,向前滚动鼠标中键,图像放大,向后滚动鼠标,图像缩小。如果你的鼠标没这个键,你可以试试上面工具栏上这二 个图标,也是一样的。 选择左侧工具栏上的“箭头”图标,

把鼠标移到右侧的原理图中,鼠标经过元件时会就成“手形”, 把鼠标移到LED-RED 上,按下左键,LED-RED 高亮显示,鼠 标变成“手形”并带有方向键头。松开鼠标后,形状没变,指着LED-RED 按住鼠标左键,移动鼠标,哈哈!元件移动了。好了,现在你应该明白它们了吧!不用我说你应该明白刚才用到的工具的作用了。 在任何情况下,右键单击元器件时,元件会亮显示并弹出菜单:

proteus仿真大作业-数字时钟实验报告

实验报告 Proteus 仿 真 大 作 业 课题:数字时钟实验报告 系部:电子工程系 班级:应用电子090132 姓名: 指导老师:

前言 数字电子钟具有走时准确,一钟多用等特点,在生活中已经得到广泛的应用。另外数字钟还具备秒表和闹钟的功能,且闹钟铃声可自选,使一款电子钟具备了多媒体的色彩。单片机AT89C51在Proteus软件中实现数字时钟的定时、时间调整、闹正设置等功能。具有体积小、功能强可靠性高、价格低廉等一系列优点,不仅已成为工业测控领域普遍采用的智能化控制工具,而且已渗入到人们工作和和生活的各个角落,有力地推动了各行业的技术改造和产品的更新换代,应用前景广阔。时钟电路在计算机系统中起着非常重要的作用,是保证系统正常工作的基础。在一个单片机应用系统中,时钟有两方面的含义:一是指为保障系统正常工作的基准振荡定时信号,主要由晶振和外围电路组成,晶振频率的大小决定了单片机系统工作的快慢;二是指系统的标准定时时钟,即定时时间。 Protues软件不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。它是目前最好的仿真单片机及外围器件的工具。已受到单片机爱好者、从事单片机教学的教师、致力于单片机开发应用的科技工作者的青睐。Proteus 是世界上著名的EDA工具(仿真软件),从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品的完整设计。是目前世界上唯一将电路仿真软件、PCB设计软件和虚拟模型仿真软件三合一的设计平台,其处理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、A VR、ARM、8086和MSP430等,它也支持IAR、Keil和MPLAB等多种编译器。 本文主要介绍用单片机内部的定时/计数器来实现电子时钟的方法,本设计由单片机AT89C51芯片和LED1602液晶显示屏为核心,辅以必要的电路,构成了一个单片机电子时钟。

关于51单片机软件设计proteus的要求

关于51单片机设计(proteus)的要求 一、设计要求 本软件课程设计是在理论课程的基础上,重点培养学生的动手能力,通过理论计算、实际编程、调试、测试、分析查找故障,解决在实际设计中的问题,使设计好的电路能正常工作。在此基础上根据实验大纲提供的题目,任选一题,实现其功能。有能力的同学可以超出题目要求发挥设计。 (1)基本要求: 根据提供的参考工程,在proteus平台自己重新画出实验所需要的电气原理图, 并在此基础上编写相对应的程序,实现其功能,学习proteus软件的使用,其中 包括原理图器件的选取、原理图的电气连接、程序的编写编译以及运行,并能 查出其错误等。 分类标准: 1.使用标准测试程序所用资源者; 2.使用标准测试程序所用以外资源者; 3.通过修改指令改变程序进行测试方法者; 4.通过设置不同按键进行测试方法者; 5.多种不同的测试方法者。 (2)发挥要求: 在完成本人选题的前题下,具有新内容的自主发挥,并取得良好效果。 分类标准: 1.完成了实验(1)的全部要求,并能运行实现其功能。 2.在完成具有创新内容的功能。 二、分组和实验注意事项 本实验提供实验课题96个,每人一题(随机分配),实验工作要细心认真、防止意外,有问题及时向指导老师反映,同学见可以通过研讨,互相学习解决实验中的问题。 每位同学在学习仿真器使用的基础上,将进行以下学习过程: (1)听课,实验方法介绍 (2)学习proteus软件的使用 (3)学习汇编语言以及C语言在51编程上的使用 (4)学习系统测试 (5)自主实验 三、报告要求 (1)基本要求:写明实验内容和方法,画出所用部分资源的原理图等。 (2)提高要求:说明选题依据,资源的选择和该资源在设计中的功能说明,原理图设计,程序结构框图和说明,操作使用说明。 (3)发挥部分:提出设计思想,设计原理图,提供源程序,说明创新点。提供程序的使用说明(即注释)。 (4)实验体会和意见 四、绩评定标准 成绩分:不及格、及格、中等、良好、优秀五等 成绩以验收记录为主,参考考勤记录、答疑记录、报告内容质量、和其他表现。

基于Proteus的电子时钟设计与仿真

宁德师范学院 毕业论文(设计) 专业电子信息工程技术 指导教师X芳 学生李骁 学号2021054111 题目基于Proteus的电子时钟设计与仿真 2011年6月5日

目录1 绪论1 1.1 背景1 1.2 研究目的与意义1 1.3 技术要求1 2 方案设计及单片机选型1 2.1 方案设计1 2.2 单片机选型2 3 硬件设计3 3.1 键盘电路3 3.2 七段码显示驱动3 3.3 蜂鸣器报警电路3 4 软件设计4 4.1 主程序局部的设计4 4.2 定时器中断设置4 4.3 闹钟功能函数5 4.4 计时功能函数6 4.5 键盘扫描功能函数7 5 基于Proteus的电子时钟仿真8 5.1 Proteus软件简介8 5.2 Proteus对电子时钟的仿真9 6 结论10

参考文献:10

基于Proteus的电子时钟设计与仿真 摘要:对于电子时钟的功能和使用人们已经十分了解,然而却很少有人真正了解它的内部构造和工作原理。本文以AT89C51为核心控制器,利用Proteus进展单片机系统的仿真,通过该软件设计出了一款由纯数字电路构成的电子时钟,并在计算机上进展仿真。整个时钟的功能主要包括四个方面:时间显示、时间调整、时间校对和定时闹钟。最后的仿真结果可应用于实际电路中,不仅降低了电子时钟的设计本钱,又缩短了设计周期,提高了工作效率。 关键词:单片机;定时器;闹钟;LED 1绪论 1.1 背景 随着社会的开展和科技的进步,人们对时钟的要求也越来越高,传统的时钟已经不能满足人们的需求。高精度、低功耗、小体积、多功能,成为了现代时钟开展的新趋势,它已不仅仅是用来显示时间的工具,更多时候还需要它实现其它的功能,从而促使现代时钟朝着数字化、多功能化的方向开展。 目前市面上也出现了各种各样的多功能电子时钟,如:数字闹钟、电子闹钟等等。对于电子时钟的功能和使用人们已经十分了解,然而却很少有人真正了解它的内部构造和工作原理。 1.2 研究目的与意义 为了更好地了解电子时钟的内部构造和工作原理,本文采用单片机作为电子时钟的核心控制器。与模拟电路、数字电路相比,单片机的内容更为抽象,开发和调试更为复杂,在具体的设计过程中,如果因为方案有误而进展相应的开发,将浪费更多的时间和经费。因此,本论文主要利用Proteus进展单片机系统的仿真,通过该软件设计出了一款由纯数字电路构成的电子时钟,并在计算机上进展仿真。 最后,可将论文的仿真结果应用于实际电路中,不仅降低了电子时钟的设计本钱,又缩短了设计周期,提高了工作效率。因此,利用Proteus软件对电子时钟进展设计和仿真具有十分重要的意义。 1.3 技术要求 本文所设计的电子时钟需要解决的问题主要有两个:硬件设计和软件设计。硬件设计中又分为四个模块:显示模块、键盘模块、发声模块和计时模块。硬件设计时应尽量做到低功耗、低本钱和易于实现。软件设计局部应做到闹钟设置,计时准确,校时以及定时报警等功能。 2方案设计及单片机选型 2.1 方案设计 本设计的总体框图如图1所示,电子时钟采用AT89C51作为控制核心,通过程序的编写来实现对整个系统的控制。利用AT89C51单片机来实现对时间的计时,计时结果由8位的数码管显示出来。通过对键盘的识别,然后按照程序中的设定对系统进展相应的操作,如时间设定、闹钟设定等功能。在闹钟时间到了以后,通过蜂鸣器来报警通知使用者时间到了。另外在AT89C51单片机以外,还有晶振等单片机最小系统[1]。

相关文档
相关文档 最新文档