电子跑表设计毕业设计
- 格式:doc
- 大小:331.50 KB
- 文档页数:18
学号:课程设计题目数字跑表设计学院自动化学院专业班级姓名指导教师年月日课程设计任务书学生姓名:专业班级:指导教师:工作单位:题目: 数字跑表设计初始条件:1.运用所学的模拟电路和数字电路等知识;2.用到的元件:实验板、电源、连接导线、74系列芯片、555芯片或微处理器等。
要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)1.设计一个具有、‘分’、‘秒’、‘1/100秒’的十进制数字显示的计时器。
2.要有外部开关,控制计数器的直接清零、启动和暂停/连续计时功能;3.严格按照课程设计说明书要求撰写课程设计说明书。
时间安排:第1天下达课程设计任务书,根据任务书查找资料;第2~4天进行方案论证,软件模拟仿真并确定设计方案;第5天提交电路图,经审查后领取元器件;第6~8天组装电路并调试,检查错误并提出问题;第9~11天结果分析整理,撰写课程设计报告,验收调试结果;第12~14天补充完成课程设计报告和答辩。
指导教师签名:年月日系主任(或责任教师)签名:年月日目录引言 (1)1设计意义及要求 (2)1.1设计意义 (2)1.2设计要求 (2)2方案设计 (3)2.1设计思路 (3)2.2 方案设计 (4)2.2.1设计方案一(个人方案)电路图 (4)2.2.2设计方案二(小组方案)电路图简单说明 (5)2.3方案比较 (6)3部分电路设计 (7)3.1计数单元 (7)3.2开始和暂停单元 (11)3.3清零功能单元 (12)3.4脉冲输出电路 (14)3.5译码及显示电路 (15)4调试与检测 (18)4.1调试中故障及解决办法 (18)4.2 调试与运行结果 (18)5仿真操作步骤及使用说明 (19)结束语 (20)参考文献 (21)附录1 (22)附录2 (23)本科生课程设计成绩评定表........................ 错误!未定义书签。
引言过去的三个世纪,我们经历了第一次工业革命,人类开始进入蒸气时代,第二次工业革命,人类开始进入电气时代并在信息革命资讯革命中达到顶峰。
eda数字跑表课程设计一、课程目标知识目标:1. 学生能理解EDA(电子设计自动化)的基本概念,掌握数字跑表的工作原理;2. 学生能掌握数字跑表设计中所涉及的电子元件、电路图及编程知识;3. 学生能了解数字跑表在实际应用中的功能与作用。
技能目标:1. 学生能运用所学知识,设计并搭建简单的数字跑表电路;2. 学生能通过编程实现对数字跑表的调试与优化;3. 学生能运用团队协作、问题解决和创新能力,完成数字跑表的设计与制作。
情感态度价值观目标:1. 学生培养对电子科技的兴趣和热情,增强实践操作的信心;2. 学生培养团队协作精神,提高沟通与表达能力;3. 学生认识到科技对社会发展的作用,树立创新意识,增强社会责任感。
课程性质:本课程为实践性、综合性课程,结合理论知识与实际操作,培养学生的动手能力、创新能力和团队合作能力。
学生特点:六年级学生具有一定的电子知识基础和编程能力,对新鲜事物充满好奇心,善于合作与探究。
教学要求:教师需引导学生掌握EDA数字跑表的基本知识,注重实践操作,鼓励学生创新与思考,提高学生的问题解决能力。
在教学过程中,关注学生的个体差异,给予个性化指导,确保课程目标的达成。
通过本课程的学习,使学生能够将所学知识应用于实际生活中,提高综合素质。
二、教学内容1. 电子设计自动化(EDA)基础理论:- EDA概念及其发展历程;- 数字跑表的基本原理与功能。
2. 数字跑表电路设计:- 常用电子元件的特性与选型;- 电路图绘制及仿真;- 数字跑表电路搭建与调试。
3. 编程与控制:- 编程环境及编程语言介绍;- 数字跑表程序设计;- 程序调试与优化。
4. 实践操作与团队协作:- 分组进行数字跑表设计与制作;- 团队合作、问题解决与创新能力培养;- 实践成果展示与评价。
教材章节关联:本教学内容与教材中“电子设计自动化”、“数字电路设计”和“编程控制”等章节相关。
具体内容包括:- 电子设计自动化:第1章;- 数字电路设计:第3章;- 编程控制:第5章。
0 引言在科技高度发展的今天,随着大规模集成电路和计算机的发展,现代电子设计的方法与技术也在不断发生变化。
目前,比较有效的电子设计方法是将板卡设计、可编程逻辑设计和软件开发融合在一起。
而且,计算机的应用与发展已经在人们的日常生活中逐渐崭露头角。
大多数电子产品多是由计算机电路组成,本次设计的课题就是基于计算机电路的时钟脉冲信号、状态控制等原理设计出的数字跑表。
跑表是体育比赛中常用的计时仪器,所以对时间的精确度很高。
1 系统设计1.1 总体设计基于前面的分析,课题数字跑表设计由FPGA器件完成按键控制、数字的显示等核心数字电路的功能。
设计数字跑表,令它通过两个按键来控制计时的开始和结束,一个是清0控制按键,用于设置跑表为初始零状态;另一个是开始/停止控制按键,在清0控制按键无效的时候,按一下开始/停止键则计时器开始计时,再按一下则暂停计时,再按一下则继续计时。
数字跑表总体设计框图如图1所示。
1.2 各部分模块设计根据此设计流程,我们可以将数字跑表的设计分为三个主要部分:(1)分频首先根据FPGA器件的基础时钟,进行时钟的设计,将器件自带的时钟频率进行分频,分频成为课题数字跑表所需的时钟信号,课题要求输入时钟频率为100Hz,100Hz=0.01s,使其满足数字跑表计时精度为10ms的要求,我们已知的FPGA器件上自带的时钟信号为50MHz。
图1 数字跑表的流程框图(2)控制根据要求数字跑表要具有控制功能,通过两个按键控制,一个为清零控制按键,控制异步清零,和启动功能,用于设置跑表为初始零状态,另一个按键为开始/停止按键,控制数字跑表的启动和停止,按一下开始/停止键则计时器开始计时,再按一下则暂停计时,再按一下则继续计时。
(3)显示最后一步,对所得的数据进行处理,并将其显示。
由显示的时分秒用7段数码管显示出来。
将三个部分整合起来放在index, design idea, design scheme, circuit design of the system, design of the corresponding module of the system, system hardware implementation and test results.Keywords: digital stopwatch;FPGA;Verilog HDL language始/暂停按键)输出信号:MSH,MSL,SH,SL,MH,ML(7段数码管)分频部分器件图如图4所示。
EAST CHINA INSTITUTE OF TECHNOLOGY EDA设计与应用课程设计:数字跑表的设计与仿真学院:机械与电子工程学院专业:电子科学与技术班级:1221402学号:201220140223姓名:杨卡2014年11月一、实验目的:1)进一步学习更复杂的EDA项目设计,更熟练地掌握VHDL语言设计。
2)学习动态数码管的VHDL编程。
3)更加熟练计时显示、进位和校时的编程方法。
二、实验要求:1)设计一个具有、‘分'、‘秒'、‘ 1/100 秒'的十进制数字显示的数字跑表。
2)要有外部开关,控制计数器的直接清零、启动和暂停/ 连续计时功能。
三、实验内容:1)数字跑表功能:计时精度10ms,计时范围为59分59.99秒。
设置两种模式,模式一:对单个人计数,能实现暂停、显示及清零功能,并在数码管上实时显示;模式2:实现对多个人的同时计时,在数码管上实时显示,并能在液晶显示屏上回显出 6 个时间,可控制显示。
2)数字跑表分模块设计:数字跑表设置如下的子模块。
分频模块;模式 1 控制模块;模式 2 控制模块;计时模块;数码管译码模块;液晶译码模块;液晶显示模块。
百分秒、秒和分等信号即采用BCD译码计数方式,根据上述设计要求,用Verilog 对数字跑表的描述如下。
仍然采用引脚属性定义语句进行引脚的锁定。
四、设计程序(此处只写出与课本中不同的部分)为了便于显示,百分秒、秒和分钟信号皆采用BCD码计数方式,并直接输出到6 个数码管显示出来。
根据上述设计要求,用Verilog HDL 语言对数字跑表描述如下。
/* 信号定义:CLK: CLR: PAUSE: MSH,MSL:时钟信号;异步复位信号;暂停信号;百分秒的高位和低位;SH,SL :秒的高位和低位;MH,ML:分钟的高位和低位。
*/module paobiao(CLK,CLR,PAUSE,MSH,MSL,SH,SL,MH,ML); input CLK,CLR,PAUSE; output[3:0] MSH,MSL,SH,SL,MH,ML; reg[3:0] MSH,MSL,SH,SL,MH,ML;reg cn1,cn2; //cn1 为百分秒向秒进位,cn2 为秒向分进位//**************** 百分秒计数进程,每计满100,cn1 产生一个进位*******always @(posedge CLK or posedge CLR)begin if(CLR) begin {MSH,MSL}<=8'h00; cn1<=0;end // 异步复位else if(!PAUSE) //PAUSE 为0 时正常计数,为1 时暂停计数begin if (MSL==9) begin MSL<=0;if (MSH==9) begin MSH<=0;cn1<=1;endelse MSH<=MSH+1;endelse begin MSL<=MSL+1;cn1<=0;endendend秒计数进程,每计满60,cn2 产生一个进位********* always @(posedge cn1 or posedge CLR)begin if(CLR) begin {SH,SL}<=8'h00;cn2<=0; end // 异步复位else if(SL==9)begin SL<=0;if (SH==5) begin SH<=0;cn2<=1; end else SH<=SH+1;endelse begin SL<=SL+1;cn2<=0;end end //****************** 分钟计数进程,每计满60,系统自动清零********* always @(posedge cn2 or posedge CLR) begin if(CLR) begin {MH,ML}<=8'h00;end // 异步复位else if (ML==9) begin ML<=0;if(MH==5) MH<=0;else MH<=MH+1;endelse ML<=ML+1;endendmodule五、心得体会:此次课程设计,从程序设计到仿真,我经历了一个困难重重,愈挫愈勇的过程。
基于STM32的电子计步器的设计与实现随着生活节奏的不断加快,留给人们的锻炼时间越来越少,走路和跑步成为人们日常生活中为数不多的运动之一。
计步器携带方便,能很好地完成量化运动量的目标。
因此,最近几年各种计步器以及计步软件大量出现。
鉴于人们对于步数检测准确度的要求以及使用便利的需求,十分有必要设计一套计步算法并应用于相关的计步器。
本设计的研究目的是设计出一款高精度、便携的计步器。
本设计的主要难点在于数据滤波算法以及计步检测算法的研究。
首先,本设计分析了几种数据滤波的方法,选择了比较适合的卡尔曼滤波算法。
接着,分析了现有的几种计步检测算法,包括动态阈值算法和峰值检测算法。
发现这些算法都不是很准确,所以本文设计了一种新的计步检测算法,提高了计步检测的精度,为其他研究者在步数检测方面提供了一种较好的解决方案。
最后,本设计还采用了TFT彩屏的人机交互界面,可以实时显示卡路里、时间以及步数。
通过实际调试过程中的不断改进,实现了计步器的准确检测。
关键词:计步器MEMS传感器滤波步数检测目录1 绪论 (1)1.1 研究背景和意义 (1)1.2 国内外研究现状 (1)1.3 章节安排 (2)2 系统总体设计方案 (3)2.1 设计目标 (3)2.2 系统架构分析 (3)2.3 系统方案分析 (3)2.3.1 佩戴位置选择 (3)2.3.2 MEMS惯性传感器的数据读取 (4)2.3.3 数据融合与滤波 (5)2.3.4 计步算法 (8)3 系统硬件设计 (9)3.1 系统硬件电路总体设计 (9)3.2 单片机最小系统设计 (9)3.3 MEMS传感器 (10)3.4其他外围电路 (11)3.4.1 电源转换 (11)3.4.2 TFT彩屏电路 (11)3.4.3 无线串口通信 (12)4 系统软件设计 (13)4.1 系统软件总体设计 (13)4.2中断设计 (14)4.2.1 定时器中断 (14)4.2.2 串口中断 (15)4.2.3 中断优先级判断 (16)4.3 MPU6050原始数据采集 (16)4.3.1 陀螺仪和加速度计的配置工作 (16)4.3.2 串行口的配置工作 (17)4.3.3 IIC读取姿态传感器数据 (17)4.4 数据处理 (18)4.4.1 数据类型统一 (18)4.4.2 卡尔曼滤波 (19)4.5 计步算法 (21)4.6 无线串口通信 (22)5 系统调试 (23)5.1 系统调试上位机 (23)5.2 标定MPU6050零点 (23)5.3 卡尔曼滤波参数调试 (23)5.4 计步测试 (24)6 总结与展望 (25)6.1 总结 (25)6.2 展望 (25)6.3 课题研究对环境以及社会的影响 (26)附录 (27)附录一系统硬件原理图和PCB (27)附录二系统实物图 (28)附录三系统核心 (28)1 绪论1.1 研究背景和意义随着社会不断进步以及生活水平不断提高,人们逐渐开始重视自身的健康。
学号:课程设计题目数字跑表设计学院自动化学院专业班级姓名指导教师年月日课程设计任务书学生姓名:专业班级:指导教师:工作单位:题目: 数字跑表设计初始条件:1.运用所学的模拟电路和数字电路等知识;2.用到的元件:实验板、电源、连接导线、74系列芯片、555芯片或微处理器等。
要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)1.设计一个具有、‘分’、‘秒’、‘1/100秒’的十进制数字显示的计时器。
2.要有外部开关,控制计数器的直接清零、启动和暂停/连续计时功能;3.严格按照课程设计说明书要求撰写课程设计说明书。
时间安排:第1天下达课程设计任务书,根据任务书查找资料;第2~4天进行方案论证,软件模拟仿真并确定设计方案;第5天提交电路图,经审查后领取元器件;第6~8天组装电路并调试,检查错误并提出问题;第9~11天结果分析整理,撰写课程设计报告,验收调试结果;第12~14天补充完成课程设计报告和答辩。
指导教师签名:年月日系主任(或责任教师)签名:年月日目录引言 (1)1设计意义及要求 (2)1.1设计意义 (2)1.2设计要求 (2)2方案设计 (3)2.1设计思路 (3)2.2 方案设计 (4)2.2.1设计方案一(个人方案)电路图 (4)2.2.2设计方案二(小组方案)电路图简单说明 (5)2.3方案比较 (6)3部分电路设计 (7)3.1计数单元 (7)3.2开始和暂停单元 (11)3.3清零功能单元 (12)3.4脉冲输出电路 (14)3.5译码及显示电路 (15)4调试与检测 (18)4.1调试中故障及解决办法 (18)4.2 调试与运行结果 (18)5仿真操作步骤及使用说明 (19)结束语 (20)参考文献 (21)附录1 (22)附录2 (23)本科生课程设计成绩评定表......................... 错误!未定义书签。
引言过去的三个世纪,我们经历了第一次工业革命,人类开始进入蒸气时代,第二次工业革命,人类开始进入电气时代并在信息革命资讯革命中达到顶峰。
第一章引言数字电子技术的应用一直在向着广度和深度扩展。
时至今日,“数字化”的浪潮几乎席卷了电子技术应用的一切领域。
由于电子产品的更新周期日益缩短,新产品开发速度日益加快,因而对电子设计自动化(EDA)提出了更高的要求,也有力地促进了EDA技术的发展和普及。
在数字集成电路方面,电路的集成度如摩尔定律(Moore’s Law)所预言的那样,以每1-2年翻一番的速度增长,使电路的复杂程度越来越高、规模越来越大。
同时,在基本技能方面,对使用EDA工具的能力也提出了更高的要求。
因此,学好EDA课程设计至关重要。
第二章 设计说明1.器件介绍-集成十进制加法计数器74160集成同步十进制加法计数器74160。
图2-1给出了74160的引脚排列图和逻辑符号图。
除了具有十进制加法计数功能外,还具有异步复位、同步预置数和计数状态保持、对输入的时钟信号进行分频等功能。
CLRN 为异步复位端,LDN 为预置数控制端,A-D 为预置状态输入端,RCO 为进位输出端,ENT 和ENP 为工作状态控制端(双使能端)。
图2-1 74160逻辑符号图 表2-1 74160功能特性 表2-2是74160的功能表,它给出了各种控制信号作用下计数器的工作状态,具体如下。
序号 CLK CLRN LDN ENP ENT 工作状态 1 × 0 × × × 复位 2 ↑ 1 0 × × 预置数 3 ↑ 1 1 1 1 正常计数 4 × 1 1 × 0 保持,且C=0 5×110 1保持表2-2 74160的功能表⑴当CLRN=0时,无论其他功能端为何状态,计数器都将复位,有QD ~QA=0000(注:QD 为状态端最高位)。
⑵当CLRN=1、LDN=0时,计数器处于预置数状态。
在出现此情况后的第一个CLK 上升沿,将预置输入端加载的数据送入计数器,即有QD ~QA=D ~A(注:D 为置入端最高位)。
51单片机跑表课程设计一、课程目标知识目标:1. 学生能理解51单片机的基本原理,掌握其编程方法。
2. 学生能掌握跑表功能实现的硬件设计,包括定时器/计数器的工作原理和应用。
3. 学生能了解并运用中断系统,实现跑表的精确计时功能。
技能目标:1. 学生能够运用C语言编写程序,实现对51单片机的控制。
2. 学生能够设计并搭建简单的跑表电路,进行功能调试和优化。
3. 学生能够通过课程学习,培养动手实践能力,提高问题解决技巧。
情感态度价值观目标:1. 学生在课程学习中,培养对电子技术和编程的兴趣,提高学习积极性。
2. 学生在团队协作中,学会相互沟通、合作,培养集体荣誉感。
3. 学生通过课程实践,认识到科技对社会发展的作用,树立正确的价值观。
课程性质:本课程为实践性较强的课程,注重培养学生的动手能力和实际问题解决能力。
学生特点:学生具备一定的电子技术基础和C语言编程能力,对单片机有一定了解。
教学要求:结合学生特点,注重理论与实践相结合,引导学生通过动手实践掌握课程内容,提高学生的综合运用能力。
在教学过程中,关注学生的个体差异,因材施教,确保每位学生能够达到课程目标。
将课程目标分解为具体的学习成果,便于教学设计和评估。
二、教学内容1. 51单片机基础原理回顾:包括51单片机的内部结构、工作原理,重点复习定时器/计数器、中断系统等关键知识点。
相关教材章节:第一章《单片机概述》和第二章《51单片机结构及原理》。
2. C语言编程基础:回顾数据类型、运算符、控制语句等基础语法,为编写跑表程序打下基础。
相关教材章节:第三章《51单片机C语言编程基础》。
3. 跑表功能硬件设计:讲解跑表电路的设计方法,包括时钟电路、复位电路、显示电路等。
相关教材章节:第四章《51单片机接口技术》。
4. 跑表程序设计:教授如何利用定时器/计数器、中断系统编写跑表程序,实现计时功能。
相关教材章节:第五章《51单片机定时器/计数器与中断系统》。
单片机电子跑表课程设计一、课程目标知识目标:1. 学生能理解单片机的基本原理,掌握其编程方法。
2. 学生能掌握电子跑表的工作原理,了解各部分功能及其相互关系。
3. 学生能运用所学知识设计并实现一个简单的单片机电子跑表。
技能目标:1. 学生能够运用C语言或汇编语言进行单片机编程,实现电子跑表的基本功能。
2. 学生能够运用电路设计软件绘制电子跑表的原理图和PCB图。
3. 学生能够运用调试工具对单片机程序进行调试,解决常见问题。
情感态度价值观目标:1. 学生培养对电子制作的兴趣,激发创新意识和动手能力。
2. 学生在团队协作中,学会沟通与交流,培养合作精神。
3. 学生能够关注单片机技术在生活中的应用,认识到科技发展对生活的影响。
课程性质:本课程为实践性较强的课程,结合理论知识与实际操作,培养学生动手能力。
学生特点:学生具备一定的电子基础知识,对单片机有一定了解,但编程和实际操作经验不足。
教学要求:结合学生特点,注重理论与实践相结合,强调动手实践,培养学生解决问题的能力。
在教学过程中,关注学生的个体差异,提供个性化指导。
通过课程学习,使学生能够独立完成单片机电子跑表的设计与制作。
二、教学内容1. 单片机原理与编程基础- 单片机结构及工作原理- C语言或汇编语言基础- 单片机编程环境搭建2. 电子跑表原理与设计- 电子跑表功能需求分析- 电路设计原理及元件选择- 原理图和PCB图绘制方法3. 单片机与外围电路接口技术- 按键输入接口设计- 数码管显示接口设计- 定时器/计数器应用4. 程序设计与调试- 程序框架设计- 功能模块编写- 程序调试与优化5. 实践操作- 电子跑表组装与调试- 故障分析与排除- 课程项目展示与评价教学内容安排和进度:第一周:单片机原理与编程基础第二周:电子跑表原理与设计第三周:单片机与外围电路接口技术第四周:程序设计与调试第五周:实践操作(含课程项目展示与评价)教学内容与教材关联性:本教学内容紧密结合教材,按照教材章节逐步展开,使学生能够循序渐进地掌握单片机电子跑表的设计与制作。
学号:课程设计题目数字跑表设计学院自动化学院专业班级姓名指导教师年月日... .课程设计任务书学生:专业班级:指导教师:工作单位:题目: 数字跑表设计初始条件:1.运用所学的模拟电路和数字电路等知识;2.用到的元件:实验板、电源、连接导线、74系列芯片、555芯片或微处理器等。
要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)1.设计一个具有、‘分’、‘秒’、‘1/100秒’的十进制数字显示的计时器。
2.要有外部开关,控制计数器的直接清零、启动和暂停/连续计时功能;3.严格按照课程设计说明书要求撰写课程设计说明书。
时间安排:第1天下达课程设计任务书,根据任务书查找资料;第2~4天进行方案论证,软件模拟仿真并确定设计方案;第5天提交电路图,经审查后领取元器件;第6~8天组装电路并调试,检查错误并提出问题;第9~11天结果分析整理,撰写课程设计报告,验收调试结果;第12~14天补充完成课程设计报告和答辩。
指导教师签名:年月日系主任(或责任教师)签名:年月日..目录引言 (1)1设计意义及要求 (2)1.1设计意义 (2)1.2设计要求 (2)2方案设计 (3)2.1设计思路 (3)2.2 方案设计 (4)2.2.1设计方案一(个人方案)电路图 (4)2.2.2设计方案二(小组方案)电路图简单说明 (5)2.3方案比较 (7)3部分电路设计 (8)3.1计数单元 (8)3.2开始和暂停单元 (13)3.3清零功能单元 (14)3.4脉冲输出电路 (16)3.5译码及显示电路 (17)4调试与检测 (20)4.1调试中故障及解决办法 (20)4.2 调试与运行结果 (21)5仿真操作步骤及使用说明 (21)结束语 (22)参考文献 (23)附录1 (24)..附录2 (26)本科生课程设计成绩评定表......................... 错误!未定义书签。
..引言过去的三个世纪,我们经历了第一次工业革命,人类开始进入蒸气时代,第二次工业革命,人类开始进入电气时代并在信息革命资讯革命中达到顶峰。
一、设计题目:电子跑表二、设计要求:1、利用8031作为主控制器组成一个电子跑表,采用4位LED显示器。
2、上电或RESET后能启动显示当前(时:分):首次上电复位显示为0时0分,以后各次RESET均显示正确的当前时间。
3、当按下START键时,作为跑表使用,显示范围是:000.0-999.9秒,当按下STOP键时,跑表停止运行,并保留所停位置的时间显示不变。
4、利用H键作为时钟校正,即当按下H键时,显示的当前小时值以每秒加一的速度递增(24点即为0点),利用N键作为分校正,使用方法同H键,但60分钟即为0分。
三、设计的作用及目的:1、利用单片机定时器中断和定时器计数方式实现跑表和时钟功能。
2、通过该次课程设计熟悉8031、CD4511与LED的接口技术。
3、熟悉LED功能显示的控制过程。
4、熟悉键盘扫描原理。
5、熟悉8031定时器中断和定时器计数方式的功能使用,为以后的工作和学习打下坚实的基础。
6、学会如何编制含定时器中断、键盘扫描和LED静态显示等多种功能的综合程序初步体会大型程序的编制和调试技巧。
四、所用仪器设备:单片机(8031)、PROM(2764)、锁存器(74LS373)、锁存/译码/驱动块(CD4511)、LED数码管(四个)、按键(4个)五、具体设计:(1)、设计原理:在讲设计原理之前我们先来介绍一下8031。
8031是INTEL公司MCS-51系列单片机中最基本的产品,它采用INTEL公司可靠的CHMOS工艺技术制造的高性能8位单片机,属于标准的MCS-51的HCMOS产品。
它结合了HMOS的高速和高密度技术及CHMOS的低功耗特征,标准MCS-51单片机的体系结构和指令系统。
8031内置中央处理单元、128字节内部数据存储器RAM、32个双向输入/输出(I/O)口、2个16位定时/计数器和5个两级中断结构,一个全双工串行通信口,片内时钟振荡电路。
但8031片内并无程序存储器,需外接ROM。
数字跑表设计eda课程设计【原创版】目录1.数字跑表设计概述2.EDA 课程设计的目的和意义3.数字跑表的主要功能和特点4.数字跑表的设计流程5.EDA 课程设计对数字跑表设计的影响和应用正文数字跑表设计是电子设计自动化 (EDA) 课程设计中的一个重要项目,目的是让学生通过实践了解和掌握数字电路的设计方法和技巧。
数字跑表是一种能够记录跑步时间和距离的电子设备,主要功能是计时和计数,同时还具备闹钟、计时器等附加功能。
数字跑表的设计流程主要包括需求分析、系统设计、电路设计、PCB 设计、测试和调试等步骤。
在 EDA 课程设计中,学生需要使用 EDA 软件来完成数字跑表的设计。
EDA 软件能够提供可视化的电路设计和仿真环境,学生可以通过绘制原理图、PCB 图等来实现数字跑表的设计。
同时,EDA 软件还能够提供多种工具和函数库,帮助学生快速实现数字跑表的各种功能。
数字跑表的主要功能是计时和计数。
计时功能是指数字跑表能够准确地记录跑步时间,同时能够在跑步过程中实时显示跑步速度和距离。
计数功能是指数字跑表能够记录跑步的圈数和步数等信息,以便用户了解自己的跑步情况。
数字跑表还具备闹钟、计时器等附加功能,方便用户进行更多的运动训练。
EDA 课程设计对数字跑表设计具有重要的影响和应用。
通过 EDA 课程设计,学生能够学习和掌握数字电路的设计方法和技巧,提高数字电路设计和实现的能力。
同时,EDA 软件提供的可视化设计和仿真环境,能够帮助学生更好地理解数字跑表的工作原理和电路结构,加快数字跑表的设计和测试进度。
数字跑表设计是 EDA 课程设计中的一个重要项目,能够帮助学生学习和掌握数字电路的设计方法和技巧。
数字跑表的主要功能是计时和计数,同时还具备闹钟、计时器等附加功能。
基于FPGA数字跑表的设计现代电子技术实验报告数字跑表的设计目录 (2)一、基于FPGA的VHDL设计流程 (3)1.1 VHDL语言介绍 (3)1.1.1 VHDL的特点 (3)1.2 FPGA开发介绍 (4)1.2.1 FPGA简介 (4)1.2.2 FPGA设计流程 (4)1.2.3 实验板使用芯片XC3S200A介绍 (6)二、总体电路的设计 (6)2.1设计要求 (6)2.2系统工作原理 (6)2.3单元电路的划分 (6)三、电子秒表的单元电路设计 (7)3.1 电子秒表的设计过程及结果分析 (7)3.1.1 分频器 (7)3.1.2按键消抖 (8)3.1.3 控制电路 (8)3.1.4 计数器 (9)3.1.5 寄存器 (12)3.1.6 显示模块 (15)3.1.7 使能模块 (17)四、顶层设计 (18)4.1 顶层设计 (18)4.2 分配引脚和下载实现 (19)4.3 测试结果及结论 (20)五、经验及收获 (22)一、基于FPGA的VHDL设计流程1.1 VHDL语言介绍VHDL(Very-high-speed Integrated Circuit Hardware Description Language)诞生于1982年.1987年底,VHDL被IEEE(The Institute of Electrical and Electronics Engineers)和美国国防部确认为标准硬件描述语言.自IEEE公布了VHDL的标准版本(IEEE-1076)之后,各EDA公司相继推出了自己的VHDL设计环境,并宣布自己的设计工具可以和VHDL接口.此后VHDL在电子设计领域得到了广泛的接受,并逐步取代了原有的非标准硬件描述语言.1993年,IEEE对VHDL进行了修订,从更高的抽象层次和系统描述能力上扩展VHDL的内容,公布了新版本的VHDL,即IEEE标准的1076-1993版本.现在,VHDL和VERILOG作为IEEE的工业标准硬件描述语言,又得到众多EDA公司的支持,在电子工程领域,已成为事实上的通用硬件描述语言.有专家认为,在新的世纪中,VHDL和VERILOG语言将承担起几乎全部的数字系统设计任务.1.1.1 VHDL语言的特点与其他硬件描述语言相比,VHDL具有以下特点:1、功能强大、设计灵活:VHDL具有功能强大的语言结构,可以用简洁明确的源代码来描述复杂的逻辑控制.它具有多层次的设计描述功能,层层细化,最后可直接生成电路级描述.VHDL支持同步电路、异步电路和随机电路的设计,这是其他硬件描述语言所不能比拟的.VHDL还支持各种设计方法,既支持自底向上的设计,又支持自顶向下的设计;既支持模块化设计,又支持层次化设计.2、支持广泛、易于修改:由于VHDL已经成为IEEE标准所规范的硬件描述语言,大多数EDA工几乎都支持VHDL,这为VHDL的进一步推广和广泛应用奠定了基础.在硬件电路设计过程中,主要的设计文件是用VHDL编写的源代码,因为VHDL易读和结构化,所以易于修改设计.3、强大的系统硬件描述能力:VHDL具有多层次的设计描述功能,既可以描述系统级电路,又可以描述门级电路.而描述既可以采用行为描述、寄存器传输描述或结构描述,也可以采用三者混合的混合级描述.另外,VHDL支持惯性延迟和传输延迟,还可以准确地建立硬件电路模型.VHDL支持预定义的和自定义的数据类型,给硬件描述带来较大的自由度,使设计人员能够方便地创建高层次的系统模型.4、独立于器件的设计、与工艺无关:设计人员用VHDL进行设计时,不需要首先考虑选择完成设计的器件,就可以集中精力进行设计的优化.当设计描述完成后,可以用多种不同的器件结构来实现其功能.5、很强的移植能力:VHDL是一种标准化的硬件描述语言,同一个设计描述可以被不同的工具所支持,使得设计描述的移植成为可能.6、易于共享和复用:VHDL采用基于库(Library)的设计方法,可以建立各种可再次利用的模块.这些模块可以预先设计或使用以前设计中的存档模块,将这些模块存放到库中,就可以在以后的设计中进行复用,可以使设计成果在设计人员之间进行交流和共享,减少硬件电路设计.1.2 FPGA开发介绍现场可编程门阵列(FPGA)器件是八十年代中期出现的新产品,它的应用大大地方便了IC的设计,因而随着数字技术日益广泛的应用,以FPGA为代表的ASIC器件得到了迅速的普及和发展,器件集成度和速度都在高速增长.传统的电路设计过程是:先画原理图、把原理图绘制成印制电路板图、再制版、安装、调试.有了FPGA,我们只需要在计算机上绘出原理图,再运行相应的软件,就可把所设计的逻辑电路在FPGA中实现.所有步骤均可自动完成.电子设计工程师自己设计专用集成电路成为了一件很容易的事情.FPGA作为专用集成电路(ASIC)概念上的一个新型范畴和门类,以其高度灵活的用户现场编程方式,现场定义高容量数字单片系统的能力,能够重复定义、反复改写的新颖功能,为复杂数字系统设计、研制以及产品开发提供了有效的技术手段.电子应用设计工程师应用FPGA技术不仅可避免通常ASIC单片系统设计周期长,前期投资风险大的弱点,而且克服了过去板级通用数字电路应用设计的落后,繁琐和不可靠性.目前FPGA的两个重要发展与突破是,大多数厂商在其高端器件上都提供了片上的处理器(如CPU、DSP)等硬核(Hard Core)或固化核(Fixed Core).比如Xilinx的Virtex IIPro芯片可以提供Power PC,而Altera的Stratix、Excalibur等系列芯片可以提供Nios、DSP和Arm等模块.在FPGA上集成微处理器,使SOPC设计更加便利与强大.另一个发展是在不同器件商推出的高端芯片上大都集成了高速串行收发器,一般能够达到3Gb/s以上的数据处理能力,在Xilinx、Altera、Lattice都有相应的器件型号提供该功能.这些新功能使FPGA的数据吞吐能力大幅度增强.1.2.2 FPGA设计流程对于目标器件为FPGA和CPLD的HDL设计,其工程设计的基本流程如图:图1FPGA设计流程图1、文本编辑用任何文本编辑器都可以进行,通常VHDL文件保存为vhd文件,Verilog文件保存为v文件.2、使用编译工具编译源文件HDL的编译器有很多,ACTIVE公司,MODELSIM公司,SYNPLICITY公司,SYNOPSYS公司,VERIBEST公司等都有自己的编译器.3、逻辑综合将源文件调入逻辑综合软件进行综合.综合的目的是在于将设计的源文件由语言转换为实际的电路.但是此时还没有在芯片中形成真正的电路.这一步的最终目的是生成门电路级的网表(Netlist).4、布局、布线将第3步生成的网表文件调入PLD厂家提供的软件中进行布线,即把设计好的逻辑安放到CPLD/FPGA内.这一步的目的是生成用于下载(编程Programming)的编程文件.在这一步,将用到第3步生成的网表,并根据CPLD /FPGA厂商的器件容量,结构等进行布局、布线.这就好像在设计PCB时的布局布线一样.先将各个设计中的门根据网表的内容和器件的结构放在器件的特定部位.然后,在根据网表中提供的各门的连接,把各个门的输入输出连接起来.最后,生成一个供编程的文件.这一步同时还会加一些时序信息(Timing)到你的设计项目中去,以便于你做后仿真.5、后仿真利用在布局布线中获得的精确参数,用仿真软件验证电路的时序.(也叫布局布线仿真或时序仿真).这一步主要是为了确定你的设计在经过布局布线之后,是不是还满足你的设计要求.6、编程,下载如果前几步都没有发生错误,并且符合设计要求,这一步就可以将由适配器等产生的配置或下载文件通过编程器或下载电缆下载到目标芯片中.7、硬件测试硬件测试的目的是为了在更真实的环境中检验HDL设计的运行情况,特别是对于HDL 程序设计上不是十分规范,语义上含有一定歧义的程序.1.2.3 实验板使用芯片XC3S200A介绍本实验设计中采用的是Xilinx公司的ETL-001 FPGA开发板进行开发设计,该开发板所提供的主芯片XC3S200A是Xilinx公司最新推出的90nm半导体工艺的低端低成本的FPGA芯片,可以广泛地运用在通信,军事,电力,控制,消费电子,汽车电子绝大多数电子应用领域.芯片主要特性如下表1所示:表1实验板XC3S200A该芯片是基于SRAM工艺的超大规模可编程逻辑芯片,提供了高达20万的等效系统门,3854个查找表(LUT),3854个寄存器(FF),288Kbit的块状SRAM以及16个18*18的乘法器,以及60对差分I/O,LVD.芯片主要特性如上表示.二、系统总体设计2.1 电子秒表的设计任务目标1、跑表精度为0.01秒2、跑表计时范围为:1小时3、设置开始计时/停止计时、复位两个按钮4、显示工作方式:用六位BCD七段数码管显示读数.显示格式:00:00:00扩展功能:按键消抖;选手时间分时显示;2.2系统工作原理系统基本流程图如图:图1系统基本流程图2.3单元电路的划分根据要求设计的电路包括以下几个模块:1.分频器:由于我们要以1ms为最小单位进行计时.分频器的功能是对晶体振荡器产生的48MHz时钟信号进行分频,产生1KHz的基准信号,对晶体振荡器产生的时钟信号进行分频,产生时间基准信号.2.计数锁存器:由于我们要实现按不同的键让秒表产生不同的反应.所以需要这个模块对时间基准脉冲进行计数,完成计时功能.并完成对数据的锁存使显示保持暂停.3.控制器:由于我们要实现按不同的键让秒表产生不同的反应.所以需要这个模块控制计数器的运行、停止以及复位,产生锁存器的使能信号.4.按键消抖电路:由于普通按键会产生抖动现象,只按一下,可能出现多次抖动的现象,使按键不灵敏.所以需要消除按键输入信号抖动的影响,输出单脉冲.5.扫描显示的控制电路:包括扫描计数器、数据选择器和7段译码器,控制8个数码管以扫描方式显示计时结果.单元电路划分总框图如下图2:图2单元电路划分总框图三、单元电路设计3.1单元电路设计思路3.1.1分频器分频器的功能是对晶体振荡器产生的48MHz时钟信号进行分频,产生1KHz和100Hz的基准信号.对于频率为1khz的信号,分频系数为48000,因此需要一个24000进制的计数器,每当计数24000个时钟,分频输出信号c1000取反一次,c1000取反两次得到一个周期的信号.这样可实现对输入时钟信号的4800次分频,从而得到1khz的信号.对于频率为100hz 的信号,原理相同,分频系数为480000.生成的分频器模块如图3所示:图3分频器模块其中,clkin为48MHz晶振时钟信号;c1000为分频输出的1KHz时钟信号,c100为分频输出的100Hz时钟信号.设计程序如下:library IEEE;use IEEE.STD_LOGIC_1164.ALL;use IEEE.STD_LOGIC_arith.ALL;use IEEE.STD_LOGIC_unsigned.ALL; entity fdiv isPort ( clkin : in STD_LOGIC;c1000 : out STD_LOGIC;c100 : out STD_LOGIC); end fdiv;architecture Behavioral of fdiv issignal c1000_temp:integer range 0 to 23999:=0;signal c100_temp:integer range 0 to 239999:=0;signal fd1000,fd100:STD_LOGIC:='0'; beginprocess (clkin) isbeginif rising_edge(clkin) thenif c1000_temp=23999 thenc1000_temp<=0;fd1000<= not fd1000;else c1000_temp<=c1000_temp+1;end if;end if;end process;c1000 <=fd1000;process (clkin) isbeginif rising_edge(clkin) thenif c100_temp=239999 thenc100_temp<=0;fd100<= not fd100;else c100_temp<=c100_temp+1;end if;end if;end process;c100 <=fd100;end Behavioral;仿真波形图4如下图4分频器仿真波形由仿真波形可知,分频器的设计是符合预期期望的,当产生输入晶振信号时,经过分频器内部处理的信号最终产生两个输出信号,分别是1KHz和100Hz,由波形图可以看出,当时钟信号计数24000个脉冲时,1KZ的波形翻转一次,从而产生1KZ的信号;同理,100Hz的信号也符合预期设计.3.1.2按键消抖由于实验板上的按键,在按下和松开的短暂时间里,会出现抖动现象,这样会严重影响按键的效果,故此需要设计一个消抖电路,来消除这种不利的影响,按键消抖电路不仅可以消除按键抖动的影响,而且每按一次键,只输出一个脉冲,其宽度为一个时钟周期,达到整形的作用, 按键消抖电路是利用时间基准信号对按键按下时产生的抖动进行整形,使其输出为正常的脉冲信号的.消抖设计框图5如下:图5消抖模块设计原理图程序设计如下:library IEEE;use IEEE.STD_LOGIC_1164.ALL;use IEEE.STD_LOGIC_unsigned.ALL; use IEEE.STD_LOGIC_arith.ALL; entity XD isPort ( clk1k : in STD_LOGIC;keyin : in STD_LOGIC;keyout : out STD_LOGIC); end XD;architecture Behavioral of XD issignal key1,key2:std_logic;signal count:integer range 1 to 3:=1 beginprocess(clk1k,keyin)beginif clk1k'event and clk1k='1' thenif count=3 thenkey1<='1';elsekey1<='0';count<=count+1;end if;key2<=key1;e nd if;if keyin='0' thencount<=1;end if;end process;keyout<=(not key1) and key2;end Behavioral;仿真波形图6如下:在按键按下的一个周期内,消抖模块输出仅有一个时钟周期,抑制了按键按下状态不稳的情况。
verilog跑表器课程设计一、课程目标知识目标:1. 让学生理解Verilog语言的基本语法和结构,掌握跑表器的基本原理和设计方法。
2. 使学生掌握Verilog代码的编写规范,能够正确使用Verilog语言实现跑表器的功能。
3. 帮助学生了解数字电路基础知识,理解跑表器中各个模块的功能及其相互关系。
技能目标:1. 培养学生运用Verilog语言进行数字电路设计和仿真的能力。
2. 培养学生分析问题、解决问题和团队协作的能力,能够独立完成跑表器的设计与调试。
3. 提高学生的编程技巧和动手实践能力,使其能够根据实际需求优化跑表器设计。
情感态度价值观目标:1. 培养学生对电子设计的兴趣,激发学生主动探索和创新的热情。
2. 培养学生严谨、细致的学习态度,注重实际操作与理论知识的结合。
3. 增强学生的团队协作意识,使其在合作中学会互相尊重、互相学习,培养良好的沟通能力。
课程性质:本课程为电子设计实践课程,侧重于Verilog语言的应用和数字电路设计能力的培养。
学生特点:学生已具备一定的电子基础和编程能力,对Verilog语言有一定了解,但实际应用经验不足。
教学要求:结合学生特点和课程性质,注重理论与实践相结合,充分调动学生的主观能动性,培养其创新能力和实际操作能力。
在教学过程中,注重目标分解,确保学生能够逐步掌握课程内容,达到预期学习成果。
二、教学内容本课程教学内容主要包括以下几部分:1. Verilog基础知识回顾:复习Verilog的基本语法、数据类型、运算符和模块结构,为跑表器设计打下基础。
2. 跑表器原理与设计:讲解跑表器的工作原理,分析跑表器的各个功能模块,包括时钟模块、计数模块、显示模块等。
3. Verilog代码编写与仿真:根据跑表器原理,引导学生编写各个模块的Verilog代码,并进行功能仿真,确保代码的正确性。
4. 跑表器整体设计与调试:将各个模块整合在一起,完成跑表器整体设计,并进行系统级调试,优化设计。
电子跑表ABSTRACT:Because of its extremely high performance-price ratio, the single-chip computer (SCC) has been paid great attention to ever since it came out in 1970s of 20th Century, and has gained an extensive applicable field and fast development. Among all kinds of SCCs, 51 SCC is the most typical and representative one. This design, adopting 80C51 chip as the core part with some necessary peripheral circuits, is a simple electronic clock which uses 5V DC as the power supply. In hardware aspect, besides the CPU, four seven-segment LED digi-tubes are used for display, which work in a dynamically scanning display mode and driven by 74SL245 chip. The LEDs can accurately indicate hour and minute and two buttons can be used to adjust the time. While in the software aspect, the programming language is assembly language. The whole electronic clock system has functions of time display, adjustment, stopwatch and reset, etc. This design enables me to have greater insight into the basic circuit of SCC, and the basic methods of timer control and interruption programming, so that is a training of my ability of learning, designing and developing software and hardward.KEY WORDS:80C51 LED digi-tubes Electronic clock Stopwatch摘要:单片机自20世纪70年代问世以来,以其极高的性能价格比,受到人们的重视和关注,应用很广、发展很快。
而51单片机是各单片机中最为典型和最有代表性的一种。
本次设计以80C51芯片为核心,辅以必要的外围电路,设计了一个简易的电子跑表,它由5V直流电源供电。
在硬件方面,除了CPU外,使用8个七段LED数码管来进行显示,LED采用的是动态扫描显示,使用74LS245芯片进行驱动。
通过LED能够比较准确显示时、分。
两个简单的按键实现对时间的调整。
软件方面采用汇编语言编程。
整个电子钟系统能完成时间的显示,调时,秒表计时,复位等功能。
通过这次设计让我更深入了解单片机基本电路、如何控制和定时器和中断编程的基本方法,从而锻炼了我学习、设计和开发软、硬件的能力。
关键字:80C51 LED数码管电子钟跑表一、设计目的通过电子跑表的课程设计,巩固本学期学习的单片机知识;通过过编写程序,深刻理解定时器T0、T1的编程方法;通过PROTEUS仿真系统的仿真,对软件仿真进一步的了解;提高对LED数码管的更进一步的认识,以及其驱动电路的认识;学习单片机和其外围电路的接口方法;熟悉独立式连接键盘和矩阵式键盘的原理;提高查阅资料的能力以及知识之间相互联系的理解。
二、设计要求利用8051或者8031(2764)作为主控器,组成一个电子跑表,采用6位LED显示器。
上电或RESET后能启动当前时间(时:分:秒);首次上电复位显示为0时0分0秒,以后各次RESET均显示正确的当前时间。
当按下START键时,作为跑表使用,显示范围是000.0秒~999.9秒,当按下STOP键时,跑表停止运行,并保留所停位置的时间显示不变,当再按下CLEAR键时跑表清零,再按下START键时,跑表从000.0开始计时,当跑到999.9时变成000.0。
当按下SECOND键时跑表回到电子时钟的状态,并显示正确的时间。
利用SECOND作为秒钟校正,即按下SECOND(在时钟状态)时,秒钟加1,当加到60时,分钟加1,秒钟变为0。
利用MINUTE作为分钟校正,即按下MINUTE(在时钟状态)时,分钟加1,当加到60时,时钟加1,分钟变为0,秒钟变为0。
利用HOUR作为秒钟校正,即按下HOUR(在时钟状态)时,时钟加1,当加到24时,时钟为0,分钟为0,秒钟为0。
三、方案选择方案一:利用数字电子技术利用555电路组成作为时钟发生信号,让此脉冲作为一个计时电路的时钟信号,让计时电路产生的信号经过锁存驱动送到LED数码管显示。
方案二:可以利用8031芯片,但考虑到8031没有ROM,而要添加一个ROM,这样构成的电路会麻烦些。
方案三:利用80C51芯片,其内部有4KB的ROM,对与设计电子跑表已经足够,同时其有两个定时器T0、T1可以一个用来时钟定时,另外一个用来跑表计数,设置T0、和T1中断。
然后通过74LS245驱动7段数码管动态显示P0口发过来的数据。
综上所述,考虑实际情况,此次课程设计选用方案三。
四、仪器设备80C51(一块)、74LS245驱动块一片、7段LED显示器8个、按键6个五、设计原理1、工作原理T0定时50ms,产生中断一次,定义一个变量TCNT,每次当T0中断产生一次,TCNT就加1。
当TCNT等与20即已经计时1s时,把TCNT清零,分加1。
当分钟等于60时,分钟清0,时钟加1。
当时钟等于24时,时钟清零,分钟和表钟都清零。
TCNT也清零。
当按下START键,即进入秒表时,T1定时50ms,定一个变量TCNT1,当计时到1s时,SEOND1加1,当SECOND1加到100时,SECOND2加1,同时对SECOND1清零。
当SECOND2加到100时,对其他边变量都清零。
2、80C51简介1)基本组成:单片机的结构特征是将组成计算机的基本部件集成体芯片上,构成一台功能独特的微型计算机。
主要包括:中央处理器、存储器、并行I/O口、串行I/O口、定时/计数器、定时电路及单元。
2)引脚及其功能:MCS-51是标准的4 0引脚双列直插式集成电路芯片。
a)P0.0~P0.7 P0口8位双向口线(在引脚的39~32号端子)。
b)P1.0~P1.7 P1口8位双向口线(在引脚的1~8号端子)。
c)P2.0~P2.7 P2口8位双向口线(在引脚的21~28号端子)。
d)P3.0~P3.7 P2口8位双向口线(在引脚的10~17号端子)。
这4个I/O口具有不完全相同的功能。
✧P0口有三个功能:a)外部扩展存储器时,当做数据总线b)外部扩展存储器时,当作地址总线c)不扩展时,可做一般的I/O使用,但内部无上拉电阻,作为输入或输出时,在外部接上拉电阻。
✧P1口只做I/O口使用:其内部有上拉电阻。
✧P2口有两个功能:a)扩展外部存储器时,当作地址总线使用b)做一般I/O口使用,其内部有上拉电阻;✧P3口有两个功能:除了作为I/O使用外(其内部有上拉电阻),还有一些特殊功能,由特殊寄存器来设置。
在介绍这四个I/O口时提到了一个“上拉电阻”那么上拉电阻又是一个什么东东呢?他起什么作用呢?都说了是电阻那当然就是一个电阻,当作为输入时,上拉电阻将其电位拉高,若输入为低电平则可提供电流源;所以如果P0口如果作为输入时,处在高阻抗状态,只有外接一个上拉电阻才能有效。
✧ALE/PROG地址锁存控制信号:在系统扩展时,ALE用于控制P0口的输出低8位地址送锁存器锁存起来,以实现低位地址和数据的隔离。
ALE有可能是高电平也有可能是低电平,当ALE是高电平时,允许地址锁存信号,当访问外部存储器时,ALE信号负跳变(即由正变负)将P0口上低8位地址信号送入锁存器。
当ALE是低电平时,P0口上的内容和锁存器输出一致。
在没有访问外部存储器期间,ALE以1/6振荡周期频率输出(即6分频),当访问外部存储器以1/12振荡周期输出(12分频)。
从这里我们可以看到,当系统没有进行扩展时ALE会以1/6振荡周期的固定频率输出,因此可以做为外部时钟,或者外部定时脉冲使用。
✧PORG为编程脉冲的输入端:在8051单片机内部有一个4K或8KB的程序存储器(ROM),ROM的作用就是用来存放用户需要执行的程序的,那么我们是怎样把编写好的程序存入进这个ROM中的呢?实际上是通过编程脉冲输入才能写进去的,这个脉冲的输入端口就是PROG。
✧PSEN 外部程序存储器读选通信号:在读外部ROM时PSEN低平有效,以实现外部ROM单元的读操作。
a)内部ROM读取时,PSEN不动作;b)外部ROM读取时,在每个机器周期会动作两次;c)外部RAM读取时,两个PSEN脉冲被跳过不会输出;d)外接ROM时,与ROM的OE脚相接。
✧EA/VPP 访问和序存储器控制信号a)接高电平时:CPU读取内部程序存储器(ROM)b)扩展外部ROM:当读取内部程序存储器超过0FFFH(8051)1FFFH(8052)时自动读取外部ROM。
c)接低电平时:CPU读取外部程序存储器(ROM)。
在前面的学习中我们已知道,8031单片机内部是没有ROM的,那么在应用8031单片机时,这个脚是一直接低电平的。
d)8751烧写内部EPROM时,利用此脚输入21V的烧写电压。
✧RST 复位信号:当输入的信号连续2个机器周期以上高电平时为有效,用以完成单片机的复位初始化操作,当复位后程序计数器PC=0000H,即复位后将从程序存储器的0000H单元读取第一条指令码。
✧XTAL1和XTAL2 :外接晶振引脚。
当使用芯片内部时钟时,二引脚用于外接石英晶体和微调电容;当使用外部时钟时,用于接外部时钟脉冲信号。
✧VCC:电源+5V输入✧VSS:GND接地。
3)80C51的引脚图如图一所示:图一3)LED显示器原理显示块的控制:数码管实际上是由若干个发光二极管组成8字形成的,加上小数点就是8个。