跑表表设计报告
秒表(跑表)-课程设计-单片机
第一章设计的内容、要求及目的1.1设计内容本课题以单片机为核心,要求设计和制作一个秒表,实现计时功能。
开始时,全显示“0”,自行设计按钮,要求第1次按下按钮后就开始计时,计时精度最好为0.01秒;第2次按按钮后,计时停止,此时可读取计时数值;第3次按按钮后,计时归零,全显示“0”。
此为基本要求,学生可根据自己的创意添加相应扩张,完善或者添加部分功能。
1.2设计要求1.设计方案要合理、正确;2.系统硬件设计;3.完成必要元器件选择;4.系统软件设计及调试;5.写出设计报告。
1.3目的及意义要求通过本次课程设计加深对单片机课程的全面认识复习和掌握,对单片机课程的应用进一步的了解。
同时要求掌握定时器、外部中断的设置和编程原理。
此外,还希望通过此次课程设计能够将单片机软硬件结合起来,对程序进行编辑,校验。
该实验通过单片机的定时器/计数器定时和计数原理,设计简单的秒表计时系统,拥有正确的计时、暂停、清零功能,并同时可以用数码管或者液晶显示器显示,在现实生活中应用广泛,比如说体育项目中的跑步竞赛计时,因此具有现实意义。
第二章 系统方框图与工作原理2.1 系统方框图秒表系统主要由单片机、显示电路,控制按钮等组成。
硬件系统比较简单,其系统方框图如下:图1 系统构成框图2.2 系统工作原理秒表系统比较简单,因此,实施了相应扩展,显示器采用了液晶显示器取代LED 数码管显示器。
同时,添加一个控制按钮,实现可计10个计数值的功能。
主要硬件部分与逻辑功能如下: 秒表系统主要用到的是一个内部定时器,如T0,每隔10MS 产生一次中断,实现秒表计时的“跑动”;一个外部中断,用于控制按钮,控制的实现由软件判定来实现;此外,就是一个显示电路,由内存读取需要显示的数值传输给显示器循环显示。
主要逻辑和控制均由51单片机的软件编程来实现。
对于内部定时器,为了保证计时要求,保证计时精度,步进定为10MS,51单片机系统内部定时器T0产生中断,定时时间为10MS,每次中断重写计数初值。
基于FPGA数字跑表实验报告
Logo Sina :@Jennifer-tthFPGA设计实践报告[基于FPGA数字跑表]专业:电子信息工程班级:电子xxx班学生学号:xxxx学生姓名:xxxx指导教师:xxxx完成时间:2022年4月27日数字跑表设计一、设计概述FPGA(Field-Programmable Gate Array),即现场可编程门阵列,它是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。
它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。
Verilog HDL语言是在C语言的基础上发展而来的。
从语法结构上看,Verilog HDL继承和借鉴了C语言的很多语法,两者有许多的相似之处,但Verilog HDL作为一种硬件描述语言,还是有本质的区别。
即可适用于综合的电路设计,也可胜任电路和系统的仿真;能在多层次上对所设计的系统加以描述,从开关级、门级,寄存器传输级到行为级等都可以担任,而且没规模限制;灵活多变的电路描述风格,可进行行为描述,也可进行结构描述等,应用十分的广泛。
QuartusⅡ软件是Atlera的CPLD/FPGA集成开发软件,具有完善的可视化设计环境,并具有标准的EDA工具接口,基于QuartusⅡ进行EDA设计开发需要以下步骤:设计输入、编译、仿真、编程与验证等。
本次通过Verilog HDL语言编写一个具有“百分秒、秒、分”计时功能的数字跑表,可以实现一个小时内精确至百分之一秒的计时器。
数字跑表的显示可以通过编写数码管显示模块程序来实现,设计实现计数及进位的功能,通过几个always模块的设计实现一个特定用途的电子产品------数字跑表。
二、设计功能数字跑表是生活中常见的一种电子产品,特别应用与体育比赛中。
本数字跑表是通过按键来控制计时的开始和结束,一个是复位控制按键,用于设计跑表为初始零状态;另一个则是开始/停止控制按键,在复位控制无效的情况下,按一下开始/停止键则计时器开始计时,再按一下则暂停计时,再按一下则继续计时。
fpga跑表课程设计
fpga跑表课程设计一、课程目标知识目标:1. 理解FPGA的基本原理,掌握跑表设计的基础知识;2. 学会使用硬件描述语言(如VHDL/Verilog)进行FPGA设计;3. 掌握跑表设计的时序逻辑和组合逻辑,并能够运用到实际设计中;4. 了解FPGA设计中时钟信号的重要性,学会合理分配时钟资源。
技能目标:1. 能够运用所学知识,独立完成FPGA跑表的设计与仿真;2. 培养学生的实际操作能力,提高问题分析和解决能力;3. 学会使用相关软件工具(如Quartus、Vivado等)进行FPGA设计;4. 培养学生的团队协作能力,提高项目完成效率。
情感态度价值观目标:1. 培养学生对电子设计及FPGA技术的兴趣,激发创新意识;2. 培养学生严谨、认真的学习态度,养成良好的学术道德;3. 引导学生关注社会发展,认识到FPGA技术在现代科技中的重要性;4. 培养学生克服困难的意志,提高面对挑战的自信心。
本课程针对高年级学生,结合学科特点,注重理论与实践相结合。
通过本课程的学习,使学生能够掌握FPGA跑表设计的核心知识,提高实际操作能力,培养学生的创新意识和团队协作精神,为今后从事相关领域工作打下坚实基础。
二、教学内容1. FPGA基础知识:- FPGA原理与结构;- 硬件描述语言基础(VHDL/Verilog);- 常用FPGA开发工具介绍。
2. 跑表设计原理:- 跑表功能需求分析;- 时序逻辑与组合逻辑设计;- 时钟信号分配与设计。
3. FPGA跑表设计实践:- 设计流程与方法;- 代码编写与仿真;- FPGA配置与测试。
4. 教学大纲安排:- 第一周:FPGA原理与硬件描述语言基础;- 第二周:跑表设计原理与时序逻辑设计;- 第三周:组合逻辑设计及时钟信号分配;- 第四周:FPGA跑表设计实践与项目指导;- 第五周:项目验收与评价。
教学内容关联教材章节:- 第一章:FPGA原理与结构;- 第二章:硬件描述语言基础;- 第三章:数字电路设计;- 第四章:FPGA设计实例。
报告中的图表和图像排版技巧
报告中的图表和图像排版技巧一、图标的选择和设计1. 图表的类型选择在报告中,图表的类型选择要根据所要展示的数据类型以及目标受众的需求来确定。
常见的图表类型包括柱状图、折线图、饼图、雷达图等。
柱状图适合比较不同组的数据,折线图适合展示趋势和变化,饼图适合显示占比关系等。
根据具体情况选择最适合的图表类型,才能更好地呈现数据。
2. 清晰简洁的图表设计图表的设计要确保清晰简洁,避免过多的装饰和复杂的表格线条。
图表的标题应简洁明了,注释要清晰易懂,数据标签要以合适的字号和颜色进行标注。
另外,坐标轴的刻度要合理,不宜过密或过稀疏,以便读者能够更好地理解数据。
二、图表和图像的排版1. 图表和文本的关联在报告中,图表和图像应与相应的文字内容相互关联,以便读者更好地理解数据和图像所表达的意思。
可在文字描述之后插入图表,然后在图表上方或下方进行简要解读和分析。
同时,图表和图像的编号和标题要清晰可辨,以便读者能够直观地找到相关内容。
2. 图表和图像的排列方式在报告中,多个图表和图像的排列方式要有选择地进行设计,以便更好地呈现数据。
可以采用并行排列、瀑布排列、同一行或同一列的方式进行布局。
同时,图表和图像的大小要适中,尽量避免过大或过小的情况,以免影响阅读体验。
三、配色和标注技巧1. 合适的配色方案图表和图像的配色方案要考虑到色彩的鲜明度、对比度和可读性等因素。
要尽量避免过于艳丽或过于暗淡的颜色,以免影响数据的展示效果。
一般来说,可使用明亮的颜色来突出重要的数据,使用暗淡的颜色来表示其他辅助信息。
2. 标注的注意事项在图表和图像中的标注要简洁明了,避免过多的注释和文字说明。
可以采用箭头、线段和颜色等方式来进行标注,以便读者能够更好地理解图像的含义。
另外,要确保标注的字号和颜色与图表和图像相协调,不要影响可读性。
四、图表和图像的引用和分析1. 图表和图像的引用在报告中,引用图表和图像时要注明来源,以确保知识产权的尊重和准确引用。
用户使用报告范文
用户使用报告范文尊敬的用户:您好!感谢您对我们产品的使用,并愿意与我们分享您的使用体验和建议。
为了更好地改进我们的产品和服务,我们非常重视您的宝贵意见。
首先,我很高兴地告诉您,您所使用的产品是我们公司最新推出的一款智能手表。
这款手表集时尚、便捷和实用于一身,具备多种功能和智能化的设计,旨在为用户提供更好的使用体验。
一、外观设计手表采用精致的设计风格,外观简约、时尚。
手表表身采用高品质的材料制作,手感舒适,同时表带采用随意调节的设计,可以适应不同用户的需求。
手表显示屏采用高清晰度的显示技术,让信息展示更加清晰明了。
整体设计简约大方,颇有现代感。
二、功能体验1.时间显示:手表的时间显示功能非常准确,支持12小时制和24小时制的显示方式,同时显示日期和星期,极大地方便了日常生活中的时间管理。
2.健康监测:手表配备有心率传感器和计步器,可以实时监测心率和计算步数,并将相关数据同步到手机App上,帮助用户科学健康地管理自己的身体。
3.通知提醒:手表可以与用户的手机连接,通过智能提醒功能,可以及时接收到手机上的来电、短信、社交软件消息等提醒,避免错过重要信息。
4.运动模式:手表内置多种运动模式,如跑步、骑行、登山等,用户可以根据自己的需求选择相应的模式,手表会根据模式采集相应的数据,提供运动过程中的实时数据和统计报告,方便用户健康锻炼。
5.音乐播放:手表支持音乐播放功能,用户可以通过手表控制手机上的音乐播放模块,随时随地享受音乐的声音。
在使用过程中,我感受到产品有以下几个优点:1.多功能性:手表集成了多种实用功能,不仅提供时间显示,还有健康监测、通知提醒、运动模式等等,满足了用户在不同场景下的需求。
2.便捷性:通过与手机的连接,手表可以实现多种通信和控制功能,方便了用户的生活。
特别是通知提醒功能,让用户能够在不取出手机的情况下及时获取信息。
3.健康管理:手表具备健康监测功能,可以实时监测心率和计算步数,帮助用户科学健康地管理自己的身体。
简易秒表报告
《简易秒表》设计报告学院:信息学院专业:集成电路设计与集成系统班级:10集成姓名:熊梓淋学号:1015251032一方案设计1.1设计要求①要求设计一个跑步计时用秒表,可以分圈计时,精度为00.01秒;②显示位数为8位,前4位为本圈用时,后4位为总时间;③有启动、暂停、停止、清零功能;④其他可自由发挥。
1.2 系统分析这次设计的电路主要用于实现秒表的功能,并在数秒显示管上显示出来,同时还要求能过分圈计时,要实现分圈这个功能就需要设定两个时间——时间1和时间2,让时间1控制总的时间,时间2控制分圈时间,开始时让两个时间同时计数,当我们按下分圈那个按键时,时间2返回从零开始计数,而时间1则不变仍然计数,这样就达到了分圈的效果。
1.3系统方案方案一:利用逻辑电路设计一个简易的秒表,该电路主要可分为5个模块:毫秒脉冲发生器、计数器、译码显示器、时序控制器、存储电路。
采用555振荡器作为脉冲发生器,计数器和控制电路是系统的主要部分,计数器可用加(减)的计数方法,控制电路具有直接控制计数器的启动计数、暂停、清零、等功能。
显示电路则由译码器和数码显示管实现。
设计框图如二所示方案二:利用STC89C51单片机设计简易秒表。
单片机软件灵活并且具有强大的可修改度。
利用软件编程可实现控制部分和计数部分。
只需在单片机外围添加开关控制电路和数码显示部分就能实现该设计的要求。
如图三所示1.4 方案论证方案一是用逻辑门搭建的,基本也能满足电路设计要求,但要做好是有很大的难度的,线非常之多,元件分散、多,容易把线接错,而且浪费;所以考虑采用了方案二以STC89C51芯片为中心控制系统,实现显示、键盘控制、响铃等功能,大大提高了系统的智能化,也使得系统所测结果精度大大提高。
二硬件设计2.1 控制芯片的介绍STC89C51单片机的外型如图四所示。
单片机可分为通用型和专用型,种类繁多。
这里我们主要介绍STC89C51是一种低功耗、高性能、超抗干扰的单片机,指令代码完全兼容传统的8051单片机。
数字跑表设计
西南科技大学设计报告课程名称:基于FPGA的现代数字系统设计设计名称:基于原理图的数字跑表设计姓名:学号:班级:指导教师:西南科技大学信息工程学院一、实验目的1、设计一个数字跑表,具有复位、暂停、秒表等功能二、实验原理1.完成一个具有数显输出的数字跑表计数器设计,原理图如下图所示。
、数字跑表计数器原理图任务分析:输入端口:1)复位信号CLR,当CLR=1,输出全部置0,当CLR=0,系统正常工作。
2)暂停信号PAUSE,当PAUSE=1,暂停计数,当PAUSE=0,正常计数。
3)系统时钟CLK,CLK=50MHz 输出端口:数码管驱动----DATA1,位宽14位,其中,DATA1[7:0]是数码管显示值,DATA1[14:8]是数码管控制端口屏蔽未用端口---ctr,位宽是2,将未用的两个数码管显示关闭(1)跑表的计时范围为0.01s~59min59.99s,计时精度为10ms;(2)具有异步复位清零、启动、计时和暂停功能;(3)输入时钟频率为100Hz;(4)要求数字跑表的输出能够直接驱动共阴极7段数码管显示.按照自顶向下设计,应该分为以下模块:分频----将下载板上50MHz时钟分频为周期是0.01秒的时钟,提供给百分计数计数1----百分计数,输入周期是0.01秒的时钟,计数,满100进位,注意个位,十位的不同生成计数2---60进制计数器,输入百分位,或者秒位的进位,计数,满60向高位进位,注意个位,十位的不同生成数码管显示控制----驱动数码管数据,显示控制端口。
三、实验步骤1、数码管显示驱动模块的设计(1)建立工程:file->New Project,并注意器件、EDA工具的正确选择(2)建立新Verilog HDL模块编辑窗口,选择资源类型为Verilog Module,并输入合法文件名,在文本编辑窗口输入代码。
(3)执行综合得到综合后的电路,并进行功能时序仿真。
2.计数器模块的设计设计步骤同数码管的设计,并完成模块的设计输入、综合、功能仿真。
电子技术综合实验报告-秒表
流 交 习 学 供 仅
程序 1)分频程序
module fenpin100Hz(clk,hz,hz_1k); input clk; output reg [3:0]hz;
output reg [15:0]hz_1k;
if(hz_1k==47999) hz_1k<=0; else hz_1k<=hz_1k+1;
always @(negedge hz_1k[16]) if(hz==9)
hz<=0; else
结果用 8 只数码管显示;有两个按钮开关,一个按钮使秒表复位,
另一个按钮控制秒表的启动/暂停。
下图显示了该跑表前面板的基本排布构想。
Stopwatch
POWER
RESET
RUN/STOP
(五)实验内容:Verilog 的语法,建模,设计时间测量的方法:
使用 现在时间测量一般采用数字计器来进行
(六) 实验原理
module jishu_jinwei(hz,rst,stop,n_1,n_2,n_3,n_4,n_5,n_6); input hz; input stop; input rst; output reg [3:0]n_1,n_2,n_3,n_4,n_5,n_6;
wire [3:0]cnt_1,cnt_2,cnt_3,cnt_4,cnt_5,cnt_6; *//Jinwei U2、U3、U5、U9 是十进制位,jinwei_6 U4、U6 是六进制位//*
input [3:0]num; output reg [6:0]led; 译码仿真图
用
使
பைடு நூலகம்
粗大运动功能测试(GMFM88项)报告单
粗大运动功能测试(GMFM88项)报告单姓名:性别:年龄:出生体重:KG 孕周:周检查日期:家长姓名:住址:电话:病历号:项目(区) 结果(原始分) 参考值(原始分) 存在的主要问题A 仰卧位和俯卧位B 坐位C 爬与跪D 站与立E 行走与跑跳注:本测试主要测定的是儿童的粗大运动,测试的是完成动作的多少而不是完成动作的质量。
操作者:粗大运动功能测试(GMFM88项)是为儿童脑瘫设计的,主要用于测量脑瘫儿童的粗大运动功能状况随时间或由于干预而出现的运动功能改变。
同时可以掌握患儿运动障碍的程度,对患儿的身体功能及能力进行量化,为制定康复治疗方案提供依据,同时为判断疗效评估提供客观的指标。
粗大运动功能测试(GMFM88项)适用于运动功能相当于正常5岁儿童运动能力以内的儿童。
粗大运动功能测试(GMFM88项)分为5个能区:A区卧位与翻身(17项)B区坐位(20项)C区爬和跪(14项)D区站立(13项)E区走跑跳(24项)每项评定指标的评分0-3分,评定结果包括各个能区的原始分,百分比及总百分比。
具体标准:0分:动作还没有出现的迹象。
1分:动作开始出现—只完成整个动作的10%以下。
2分:部分动作完成—可以完成整个动作的10%-90%。
3分:整个动作可以全部完成。
当无法完成分数时,按照较低的等级给分。
评定结果:原始分:5个能区的原始分。
各能区百分比:能区原始分与各自总分相除,乘以100%。
总百分比:5个能区原始分与各自总分相除,乘以100%之和除以5。
目标区分值:选定目标能区原始分与各自总分相除,乘以100%之和再除以选定能区数。
粗大运动功能(GMFM88项)测评量表序号及内容0 1 2 3A 仰卧位1.头正中四肢保持对称2.双手纠正到正中位,手指相接触3.抬头45度4.右髋膝关节正常范围内屈曲5.左髋膝关节正常范围内屈曲6.右上肢过中线抓玩具7.左上肢过中线抓玩具8.向右翻身成俯卧位9.向左翻身成俯卧位俯卧位10.竖直抬头11.肘支撑头抬高肘伸展胸部离开床面12.右肘支撑躯体朝前完全伸左手13.左肘支撑躯体朝前完全伸右手14.向右翻身成仰卧位15.向右翻身成仰卧位16.使用四肢向右旋转90度17.使用四肢向左旋转90度总分序号及内容0 1 2 3B 坐位18.仰卧位,拉患儿呈坐位,头部控制好19.仰卧位向右侧翻身, 坐起20.仰卧位向左侧翻身,坐起21.坐于垫子上检查者支撑胸部头部直立3秒22.坐于垫子上检查者支撑胸部头部直立10秒23.用上肢支撑坐于垫子上,保持5秒钟24.没有上肢支撑保持坐位3秒25.身体前倾触摸玩具,没有上肢支持返回直立坐位26.触摸右后方45度放置的玩具,返回开始姿势27.触摸左后方45度放置的玩具,返回开始姿势28.右侧横坐没有上肢支持保持5秒29.左侧横做没有上肢支持保持5秒30.坐于垫子上有控制的降低身体成俯卧位31.坐位身体向右侧旋转成四点支撑位32.足向前坐于垫子上,身体向左侧旋转成四点支撑位33. 坐于垫子上不使用上肢帮助旋转90度34.坐椅凳上上肢及双足不支持保持10秒35.站立位落坐小凳子上36.从地面落坐小凳子上37.从地面落坐大椅子上总分序号及内容0 1 2 3C 爬与跪38.俯卧位向前方腹爬米39.四点支撑位用手与膝支撑身体10秒40.四点位不用上肢支撑成坐位41.俯卧位成四点位手和膝承重42.四点位右上肢向前伸出手的位置高于肩部43.四点位左上肢向前伸出手的位置高于肩部44.四点位向前四点爬或蛙跳米45.四点位向前交替性四点爬米46.四点位用手和膝四点爬上四级台阶47.四点位用手和膝退着爬下四级台阶48.坐垫子上上肢帮助成跪立位后不用上肢保持10秒49.跪立位上肢帮助右跪立位后无上肢支撑保持10秒50.跪立位上肢帮助左膝立位后无上肢支撑保持10秒51.跪立位不用上肢支撑向前跪走10步总分序号及内容0 1 2 3D 站立52.地面抓着大凳子拉自己站起53.站立不用上肢支持保持3秒54.站立单手抓椅子右脚抬起保持3秒55.站立单手抓椅子左脚抬起保持3秒56.站立不用上肢支持保持20秒57.站立左脚抬起不用上肢支持保持10秒58.站立右脚抬起不用上肢支持保持10秒59坐在小凳子上不用上肢帮助站起60.跪立位从右侧半跪位站起不用上肢61.跪立位从左侧半跪位站起不用上肢62.站立位有控制的降低身体坐到地面上无上肢帮助63.站立位成蹲位无上肢帮助64.站立位无上肢帮助从地面取物返回成站立位总分序号及内容0 1 2 365.站立两手扶大长凳向右侧横走5步66.站立两手扶大长凳向左侧横走5步E 走跑跳67.站立牵两手向前走10步68.站立牵单手向前走10步69.站立向前走10步70.站立向前走10步停止转180度返回71.站立后退10步72.站立两手提大物向前走10步73.站立在20厘米间隔的平行线之间向前走10步74.站立在2厘米宽的直线上向前走10步75.站立右足领先跨越膝盖高度的木棒76.站立左足领先跨越膝盖高度的木棒77.站立跑米停止返回78.站立右脚踢球79.站立左脚踢球80.站立两脚同时跳高30厘米81.站立两脚同时跳远30厘米82.右足站立60厘米直径的圆内右侧单足跳10次83.左足站立60厘米直径的圆内左侧单足跳10次84.扶一侧栏杆站立抓扶手上四级台阶交替性出足85.扶一侧栏杆站立抓扶手下四级台阶交替性出足86.站立上四级台阶交替出足87.站立下四级台阶交替出足88.站在15厘米高的台阶两足同时跳下总分。
跑步实验成果报告表格
跑步实验成果报告表格实验目的:探究不同跑步速度对身体耗氧量的影响。
实验设备与材料:1. 心率监测仪2. 血氧饱和度监测仪3. 测试使用的跑步机4. 实验参与者5. 计时器实验步骤:1. 将跑步机设置为不同速度档位,分别记为A、B、C。
2. 为每位参与者提供心率监测仪和血氧饱和度监测仪,确保能够实时监测参与者的心率和血氧水平。
3. 让参与者逐个进行跑步实验,他们可以根据自己的舒适程度选择使用的速度档位。
每次跑步时间均为10分钟。
4. 在实验进行期间,记录每位参与者的心率和血氧水平。
实验结果:实验参与者1:速度档位: A跑步时长: 10分钟心率(bpm): 160血氧饱和度(%): 95实验参与者2:速度档位: B跑步时长: 10分钟心率(bpm): 150血氧饱和度(%): 96实验参与者3:速度档位: C跑步时长: 10分钟心率(bpm): 140血氧饱和度(%): 97实验分析与讨论:根据实验结果,我们可以得出以下结论:1. 较高速度档位的跑步速度会导致心率增加,说明身体需要更多的氧气供应来满足运动需要。
2. 血氧饱和度随着跑步速度的增加而略微增加,这可能是由于更快的呼吸速度和更强的肺部换气能力导致的。
3. 跑步速度与身体的耗氧量之间存在一定的正相关关系,即速度越高,身体所需的氧气量越大。
总结:本实验的目的是研究不同的跑步速度对身体耗氧量的影响。
通过测试实验参与者的心率和血氧水平,我们发现了速度和身体耗氧量之间的正相关关系。
这一研究结果对于制定科学的跑步训练计划和提高跑步效果具有重要意义。
第1单元 第4课《用图表制作健康报告--数据的表达与预测》教案【清华大学版2024】《信息科技》四上
思考:你觉得一份完整的健康报告中需要哪些数据?你会分别用什么图表来展示这些数据呢?1.基本身体数据:身高、体重、BMI(身体质量指数)——折线图。
2.血液检查结果:血糖、胆固醇、血细胞计数——条形图。
3.运动与活动:每日步数和活动量——面积图。
4.心理健康:情绪变化——情绪曲线图。
2.播放视频。
新知讲解:板书课题。
一、数据的表达数据可视化可以更好地展示数据背后的信息,是理解数据的重要步骤之一。
利用图表直观地表达数据并进行数据分析,在生活中有着广泛应用。
常见的图表有折线图、条形图等,它们在呈现数据时各有特点。
折线图折线图是常用的统计图表的一种,通过在数据点之间连线而产生,因此叫作折线图(见图1.4.1)。
折线图可以显示随时间而变化的连续数据,所以非常适用于表示在相等时间间隔下数据的变化趋势。
条形图条形图是用宽度相同的条形的高度或长短来表示数据多少的图形(见图1.4.2)。
条形图可以横置或纵置,纵置时也称为柱形图(见图1.4.3)。
数据可视化的应用在生活中,数据是多样的。
在表达大量的、多种类的数据时,不局限于使用某一种图表,也不一定是传统意义上的折线图、条形图等。
只要能够把枯燥无味的数据通过图形化设计表现出来,达到一种更加精准和高效的数据分析和表达,都可以称为数据可视化。
比如,导航软件中的交通线路图(见图1.4.4)及台风模拟路径图(见图1.4.5)都是数据可视化的常见应用形式。
制作图表创建并打开一个新的Excel表格,在表格中填入数据,例如,小清过去5年的身高,如图1.4.6所示。
选中表格内容,单击上方的“插入”,选择“图表”,如图1.4.7所示。
选择“折线图”,表格中就会生成一个折线图,如图 1.4.8和图1.4.9所示。
单击图表标题,将标题修改为“小清过去五年的身高变化”,如图 1.4.10所示。
课堂活动统计全班同学的 BMI指数,根据偏瘦、正常、超重的人数制作一幅条形图。
根据题目先将每种情况的人数算出,再将表格转换成条形图。
数字秒表报告
题目: 数字秒表的设计目录摘要 (1)1 设计内容及要求 (2)1.1 计目的及主要任务 (2)1.1.1 设计目的 (2)1.1.2 设计任务及主要技术指标 (2)1.2设计思想 (2)2 设计方案 (3)2.1两种设计方案 (2)2.2 方案选择 (2)3 设计原理及单元模块设计 (4)3.1 设计原理及方法 (4)3.2 单元模块设计 (4)3.2.1 输入模块的设计 (4)3.2.2 单片机控制模块的设计 (5)3.2.3 输出模块的设计 (5)4 电路的仿真与分析 (6)5 硬件调试 (7)6 心得体会 (8)参考文献 (9)附录一:C语言数字秒表程序 (10)附录二:元件清单 (14)附录三:总电路图 (15)摘要数字电子技术应该是一门理论和实践相结合的课程,在这次课程设计中,我选择了《数字秒表》这样一个题目,希望在自己尝试亲自设计电路的过程中,更加深刻的理解数电中各种集成电路的应用。
这个电路的核心是STC89C52单片机。
硬件组成:输入设备为按键(键盘),输出为四位共阳数码管,其中STC89C52单片机芯片用于处理输入的数字信号并输出数字信号。
软件部分是由C语言设计的控制程序。
Keil软件将设计好的C语言程序转换成hex文件,并通过ISP 通信接口下载端下载到单片机的EEPROM中,用来控制单片机的输出电平,进而控制数码管上显示的数字,从而实现数字秒表的功能。
关键词:STC89C52 单片机输入设备输出设备C语言程序数字秒表1 设计内容及要求1.1 设计的目的及主要任务1.1.1设计目的(1)学会用C语言设计方法设计具有一定功能的模块,并能运用图形设计方法完成顶层原理图的设计,并用Protues软件实现仿真。
(2)掌握数字秒表的主要功能及如何用单片机来实现。
1.1.2设计任务及主要技术指标(1)设计一个能测量8名运动员短跑成绩的数字秒表,有10个按键,其中一个为启动开关,一个为清零开关,其它八个作为记录开关,一个四位数码管输出,显示记录时间。
产品简介亮点总结报告范文(3篇)
第1篇一、前言随着市场竞争的日益激烈,产品在市场上的竞争压力越来越大。
为了在众多产品中脱颖而出,我们需要深入挖掘产品的亮点,提炼出具有竞争力的特点。
本报告旨在对某款产品进行详细的产品简介亮点总结,以便为市场推广和销售策略提供有力支持。
二、产品概述产品名称:XX智能手表产品类别:智能穿戴设备产品功能:健康监测、运动记录、智能提醒、信息通知、个性化定制等三、产品亮点总结1. 设计风格独特XX智能手表采用了简约时尚的设计风格,线条流畅,外观精致。
手表表盘采用圆形设计,表带采用亲肤材质,佩戴舒适。
此外,手表表盘有多种颜色可选,满足不同消费者的个性化需求。
2. 健康监测全面XX智能手表具备心率监测、血氧监测、睡眠监测、压力监测等功能,能够实时掌握用户的健康状况。
通过分析用户健康数据,为用户提供科学的健康建议,助力用户养成良好的生活习惯。
3. 运动记录精准XX智能手表内置多种运动模式,如跑步、骑行、游泳、瑜伽等,能够精准记录用户的运动数据。
手表内置GPS定位功能,方便用户查看运动轨迹。
同时,手表支持运动数据同步至手机APP,方便用户查看和分析运动数据。
4. 智能提醒贴心XX智能手表具备闹钟、日程提醒、天气提醒等功能,能够贴心地提醒用户重要事项。
此外,手表还支持微信、QQ等社交软件的通知提醒,让用户不错过任何重要信息。
5. 信息通知便捷XX智能手表支持手机来电、短信、社交软件消息等多种信息通知。
当手机有新消息时,手表会以震动或灯光闪烁的方式提醒用户,方便用户随时查看。
6. 个性化定制丰富XX智能手表支持个性化表盘、表带更换,用户可以根据自己的喜好进行定制。
此外,手表还支持个性化主题,如运动主题、商务主题等,满足不同场景下的需求。
7. 电池续航长XX智能手表采用低功耗设计,续航能力出色。
正常使用情况下,手表的续航时间可达一周以上,满足用户日常使用需求。
8. 智能防水XX智能手表具备IPX7级防水功能,可抵御日常生活中的水溅、洗手等场景,保护手表免受意外损害。
基于labview的秒表设计
北华航天工业学院课程设计报告(论文)设计课题:计时跑表专业班级:学生姓名指导教师:设计时间: 2014.9.2——9.11北华航天工业学院电子工程系Labview应用设计课程设计任务书指导教师:教研室主任:年月日注:本表下发学生一份,指导教师一份,栏目不够时请另附页。
课程设计任务书装订于设计计算说明书(或论文)封面之后,目录页之前。
目录一概述 (4)二方案设计及说明 (4)2.1 (4)2.2 (5)一、概述现今社会快速发展,各种各样的软件产品被开发出来,为人们的生活、工作提供便捷。
与此同时各类软件也深刻影响社会的发展。
在各类软件的开发中,精确的计时定时对软件功能的完整实现有着重大的影响,当今社会需要计时跑表的领域也越来越多,因此开发准确稳定的计时软件刻不容缓。
本次多功能秒表设计是基于LabVIEW 2013虚拟仪器平台,使用图形化编程语言,设计一个实例,它主要通过条件结构和移位寄存器来实现相应的秒表计时功能。
本次基于LabVIEW的秒表的设计具有定时精度高、占用系统资源少、软件开发周期相对较短、可移植性强、可以与其他软件无缝合成,功能扩展性强等特点,可以在各类软件中实现精确定时计时报警显示时间。
二、方案设计2.1计时跑表前面板和总程序框图如图11-0-1所示:图11-0-1计时跑表前面板图图11-0-2:总程序框图2.2 该计时跑表实现了开始,暂停,计次,退出等秒表相关功能,这些功能的具体实现的后台程序主要是由条件结构和移位寄存器组成。
1.通过移位寄存器和商与除数的共同作用完成了计时功能。
程序框图如图11-1所示。
2.第一个条件结构通过逻辑非的关系控制秒表执行的开始或暂停;第二个条件结构为整个程序提供了一个移位寄存器。
第三个条件结构在条件为真时通过给零和空字符串实现了清零的功能。
其程序框图如图11-2所示。
图11-2-1 条件结构为“真”时图11-2-2 条件结构为“假”时3.第四个条件结构为“真”时,通过连接字符串和换行常量共同完成了计次的功能,为“假“时,保持原来的记录。
跑步可行分析报告
跑步可行分析报告概述跑步作为一项广泛受欢迎的运动方式,受到了越来越多人的青睐。
本文将对跑步进行可行性分析,探讨跑步的益处、注意事项以及如何制定合理的跑步计划。
跑步的益处1. 增强心肺功能跑步是一种有氧运动,可以有效提高心肺功能,增强心血管系统的适应能力,降低患心血管疾病的风险。
2. 促进新陈代谢通过跑步可以促进新陈代谢,加速身体内部废物的排出,有助于维持身体的健康状态。
3. 塑造身材长期坚持跑步能有效燃烧体内多余脂肪,帮助塑造身材,提高身体的代谢率。
4. 缓解压力跑步是一种有助于释放压力和焦虑的运动方式,可以帮助缓解生活和工作压力,提升心理健康水平。
注意事项1. 注意预防运动损伤在跑步过程中,要注意选择合适的鞋子和跑步路线,避免因为错误的姿势或不合适的环境导致运动损伤。
2. 合理安排跑步时间跑步的时间选择应该避开高温时段,避免中暑或日晒对身体造成伤害。
建议选择清晨或傍晚时段进行跑步锻炼。
3. 适度运动在制定跑步计划时,要根据自身身体状况和运动水平制定合理的目标和计划,逐步提高运动强度,避免过度运动导致身体负荷过重。
制定合理的跑步计划1. 目标设定在开始跑步之前,要明确自己的目标是增强体能、减肥塑形还是缓解压力,根据不同的目标制定相应的训练计划。
2. 分阶段训练建议将跑步训练分为不同阶段,逐步提高跑步里程和速度,循序渐进地适应跑步运动,避免过度训练引发身体问题。
3. 合理安排休息在跑步训练中,充足的休息同样重要。
合理安排训练和休息时间,让身体得到充分恢复,避免出现过度疲劳。
结语跑步作为一种简单而有效的运动方式,对身体和心理健康都有着积极的影响。
通过制定合理的跑步计划,注意运动细节和安全事项,可以更好地享受跑步带来的健康益处。
希望本文提供的跑步可行分析报告能够帮助更多人正确地进行跑步锻炼,迈向更健康的生活。
1000m跑对心率影响的实验报告
1000m跑对心率影响的实验报告一、引言心率是指心脏每分钟跳动的次数,是反映心脏功能和运动状态的重要指标。
跑步是一种常见的有氧运动方式,对心率有一定的影响。
本实验旨在研究1000m跑对心率的影响,并探讨其变化规律。
二、实验设计与方法1. 实验对象本实验选取了20名健康的年轻成年人作为实验对象,确保实验结果的可靠性和可比性。
2. 实验仪器与材料(1)心率监测仪:用于实时监测实验对象的心率变化。
(2)计时器:用于准确计时实验对象完成1000m跑的时间。
3. 实验步骤(1)实验前准备:实验开始前,实验对象需要进行适当的热身运动,以提高身体的适应性和预防运动伤害。
(2)实验进行:实验对象在平坦的操场上完成1000m跑,实验人员使用计时器准确计时。
同时,心率监测仪实时记录实验对象的心率变化。
(3)实验后处理:实验结束后,对实验对象的跑步时间和心率数据进行统计和分析。
三、实验结果与分析1. 跑步时间实验对象的平均跑步时间为X分钟,最短时间为X分钟,最长时间为X分钟。
通过对跑步时间的统计分析,可以得出实验对象的跑步速度水平。
2. 心率变化实验过程中,心率监测仪记录了实验对象的心率变化情况。
统计分析结果显示,实验对象的心率在跑步过程中呈现出以下特点:(1)心率升高:实验对象的心率在跑步开始后迅速升高,随着跑步的进行,心率逐渐稳定在一个相对较高的水平。
(2)心率波动:在跑步过程中,心率会出现一定的波动,但整体趋势是保持较高的水平。
(3)心率恢复:实验对象完成跑步后,心率会逐渐恢复到静息状态下的水平。
四、讨论与结论1. 跑步对心率的影响根据实验结果分析,可以得出结论:1000m跑对心率有显著的影响,会导致心率升高并保持在一个相对较高的水平。
这是由于跑步是一种高强度的有氧运动,需要大量供氧和能量,心脏为了满足身体对氧气和营养的需求而加快跳动。
2. 心率变化规律实验结果显示,心率在跑步过程中呈现出升高、波动和恢复的规律。
FPGA数字跑表
电子信息工程专业FPGA与ASIC设计实践教程设计报告班级:电子信息工程1303班学号:201315110: 田佳鑫日期:2015年11月4日指导老师:何英昊目录1系统总体方案及硬件设计 (3)1.1设计容 (3)1.2 设计要求 (3)1.3 实现要求 (3)2各模块设计及电路图 (3)2.1设计项目简介 (3)2.2分块设计代码 (4)2.3总体框图设计 (7)2.4管脚锁定图 (8)3课程设计体会 (8)1系统总体方案及硬件设计1.1 设计容数字跑表电路1.2设计要求(1)跑表的计时围为0.01—59min59.99s。
(2)具有异步清零、启动。
计时和暂停功能。
(3)输入时钟频率为100Hz。
(4)要求数字跑表的输出能够直接驱动共阴极7段数码管。
1.3 实现要求(1)分析功能要求,划分功能模块。
(2)编写各模块的Verilog HDL语言设计程序。
(3)在QuartusⅡ软件或其他EDA软件上完成设计和仿真。
(4)根据实验装置上的CPLD/FPGA芯片,在适配时选择相应的芯片,将设计生成配置文件或JEDEC文件,然后将配置文件或JEDEC文件下载到实验装置上运行,操作实验装置上设定的功能开关,验证设计功能。
2各模块设计及电路图2.1 设计项目简介主控模块分别连接6个数码管显示模块和分频模块,分频模块给主控模块的计数器提供时钟源,主控模块在按键的控制下,在其中计数器的作用下输出给数码管显示装置,实现跑表功能。
2.2分块设计代码(1)分频模块:module fenpin(CLK,CLK2);//输入50MHz,输出分频到1Hzinput CLK;output CLK2;reg CLK2;reg[31:0] counter2;parameter N2=5000000; always(posedge CLK)beginif(counter2==250000)begincounter2<=0;CLK2<=~CLK2;endelsecounter2<=counter2+1;endendmodule(2)控制模块:module sz(clk,clr,pause,msh,msl,sh,sl,mh,ml); inputclk,clr;input pause;output[3:0]msh,msl,sh,sl,mh,ml;reg[3:0]msh,msl,sh,sl,mh,ml;reg1,2;always(posedgeclk or posedgeclr)beginif(clr)begin{msh,msl}<=8'h00;1<=0;endelseif(!pause)beginif(msl==9)beginmsl<=0;if(msh==9)beginmsh<=0;1<=1;endelsemsh<=msh+1;endelsebeginmsl<=msl+1;1<=0;endendalways(posedge1 or posedgeclr) beginif(clr)begin{sh,sl}<=8'h00;2<=0;endelseif(sl==9)beginsl<=0;if(sh==5)beginsh<=0;2<=1;endelsesh<=sh+1;endelsebeginsl<=sl+1;2<=0;endendalways(posedge2 or posedgeclr) beginif(clr)begin{mh,ml}<=8'h00;endelseif(ml==9)beginml<=0;if(mh==5)mh<=0;elsemh<=mh+1;endml<=ml+1;endendmodule(3)显示模块:module XS7D(DIN,DOUT);input [3:0]DIN;output [6:0]DOUT;reg [6:0]DOUT;always (DIN)begincase(DIN) 0:DOUT='b1000000;1:DOUT='b1111001;2:DOUT='b0100100;3:DOUT='b0110000;4:DOUT='b0011001;5:DOUT='b0010010;6:DOUT='b0000010;7:DOUT='b1111000;8:DOUT='b0000000;9:DOUT='b0010000; 10:DOUT='b0001000; 11:DOUT='b0000011; 12:DOUT='b1000110; 13:DOUT='b0100001; 14:DOUT='b0000110; 15:DOUT='b0001110; endcaseendendmodule2.3总体框图设计2.4管脚锁定图三、课程设计体会习制作数字跑表,我对于可编程逻辑器件有了更加深刻地体会。
学号显示EDA
学号显⽰EDA五⾢⼤学实验报告实验课程名称:电⼦系统EDA院系名称:信息学院专业名称:电⼦信息⼯程实验项⽬名称:基于原理图的跑表设计班级: 120703 学号: 50 报告⼈:⽜世伟⼀、实验⽬的1、练习使⽤ Verilog HDL 语⾔设计实现数字电路;2、练习利⽤ Verilog HDL 语⾔和状态机设计电路。
⼆、实验原理1、⽤数码管除了可以显⽰ 0~9 的阿拉伯数字外,还可以显⽰⼀些英语字母。
2、数码管由 7 段显⽰输出,利⽤ 7 个位的组合输出,就可以形成部分英语字母和 0~9 ⼗个数字的显⽰。
0~9 和常见字母的 7段显⽰关系如下图所⽰。
共阴段码共阳在共阴的相应段编码取反即可。
基于⼀位数码管的学号显⽰Verilog源代码module xue_hao_dis(out,clk,rst,co); //模块声明input clk,rst; //输⼊信号output reg co; //输出信号output reg [6:0] out; //输出信号reg [2:0] state; //中间变量parameter s0=3'b000,s1=3'b001,s2=3'b010,s3=3'b011; parameter s4=3'b100,s5=3'b101,s6=3'b110,s7=3'b111;always @(posedge clk or posedge rst)beginif(rst)begin state<=s0; endelsebegincase (state)s0: begin state<=s1; out<=7'b1001111; co<=0; ends1: begin state<=s2; out<=7'b0010010; co<=0; ends2: begin state<=s3; out<=7'b0000001; co<=0; end s3: begin state<=s4; out<=7'b0001111; co<=0; end s4: begin state<=s5; out<=7'b0000001; co<=0; ends5: begin state<=s6; out<=7'b0000110; co<=0; ends6: begin state<=s7; out<=7'b0100100; co<=0; ends7: begin state<=s0; out<=7'b0000001; co<=1; enddefault : begin state<=s0; endendcaseendendendmodule采⽤8个状态,显⽰12070350;仿真结果基于8个数码管的花样学号显⽰module xue_hao_huashi(clk,rst,out0,out1,out2,out3,out4,out5,out6,out7);//模块声明input clk,rst; //输⼊信号output reg[6:0] out0,out1,out2,out3,out4,out5,out6,out7; reg [3:0] state; //状态变量parameter s0=4'd0,s1=4'd1,s2=4'd2,s3=4'd3;parameter s4=4'd4,s5=4'd5,s6=4'd6,s7=4'd7;always@(posedge clk or negedge rst)beginif(!rst) //复位信号,关闭显⽰beginout0=7'b1111111;out1=7'b1111111;out2=7'b1111111;out3=7'b1111111;out4=7'b1111111; out5=7'b1111111;out6=7'b1111111;out7=7'b1111111;endelsecase(state) //状态跳变s0:begin out0=7'b1001111;state<=s1; ends1:begin out1=7'b1001111;out0=7'b0010010;state<=s2; ends2:begin out2=7'b1001111;out1=7'b0010010;out0=7'b0000001;state<=s3; end s3:begin out3=7'b1001111;out2=7'b0010010; out1=7'b0000001;out0=7'b0001111;state<=s4; ends4:begin out4=7'b1001111;out3=7'b0010010;out2=7'b0000001;out1=7'b0001111;out0=7'b0000001;state<=s5; end s5:begin out5=7'b1001111;out4=7'b0010010; out3=7'b0000001;out2=7'b0001111;out1=7'b0000001;out0=7'b0000110; state<=s6; ends6:begin out6=7'b1001111;out5=7'b0010010;out4=7'b0000001;out3=7'b0001111;out2=7'b0000001;out1=7'b0000110;out0=7'b0100100;state<=s7; ends7:begin out7=7'b1001111;out6=7'b0010010;out5=7'b0000001;out4=7'b0001111;out3=7'b0000001;out2=7'b0000110;out1=7'b0100100;out0=7'b0000001;state<=s0; enddefault:state<=0;endcaseendendmodule源码说明:·8个out对应8个数码管编号0-8·⾸先,将第⼀个数码管显⽰1,其他不显⽰将第⼆个数码管显⽰1,第⼀个数码管显⽰2将第三个数码管显⽰1,第⼆个数码管显⽰2,第⼀个数码管显⽰0 …以此类推,直⾄显⽰完学号。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
跑表表设计报告目录跑表表设计报告 (1)一、问题分析 (2)二、设计思路 (3)三、具体实现过程 (3)四、连线方式 (6)五、芯片的初始化 (8)六、个人学习感想 (9)七、程序 (9)摘要:本文通过8254,8255,8259三块芯片的编程,实现了跑表的功能。
本文采用47KHZ的输入时钟信号,通过8254的频率发生工作模式,产生周期为1ms的周期信号作为8259的中断信号(IRQ1)的输入,将脉冲信号按键是按下时的信号作为8259中断信号(IRQ0)的输入。
再通过实验板上的4块8255来控制跑表当前值的输出显示。
一、问题分析跑表要求第一次按下时跑表开始计时,第二次按下时跑表暂停,第三次按下时,跑表清零,第四次按下又开始计时,如此循环往复。
对于每次按键的按下实现跑表工作模式的切换,为此按键按下可以视为产生一个优先级最高的中断信号,而跑表要实现以1ms周期的不断刷新,那么需要采用8254来实现这个1ms的周期方波信号,同时要实现跑表计数的更新,即每1ms跑表的计数就会增加一,并通过8段LED显示出来,为此,可以将8254产生的周期方波信号作为8259的IRQ1中断信号。
对于输出显示当然是采用8259来控制。
图1 跑表功能要求二、设计思路本系统共有两个中断信号,并采用8259的全嵌套工作方式。
通过产生的中断信号IRQ0来确定跑表按下的次数,那么与IRQ0中断信号对应的中断程序主要的功能为确定按键按下的次数,即跑表所处的状态,。
与8254产生的IRQ1中断信号对应的中断处理程序主要是跑表计时数字的累加与调整,并判断跑表当前所处的状态,根据跑表所处的状态来决定跑表的输出形式。
对于跑表的现实输出,作者采用实验箱上4块8255来控制,通过试验箱上8个共阳极的8段LED来显示。
图2 跑表原理设计三、具体实现过程(1)跑表状态中断函数当脉冲触发键按下后,产生一个脉冲上升沿信号,触发中断,调用中断程序1,通过对设置的计数值的算数处理,用0,1,2分别表示按键按下3次,2次,1次。
用这些数字来表征跑表所处的状态:计时,暂停,清零。
其具体的编程流程图如下图图3 跑表状态切换设计(2)跑表计数值刷新并显示函数当8254每隔1ms后产生一个低电平,触发中断,当系统没有脉冲键按下,即没有优先级高的中断请求信号时,系统将响应该中断请求,并执行中断程序2。
中断程序而从功能上划分主要分为两个模块,第一个模块为跑表计数值的刷新;第二个为判断跑表状态,并执行相应的输出形式。
对于跑表计数值的刷新,当8254每产生一个中断请求信号,并得到响应后,跑表的毫秒计数值将得到加一的操作,通过图4可以看出跑表数值刷新的整个流程。
图4 跑表计数值的刷新当跑表数值的到处理后,程序将进入跑表状态的判断以及输出显示模块,在该模块,通过访问跑表状态寄存器的内容,做出判断,通过分支结构的方式来编程,实现跑表按其状态做出对应的输出显示形式。
图5 跑表输出形式四、连线方式5254的CS连接CS1(300H通道);采用计数器0,即GATE0接高电平5V,CLK0接时钟信号47KHZ,输出信号OUT0接8259的中断信号口IRQ1。
8259的CS连接CS4(360H通道),IRQ0接脉冲信号的低电平输出口,INT1接INTR,SP/1接高电平5V。
对于试验箱上4片8255,其内部线路已经将片选信号CS连接好了。
图6 8254及8259的连线方式图7试验箱8255的内部连线方式五、芯片的初始化(1)8254的初始化采用计数器0,工作于方式2,产生周期方波信号,采用47KHZ的时钟信号,为完成输出方波周期为1/100S,计数初值为470。
由于大于256,故采用高字节和低字节分别写入。
MOV AL,00110100B;MOV DX,30CHOUT DX,ALMOV DX,300HMOV AX,470;OUT DX,ALMOV AL,AHOUT DX,AL(2)8255的初始化4片8255的所有口都采用输出方式,且工作于方式0。
MOV DX,20CHMOV EAX,80808080HOUT DX,EAX(3)8259的初始化采用低电平触发,设中断类型号为40H-47H,采用全嵌套,一般结束方式 MOV AL,00010011BMOV DX,360HOUT DX,ALMOV AL,40HMOV DX,368HOUT DX,AL;写ICW2,MOV AL,01HOUT DX,AL;写ICW4,MOV DX,368HIN AL,DXAND AL,0FCHOUT DX,AL六、个人学习感想通过这学期对硬件技术的学习,个人觉得要对硬件的工作原理以及连接的电路图等要理解,实验室里面的补充材料上有很多表格,对于那些表格中所说的键特征值要明白是与其内部电路连接密切相关,学过电工的人都可以从它所给的特征值中推导出LED每段所连接的序号。
这门课给我的最大感受是在理解硬件连线以及工作的原理基础上不断实践,你就会有很多收获,针对本次的跑表设计,我在老师要求下,只用了一个按键,完成功能的设计,但是在实际操作中,有时往往会因为按键的操作快慢会导致整个系统的卡死,解决的办法是从新编译,对于出现这个问题,可能是由于在编程时对于脉冲按键的触发没有考虑其按键晃动以及按键松开,所以造成有时出现死机现象。
七、程序.486CODE SEGMENT USE16ASSUME CS:CODEORG 2000HJMP STARTINTQ EQU 40HSTATE DB 0LA DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90HSTART:MOV AX,CODEMOV DS,AXLEA SI,LA;对8255,8254,8259初始化;8254片选接300H,8259片选接360H;8255初始化MOV DX,20CHMOV EAX,80808080HOUT DX,EAX;8254初始化,选取计数器0,采用工作方式2MOV AL,00110100B;采用计数器0,工作于方式2,产生周期方波信号MOV DX,30CHOUT DX,ALMOV DX,300HMOV AX,470;定时1/100SOUT DX,ALMOV AL,AHOUT DX,AL;输出信号接IRQ0,作为中断的触发;8259初始化MOV AL,00010011B;低电平触发MOV DX,360HOUT DX,AL;写ICW1MOV AL,40HMOV DX,368HOUT DX,AL;写ICW2,中断类型号为40H-47HMOV AL,01HOUT DX,AL;写ICW4,设定为全嵌套,一般结束方式MOV DX,368H;改写OCW1,开放IRQ0,IRQ1;控制键的按下作为中断IRQ0的触发,8254的周期信号作为IRQ1的中断IN AL,DXAND AL,0FCHOUT DX,AL;填装中断向量表CLIMOV AX,0MOV DS,AXLEA AX,STATECMOV DS:[INTQ*4],AXMOV AX,SEG STATECMOV DS:[INTQ*4+2],AXLEA AX,RUNMOV DS:[INTQ*4+4],AXMOV AX,SEG RUNMOV DS:[INTQ*4+6],AXSTI;初始化跑表计数MOV BX,0MOV CX,0WT1:JMP WT1;等待中断;控制键的开关触控中断程序STATEC PROCPUSH BXMOV BL,3MOV AL,1ADD STATE,ALMOV AH,0MOV AL,STATEDIV BL;BL=3CMP AH,0JE INITIALJMP RINITIAL:MOV STATE,0R: MOV AL,20HMOV DX,360HOUT DX,AL;普通EOI命令,中断结束POP BXIRETSTATEC ENDP;8254工作的1/100触控中断程序RUN PROC;跑表计数的运算STIMOV AL,1CMP CL,99HJE S0ADD AL,CLDAAMOV CL,ALCMP CL,99HJBE SHOWUP S0: MOV CL,0MOV AL,CHADD AL,1DAAMOV CH,ALCMP CH,59HJBE SHOWUPMOV CH,0MOV AL,BLADD AL,1DAAMOV CH,ALCMP BL,59HJBE SHOWUPMOV BL,0MOV AL,BHADD AL,1DAAMOV BH,ALCMP BH,59HJBE SHOWUPMOV BX,0MOV CX,0SHOWUP:;状态信息的判断MOV AL,STATE;暂停作用和清零作用CMP AL,2JE L1CMP AL,0JNE L0;初始化跑表计数MOV BX,0MOV CX,0L0:MOV AL,BHSHR AL,4;获取A的高字节PUSH BXLEA BX,LAXLAT ;查表转换高字节对应的数在LED中相应的代码MOV DX,200H;A口地址OUT DX,AL;送出A的高字节POP BXMOV AL,BHLEA BX,LAAND AL,0FH;获取A的低字节XLAT;查表转换低字节对应数在LED中的代码MOV DX,204H;B口地址OUT DX,AL;送出A的低字节POP BXMOV AL,BLSHR AL,4;获取A的高字节PUSH BXLEA BX,LAXLAT ;查表转换高字节对应的数在LED中相应的代码MOV DX,201H;A口地址OUT DX,AL;送出A的高字节POP BXMOV AL,BLPUSH BXLEA BX,LAAND AL,0FH;获取A的低字节XLAT;查表转换低字节对应数在LED中的代码MOV DX,205H;B口地址OUT DX,AL;送出A的低字节POP BXMOV AL,CHSHR AL,4;获取A的高字节PUSH BXXLAT ;查表转换高字节对应的数在LED中相应的代码MOV DX,202H;A口地址OUT DX,AL;送出A的高字节MOV AL,CHAND AL,0FH;获取A的低字节XLAT;查表转换低字节对应数在LED中的代码MOV DX,206H;B口地址OUT DX,AL;送出A的低字节MOV AL,CLSHR AL,4;获取A的高字节LEA BX,LAXLAT ;查表转换高字节对应的数在LED中相应的代码MOV DX,203H;A口地址OUT DX,AL;送出A的高字节MOV AL,CLAND AL,0FH;获取A的低字节XLAT;查表转换低字节对应数在LED中的代码MOV DX,207H;B口地址OUT DX,AL;送出A的低字节POP BXL1: MOV AL,20HMOV DX,360HOUT DX,AL;普通EOI命令,中断结束JMP L2CLIL2: IRETRUN ENDPCODE ENDSEND START。