EDA课程设计——病房呼叫系统
病房呼叫系统课程设计实验报告
安徽科技大学数字电子技术课程设计题目: 病房呼叫系统**: **专业: 电子科学与技术班级: 112学号: **********指导教师:2013年06月15日安徽科技大学理学院病房呼叫系统一课程设计题目与实习目的课程设计题目:病房呼叫系统实习目的:1.掌握数字电路课程所学的理论知识以及数字电子技术在生活中的应用。
2.熟悉几种常用集成数字芯片的功能和应用,并掌握其工作原理,进一步学会使用其进行电路设计。
3.进一步深化对电子技术的了解,强化实际动手操作能力以及发现问题解决问题的方法。
4.培养认真严谨的工作作风和实事求是的工作态度。
5.数电课程实验是大学中为我们提供的一次动手实践的机会,增强实际动手操作与研发的能力。
二任务和要求要求:1.用1~5个开关模拟5个病房的呼叫输入信号,5号优先级最高;1~5优先级依次升高;2.用一个数码管显示呼叫信号的号码;没信号呼叫时显示0;又多个信号呼叫时,显示优先级最高的呼叫号(其它呼叫号用指示灯显示);3.凡有呼叫发出5秒的呼叫声;4.对低优先级的呼叫进行存储,处理完高优先级的呼叫,再进行低优先级呼叫的处理(附加)。
三总体方案的选择病房呼叫系统整体思路为:●LED指示灯显示病房模块●数码管优先显示重病房模块●蜂鸣器报警5秒模块首先由病人按下呼叫器开关,即逻辑数据开关,(1)进入第一模块,通过LED指示灯显示病人呼叫的病房,(2)进入第二模块,传输到一个编码器进行编码,我这里选用的是74LS148,8线—3线优先编码器,其低电平为有效输入;然后再进行译码输出,我选用的是74LS48,为共阴极7段译码/驱动器,74LS148输出为反码输出,遂在74LS48前加上反向器进行输入;再用共阴极七段数码管进行输出。
(3)进入第三模块,通过一个与非门对信号进行处理,连接周期T为10秒,占空比为50%的方波发生器与信号一同通过与门,控制输出信号可以持续5秒,使蜂鸣器呼叫5秒。
流程图如下:与非门蜂鸣器与门四单元电路的设计1.设计所使用的元件及工具:(1)L ED指示灯模块LED显示灯----------------------------------------- 5个;保护电阻R=500Ω------------------------------------5个;(2)数码管显示模块编码器74LS148D-------------------------------------1个;反相器74LS04D--------------------------------------3个;译码器74LS48D--------------------------------------1个;(3)蜂鸣器呼叫模块与非门74LS30D -------------------------------------1个;方波发生器 ---------------------------------------1个;与门7408D -----------------------------------------1个;蜂鸣器 --------------------------------------------1个;另外:逻辑双掷开关5个;电源VCC、接地GND、导线若干。
EDA病床呼叫系统课程设计
EDA病床呼叫系统课程设计一、课程目标知识目标:1. 学生能够理解EDA病床呼叫系统的基本原理和功能;2. 学生能够掌握EDA病床呼叫系统中使用的传感器、微控制器和通信模块的基本工作原理;3. 学生能够了解医院病床呼叫系统的应用场景及其在现代医疗领域的重要性。
技能目标:1. 学生能够运用所学知识,设计简单的EDA病床呼叫系统电路图;2. 学生能够通过编程实现对病床呼叫系统的基本控制功能;3. 学生能够运用团队协作和沟通技巧,完成EDA病床呼叫系统的设计与展示。
情感态度价值观目标:1. 培养学生对电子技术应用于医疗领域的兴趣,增强社会责任感;2. 培养学生严谨的科学态度和良好的工程意识,提高创新精神和实践能力;3. 培养学生团队协作精神,学会尊重他人意见,提高沟通表达能力。
课程性质:本课程为电子技术与医疗领域相结合的实践性课程,旨在提高学生的电子技术应用能力和实际问题解决能力。
学生特点:学生具备一定的电子技术基础知识,具有较强的动手能力和探索精神,对新技术和新应用有较高的兴趣。
教学要求:结合学生特点和课程性质,注重理论与实践相结合,鼓励学生动手实践,培养创新意识和团队协作能力。
通过本课程的学习,使学生能够达到上述课程目标,并为后续相关课程打下坚实基础。
二、教学内容1. 理论知识:- 电子技术基础知识回顾:传感器、微控制器原理、通信模块;- EDA病床呼叫系统的基本原理、系统架构及其功能;- 医院病床呼叫系统的应用场景及在现代医疗领域的价值。
2. 实践操作:- 设计简单的EDA病床呼叫系统电路图,包括传感器、微控制器和通信模块的连接;- 编程实现对病床呼叫系统的基本控制功能,如呼叫、解除呼叫等;- 组装和调试病床呼叫系统,确保系统正常运行。
3. 教学大纲:- 第一周:电子技术基础知识回顾,介绍EDA病床呼叫系统的基本原理和功能;- 第二周:学习医院病床呼叫系统的应用场景,设计系统电路图;- 第三周:编程实现病床呼叫系统的基本控制功能;- 第四周:组装、调试病床呼叫系统,并进行展示。
病房呼叫系统
燕山大学EDA课程设计报告书题目:病房呼叫系统姓名:班级:学号:成绩:一、设计题目及要求题目:病房呼叫系统要求:1.用1~5个开关模拟5个病房的呼叫输入信号,1号优先级最高;1~5优先级依次降低;2.用一个数码管显示呼叫信号的号码;没信号呼叫时显示0;又多个信号呼叫时,显示优先级最高的呼叫号(其它呼叫号用指示灯显示);3.凡有呼叫发出5秒的呼叫声;4.对低优先级的呼叫进行存储,处理完高优先级的呼叫,再进行低优先级呼叫的处理二、设计过程及内容(包括○1总体设计的文字描述,即由哪几个部分构成的,各个部分的功能及如何实现方法;○2主要模块比较详尽的文字描述,并配以必要的图片加以说明,但图片数量无需太多)1.设计概括:将设计分为三个模块信号存储模块(storage),显示模块(show)和蜂鸣时间控制模块(speaker)。
信号存储模块通过D触发器对信号进行存储,用复位信号对信号进行复位。
显示模块通过74148优先译码器对信号进行优先译码,使优先级高的译码输出,在BCD七段显示数码管中显示。
时间控制模块通过用计数器对蜂鸣器的响铃时间进行控制(5秒)。
2.模块分析:(1)信号存储模块用五个D触发器实现对输入信号的存储,patient1-patient5表示一号病房至五号病房的呼叫信号。
nurse1-nurse5为清零信号,用于对呼叫信号进行复位。
开关及复位信号都采用低电平有效。
当patient有低电平输入时,经过一个非门,变为高电平,上升沿动作,使D触发器工作。
因为D接高电平,所以Q输出高电平。
只要未复位,Q一直输出为高电平,使信号得以存储于num1-num5输出端,进入show模块。
nurse复位,使D触发器清零,则不再显示呼叫信号。
同时,patient1—patient5通过与非门连接构成了speaker模块的信号输入,只要任意病房呼叫(低电平信号输入),signal就输出高电平,信号进入speaker模块。
病房呼叫系统的课程设计
病房呼叫系统的课程设计一、课程目标知识目标:1. 学生能够理解病房呼叫系统的基本原理,掌握其关键组成部分及功能。
2. 学生能够描述病房呼叫系统在医疗环境中的作用,以及它对提高医疗服务质量的重要性。
3. 学生能够掌握与病房呼叫系统相关的电子技术基础,如电路原理、信号传输等。
技能目标:1. 学生能够运用所学的电子技术知识,设计简单的病房呼叫系统电路图。
2. 学生通过小组合作,能够实际搭建病房呼叫系统的模型,并对其进行基本的测试。
3. 学生能够运用批判性思维,对现有病房呼叫系统进行分析和评价,提出改进建议。
情感态度价值观目标:1. 学生培养对医疗科技的兴趣,认识到科技在提升人类生活质量方面的作用。
2. 学生通过课程学习,增强团队协作能力,学会尊重他人意见,培养合作精神。
3. 学生能够树立科技创新意识,认识到持续学习和探索新技术的重要性。
课程性质:本课程为信息技术与电子技术的融合课程,旨在通过病房呼叫系统的设计,让学生将所学知识应用于实际情境,提高解决实际问题的能力。
学生特点:学生为初中年级,对电子技术有一定了解,具备基础电路知识,好奇心强,喜欢动手实践。
教学要求:结合学生特点,课程注重实践性、操作性和创新性,引导学生通过动手实践,掌握病房呼叫系统的设计与搭建,培养其科技创新能力。
教学过程中,注重启发式教学,鼓励学生主动探索,激发学习兴趣。
通过分解课程目标为具体学习成果,为教学设计和评估提供明确依据。
二、教学内容1. 病房呼叫系统概述:介绍病房呼叫系统的定义、发展历程、应用场景及其在医疗领域的重要性。
- 教材章节:第三章“通信技术在医疗领域的应用”2. 病房呼叫系统组成与原理:讲解系统的主要组成部分,如呼叫按钮、接收器、显示屏等,以及信号传输、处理和反馈的基本原理。
- 教材章节:第四章“电子技术与电路原理”3. 病房呼叫系统设计要求与规范:阐述系统设计过程中需要遵循的技术要求和安全规范。
- 教材章节:第五章“电子产品的设计与制作”4. 病房呼叫系统电路设计:指导学生利用所学电路原理,设计病房呼叫系统的电路图,并进行电路仿真。
病房呼叫系统eda课程设计
病房呼叫系统eda课程设计一、课程目标知识目标:1. 让学生了解病房呼叫系统的基本构成、功能及其在医疗领域的应用。
2. 使学生掌握EDA(电子设计自动化)的基本原理,并将其应用于病房呼叫系统的设计中。
3. 帮助学生理解病房呼叫系统中涉及的电子元件、电路原理及编程方法。
技能目标:1. 培养学生运用EDA工具进行病房呼叫系统电路设计的能力。
2. 提高学生动手实践能力,能独立完成病房呼叫系统的组装、调试与优化。
3. 培养学生团队协作能力,能在项目中进行有效沟通与分工。
情感态度价值观目标:1. 培养学生对电子工程领域的兴趣,激发其创新意识和探索精神。
2. 培养学生关注社会热点问题,认识到科技在医疗领域的重要作用。
3. 培养学生具备良好的职业道德,关注患者需求,提高服务质量。
课程性质:本课程为实践性强的电子设计课程,结合了电子技术、计算机技术和医疗领域知识。
学生特点:学生具备一定的电子基础知识,具有较强的动手能力和求知欲。
教学要求:注重理论与实践相结合,充分调动学生的主观能动性,培养学生的创新能力和团队协作精神。
通过课程学习,使学生能够将所学知识应用于实际项目中,为医疗领域的发展做出贡献。
二、教学内容1. 病房呼叫系统概述:介绍病房呼叫系统的基本功能、发展历程及其在医疗领域的应用。
教材章节:第一章第一节2. EDA技术简介:讲解EDA技术的概念、发展及其在电子设计中的应用。
教材章节:第二章第一节3. 病房呼叫系统电路设计:分析病房呼叫系统电路原理,介绍常用电子元件及其功能。
教材章节:第三章第一节、第二节4. EDA工具的使用:学习并掌握EDA工具(如Multisim、Protel等)的基本操作和电路设计方法。
教材章节:第四章5. 病房呼叫系统编程:介绍病房呼叫系统中的编程方法,包括单片机编程、嵌入式系统编程等。
教材章节:第五章6. 病房呼叫系统组装与调试:讲解病房呼叫系统的组装方法、调试技巧及故障排除。
教材章节:第六章7. 病房呼叫系统优化与改进:分析现有病房呼叫系统的不足,探讨优化与改进方案。
数电课程设计——病房呼叫系统
数电课程设计——病房呼叫系统一、课程设计目的:通过本设计课程的学习,让学生深刻理解数字电路的设计和应用,提高学生的电路设计能力,并能够运用所学知识完成一个完整的电路设计和实践应用。
二、课程设计内容:1.设计目标本设计课程旨在设计一个病房呼叫系统,该系统可以根据对应的呼叫按钮,向医护人员的接收设备发送呼叫信息,以便医护人员及时处理相关事项,保障病人的生命安全和健康。
2.设计要求本课程设计要求学生掌握数字电路的基本原理和设计方法,能够运用寄存器、计数器、门电路等数字电路芯片实现病房呼叫系统的设计。
3.电路功能和结构设计病房呼叫系统主要由呼叫按钮、控制器、显示器、接收器四个部分组成。
a、呼叫按钮:将病人的呼叫信息发送给控制器,可以设置多个呼叫按钮。
b、控制器:接收呼叫按钮的信号并将相应的信号发送给对应的接收器,同时将呼叫信息进行存储和显示。
c、显示器:将呼叫信息显示在屏幕上,提醒医护人员及时处理。
d、接收器:接收控制器发送的信号,发出声音或振动提醒医护人员。
4.电路实现电路实现的关键是对病房呼叫系统的设计进行详细规划。
a、呼叫按钮部分:根据病房的实际情况,需要设置多个呼叫按钮,每个呼叫按钮都需要连接到控制器上。
呼叫按钮可以选择常开或常闭两种形式,常开按钮需要通过电路控制而常闭按钮则直接连接。
b、控制器部分:控制器是整个系统的核心部分,需要安装多个触发器,以接收不同按钮的信号,并将信号进行存储、比较和转换,最终实现呼叫信息的显示和发送。
c、显示器部分:显示器可以采用一块数码管,将呼叫信息的编号进行展示,提醒医护人员及时处理。
d、接收器部分:接收器部分可以选择蜂鸣器、灯光或振动器等形式,将呼叫信息传达给医护人员。
5.相关细节设计为了使整个系统稳定可靠,需要对相关的细节进行设计:a、电源:最好采用稳压电源,以保证电路工作的稳定性。
b、防雷保护:在系统设计中需要注意对各个部位进行综合防雷保护,以保障电路安全和可靠。
EDA课程设计--病房呼叫系统的设计
病房呼叫系统的设计1 设计要求1.用5个开关模拟5个病房的呼叫输入信号,1号优先级最高;1到5优先级依次降低;2.用一个数码管显示呼叫信号的号码;没信号呼叫时显示0;又多个信号呼叫时,显示优先级最高的呼叫号(其它呼叫号用指示灯显示);3.凡有呼叫发出5秒的呼叫声;4加)。
2用33.1健低电1所示。
表1 74148输入输出真值表3.2 模五计数器以及灯闪烁五秒的模拟模五计数器电路图如图2所示。
图2 模五计数器电路图如图先将74193接成模五计数器,当有病房呼叫时CLR为0,计数器计数,当没有病房呼叫时计数器清零,通过调节clock输入脉冲的频率来实现闪烁五秒的控制。
3.33.443显示为0.当3号病房呼叫,闪烁灯开始闪烁5秒,out3指示灯亮,7447输出编码为:0000110,对应的显示数字符号为3.护士按下action使其为0,实现复位。
图6 2、3、4号床位同时呼叫仿真图2,3,4病房同时呼叫的仿真图如图6所示。
2、3、4同时呼叫时闪烁灯开始闪烁5秒,out2,out3,out4指示灯亮,7447输出编码为:0010010,对应的数码显示为2.图7 复位后新一轮的呼叫仿真图复位后新一轮的呼叫仿真图如图7所示。
护士复位后,开始新一轮的病房呼叫。
图8 优先级高的呼叫仿真图优先级高的呼叫仿真图如图8所示。
优先级高的呼叫时,在还没处理低的优先级时,有高优先级呼叫,数码显示会变成高优先级病房号的显示。
设计总结本设计是为在病人紧急需要时能很快进行救治的呼叫系统,增强医护人员更好的监护病人。
此[2] 汪国强.SOPC技术与应用.机械工业出版社,2006[3] 范忠.实用数字电子技术.电子工业出版社,1998[4] 刘延飞.数字电子技术实验与仿真.西北工业大学出版社,2010[5] 侯建军,郭勇.SOPC技术基础教程.清华大学出版社,2008附录设计程序1:非门library ieee;use ieee.std_logic_1164.all; entity as_not isport(a:in std_logic;f:out std_logic);end as_not;architecture behave of as_not isbegin2:2entitybeginend behave;3:2输入与门library ieee;use ieee.std_logic_1164.all; entity as_and2 isport(a:in std_logic;b:in std_logic;f:out std_logic);end as_and2;architecture behave of as_and2 is beginf<=a AND b;end behave;4beginif(e1='1') thenQ<="111";GS<='1';E0<='1';Q<="111";GS<='1';E0<='0';elsif(D(7)='0' and E1='0')thenQ<="000";GS<='0';E0<='1';elsif(D(6)='0' and E1='0')thenE0<='1';elsif(D(2)='0' and E1='0')thenQ<="101";GS<='0';E0<='1';elsif(D(1)='0' and E1='0')thenQ<="110";GS<='0';E0<='1';elsif(D(0)='0' and E1='0')thenQ<="111";GS<='0';E0<='1';end rtl;5:7447port(num:in std_logic_vector(3 downto 0); dout:out std_logic_vector(6 downto 0));end as_7447;architecture a1 of as_7447 isbeginwith num selectdout<="1111110" when "0000", "0110000" when "0001","1101101" when "0010","1111001" when "0011","0110011" when "0100",end a1;6:DQ:out std_logic;QB:out std_logic; end as_d;architecture rtl of as_d isbeginprocess(CP,R)beginif(CP' event and cp='1')thenif(R='0')thenQ<='0';QB<='1';ELSEQ<=D;end rtl;。
电路与电子技术课程设计病房呼叫系统设计
电路与电子技术课程设计病房呼叫系统设计在现代医疗体系中,病房呼叫系统扮演着至关重要的角色。
它不仅能够提高医疗服务效率,还能确保患者安全,使医护人员能够及时响应患者的需求。
在电路与电子技术课程设计中,病房呼叫系统是一个实践性强、应用广泛的项目。
本文将以“电路与电子技术课程设计病房呼叫系统设计”为主题,深入探讨病房呼叫系统的设计与实现。
一、病房呼叫系统的基本原理1. 试题:什么是病房呼叫系统?答案:病房呼叫系统是一种通信设备,用于患者与医护人员之间的通信。
患者可以通过按下呼叫按钮或使用语音通话等方式,向医护人员发出呼叫信号,医护人员接收到信号后,可以及时响应并提供必要的医疗服务。
2. 试题:病房呼叫系统的主要组成部分有哪些?答案:病房呼叫系统的主要组成部分包括呼叫按钮、信号处理器、显示器、语音通话设备等。
呼叫按钮是患者发出呼叫信号的装置,信号处理器负责处理患者的呼叫信号,显示器用于显示患者的呼叫信息,语音通话设备则用于实现患者与医护人员之间的语音通话。
二、病房呼叫系统的设计与实现1. 试题:如何设计病房呼叫系统?答案:设计病房呼叫系统需要考虑以下方面:-系统功能的确定:明确病房呼叫系统需要实现的功能,如呼叫按钮的信号处理、显示器的信息显示、语音通话的实现等。
-系统架构的设计:确定病房呼叫系统的整体架构,包括硬件和软件的设计。
硬件设计涉及到电路的搭建和组件的选择,软件设计涉及到程序的开发和调试。
2. 试题:在病房呼叫系统的设计与实现中,需要注意哪些关键技术?答案:在病房呼叫系统的设计与实现中,需要注意以下关键技术:-电路设计:设计合适的电路,确保系统能够稳定工作。
-编程与调试:编写程序并进行调试,确保系统能够按照预期运行。
-系统的可靠性和稳定性:考虑系统的可靠性和稳定性,确保系统能够长时间稳定运行。
三、病房呼叫系统的应用与评估1. 试题:病房呼叫系统在哪些场景下尤为重要?答案:病房呼叫系统在以下场景下尤为重要:-紧急情况:患者遇到紧急情况时,可以通过病房呼叫系统及时向医护人员发出求助信号。
电路与电子技术课程设计病房呼叫系统设计
病房呼叫系统是医院中非常重要的设备,能够帮助患者及时呼叫护士或医生,并提高医护人员的工作效率。
在电路与电子技术课程设计中,设计一个功能完善的病房呼叫系统需要考虑到系统的稳定性、实用性和可靠性。
下面将详细介绍病房呼叫系统的设计方案。
一、系统结构设计病房呼叫系统主要由呼叫按钮、显示屏、警报器、控制器和接收器等组成。
患者可以通过呼叫按钮发出呼叫信号,显示屏显示呼叫信息,警报器发出响声提醒护士或医生,控制器实现信号处理和指令传输,接收器负责接收呼叫信号并触发相应操作。
二、硬件设计1. 呼叫按钮设计:呼叫按钮应设计为易于操作且防水防尘的按键,可以安装在患者床头或床侧。
2. 显示屏设计:显示屏可以显示患者的呼叫信息、房间号等,采用LED或液晶屏幕。
3. 警报器设计:警报器应具有清晰响亮的声音,以便医护人员及时响应。
4. 控制器设计:控制器负责处理呼叫信号和控制系统的各个部分,可以采用单片机或微处理器控制。
5. 接收器设计:接收器接收来自控制器的信号并触发相应的操作,如发出提醒音、显示呼叫信息等。
三、软件设计1. 系统逻辑设计:设计系统的逻辑框图,包括呼叫按钮触发、信号传输、显示信息等流程。
2. 用户界面设计:设计呼叫系统的用户界面,使医护人员能够清晰地看到患者的呼叫信息。
3. 报警处理设计:设计系统的报警处理机制,确保医护人员能够及时响应患者的呼叫。
四、系统功能设计1. 呼叫功能:患者按下呼叫按钮后,系统能够准确显示呼叫信息。
2. 提醒功能:系统能够发出清晰响亮的声音提醒医护人员。
3. 信息记录功能:系统能够记录呼叫信息,以便医院管理人员进行查询和统计。
五、系统测试与优化设计完成后,需要进行系统测试,包括功能测试、稳定性测试和可靠性测试。
根据测试结果对系统进行优化,确保系统能够正常运行并满足设计要求。
六、总结与展望通过电路与电子技术课程设计病房呼叫系统,不仅提升了学生的实践能力,还为医院提供了一套高效、可靠的呼叫系统。
电路与电子技术课程设计病房呼叫系统设计
设计一个病房呼叫系统涉及电路与电子技术,可以帮助医护人员及时响应病人的呼叫需求。
以下是一个简单的病房呼叫系统设计方案:
1. 病房呼叫按钮
-每个病床配备一个呼叫按钮,供病人按下呼叫医护人员。
-呼叫按钮可以是无线遥控式或有线连接到主控制台。
2. 主控制台
-主控制台位于护士站,用于接收病房呼叫信号并显示响应信息。
-主控制台可以是一个显示屏,显示哪个病房需要帮助或呼叫。
3. 呼叫信号传输
-使用适当的通信技术(如RF无线传输或有线传输)将病房呼叫信号传输到主控制台。
-确保信号的稳定性和可靠性,以便及时响应。
4. 响应机制
-医护人员在主控制台上看到病房呼叫信息后,可以通过系统中的按钮确认响应。
-系统可以记录呼叫时间和响应时间,以便后续评估和改进。
5. 语音提示或警报
-可以设计系统发出声音提示或警报,提醒医护人员有病人呼叫。
-语音提示可以包括病人所在病房号码或其他重要信息。
6. 电源供应
-确保系统的稳定供电,可以考虑备用电源或UPS系统以应对断电情况。
7. 数据记录与分析
-可以设计系统记录每次呼叫的时间、持续时间和响应时间,用于后续数据分析和改进。
-分析数据可以帮助优化医护资源分配和提升服务效率。
以上是一个简单的病房呼叫系统设计方案,设计时需要考虑病房布局、医护人员的实际工作流程和病人需求等因素,以确保系统能够有效地提高医疗服务的质量和效率。
EDA课程设计 病房呼叫系统
EDA课程设计报告——病房呼叫系统的设计一、设计说明:假设某医院有7个病房房间,每间病房门口设有呼叫显示灯,室内设有紧急呼叫开关,同时在护士值班室设有一个数码显示管,可对应显示病室的呼叫号码。
当病人按下紧急呼叫开关时,护士值班室的数码显示管可对应显示病室的呼叫号码,并且蜂鸣器发出警报声音一提醒医务工作人员。
总电路图:¸并且要求当“l”号病房的按钮按下时,无论其他病室的按钮是否按下,护士值班室的数码显示“1”,即l号病室的优先级别最高,其他病室的级别依次递减,7号病室最低,当7个病房中有若干个请求呼叫开关合上时,护士值班室的数码管所显示的号码即为当前相对优先级别最高的病室呼叫的号码,同时在有呼叫的病房门口的指示灯闪烁。
待护士按优先级处理完后,将该病房的呼叫开关打开,再去处理下一个相对最高优先级的病房的事务。
全部处理完毕后,即没有病室呼叫,此时值班室的数码管熄灭。
例如 :(1)闭合开关2,数码管显示“2”, 并且蜂呜器SP 令计算机上的扬声器发声。
00U3AU4AU5AU6AU7AU8A U9A X 1X 2X 3X 4X 5X 6X 7V1V2V3V4V5V6V7U11VCCU12U13BU15BU16BU17BU18BU19BU28BGNDU2AU14AU20AR9R10R11R12R13R14R15S1S2S3S4S5S6S7V9A1C2C3VCCR16U21(2)闭合开关2、4、7,由于病房的优先级从高到低依次为1、2、3、4、5、6、7,所以数码管显示2.(2)本设计中采用了8/3优先编码器74LS148N,74LS148N有8个数据端(0---7),3个数据输出端(A0---A1),1个使能输入端(EI:低电平有效),两个输出端(GS、EO)。
数据输出端A---C根据输入端的选通变化,分别输出000---111这0---7二进制码,经逻辑组合电路与74LS47D七段译码器/驱动器的数据输入端(A---C)相连,最终实现设计要求的电路功能,电路如图所示。
数字电路课程设计病房呼叫系统
课程设计报告设计题目:病房呼叫系统摘要本设计完成的是病房呼叫系统的功能。
该设计采用主从结构,监控机构放置在医生值班室内,当病床有呼叫请求时进行声光报警,并在显示器上显示病床的位置。
呼叫源(按钮)放在病房内,病人有呼叫请求时,按下请求按钮,提示闹铃响起,向值班室呼叫,并点亮相应床位的指示灯。
采用模块设计思想,分为四个主要功能模块:呼叫显示模块,优先选择模块,译码显示模块,以及呼叫模块。
这些模块共同工作完成本电路的功能实现。
本设计分为四个主要功能模块:呼叫显示模块,优先选择模块,译码显示模块,以及呼叫模块。
这些模块共同工作完成本电路的功能实现。
其中运用了8线—3线优先编码器74LS148来实现优先选择模块主要功能,其中运用自己设计的小规模逻辑门电路,7段字形译码器74LS47D和共阴极七段数码管来实现译码显示模块主要功能,运用555定时器来实现呼叫模块。
本论文阐述了如何利用数字电路的思想,以及应用MULTISIM7仿真软件设计病房呼叫系统,测试,并实现其功能。
关键词:病房呼叫系统,主从结构,数字电路目录摘要 (1)第1章概述 (3)第2章课程设计任务及要求 (4)2.1设计任务 (4)2.2设计要求 (4)第3章系统设计 (4)3.1方案论证 (4)3.2系统设计 (5)3.2.1结构框图及说明 (5)3.2.2系统原理图及工作原理 (7)3.3单元电路设计 (9)3.3.1单元电路工作原理 (9)3.3.2元件参数选择 (16)第4章软件仿真 (17)4.2仿真过程 (18)4.3仿真结果 (19)第5章安装调试 (22)5.1安装调试过程 (22)5.2 故障分析 (23)第6章结论 (24)6.1对于病房呼叫系统的仿真设计 (24)6.2对于数字式抢答器的安装调试 (24)第7章使用设备仪器清单 (25)参考文献 (25)收获、体会和建议 (25)第1章概述病房呼叫系统是病人请求值班医生或护士进行诊断或护理的紧急呼叫工具,可将病人的请求快速传送给值班医生或护士,是提高医院和病房护理水平的必备设备之一。
病房呼叫系统设计-图文
病房呼叫系统设计-图文以下是为大家整理的病房呼叫系统设计-图文的相关范文,本文关键词为病房,呼叫,系统,设计,图文,病房呼叫系统eDA,设计,报告,您可以从右上方搜索框检索更多相关文章,如果您觉得有用,请继续关注我们并推荐给您的好友,您可以在教育文库中查看更多范文。
《病房呼叫系统eDA》题目:学院:专业:班级:姓名:学号:设计报告病房呼叫系统设计电子信息与电气工程学院电子信息工程目录一、设计要求...........................................第2页二、病房呼叫系统设计背景及其研究意义......第2页三、设计思路..........................................第2页四、基本原理..........................................第3页五、设计内容及步骤.................................第3页六、对设计的体会与感想...........................第9页七、参考文献.. (10)-1-病房呼叫系统设计一、设计要求1、用1~6个开关模拟6个病房的呼叫输入信号,1号优先级最高;1~6优先级依次降低;2、用一个数码管显示呼叫信号的号码;没信号呼叫时显示0;有多个信号呼叫时,显示优先级最高的呼叫号(其它呼叫号用指示灯显示);3、凡有呼叫发出5秒的呼叫声;4、对低优先级的呼叫进行存储,处理完高优先级的呼叫,再进行低优先级呼叫的处理。
二、病房呼叫系统设计背景及其研究意义随着科学技术的发展,越来越多的科技设备应用到生活的方方面面,其中在医疗领域尤其多。
病房呼叫系统这个设计就是应用于医院的一个简单的系统模型,其目的是为了方便医护人员更好地照顾病人,提高工作效率。
病房呼叫系统的优先编码设置可以让相对更需要救助的病人第一时间得到救助,其蜂鸣器和数码管、等设置可以直观的提醒医护人员是否有病房呼叫及呼叫的病房号。
(整理)数字电路课程设计病房呼叫系统
课程设计报告题目:病房呼叫系统起止日期:自2011年12月19日至2011年12月30日信息科学与工程系系(部)学生姓名09电子科学与技术班级学号成绩指导教师(签字)2011 年 12 月 30 日课程设计任务书2011-2012学年第一学期系(部)信息科学与工程系专业电子科学与技术班级课程名称:数字电子技术设计题目:病房呼叫系统指导教师(签字):年月日教研室主任(签字):年月日目录1概述 (1)2方案的选择与论证 (1)3单元电路的设计和元器件的选择 (1)4系统电路总图及原理 (5)5经验体会 (7)参考文献 (8)附录A系统电路实物图 (9)附录B元器件清单 (10)1 概述本次课程设计选择的题目是病房呼叫系统。
类似系统在目前的医院里已经十分常见,几乎所有的病房里都配备的这样的紧急呼叫系统。
这些系统虽然出自不同的生产商,但往往都具备这样一些共同点,如:当病人呼叫时都可产生声或者光等信号提示并显示病人的编号、根据病人的病情来设置显示的优先级别以确保病情最重的病人最先得到医治等等。
这个系统是十分实用并且高效的,因而,这个课程设计题目是接近现实应用的,对于一个理工科的学生来说是有相当实际意义的,而且这个设计题目也是有趣的,是值得花时间甚至是大量时间反复推敲琢磨的。
2 方案的选择与论证2.1方案一:使用5个jk触发器对k1-k5这5路信号进行锁存,这时使用的是轻触开关,编码器用74LS148优先编码器,报警部分是2个555定时器组成的发生器。
2.2 方案二:不使用jk触发器对k1-k5这5路信号进行锁存,直接使用拨动开关对信号进行控制,编码器用74LS148优先编码器加一个HD74LS04非门,报警部分是用1个555定时器发声。
74LS148优先编码器产生的是一个BCD反码,需要加非门来转换成BCD码.病房呼救系统使用轻触开关时必须配合有锁存功能的芯片,但是考虑到我们几天的实际仿真结果和掌握的材料,我们略去了锁存按键信号部分,直接使用了拨动开关。
EDA课程设计——病房呼叫系统
课程设计说明书课程:EDA技术基础组号:B8组题目:病房呼叫系统组员:专业:电子信息科学与技术指导教师:2010年1月8日B8组整体设计报告目录一、课程设计思路 (1)1、设计题目 (1)2、设计要求 (1)3、设计想法 (1)二、课程设计过程 (2)1、模块分配 (2)2、模块具体设计 (2)三、课程设计综合介绍 (4)1、整体原理图 (4)2、引脚配置 (5)3、整体设计实现 (5)参考文献 (6)附件(病房呼叫系统整体程序) (7)一)、设计题目:病房呼叫系统二)、设计要求:1、用8个开关模拟8个病房的呼叫输入信号,1号优先级最高;1~8优先级依次降低;2、用一个数码管显示呼叫信号的号码;没信号时显示0;有多个信号呼叫时,显示优先级最高的呼叫号(其他呼叫用指示灯显示);用四个数码管显示呼叫等待时间(mm ss)。
3、凡有呼叫发出5秒的提示声;呼叫3分钟未处理输出报警信号。
发挥部分:对低优先级的呼叫进行存储,处理完高优先级的呼叫,再进行低优先级呼叫的处理。
三)、设计想法:1、整体设计思路:根据设计要求,我们将设计分为几个模块来设计,分别为:锁存模块、选优模块(对病房选优)、选优模块2(对复位选优)、计时模块、显示模块、蜂鸣模块。
2、整体设计流程:(1)、锁存器:对病房呼叫的信号进行存储并处理信号,需要用一个对所有的呼叫信号进行存储的锁存器。
(2)、数据选择器(选优):对发出呼叫的病房进行优先选择,选择优先级最高的一个病房号,病房号从1到8优先级一次降低。
(3)、数据选择器2(选优2):对时间控制信号进优先选择,这样就是的数码管显示器显示的时间为当前优先级最高的病房所呼叫的时间。
(4)、计时器:病房呼叫系统中要求凡有呼叫发出,呼叫3分种未处理输出报警信号,即要求一个模块对呼叫时间计时,因此我们设计一个分秒计时器,对呼叫时间计时。
实验箱中时钟频率为20MHZ,故计时部分需加入分频,我们使之为1s。
病房呼叫系统课程设计
课程设计报告课程名称数字电子技术题目名称病房呼叫系统专业班级电子Z081学号学生姓名指导教师\设计时间2011-1-21《数字电子技术课程设计》任务书一、课题名称:病房呼叫系统二、技术指标:1.用1~5个开关模拟5个病房的呼叫输入信号,1号优先级最高;1~5优先级依次降低;2、用一个数码管显示呼叫信号的号码;没信号呼叫时显示0;又多个信号呼叫时,显示优先级最高的呼叫号(其它呼叫号用指示灯显示);3.凡有呼叫发出5秒的呼叫声;4.对低优先级的呼叫进行存储,处理完高优先级的呼叫,再进行低优先级呼叫的处理(附加)。
三、设计要求:1. 课题方案及电路设计按课题的要求确定电路的组成方案,根据题目要求的逻辑功能进行电路设计,电路各个组成部分必须有设计说明,并用Protel软件画出电路原理图和PCB图。
2. 电路仿真①基于PROTEUS(或Multisim)的电路仿真。
用电路仿真软件PROTEUS(或Multisim)对手工设计好的电路进行仿真,根据仿真结果对设计的电路进行修改和完善。
②基于电子设计平台QuartusII以及大规模可编程逻辑器件FPGA/CPLD的自动化设计及硬件电路仿真。
利用电子开发设计平台QuartusII,采用原理图输入或VHDL文本输入的方法进行逻辑电路的自动化设计并进行软件仿真,满足设计要求后在EDA实验箱(PK-3)进行下载和硬件仿真。
3.硬件电路制作用中小规模数字集成电路实现设计的电路。
摘要为了给病人提供更好更快的服务,及时了解病人需求,病房呼叫便应运而生了。
本设计中,要实现一个具有优先级别的病房呼叫系统。
这里,通过一个选通电路,再经过74HC148优先编码器及7SEG-BCD和指示灯实现对呼叫病房的显示。
当有两个以上的病房进行呼叫时,优先级高的病房予以显示,其他呼叫用指示灯显示。
关键词:病房呼叫系统、优先编码、555目录1 设计内容及要求 (5)2 总体设计思路及设计方案 (5)3 各模块电路设计与实现 (6)3.1五路信号输入 (6)3.2五个闪烁灯电路 (7)3.3优先编码模块 (8)3.4译码显示模块 (9)3.5产生一个脉冲的电路 (10)3.6单稳态触发器 (11)4 总电路图 (11)4.1 用proteus画的总图 (12)4.2 用protel99画的总图 (13)4.3 用quatus画的总图 (14)5 仿真 (15)6 总结 (16)7 参考文献 (16)一设计内容及要求1.用1~5个开关模拟5个病房的呼叫输入信号,1号优先级最高;1~5优先级依次降低;2、用一个数码管显示呼叫信号的号码;没信号呼叫时显示0;又多个信号呼叫时,显示优先级最高的呼叫号(其它呼叫号用指示灯显示);3.凡有呼叫发出5秒的呼叫声;4.对低优先级的呼叫进行存储,处理完高优先级的呼叫,再进行低优先级呼叫的处理(附加)。
病房呼叫系统
燕山大学EDA课程设计报告书题目:病房呼叫系统一、设计题目及要求1.用1~5个开关模拟5个病房的呼叫输入信号,1号优先级最高;1~5优先级依次降低;2.用一个数码管显示呼叫信号的号码;没信号呼叫时显示0;又多个信号呼叫时,显示优先级最高的呼叫号,低级别呼叫号用LED指示灯显示;3.凡有呼叫发出2秒的呼叫声,然后重复播放如下一段音乐,用一个数码管显示乐谱;1155 665- 4433 221- 5544 332- 5544 332- 附音符频率表:音调频率(Hz)C(高音) 261.63x2B 493.88A 440.00G 392.00F 349.23E 329.63D 293.66C 261.634.设置护士按钮,按下一次,清除当前高优先级呼叫(即表示处理),并终止演奏。
5.有多个呼叫时,先对低优先级的呼叫进行存储,处理完高级别后,数码管显示低级别呼叫号,然后再行处理,依次类推。
二、设计过程及内容(包括○1总体设计的文字描述,即由哪几个部分构成的,各个部分的功能及如何实现方法;○2主要模块比较详尽的文字描述,并配以必要的图片加以说明,但图片数量无需太多)整体电路由病人呼叫护士处理模块(nuesecontrol)、优先选择模块(priority)、扫描电路模块、分频模块,以及呼叫2秒模块和自动演奏(automisic)模块。
总电路图如下:1.病人护士处理模块较为简单,首先是一个由D触发器构成的防抖电路,用于消除按键时的抖动。
然后再连一个D触发器,用于存储病人的信号;同时护士会有一个控制端,当病人信号处理后,护士通过nurse清零端给信号清零。
2.优先级模块是当有多个病房同时呼叫时,将会优先显示高级别信号。
所以用了一个74LS148优先编码器,再经过组合逻辑电路,得到所要的反码可以接在7448数码管编译出来。
因为1号病房优先级最高,而编码器是7N端优先级最高,并且是低电平有效。
下图则是将1号端出来的高电平信号经过反相器接在6N端,则1号的信号会优先处理,然后经过逻辑电路和数码管,便可显示数字1。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
EDA课程设计——病房呼叫系统课程设计说明书课程:EDA技术基础组号:B8组题目:病房呼叫系统组员:专业:电子信息科学与技术指导教师:2010年1月8日B8组整体设计报告目录一、课程设计思路 (1)1、设计题目 (1)2、设计要求 (1)3、设计想法 (1)二、课程设计过程 (2)1、模块分配 (2)2、模块具体设计 (2)三、课程设计综合介绍 (4)1、整体原理图 (4)2、引脚配置 (5)3、整体设计实现 (5)参考文献 (6)附件(病房呼叫系统整体程序) (7)一、课程设计思路一)、设计题目:病房呼叫系统二)、设计要求:1、用8个开关模拟8个病房的呼叫输入信号,1号优先级最高;1~8优先级依次降低;2、用一个数码管显示呼叫信号的号码;没信号时显示0;有多个信号呼叫时,显示优先级最高的呼叫号(其他呼叫用指示灯显示);用四个数码管显示呼叫等待时间(mm ss)。
3、凡有呼叫发出5秒的提示声;呼叫3分钟未处理输出报警信号。
发挥部分:对低优先级的呼叫进行存储,处理完高优先级的呼叫,再进行低优先级呼叫的处理。
三)、设计想法:1、整体设计思路:根据设计要求,我们将设计分为几个模块来设计,分别为:锁存模块、选优模块(对病房选优)、选优模块2(对复位选优)、计时模块、显示模块、蜂鸣模块。
2、整体设计流程:(1)、锁存器:对病房呼叫的信号进行存储并处理信号,需要用一个对所有的呼叫信号进行存储的锁存器。
(2)、数据选择器(选优):对发出呼叫的病房进行优先选择,选择优先级最高的一个病房号,病房号从1到8优先级一次降低。
(3)、数据选择器2(选优2):对时间控制信号进优先选择,这样就是的数码管显示器显示的时间为当前优先级最高的病房所呼叫的时间。
(4)、计时器:病房呼叫系统中要求凡有呼叫发出,呼叫3分种未处理输出报警信号,即要求一个模块对呼叫时间计时,因此我们设计一个分秒计时器,对呼叫时间计时。
实验箱中时钟频率为20MHZ,故计时部分需加入分频,我们使之为1s。
(5)、显示器:用一个数码管显示呼叫信号的号码,用四个数码管显示呼叫等待时间(mm ss),设计一七段数码显示器,数码片选为低电平有效,扫描信号定为1KHZ。
二、课程设计过程一)、模块分配:锁存模块:选优模块、对复位选优模块:计时模块:显示模块:连接模块、蜂鸣器模块二)、模块具体设计1.锁存模块:由于有8个病房所以设计了8个输入信号且高电平时为信号输入,另外考虑到时间模块显示的是当前等待时间,所以小组讨论后决定时间显示当前等待时间为最好,所以在锁存模块,把复位加到锁存模块,高电平的时候表示复位不工作,低电平的时候表示复位。
锁存器的一个输入信号与LED灯相连,使得有呼叫信号时,与病房相对应的灯亮。
另外一个相同的输出信号连接选优器,对信号进行选优,还有一个相同输出信号控制计时模块中的SP信号。
2.选优模块:由设计要求,数码管要显示优先级最高的病房的呼叫信号,所以我们须得对病房呼叫信号进行选优,还考虑到对时间的优先级的问题,所以设计了两个优先输出信号。
程序功能部分按优先病房号顺序依次输出BCD码代表的1、2、3、4、5、6、7、8.3.选优2:考虑到复位键一一对应的问题,我们的时间模块又只用了一个,显示当前最优先病房的等待时间,所以选优2模块连在选优模块的后面以及和8个位宽的复位信号相连,然后通过选优模块,使得输出地复位信号为当前最优先的病房所对应的复位信号。
锁存器模块的一个输出信号也在这时进行选优,选出来的优先级最高的信号与时间模块中的SP信号对应。
4.计时模块:由设计要求计时用四个数码管显示mmss, 所以时间方面采用的是以秒进位,实验箱中的时间频率为20MHZ,所以选择了0:20000000即一秒的分频,另外由于有呼叫信号时,SP=1,我们得立即计时,所以定义了每个1秒之内出现一个上升沿,当上升沿到来时时间加计1s,另外mmss之中前一个m代表的是分的十位,后一个m代表的是分的个位,前一个s代表的是秒的十位,后一个s代表的是秒的个位。
5.显示模块:显示模块所要显示的就是优先级最高的呼叫病房的号码以及呼叫等待的时间mmss,所以在模块的设计当中,我们用中间的六个数码管依次显示当前最优先呼叫病房号,分的十位,分的个位,再一个数码管显示一横杠,和秒计位区分开来。
在依次是秒的十位,秒的个位。
6.连接模块:由于各个模块成功之后进行顶层设计时,时间模块和蜂鸣器模块的位宽不相等,故我设计了一个连接模块,使得两模块能够顺利衔接起来。
连接模块的输出部分和时间模块的mmss各部分相互对应,模块输出部分位宽的15-12位与记秒的个位的3-0位对应,位宽的11-8位与记秒的十位的3-0相对应,位宽的7-4位与记分的个位的3-0相对应,位宽的3-0位与记分的十位的3-0位相对应。
7.蜂鸣器模块:考虑到计时后发出5秒的提示声以及灯亮3分钟后进行报警,所以我设计的报警器模块和时间的链接模块是联系起来的,当输入为0000 0001 0000 0000表示的是1秒,0000 0010 0000 0000表示的是2秒,以此类推,当表示的时间是1-5秒时令蜂鸣器响,此时输出为低电平,表是的是蜂鸣器工作。
当时间在6秒到3分钟之间的时候,编写程序另输出为高电平,此时蜂鸣器不工作。
超过三分钟时再令蜂鸣器工作5秒,进行报警工作,此时已经达到设计要求。
三、课程设计综合介绍我们对这个模块刚开始设计了和现在不同的方案,然后顶层设计时发现并不好实现,而且连接之后模块也比较复杂,所以我们重新思考之后就有了现在模块的初稿,但是在顶层设定好之后,跑实验箱是显示的结果并不如预期的,多次调试没出结果之后,我选择了排除错误,首先从自身下手,我把顶层的连接改成了用系统框图表示,选它的优点是比较直观,设想正确的话基本上不会出现什么错误,所以,当问题再次出现时我考虑到了每个模块的逻辑问题,经过一个一个找出现的问题,从时间模块的SP的高低电平的修改,在到蜂鸣器和时间表示对应的修改,在到对选优模块最后执行语句YOU归零的修改,解决了计时器一直计时、蜂鸣器不工作、病房显示号不归零等问题,终于圆满的完成了实验的要求。
一)、病房呼叫系统框图如下:引脚配置如图:二)、综合引脚配置如下:三)、整体设计实现描述:实验箱上有8个7段数码管、16个用户LED 灯(8个大LED灯,8个小LED灯)、16个开关量输入端口、8个拨码开关、蜂鸣器等。
工程引脚锁定下载完后,将其下载进FPGA中,进行硬件测试。
具体实现如下:实验箱中有8个7段数码管,我们只用到了其中的6个,除前两个外从左到右分别显示:病房号码、minitue2、minitue1、——(横杠)、second2、 second1。
对应病房号指示灯我们用8个小LED。
接通电源,计时程序已下载进实验箱,蜂鸣器开始时不响,6个数码管显示000--00,拨码开关从SW1-SW7依次表示的是病房号1-7,当按下拨码开关SW1时表示2号病房开始计时,蜂鸣器接着响5秒钟然后不响,到时间记为三分钟时又开始报警。
当同时按开关SW2与SW3时,病房号显示的还是2,因为病房2的优先级比病房三的要高,另外病房相应的拨码开关打开后,相应的指示灯也开始亮,小灯从左到右依次显示优先级从低到高的8个病房的呼叫情况。
我们的实验的一个特色是设置了8个复位信号,我们主要考虑到一个实际问题,每一个复位键对应了当时优先级最高的一个病房的灯控和时间控制,当护士去处理优先级最高病房的呼叫信号时,按下复位键,发出一个确知信号:有护士已经去处理这件事情了。
而一个复位键相较之的缺点是,当有多个呼叫信号时,按下复位键所有的信号均清零了。
参考文献1)FPGA实验指导书(5万门).doc2)EDA技术与VHDL 清华大学出版社黄继业3)4)(VHDL_与数字电路设计5)硬件语言描述与数字逻辑电路设计侯伯亨、顾新编著)附件:病房呼叫系统整体程序一、锁存器LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY SUOCUNQI ISPORT(REST:IN STD_LOGIC_VECTOR(7 DOWNTO 0);SIN:IN STD_LOGIC_VECTOR(7 DOWNTO 0);SOUT1:OUT STD_LOGIC_VECTOR(7 DOWNTO 0);SOUT2:OUT STD_LOGIC_VECTOR(7 DOWNTO 0);SOUT3:OUT STD_LOGIC_VECTOR(7 DOWNTO 0)); END SUOCUNQI;ARCHITECTURE bhv OF SUOCUNQI ISSIGNAL SOUT:STD_LOGIC_VECTOR(7 DOWNTO 0);BEGINPROCESS(REST,SIN)BEGINIF REST(0)='1' AND SIN(0)='0' THEN SOUT(0)<='1';ELSE SOUT(0)<='0';END IF;IF REST(1)='1' AND SIN(1)='0' THEN SOUT(1)<='1';ELSE SOUT(1)<='0';END IF;IF REST(2)='1' AND SIN(2)='0' THEN SOUT(2)<='1';ELSE SOUT(2)<='0';END IF;IF REST(3)='1' AND SIN(3)='0' THEN SOUT(3)<='1';ELSE SOUT(3)<='0';END IF;IF REST(4)='1' AND SIN(4)='0' THEN SOUT(4)<='1';ELSE SOUT(4)<='0';END IF;IF REST(5)='1' AND SIN(5)='0' THEN SOUT(5)<='1';ELSE SOUT(5)<='0';END IF;IF REST(6)='1' AND SIN(6)='0' THEN SOUT(6)<='1';ELSE SOUT(6)<='0';END IF;IF REST(7)='1' AND SIN(7)='0' THEN SOUT(7)<='1';ELSE SOUT(7)<='0';END IF;END PROCESS;SOUT1<=SOUT;SOUT2<=SOUT;SOUT3<=SOUT;END ARCHITECTURE bhv;二、选优模块LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY XUANYOU ISPORT(SOUT:IN STD_LOGIC_VECTOR(7 DOWNTO 0);YOU1:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);YOU2:OUT STD_LOGIC_VECTOR(3 DOWNTO 0)); END XUANYOU;ARCHITECTURE bhv OF XUANYOU ISSIGNAL YOU:STD_LOGIC_VECTOR(3 DOWNTO 0); BEGINPROCESS(SOUT,YOU)BEGINIF SOUT(0)='1' THEN YOU<="0001";ELSE IF SOUT(1)='1' THEN YOU<="0010";ELSE IF SOUT(2)='1' THEN YOU<="0011";ELSE IF SOUT(3)='1' THEN YOU<="0100";ELSE IF SOUT(4)='1' THEN YOU<="0101";ELSE IF SOUT(5)='1' THEN YOU<="0110";ELSE IF SOUT(6)='1' THEN YOU<="0111";ELSE IF SOUT(7)='1' THEN YOU<="1000";ELSE YOU1<="0000";END IF;END IF;END IF;END IF;END IF;END IF;END IF;END IF;END PROCESS;YOU1<=YOU;YOU2<=YOU;END ARCHITECTURE bhv;三、计时选优模块LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY XUANYOU2 ISPORT(REST:IN STD_LOGIC_VECTOR(7 DOWNTO 0);SOUT3:IN STD_LOGIC_VECTOR(7 DOWNTO 0);YOU1:IN STD_LOGIC_VECTOR(3 DOWNTO 0);ZQ:OUT STD_LOGIC;LJ:OUT STD_LOGIC);END XUANYOU2;ARCHITECTURE bhv OF XUANYOU2 ISBEGINPROCESS(YOU1)BEGINIF YOU1="0001" THEN LJ<=REST(0);ELSE IF YOU1="0010" THEN LJ<=REST(1);ELSE IF YOU1="0011" THEN LJ<=REST(2);ELSE IF YOU1="0100" THEN LJ<=REST(3);ELSE IF YOU1="0101" THEN LJ<=REST(4);ELSE IF YOU1="0110" THEN LJ<=REST(5);ELSE IF YOU1="0111" THEN LJ<=REST(6);ELSE IF YOU1="1000" THEN LJ<=REST(7);END IF;END IF;END IF;END IF;END IF;END IF;END IF;END IF;END PROCESS;PROCESS(SOUT3)BEGINIF YOU1="0001" THEN ZQ<=SOUT3(0);ELSE IF YOU1="0010" THEN ZQ<=SOUT3(1);ELSE IF YOU1="0011" THEN ZQ<=SOUT3(2);ELSE IF YOU1="0100" THEN ZQ<=SOUT3(3);ELSE IF YOU1="0101" THEN ZQ<=SOUT3(4);ELSE IF YOU1="0110" THEN ZQ<=SOUT3(5);ELSE IF YOU1="0111" THEN ZQ<=SOUT3(6);ELSE IF YOU1="1000" THEN ZQ<=SOUT3(7);END IF;END IF;END IF;END IF;END IF;END IF;END IF;END IF;END PROCESS;END ARCHITECTURE bhv;四、时间模块LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALLUSE IEEE.STD_LOGIC_UNSIGNED.ALLENTITY TIME ISPORT(REST,SP,CLK :IN STD_LOGIC;SECOND1,SECOND2,MINITUE1,MINITUE2:OUTSTD_LOGIC_VECTOR(3 DOWNTO 0));END TIME;ARCHITECTURE ONE OF TIME ISSIGNAL TIMECLK,MINI:STD_LOGIC;SIGNAL SEC1,SEC2:STD_LOGIC_VECTOR(3 DOWNTO 0);SIGNAL MINI1,MINI2:STD_LOGIC_VECTOR(3 DOWNTO 0);BEGINMINITUE1(3 DOWNTO 0)<=MINI1(3 DOWNTO 0);MINITUE2(3DOWNTO 0)<=MINI2(3 DOWNTO 0);SECOND1(3 DOWNTO 0)PROCESS(CLK,SP)V ARIABLE CNT:INTEGER RANGE 0 TO 20000000;--分频1SBEGINIF CLK'EVENT AND CLK='1'AND SP='1' THEN CNT:=CNT+1;IF CNT<10000000 THEN TIMECLK<='1';ELSIF CNT<20000000 THEN TIMECLK<='0';ELSE CNT:=0;TIMECLK<='0';END IF;END IF;END PROCESS;--------------PROCESS(TIMECLK,REST) --计时部分程序BEGINIF(REST='0') THENMINI2 <="0000"; MINI1 <="0000"; SEC2<="0000"; SEC1<="0000";ELSIF (TIMECLK'EVENT AND TIMECLK='1')THEN --检验时钟上升沿IF SEC1<"1001"THEN SEC1<=SEC1+1;ELSESEC1<="0000";IF SEC2<"0101"THEN SEC2<=SEC2+1;ELSESEC2<="0000";IF MINI1<"1001"THEN MINI1<=MINI1+1;ELSEMINI1<="0000";IF MINI2<"0101"THEN MINI2<=MINI2+1;ELSEMINI2<="0000";END IF;END IF;END IF;END IF;END IF;END PROCESS;END ONE;五、连接模块LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY SQU ISPORT(SECOND1:IN STD_LOGIC_VECTOR(3 DOWNTO 0);SECOND2:IN STD_LOGIC_VECTOR(3 DOWNTO 0);MINITUE1:IN STD_LOGIC_VECTOR(3 DOWNTO 0);MINITUE2:IN STD_LOGIC_VECTOR(3 DOWNTO 0);JISHI:OUT STD_LOGIC_VECTOR(15 DOWNTO 0));END SQU;ARCHITECTURE ONE OF SQU ISBEGINJISHI(15 DOWNTO 12)<=SECOND1;JISHI(11 DOWNTO 8)<=SECOND2;JISHI(7 DOWNTO 4)<=MINITUE1;JISHI(3 DOWNTO 0)<=MINITUE2;END ARCHITECTURE ONE;六、蜂鸣模块LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY FENGMING ISPORT(BCD:IN STD_LOGIC_VECTOR(15 DOWNTO 0);MING:OUT STD_LOGIC);END FENGMING;ARCHITECTURE bhv OF FENGMING ISSIGNAL ING:STD_LOGIC;BEGINPROCESS(BCD)BEGINIF BCD="0000000000000000" THEN ING<='1';ELSE IF BCD="0001000000000000" THEN ING<='0';ELSE IF BCD="0010000000000000" THEN ING<='0';ELSE IF BCD="0011000000000000" THEN ING<='0';ELSE IF BCD="0100000000000000" THEN ING<='0';ELSE IF BCD="0101000000000000" THEN ING<='0';ELSE ING<='1';IF BCD="0000000000110000" THEN ING<='0';ELSE IF BCD="0001000000110000" THEN ING<='0';ELSE IF BCD="0010000000110000" THEN ING<='0';ELSE IF BCD="0011000000110000" THEN ING<='0';ELSE IF BCD="0100000000110000" THEN ING<='0';END IF;END IF;END IF;END IF;END IF;END IF;END IF;END IF;END IF;END IF;END IF;MING<=ING;END PROCESS;END ARCHITECTURE bhv;七、显示模块USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;ENTITY DISPLAY ISPORT(CLK:IN STD_LOGIC;SECOND1,SECOND2,MINITUE1,MINITUE2:INSTD_LOGIC_VECTOR(3 DOWNTO 0);YOU:IN STD_LOGIC_VECTOR(3 DOWNTO 0);--显示病房DISP:OUT STD_LOGIC_VECTOR(7 DOWNTO 0);--显示代码LEDCS:OUT STD_LOGIC_VECTOR(7 DOWNTO 0)--数码管片选);END DISPLAY;ARCHITECTURE ONE OF DISPLAY ISSIGNAL CLK_1K:STD_LOGIC;SIGNAL DATA:STD_LOGIC_VECTOR(3 DOWNTO 0);BEGINCLK_1KHZ:PROCESS(CLK)--产生1k的扫描信号V ARIABLE CNT:INTEGER RANGE 0 TO 20000;BEGINIF RISING_EDGE(CLK)THEN CNT:=CNT+1;IF CNT<10000THEN CLK_1K<='1';ELSIF CNT<20000THEN CLK_1K<='0';ELSE CNT:=0;CLK_1K<='0';END IF;END IF;END PROCESS;PROCESS (CLK_1K) --显示V ARIABLE CNT2:STD_LOGIC_VECTOR(3 DOWNTO 0);V ARIABLE CNT3:INTEGER RANGE 0 TO 2;V ARIABLE CNT:INTEGER RANGE 0 TO 2500000;BEGINIF CLK_1K'EVENT AND CLK_1K='1'THEN CNT2:=CNT2+1;IF CNT2="0001"THENLEDCS<="00010000";DATA<=MINITUE2;ELSIF CNT2="0010" THENLEDCS<="00001000";DATA<=MINITUE1;ELSIF CNT2="0011" THENLEDCS<="00000100";DATA<="1010";ELSIF CNT2="0100" THENLEDCS<="00000010";DATA<=SECOND2;ELSIF CNT2="0101" THENLEDCS<="00000001";DATA<=SECOND1;ELSIF CNT2="0110" THENLEDCS<="00100000";DATA<=YOU;CNT2:="0000";END IF;END IF;END PROCESS;PROCESS(DATA)BEGINCASE DATA ISWHEN "0000"=>DISP<="11000000";--0WHEN "0001"=>DISP<="11111001";--1WHEN "0010"=>DISP<="10100100";--2WHEN "0011"=>DISP<="10110000";--3WHEN "0100"=>DISP<="10011001";--4WHEN "0101"=>DISP<="10010010";--5WHEN "0110"=>DISP<="10000010";--6WHEN "0111"=>DISP<="11111000";--7WHEN "1000"=> DISP <="10000000";--8WHEN "1001"=> DISP <="10010000";--9WHEN "1010"=> DISP <="10111111";--间隔横杠WHEN "1011"=> DISP <="10111111";--间隔横杠WHEN "1100"=> DISP <="11111111";--超出范围就不显示停住,直到正确为止WHEN OTHERS=>NULL; ---千万注意!!!!!!不能为11111111,否则出错,会有空显示产生END CASE;END PROCESS;END ONE;LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;ENTITY XITONG ISPORT ( SIN_AIN: IN STD_LOGIC_VECTOR(7 DOWNTO 0);RST_AIN:IN STD_LOGIC_VECTOR(7 DOWNTO 0);CLK_AIN:IN STD_LOGIC;MING_OUT: OUT STD_LOGIC;SCOUT: OUT STD_LOGIC_VECTOR(7 DOWNTO 0);LEDCS_OUT: STD_LOGIC_VECTOR(7 DOWNTO 0);DISP_OUT:STD_LOGIC_VECTOR(7 DOWNTO 0);END XITONG;ARCHITECTURE F1 OF XITONGCOMPONENT SUOCUNQIPORT(REST:IN STD_LOGIC_VECTOR(7 DOWNTO 0);SIN:IN STD_LOGIC_VECTOR(7 DOWNTO 0);SOUT1:OUTSTD_LOGIC_VECTOR(7 DOWNTO 0);SOUT2:OUTSTD_LOGIC_VECTOR(7 DOWNTO 0);SOUT3:OUTSTD_LOGIC_VECTOR(7 DOWNTO 0));END COMPONENT;COMPONENT XUANYOUPORT(SOUT:IN STD_LOGIC_VECTOR(7 DOWNTO 0);YOU1:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);YOU2:OUT STD_LOGIC_VECTOR(3 DOWNTO 0));END COMPONENT;COMPONENT XUANYOU2PORT(REST:INSTD_LOGIC_VECTOR(7 DOWNTO 0);SOUT3:INSTD_LOGIC_VECTOR(7 DOWNTO 0);YOU1:INSTD_LOGIC_VECTOR(3 DOWNTO 0);ZQ:OUT STD_LOGIC;LJ:OUT STD_LOGIC);END COMPONENT;COMPONENT TIMEPORT(REST,SP,CLK :IN STD_LOGIC; SECOND1,SECOND2,MINITUE1,MINITUE2: OUT STD_LOGIC_VECTOR(3 DOWNTO 0)); END COMPONENT;COMPONENT SOUPORT(SECOND1:INSTD_LOGIC_VECTOR(3 DOWNTO 0);SECOND2:INSTD_LOGIC_VECTOR(3 DOWNTO 0);MINITUE1:INSTD_LOGIC_VECTOR(3 DOWNTO 0);MINITUE2:INSTD_LOGIC_VECTOR(3 DOWNTO 0);JISHI:OUTSTD_LOGIC_VECTOR(15 DOWNTO 0)); END COMPONENT;COMPONENT FENGMINGPORT( BCD:IN STD_LOGIC_VECTOR(15DOWNTO 0);MING:OUT STD_LOGIC);END COMPONENT;COMPONENT FENGMINGPORT(CLK:IN STD_LOGIC;SECOND1,SECOND2,MINITUE1,MINITUE2: IN STD_LOGIC_VECTOR(3 DOWNTO 0); YOU:IN STD_LOGIC_VECTOR(3 DOWNTO 0);--显示病房DISP:OUT STD_LOGIC_VECTOR(7 DOWNTO 0);--显示代码LEDCS:OUT STD_LOGIC_VECTOR(7 DOWNTO 0)--数码管片选);END COMPONENT;SIGNAL A: STD_LOGIC_VECTOR(7 DOWNTO 0);SIGNAL B: STD_LOGIC_VECTOR(15 DOWNTO 0);SIGNAL C: STD_LOGICSIGNAL D: STD_LOGICSIGNAL E: STD_LOGIC_VECTOR(7 DOWNTO 0);SIGNAL F: STD_LOGIC_VECTOR(3 DOWNTO 0);SIGNAL G:STD_LOGIC_VECTOR(3 DOWNTO 0);SIGNAL H:STD_LOGIC_VECTOR(3 DOWNTO 0);SIGNAL I:STD_LOGIC_VECTOR(3 DOWNTO 0);SIGNAL J: STD_LOGIC_VECTOR(3 DOWNTO 0);SIGNAL K:STD_LOGIC_VECTOR(3 DOWNTO 0);BEGINU1:SUOCUNQI PORT MAP(SIN=>SIN_AIN,OUT1=>A,REST=>RST_ AIN,SOUT3=>E,SOUT2=>SCOUT);U2: XUANYOU PORT MAP( SOUT=>A,YOU1=>F,YOU2=>G);U3: XUANYOU2 PORT MAP ( LJ=>C,ZQ=>D,REST=>RST_AIN,SOUT3=>E ,YOU1=>F); U4: TIME PORT MAP (REST=>C, SP=>D,CLK=>CLK.AIN,SECOND1=>H,SECOND2=>I,MINITUE1=>J,MINITUE2=>K) ;U5:SOU PORT MAP ( JISHI=>B,SECOND1=>H,SECOND2=>I,MINITUE1=>J,MINITUE2=>K);U6: FENGMING PORT MAP(BCD=>B,MING=>,MING_OUT);U7:DISPLAY PORT MAP (DISP=>DISP_OUT,LEDCS=>LEDCS_OUT,Y OU=>G,CLK=>CLK_AIN,SECOND1=>H,SECOND2=> I,MINITUE1=>J,MINITUE2=>K);END ARCHITECTURE F1;LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY TIME ISPORT(REST,SP,CLK :IN STD_LOGIC;TI:OUT STD_LOGIC;SECOND1,SECOND2,MINITUE1,MINITUE2: OUT STD_LOGIC_VECTOR(3 DOWNTO 0)); END TIME;ARCHITECTURE ONE OF TIME IS SIGNAL TIMECLK:STD_LOGIC; SIGNAL CLK12:STD_LOGIC_VECTOR(3 DOWNTO 0);SIGNALSEC1,SEC2:STD_LOGIC_VECTOR(3 DOWNTO 0);SIGNALMINI1,MINI2:STD_LOGIC_VECTOR(3DOWNTO 0);BEGINMINITUE1(3 DOWNTO 0)<=MINI1(3 DOWNTO 0);MINITUE2(3 DOWNTO 0)<=MINI2(3 DOWNTO 0);SECOND1(3 DOWNTO 0)<=SEC1(3 DOWNTO 0);SECOND2(3 DOWNTO 0)<=SEC2(3 DOWNTO 0);PROCESS(CLK,SP)V ARIABLE CNT:INTEGER RANGE 0 TO 120; --分频1SBEGINIF (CLK'EVENT AND CLK='1') AND SP='1' THEN CNT:=CNT+1;IF CNT<60 THEN TIMECLK<='1';ELSIF CNT<120 THEN TIMECLK<='0';ELSE CNT:=0;TIMECLK<='0';END IF;END IF;IF(REST='0') THENMINI2 <="0000"; MINI1 <="0000"; SEC2<="0000"; SEC1<="0000";ELSEIF (TIMECLK'EVENT AND TIMECLK='1') THEN --检验时钟上升沿IF SEC1<"1001"THEN SEC1<=SEC1+1;ELSESEC1<="0000";IF SEC2<"0101"THEN SEC2<=SEC2+1;ELSESEC2<="0000";IF MINI1<"1001"THEN MINI1<=MINI1+1; ELSEMINI1<="0000";IF MINI2<"0101"THEN MINI2<=MINI2+1;ELSEMINI2<="0000";END IF;END IF;END IF;END IF;END IF;END IF;END PROCESS; END ONE;。