
【第1篇】课程设计实验报告范文1600字
一、实验目的
1.加深对课堂讲授内容的理解,掌握解决实际应用问题时所应具有的查阅资料、技术标准和规范,以及软件编程、调试等能力,掌握面向对象的编程思想及java语言程序设计的规律与技巧,为进一步学习web应用开发及今后从事专业工作打下基础。
2. 使用本学期学习的java se技术(也可以使用课堂教学中没有学习过的java技术,但是应当以java se技术为主)完成多功能日历gui程序的设计,使之具有如下基本功能:一年日历用12页显示,每页显示一个月的日历。日历可以按年或月前后翻动,能够显示当前的日期,可以为每页日历选择背景图片。
3.在完成基本功能的基础上发挥自己的想象力与创造力,使程序凸显出与众不同的特点与功能,形成本小组的特性色。
二、实验要求
1.问题描述准确、规范。
2.程序结构合理,调试数据准确、有代表性.。
3.界面布局整齐,人机交互方便。
4.输出结果正确。
5.正确撰写实验报告。
三、实验内容
编写一个gui程序实现日历的功能。一年日历用12页显示,每页显示一个月的日历。日历可以按年或月前后翻动,能够显示当前的日期以及当前农历,可以为每页日历选择背景图片。可以实现显示时钟,时钟能进行整点报时。可以实现备忘记事功能,能在每天添加、修改、删除记事等操作。
四、实验步骤
1.在上机实验前,小组成员进行选题讨论,确定小组感兴趣而又伸缩性强的题目多功能日历。
2.在第一次上机实验时讨论分工,分工明确之后,分头合作进行。
3.各成员完成自己的任务后,最后进行统筹合并,以及程序最后的优化。
4. 根据实验结果,写出合肥工业大学实验报告。实验报告应当包括:实验内容,程序流程图,类结构,程序清单,运行结果,以及通过上机取得的经验。
5.详细的上机实验步骤见任务分工及程序设计进度表。
五、实验结果
经过小组成员的共同努力,最终我们小组设计的多功能日历程序能够实现实验的基本要求——一年日历用12页显示,每页显示一个月的日历。日历可以按年或月前后翻动,能够显示当前的日期,可以为每页日历选择背景图片。另外,在完成基本要求的基础上,我们增添了显示农历、显示时钟、添加备忘录、修改备忘录等功能。整体程序运行流畅、功能齐全、符合操作习惯。
下面是程序运行效果截图:
日历主界面(可以实现每个月的日历,可以按年或按月前后翻动,能够显示当前日期,并能够选择背景图片):
备忘录主界面(实现备忘录的添加,及当前日历的显示):
备忘录主界面(实现备忘录的`显示,及对当前备忘录的修改删除等):
时钟主界面(显示当前时间,实现报整点报时功能):
六、实验总结
两周的课程设计结束了,在这其中历尽酸甜苦辣咸各种滋味,不过收获颇丰。从学习c语言、数据库等等计算机编程类课程开始,自己始终有种感觉,那就是太理论化了、缺少实践。而这次的java程序设计可以说与以往大不相同,先是在课堂上老师讲述了有关的基础理论、基本语法知识,而后再加上这两周的课程设计,可以说是真正能够体会到程序编程的乐趣,也第一次发现自己原来对程序设计是如此的感兴趣。尤其是由于课程时间较紧,课上时间老师只是简单给我们讲述了一下java swing的基础知识,并没有去深入,而在此次课程设计中大量用到的监听事件的有关知识需要自己去查标准文档,去网上找相关系料,这无疑对自己是一个挑战。但是两周下来,我做到了,我独立完成了对备忘录程序的编写,累积下来这部分共涉及到包括action listener,mouse listener,menu listener,document listener等各种各类监听18个监听,分为6个类,累计完成程序千余行。而给我印象最深刻的便监听了,可以说是整个备忘录的大部分代码都是与监听相关,这也是让我我学会了对程序监听的运用,当然只是学会远远谈不上精通。
我编写的类有test、mainwin、mymenulistener1、policelisten、policelisten2、mywindowlistener。其中test类主要是用来定义备忘录主窗口的各种组件以及在相关组件上添加监听以实现备忘录添加、修改、删除等功能。mainwin类主要是用来创建test对象,用以显示窗口的。
课程设计实验报告
怎么写报告128人觉得有帮助
课程设计实验报告怎么写做课程设计实验报告,开头部分得把背景说清楚。这门课叫《嵌入式系统开发》,主要是教大家用单片机搞点小玩意儿。我这学期选了这个,感觉挺有意思,就是一开始没弄明白怎么写报告。后来慢慢摸索,总算找到些门道。
第一步,得把实验目的写明白。比如这次实验是要做一个温度监控系统,那就要说清楚这个系统的功能,是要实时显示温度,还是要报警什么的。我第一次写的时候,只写了“完成实验”,结果老师直接给打回来了,说太笼统。后来我就改成“通过本实验掌握温湿度传感器的工作原理及数据采集方法”,这样看起来就专业多了。
接下来就是实验原理这块儿了。这部分要画流程图,把整个系统的架构画出来。我当时画得乱七八糟,线条交叉得像个蜘蛛网。后来请教同学,才知道要用标准的框图格式,箭头要从左到右,这样看起来清晰。还有,记得把每个模块的功能都标注清楚,不然别人看了半天也不知道你在说什么。
然后就是硬件连接这部分了。这里要注意,接线的时候一定要仔细,尤其是那种细小的排针接口,一不小心就会插错。我记得有一次实验,我把传感器的电源线和地线接反了,结果整个电路烧掉了。后来吸取教训,每次接线前都会对照图纸检查一遍。另外,拍照是个好习惯,万一出了问题还能回溯。
软件编程这部分也挺关键的。我们用的是C语言,刚开始学的时候老是忘记分号,写出来的程序根本没法编译。后来慢慢记住,写完每一行代码都要记得加分号。还有就是注释,一定要多写,哪怕是一些简单的赋值语句也要写清楚。这样以后调试的时候方便查找问题。
实验结果分析也很重要。这次实验的结果是测出了一个温度范围,我第一次写的时候只是简单地罗列了一下数据,老师批改的时候说这样不够说服力。后来我补充了一些图表,还做了对比分析,把实验数据和理论值进行了比较,这才过关。
最后别忘了附上参考文献。虽然这一步很多人会忽略,但其实很重要。尤其是引用一些权威资料,能让报告显得更有说服力。不过这里有个小问题,有时候查到的资料太多了,不知道该挑哪些放进去,所以得自己好好筛选一下。
【第2篇】计算机网络安全课程设计报告范文2450字
计算机网络安全课程设计报告
导语:报告使用范围很广。按照上级部署或工作计划,每完成一项任务,一般都要向上级写报告,反映工作中的基本情况、工作中取得的经验教训、存在的问题以及今后工作设想等,以取得上级领导部门的指导。以下是小编整理计算机网络安全课程设计报告,以供参考。
某大学校园网规划与设计 某大学是一所极具现代意识、以现代化教学为特色的民办学校。学校计划在校内建立校园网并与国际互连网(internet)相连。学校现有3栋教学楼,每栋最高5层,每层最多200台pc机,宿舍楼共30栋,每栋最高7楼,每层最多1000台pc机,办公楼最高3层,每层30台pc机。
1.校园网需求如下:
(1)连接校内所有教学楼、宿舍楼、办公楼中的pc。
(2)同时支持约600用户浏览internet。
(3)提供丰富的网络服务,实现广泛的软件,硬件资源共享,包括:
(a)提供基本的internet网络服务功能:如电子邮件、文件传输、远程登录、新闻组讨论、电子公告牌、域名服务等。
(b)提供校内各个管理机构的办公自动化。
(c)提供图书,文献查询与检索服务,增强校图书馆信息自动化能力。
(d)全校共享软件库服务,避免重复投资,发挥最大效益。 (e)提供cai教学和科研的便利条件。
(f)经广域网接口,提供国内外计算机系统的互连,为国际间的信息交
流和科研合作,为学校快速获得最新教学成果及技术合作等创造良好的信息通路。
2.对主机系统的要求
主机系统应采用国际上较新的主流技术,并具有良好的向后扩展能力;
主机系统应具有高的可靠性,能长时间连续工作,并有容错措施;
支持通用大型数据库,如sql、oracle等;
具有广泛的软件支持,软件兼容性好,并支持多种传输协议;
能与internet互联,可提供互联网的应用,如www浏览服务、ftp文件传输服务、e-mail电子邮件服务、news新闻组讨论等服务;
设计原则:
校园网建设是一项大型网络工程,各个学校需要根据自身的实际情况来制定网络设计原则。该学校网络需要具有包括图书信息、学校行政办公等综合业务信息管理系统,为广大教职工、科研人员和学生提供一个在网络环境下进行教学和科研工作的先进平台。本次设计以实用、够用、好用、安全为指导思想;以开发标准、
先进性、可靠性、安全性为设计原则进行设计。
(1)开放性标准化原则:
系统要有可扩展性和可升级性,随着学院不断的扩招,业务的增长和应用水平的提高,网络中的数据和信息流将按指数级增长,需要网络有很好的可扩展性,并能随着技术的发展不断升级。设备应选用符合国际标准的系统和产品,以保证系统具有较长的生命力和扩展能力,满足将来系统升级的要求。
(2)先进性性原则
当前计算机网络技术发展很快,设备更新淘汰也很快。这就要求校园网建设在系统设计时既要采用先进的概念、技术和方法,又要注意结构、设备、工具的相对成熟。只有采用当前符合国际标准的成熟先进的技术和设备,才能确保校园网络能够适应将来网络技术发展的需要,保证在未来若干年内占主导地位。
(3)可靠性原则:
网络必须是可靠的,包括网络物理级的可靠性,如服务器、风扇、电源、线路等;以及网络逻辑级的可靠性,如路由、交换的汇聚,链路冗余,负载均衡等。网络必须具有足够高的性能,满足业务的需要。
(4)安全性原则:
网络系统应具有良好的安全性。由于校园骨干网络为多个用户内部网提供互联并支持多种业务,要求不仅能进行灵活有效的安全控制,同时还应支持虚拟专网,以提供多层次的安全选择。 在系统设计中,既考虑信息资源的充分共享,更要注意信息的保护和隔离,因此系统应分别针对不同的应用和不同的网络通信环境,采取不同的.措施,包括系统安全机制、数据存取的权限控制等。 分层设计理念:
对于大型网络而言一般采用三层结构设计,即“接入层-汇聚层-核心层”,如图所示:
核心层主要提供不同网络模块之间优化传输服务,将分组尽可能快地从一个网络传到另一个网络,通常要保证核心层具有很高的可靠性、最佳的网络性能。
汇聚层
汇聚层顾名思义就是作为访问层到骨干层的汇聚,通常为访问层与骨干层实现基于策略的网络间连接。汇聚层主要由三层交换机组成,提供对网络流量模式控制、服务访问控制、qos、定义路由路径度量(path metric)和路由协议网络通告控制。
接入层
接入层作为各模块到交换骨干的连接,根据不同模块进行逻辑子网划分,并通过vlan技术实现子网之间的隔离。访问层主要功能在于隔离模块间的广播流量,避免不同模块之间相互影响。访问层主要通过二层交换机组成
网络层次划分:
我们将教学楼作为中心,对全院的网络进行控制,并将网络分为:宿舍区,教学楼区(包括图书馆),服务器区 ,不同楼宇属于不同的vlan这样可以减少广播包,隔离广播域。
组网要求:
根据需求及结合市场情况,现采用以下设计来完成组网要求。
1.以学生公寓为例:每栋学生公寓有7层,每层有200人,在建楼规划时就预装四类双绞线到每位学生的桌面,在楼下设有一专门的地方放置交换机。最后这些交换设备接入汇聚层交换机和核心层的交换机,放入核心数据机房,同时在核心数据机房也存放着学校的服务器,最后通过路由器接入 internet。
2.给路由器外网接口配置公网 ip 地址,给内部计算机配置,通过 nat 使内网计算机上网。
3.给校园实现 300m 电信光纤接入,600m网通光纤接入,能够满足学生和教师上网的需要;实时传递本校和国内外高校的教育教学信息。
4.在校园搭建 ftp 服务器,实现校园资源的共享。
5.在校园搭建 web 服务器,展示学校风采,展示学生风采。
6.在校园搭建 mail 服务器,方便师生之间的交流以及学校信息的传达。
7.在校园搭建流媒体服务器,满足用户的点播需求,实现多媒体教学管理。
8.在校园搭建 dns 服务器,保存有该网络中所有主机的域名和对应 ip 地址,并具有将域名转换为 ip 地址功能的服务器。
9.在校园一些部门的电脑上安装需要的管理系统,满足教学管理、学生管理等功能。
网络规划拓扑图
运用microsoft visio绘制整个实训规划的拓扑图,包括不同位置的不同设备,设备之间的连接用线类型等。
对于此图中的internet接入可以根据实际需求选择网通或者电信,也可以多路接入,当然就需要加多一个防火墙来进入该校园网。
怎么写报告42人觉得有帮助
计算机网络安全课程设计报告的编写需要结合专业背景和实际经验,这样才能写出高质量的作品。在开始之前,先明确报告的目标和范围,这很重要。目标是要解决什么问题,范围则是指涉及哪些技术和方法。比如,如果是为了分析网络漏洞,那么就要详细描述漏洞类型及其影响。
接下来就是收集资料了。可以从公开的文献、技术手册或是实际案例入手。记得做好笔记,把关键点记录下来,特别是那些具体的步骤和数据。有时候,一些细节可能会被忽略,但它们往往是解决问题的关键。比如,某次实验中使用的软件版本号,可能会影响到结果的准确性。
在整理材料的时候,要注意条理性。可以按照逻辑顺序排列,也可以根据重要性排序。不过,有时候为了突出重点,可能会稍微打乱一下顺序。例如,先介绍背景信息,再深入到具体的技术实现,这样能让读者更容易理解整个过程。
写作过程中,语言表达要清晰准确。避免使用过于复杂或模糊的词汇,确保每个概念都能被清楚传达。不过,偶尔也会不小心用错词,比如将“加密算法”误写成“解密算法”,这种小地方得特别留意。另外,图表和代码片段也是必不可少的辅助工具,它们能直观地展示研究内容。
最后,检查一遍全文,看看有没有遗漏的地方。有时候,匆忙完成的报告可能会忘记附上参考文献,或者没有标明引用出处。这些问题虽然不大,但如果被发现,会影响报告的整体质量。所以,花点时间仔细核对一遍是非常必要的。
写报告不是一件轻松的事情,它需要投入大量的时间和精力去准备和修改。希望上述建议能够帮助大家提高报告的质量。
【第3篇】网络工程课程设计报告范文2800字
计算机网络校园网课程设计报告
题 目:计算机网络校园网课程设计报告
学 院: 信息科学与工程学院
专业班级: 计算机102班
学号:104162xx
学生姓名:xx
指导教师:
课程设计的内容:
以某校校园为背景,设计一个校园网。学院包括教学区、生活区、办公区。假设出来计算机大楼有120个信息点以外,其余各系大楼和教学楼都是40个信息点,使用原有的internet地址,根据本部校园网的应用需求和管理需求,设计出本部的校园网方案。
网络规划拓扑图
(见附件)
一、 需求分析
背景分析
如今二十一世界信息社会中,教育的质量不断提高,教育管理部门对教育信息计算机管理和教育信息的方式服务的要求悦来越高。绝大部分校园组建了网络环境,为了提高教育和学习的质量。校园网也成为现在教育背景下的基础设施。而且随着校园的规模不断扩大,对网络的需求也不断的提高,如何铺设网络、师生的交流、信息的公布和通知、办公的需求,满足校园的扩大需求,需要建立一个校园网。
应用需求
校园网络应该方便便捷,建立后的网络能够充分利用internet、国家信息网、教育网、全国高校互联网上的各种信息,实现资源共享,能够在校给学生提供丰富的多媒体教学方案,实现高质高效的教学目的。校园网络是一个网络化、信息化、自动化、办公一体化的教学需求。
性能分析
校园面积比较大,网络铺设比较麻烦,因此建立的校园网性能要应该很好,而且能够保证在长期内网络的畅通和稳定,从而满足师生
的需求。 1.先进性:先进的设计思想、网络结构、开发工具,采用市场覆盖率高、标准化和技术成熟的软硬件产品;
2.实用性:建网时应考虑利用和保护现有的资源、充分发挥设备效益;
3.开放性:遵从国际标准,设计应采用开放技术、开放结构、开放组建和开放用户接口,以利于网络的维护、扩展升级及与外界信息的沟通;
4. 灵活性:采用积木式模块组合和结构化设计,使配臵灵活,满足学校逐步到位的建网原则,使网络具有强大的可增长性;
5.可靠性:具有容错功能,管理、维护方便。对网络的设计、选型、安装、调试等各环节进行统一规划和分析;
6.强性价比:不要一味追求最新,还要考虑当前实际需要,选择合理的设备搭配,使达到良好的性能价格比。
7.安全性:包括两个方面,1、网络用户级的安全性;2、数据传输级的安全性。网络用户级的安全性应在网络的操作中予考虑,而数据传输的安全性则必须在网络传输时解决。
校园网功能
(1)连接校内所有教学区、生活区、办公区中的pc。
(2)同时支持约600用户浏览internet。
(3)提供丰富的网络服务,实现广泛的软件,硬件资源共享,包括:
(a)提供基本的internet网络服务功能:如电子邮件、文件传输、远程登录、新闻组讨论、电子公告牌、域名服务等。
(b)提供校内各个管理机构的办公自动化。
(c)提供图书,文献查询与检索服务,增强校图书馆信息自动化能力。
(d)全校共享软件库服务,避免重复投资,发挥最大效益。 (e)提供cai教学和科研的便利条件。
(f)经广域网接口,提供国内外计算机的互连,为国际间的信
主机的要求
主机应采用国际上较新的主流技术,并具有良好的向后扩展能力;
主机应具有高的可靠性,能长时间连续工作,并有容错措施;支持通用大型数据库,如sql、oracle等;
具有广泛的软件支持,软件兼容性好,并支持多种传输协议;能与internet互联,可提供互联网的应用,如www浏览服务、ftp文件传输服务、e-mail电子邮件服务、news新闻组讨论等服务;支持snmp网络管理协议,具有良好的可管理性和可维护性;
二、 校园网的设计模式
网络规划设计方案
通过对千兆位以太网和atm两种技术在性能特点及工程中应用的比较,可知:千兆位以太网在具有以前atm所有的功能之外,还能提供一个更为综合性的解决方案;千兆位以太网能完成许多atm的功能,但是有价格低、更易和lan结构融合的优点。因此,在网络方案的选择上,采用千兆以太网做为校园网的网络总体结构无论在高带宽、可适应性、可扩展性、高性价比、良好的管理性和维护性等各方面都是最明智的选择,成为学校校园网完整的、经济的解决方案。
本千兆位以太网设计方案,采用最新的1000m交换机作为全网的核心,在此基础上建立起以1000m为主干校园网络。然后根据不同的应用,将校园网分割为几个以100m交换机____子网。为满足学校与internet的连接,另设一子网,将web服务器,路由器等web应用设备用防火墙将它们与内部网隔离开来。以达到保护校内数据的目的。
协议标准
本校园网以tcp/ip 为主要协议,它是一种事实上的工业标准协议,采用tcp/ip为网络主要协议,可保证与chinanet和internet保持一致,还可支持ipx,decnet等其它协议。真正实现于国际互联网的无缝连接。
从计算机网络通讯的观点来看,tcp/ip网络实质上可称为ip网络,它是由许多ip网关(或称为ip路由器)通过若干直接连通的`通信。
三、设计原理(此处只详述本人于课程设计中用的较多的ping和netstat命令)
1、ping命令的使用技巧
ping是个使用频率极高的实用程序,用于确定本地主机是否能与另一台主机交换(发送与接受)数据包。ping是一个测试程序,如果ping运行正确,我们大体上就可以排除网络访问层、网卡、modem的输入输出线路、电缆和路由器等存在的故障,从而减小为问题的范围。也因此,网络安全扫描技术中就包括有ping扫射。
2、netstat命令的使用技巧
netstat用于显示与ip、tcp、udp和icmp协议相关的统计数据,一般用于检验本机各端口的网络连接情况。如果你的计算机有时候接收到的数据报导致出错数据或故障,你不必感到奇怪,tcp/ip可以容许这些类型的错误,并能够自动重发数据报。但如果累计的出错情况数目占到所接收的ip数据报相当大的百分比,或者它的数目正迅速增加,那么你就应该使用netstat查一查为什么会出现这些情况了。
四、设计过程与步骤
1、ping命令、参数及意义(仅部分详细解释)
ping ip地址或主机号:显示 4个回显包后停止ping。(缺省的)
ping ip地址或主机号 -t :对如 10.129.4.22 这个 ip 地址不断地发送 icmp 数据包,可查看网络是否连通。要中途查看并继续发送数据包,按control break键;要停止发送数据包,按control c键。
ping ip地址或主机号 -n count:显示 count个回显包后停止 ping。( count可以根据你的需要任意指定)
ping -a ip地址:将ip地址有对应的主机号表示出来,并显示 3个回显包后停止 ping。
五、测试验收
验收测试,开发生命周期方法论的一个阶段,这时相关的用户和独立测试人员根据测试计划和结果对进行测试和接收。它让用户决定是否接收。它是一项确定产品是否能够满足合同或用户所规定需求的测试。这是管理性和防御性控制。
在工程及其他相关领域中,验收测试是指确认一是否符合设计规格或契约之需求内容的测试,可能会包括化学测试、物理测试或是性能测试。
在工程中验收测试可能包括在(例如一套软件、许多机械零件或是一批化学制品)交付前的黑箱测试。软件开发者常会将开发者进行的验收测试和客户在接受产品前进行的验收测试分开。后者一般会称为使用者验收测试、终端客户测试、实机(验收)测试、现场(验收)测试。在进行主要测试程序之前,常用冒烟测试作为一个此阶段的验收测试。
怎么写报告164人觉得有帮助
做网络工程课程设计报告的时候,得先搞清楚任务是什么。这个报告,它不是单纯写个流水账就行,得把设计的过程、遇到的问题以及解决方案都写进去。开头部分,要把背景说清楚,比如为什么要做这个项目,目的是什么。要是能用一些专业术语,像是拓扑结构、协议栈之类的东西,那看起来就更有说服力。
接下来就是具体的设计环节了。这部分要详细描述你是怎么一步步搭建网络环境的,包括硬件的选择,软件的配置。比如说路由器选的是哪个型号,防火墙怎么设置的。要是有组网图的话,最好附上去,这样别人看的时候一目了然。不过这里有个小地方需要注意,有些同学可能会忘记标注设备间的连接方式,这就有点麻烦了。
还有,调试过程中遇到的问题也要写出来。像是某个端口不通,或者数据包丢失之类的。然后重点讲你是怎么排查的,用了什么命令行工具,最后又是怎么解决的。这一步特别重要,因为这体现了你的动手能力和解决问题的能力。但有时候会发现有些人只写了问题,却没提解决方案,这就显得头重脚轻了。
至于结果展示,可以截图证明系统运行正常。像ping测试的结果,抓包分析的数据,这些都是很好的证据。不过别忘了,截图虽然直观,但文字说明还是必不可少的,这样能让读者明白你在干什么。还有就是,有的人在写这部分的时候,可能会忽略掉对异常情况的处理,其实这也是一个值得讨论的地方。
最后,记得检查一下格式什么的。报告的排版要整齐,字体大小要合适,不然看着不舒服。另外,引用资料的时候要标明出处,这既是尊重原作者也是对自己负责。不过有时候会出现这种状况,就是引用的文献格式不对,或者干脆忘记标注来源,这样就会给评审老师留下不太好的印象。
【第4篇】java课程设计实验报告范文1500字
一、实验目的
1、加深对课堂讲授内容的理解,掌握解决实际应用问题时所应具有的查阅资料、技术标准和规范,以及软件编程、调试等能力,掌握面向对象的编程思想及java语言程序设计的规律与技巧,为进一步学习web应用开发及今后从事专业工作打下基础。
2、 使用本学期学习的java se技术(也可以使用课堂教学中没有学习过的java技术,但是应当以java se技术为主)完成多功能日历gui程序的设计,使之具有如下基本功能:一年日历用12页显示,每页显示一个月的日历。日历可以按年或月前后翻动,能够显示当前的日期,可以为每页日历选择背景图片。
3、在完成基本功能的基础上发挥自己的想象力与创造力,使程序凸显出与众不同的特点与功能,形成本小组的特性色。
二、实验要求
1、问题描述准确、规范。
2、程序结构合理,调试数据准确、有代表性、。
3、界面布局整齐,人机交互方便。
4、输出结果正确。
5、正确撰写实验报告。
三、实验内容
编写一个gui程序实现日历的功能。一年日历用12页显示,每页显示一个月的日历。日历可以按年或月前后翻动,能够显示当前的日期以及当前农
历,可以为每页日历选择背景图片。可以实现显示时钟,时钟能进行整点报
时。可以实现备忘记事功能,能在每天添加、修改、删除记事等操作。
四、实验步骤
1、在上机实验前,小组成员进行选题讨论,确定小组感兴趣而又伸缩性强的题目多功能日历。
2、在第一次上机实验时讨论分工,分工明确之后,分头合作进行。
3、各成员完成自己的任务后,最后进行统筹合并,以及程序最后的优化。
4、 根据实验结果,写出合肥工业大学实验报告。实验报告应当包括:实验内容,程序流程图,类结构,程序清单,运行结果,以及通过上机取得的经验。
5、详细的上机实验步骤见任务分工及程序设计进度表。
五、实验结果
经过小组成员的共同努力,最终我们小组设计的多功能日历程序能够实现实验的基本要求——一年日历用12页显示,每页显示一个月的日历。日历可以按年或月前后翻动,能够显示当前的日期,可以为每页日历选择背景图片。另外,在完成基本要求的基础上,我们增添了显示农历、显示时钟、添加备忘录、修改备忘录等功能。整体程序运行流畅、功能齐全、符合操作习惯。
下面是程序运行效果截图:
日历主界面(可以实现每个月的日历,可以按年或按月前后翻动,能够显示当前日期,并能够选择背景图片):
备忘录主界面(实现备忘录的添加,及当前日历的显示):
备忘录主界面(实现备忘录的显示,及对当前备忘录的'修改删除等):
时钟主界面(显示当前时间,实现报整点报时功能):
六、实验总结
两周的课程设计结束了,在这其中历尽酸甜苦辣咸各种滋味,不过收获颇丰。从学习c语言、数据库等等计算机编程类课程开始,自己始终有种感觉,那就是太理论化了、缺少实践。而这次的java程序设计可以说与以往大不相同,先是在课堂上老师讲述了有关的基础理论、基本语法知识,而后再加上这两周的课程设计,可以说是真正能够体会到程序编程的乐趣,也第一次发现自己原来对程序设计是如此的感兴趣。尤其是由于课程时间较紧,课上时间老师只是简单给我们讲述了一下java swing的基础知识,并没有去深入,而在此次课程设计中大量用到的监听事件的有关知识需要自己去查标准文档,去网上找相关系料,这无疑对自己是一个挑战。但是两周下来,我做到了,我独立完成了对备忘录程序的编写,累积下来这部分共涉及到包括action listener,mouse listener,menu listener,document listener等各种各类监听18个监听,分为6个类,累计完成程序千余行。而给我印象最深刻的便监听了,可以说是整个备忘录的大部分代码都是与监听相关,这也是让我我学会了对程序监听的运用,当然只是学会远远谈不上精通。
java课程设计实验报告
怎么写报告1人觉得有帮助
写一份好的java课程设计实验报告并不是一件难事,但需要一些技巧和耐心。一般来说,报告开头应该简要介绍实验背景,比如为什么要进行这个实验,它的重要性在哪里。这部分内容不用太复杂,只要能让读者明白实验的目的就行。比如可以这样开头:“这次实验主要是为了加深对java面向对象编程的理解,通过具体实例来巩固课堂上学到的知识。”
接着,报告中需要详细描述实验的具体步骤。这里要注意的是,不仅要写出做了什么,还要解释为什么这么做。例如,“我们选择了一个学生管理系统作为实验项目,因为这种系统比较常见,能涵盖较多的基础功能。”这样的叙述既交代了选择项目的理由,也暗示了后续可能涉及的功能模块。
关于实验结果部分,最好是用图表或者代码片段来展示。如果只是简单地罗列数字或者现象,会显得很单薄。比如,“运行结果显示,当输入学号为1001的学生信息时,程序能够正确输出其姓名和成绩。”这样描述比直接说“结果正确”要更有说服力。
当然,实验过程中难免会遇到各种问题,这时候就需要记录下这些问题以及解决方法。比如,“起初在处理多线程时遇到了死锁的情况,后来经过查阅资料得知可以通过设置锁超时时间来避免这种情况发生。”这样的描述不仅体现了面对困难的态度,还展示了解决问题的能力。
最后,别忘了在报告末尾做一个简单的总结,指出实验中学到了什么,有哪些不足之处,未来还可以怎样改进。不过这里需要注意的是,总结不宜过长,以免显得啰嗦。可以简单地说一句,“本次实验让我们更好地掌握了java的基本语法和常用类库的应用,同时也认识到团队合作在软件开发中的重要性。”
在整个写作过程中,保持语言简洁明了很重要。有时候为了追求表达清晰,可能会不小心写出一些不太通顺的句子,比如“虽然遇到了不少难题,但在老师的指导下都得到了解决。”这句话虽然有点拗口,但总体意思还是清楚的。还有些地方可能会出现一些小疏忽,像“在编写用户界面时,应确保按钮布局合理”,这里的“应”字用得稍微有些随意,但并不影响理解。这些都是正常现象,不必太过担心。
【第5篇】流水灯课程设计报告范文2150字
流水灯课程设计报告
欢迎阅读流水灯课程设计报告,本文主要介绍了基于单片机的流水灯系统,首先介绍了以at89c51为控制核心,8位共阳极接法的二极管显示电路的流水灯系统,并通过对流水灯的基本控制原理进行了流程控制设计,从而实现流水灯现象。
1 概述
随着科学技术水平的不断向前提高以及社会经济的不断向前发展,人们越来越意识到广告宣传的重要性,越来越多的丰富多彩、新颖夺目的led广告宣传牌充斥在城市的公共场所中,为灯红酒绿的城市增加了炫目多姿的色彩。这些led广告宣传牌动态显示的背后,则是以流水灯的原理为基础,以单片机为控制核心,按照广告商的宣传需求,通过炫目的多彩和新颖的方式来吸引人们的眼球来完成广告宣传。基于单片机的流水灯的设计,主要是以单片机为控制核心,通过自身的数据输入输出端口完成与流水灯显示电路的数据联通,通过内部的程序运行来实现对流水灯显示电路的动态控制,进而实现显示电流的循环亮灭的操作。所以对于基于单片机的流水灯系统的深入研究与学习对于学习单片机控制系统以及led广告宣传系统的工作机制进来说具有非常重要的现实意义。
2 基于单片机的流水灯的系统电路
流水灯的显示电路就是多个二极管通过一端公共连接而构成的显示电路,并将另一端分别与单片机的多个数据输入输出端口进行连接,当单片机向这些端口发送相应的数据时,根据二极管的工作特性,从而实现对其的亮灭控制。当然,单片机工作还需要复位电路和晶振电路配合单片机芯片构成单片机工作的最小系统,从而满足单片机正常工作的基本条件。如图1所示,为基于单片机的流水灯控制系统硬件电路图,该硬件电路以at89c51为基本的控制核心,实现对8为二极管流水灯显示电路的亮灭控制。
该控制系统是以at89c51为系统的控制单片机,它是美国atmel公司生产的高性能的cmos 8位处理器,同时配备了丰富的硬件资源,有128字节的ram供用户使用,并提供2个16为定时器/计数器完成定时和计数的工作以及32根数据输入输出端口来单片机与外部电路的数据连通的工作。
8位二极管构成的流水灯显示电路是用共阳极的连接方法来构成的显示电路的。常见的led显示灯电路中的二极管连接方法有两种,一种是共阳极连接,一种是共阴极连接,它们是根据显示电路中二极管公共连接的方式来决定的。共阳极接法就是将构成led显示电路的二极管的阳极接在一起构成公共端,共阴极接法就是将led显示电路中的二极管的阴极接在一起构成公共端。对于共阳极接法的显示电路来说,如果在该端实施低电压(零电压),对于共阴极接法的显示电路来说,如果在该端实施高电压,那么无论在另外一段如何控制电压都不能使该显示电路亮灭,从而实现了通过对该公共端的电压的改变对整个led显示电路的进行控制。当公共端施加了使能电压后,通过对该显示电路中的某个二极管进行控制从而实现了对显示电路的二极管亮灭控制。图1中所示的流水灯显示电路为共阳极接法的led显示电路,通过施加vcc电压,可以是led显示电路中的所有二级管一直处在使能状态,从而配合的单片机控制完成流水灯的设计。
3 基于单片机的流水灯的流程控制
流水灯就是按照一定的顺序和规则,按照人们的意愿有序地亮灭,通过人的视觉误差从而形成流水状的状态。基于单片机的流水灯系统设计,以图1为基本的硬件电路,根据人们的意愿来编写程序代码,通过单片机定时向p1端口发送控制信号数据,从而对流水灯显示电路的二极管亮灭的控制,实现流水灯的效果。
由于本文中采取的是流水灯显示电路采用的是共阳极的接法,所以在针对一个二极管亮灭的控制情况下,主要是是向该端口发送低电压数据即可使该二极管发亮,依次类推,即可实现流水灯的现象。但是值得注意的是,由于人类研究对于视觉具有暂留的.特性,如果紧邻的两个二极管的亮灭交替时间间隔太少,在人眼观察下就会是持续亮的状态,达不到流水灯的效果,所以设计的时间间隔要满足一定的要求。对于流水灯的实现上有很多方法,其中循环移位法是相对比较简单的控制方法,即对8位二极管的亮灭信号控制字进行循环移位来实现流水灯的方法。
以紧邻两个二极管亮灭时间间隔为0.5s为例,对基于单片机的流水灯系统的控制流程进行伪代码设计如下:
a,对单片机的定时器/计数器进行初始化,包括定时器/计数器的选择,工作方式选择等初始化工作。
b,设定二极管亮灭控制变量v_number,并赋值为0xfe(该值是对高7位的二极管的阴极设定为高电压,对最后一位的二极管的阴极设定为低电压,从而实现最后一个二极管亮,其他二极管灭的初始状态)。
c,将v_number赋值到p1端口。
d,对定时器/计数器进行初始值设定(定时0.5s)并开始计时知道结束。
e,对v_number进行循环移位操作并将结果重新赋值给v_number。
f,跳到步骤c
根据上述流程,即可实现对p1端口输出控制数据的循环变化,实现共阳极的二极管显示电路的流水灯现象。
4 总结
基于单片机的流水灯系统的设计,主要是以51单片机为控制核心,配备8位共阳极接法的二极管显示电路,通过定时器/计数器的定时以及对连接8位二级管显示电路的p1端口进行循环移位赋值,从而实现对二极管显示电路的亮灭自动控制,实现流水灯现象。
参考文献:
张灿.单片机花样流水灯设计[j].信息通信,2013(01)
易礼智.基于51单片机实现流水灯的若干种编程方法[j].铜仁学院学报,2012(06)
[3]朱艳梅.基于单片机的流水灯的设计与实现[j].电子制作,2014(04)
[4]李灵锋.单片机控制流水灯方法研究[j].煤炭技术,2010(11)
怎么写报告170人觉得有帮助
流水灯课程设计报告该怎么写?一开始,得先把题目弄清楚,知道到底要做什么。比如这个流水灯,就是那种灯光一个接一个亮起来的效果,听起来简单,做起来可不那么简单。
先说说开头部分,不能太啰嗦,简单介绍一下背景就成。比如说为什么要设计这个流水灯,是为了学点新东西还是解决实际问题。这部分不用太复杂,几句话就行,但要让人明白为什么要做这件事。
接下来就是具体的设计环节了。这部分得把思路理清楚,先确定用什么材料,像是单片机型号、LED灯的数量之类的基本参数。然后就是电路图的设计,这一步很重要,要是电路图画错了,后面调试起来就麻烦了。记得多检查几遍,有时候一个小小的疏忽就能搞砸整个项目。
接着就是程序编写这块儿了。编程的时候要注意逻辑清晰,别一开始就想着一步到位,慢慢来,先把基本功能实现再说。流水灯,重点就是控制每个灯亮的时间间隔,这部分代码得反复测试,确保每个灯都能按照预期顺序亮起来。
调试的时候也得细心,有时候硬件没问题,可能是软件出了差错。遇到这种情况,别急躁,一步步排查,有时候可能就是个参数设置不对,调整一下就好了。还有,记录下每次调试的结果,这样方便后续改进。
最后就是写报告本身了。报告里的数据和图表都很关键,最好能附上几张实物照片,这样更有说服力。不过别忘了,报告不只是摆数据,还得把设计过程中遇到的问题和解决方法写进去,这样才能体现你的思考过程。
整个过程下来,其实挺考验耐心的。有时候写着写着会发现自己漏掉了什么细节,这时候就需要回过头去补全。当然,也可能因为一时疏忽写错了个数值,这种小问题在所难免,只要及时改正就好。
写报告的时候,语言要简洁明了,专业术语该用就得用,但别堆砌太多。如果实在想不起来某个词怎么说,就用通俗易懂的话表达出来,只要能让别人听明白就行。还有,引用别人的观点时记得标注来源,这事马虎不得。
【第6篇】数据库课程设计报告范文1450字
数据库课程设计报告
数据库课程设计报告该怎么写呢?下面小编整理了数据库课程设计报告,欢迎大家阅读借鉴!
一 绪论
随着计算机技术的飞速发展和经济体制改革的不断深入,传统企业管理方法、手段以及工作效率已不能适应新的发展需要,无法很好地完成员工工资管理工作。提高公司企业管理水平的主要途径是更新管理者的思想,增强对管理活动的科学认识。基于 sql server数据库技术建立一个通用工资管理系统,该系统为提供了查询、增加记录、删除等功能,功能比较的齐全,并对工资进行了统计如津贴管理、报表统计等。基本上能满足管理员和公司的要求。
此次数据库课程设计的主要设计如下:
原理分析、程序设计过程、程序实现和程序调试以及数据库的设计。
需求分析、概要结构设计、逻辑结构设计、物理结构设计和数据库的实施和维护。
二 员工薪资管理系统概述
1、现状分析
随着企业人员数量增加,企业的工资管理工作也变得越来越复杂。早期的工资统计和发放都是使用人工方式处理纸质材料,不仅花费财务人员大量的时间且不易保存,往往由于个人的因素抄写不慎或计算疏忽,出现工资发放错误的现象。早期工资管理多采取纸质材料和具有较强的时间限制。随着我国国民经济建设
的蓬勃发展和具有中国特色的社会主义市场经济体制的迅速完善,各个行业都在积极使用现代化的手段,不断改善服务质量,提高工作效率,这些都在很大程度上给企业提出越来越严峻的挑战,对企业体系无论是在行政职能、企业管理水平以及优质服务上都提出更高的要求。建设一个科学高效的信息管理系统是解决这一问题的必由之路。企业内部财务管理是该企业运用现代化技术创造更多更高的经济效益的主要因素之一。工资管理作为企业内部的一种财务管理也是如此,由于企业职工人数较多,每一位职工的具体实际情况也不尽相同,各项工资条款的发放,如果没有一个完整的管理系统对企业和员工的工作都带来许多的不便。基于以上原因,企业工资管理系统使用电脑安全保存、快速计算、全面统计,实现工资管理的系统化、规范化、自动化。
2、系统目标
员工薪资管理系统的主要目的是利用计算机对员工的各种工资信息进行日常的管理,如查询、修改、添加、删除以及存储等,迅速准确地完成各种工资信息的统计计算和汇总工作,针对系统服务对象的具体要求,设计了企业工资管理系统。企业工资管理系统主要有以下几大功能:
(1)对单位人员的变动进行处理。一个单位的职工不会是一成不变的,总是在不断的变化:有调出、有调入、也有职工在本单位内部调动。因此,设计系统是应考虑到这些情况。
(2)对职工的工资进行计算、修改。可以对职工的工资档案进
行个别、部分和批量修改,同时,能对各职工的工资进行计算,即计算基本工资、岗位工资及实发金额等。
(3)查询统计功能。要求即可以单项查询,比如查看某个职工的.工资情况等;也可以多项查询,比如某个部门所有的员工的工资信息。
(4)对用户管理功能。一个系统的应用有管理员和普通用户,他们对系统的权限受到限制。
3、系统特点
(1) 本系统使工资管理基本实现了信息化,系统设计的各种查询要求代替了原来了人工查询,即节省了人力,又减轻了员工的工作量,最重要的是由计算机操作,可以提高数据的准确性,避免人为的错误,方便管理。
(2) 本系统设置了系统数据备份功能,定期的系统备份可以在数据库受到意外的或有意的破坏的情况下,系统得以恢复,减少损失。
(3) 本系统的界面设计简洁明了,采用了流行的菜单设计,对于不是计算机专业的管理人员,只需阅读操作说明书,就能方便的使用本系统。
怎么写报告47人觉得有帮助
数据库课程设计报告怎么写
做数据库课程设计报告,第一步是把题目弄清楚,别一开始就把方向搞错了。这报告得结合具体任务,比如选个具体的数据库系统,像SQL Server、MySQL之类的,然后围绕它展开。要是题目是设计一个学生管理系统,那就要从需求分析开始,列出用户需要哪些功能,像查询、录入成绩什么的。这一步很重要,因为如果需求没搞明白,后面的设计可能就会乱套。
接着就是画E-R图了,这是数据库设计的核心部分。画的时候要注意实体之间的关系,是1对1还是1对多,别搞混了。记得实体属性也要写清楚,属性类型和长度都得标注出来。有时候会遇到属性命名不规范的问题,像用拼音或者缩写,这种就容易引起混淆,最好统一一下命名规则。不过也有时候因为赶时间,可能会忽略一些细节,比如忘记给主键加注释什么的,这样后期检查起来麻烦。
接下来就是数据库表的设计了,要把E-R图转化成具体的表结构。每个表都要有主键,外键也要正确引用。这里有个小问题,有时候为了方便,会把多个属性拼在一起作为主键,但其实这样不太合理,应该单独设一个字段做主键。还有就是字段长度设定,别一开始就设得太死,预留空间比较好。比如年龄这个字段,设成tinyint就够用了,但有时候会不小心写成int,这就显得有点多余了。
写完数据库结构之后,就是编写SQL语句了。这部分要特别注意语法格式,尤其是大小写问题。SQL语句一般用大写表示关键字,像SELECT、FROM什么的,但有时候写着写着就忘了,全小写了,看起来就不够专业。另外,注释也得加上,像单行注释用双斜杠,多行注释用/* */,这样别人看你的代码就比较清晰。有时候调试的时候,会发现某些SQL语句执行效率不高,这可能是没有优化好索引,或者是查询条件写得不够精准。
最后就是测试环节了,这一步很关键,得确保数据库运行正常。可以自己造些数据来测试,看看功能是否都能实现。比如插入一条记录后,能不能正确显示出来,修改记录后数据有没有更新。要是测试过程中发现问题,要及时调整数据库结构或者SQL语句。当然,测试的时候可能会漏掉一些特殊情况,比如输入为空的情况,这种就得仔细检查一遍,确保程序能应对各种情况。
【第7篇】嵌入式课程设计报告范文4500字
嵌入式课程设计报告
最近几年,几乎所有的it 企业对应届毕业生都有抱怨:动手能力太差,编程水平低下。下面和小编一起来看看报告吧!
cortex-m3 是 arm 公司基于 arm v7 架构的新型芯片内核。 stm32v100-ii 型是英蓓特 公司新推出的一款基于 st 意法半导体 stm32 系列处理器(cortex-m3 内核)的全功能 评估板。stm103v100-ii 评估板有 usb,motor control,can,sd 卡,smart 卡, uart,speaker,lcd,led,bnc,耳塞插孔等丰富的外设,有助于用户轻松开发 stm32 的强大功能。stm32 系列使用了 arm 最新的、先进架构 cortex-m3 内核,本文论述 了在 keil realview 开发环境上开发基于汇编语言的 led 控制程序, 基于对 stm32 的 gpio 寄存器写值配置思想, 控制 edukit-m3 实验平台的发光二极管 led1、 led2、 led3、 led4, 使它们有规律地点亮。
一、 设计概述
1.1、 设计需求
keil realview 开发环境上,全部采用汇编语言编程,实现对 edukit-m3 实验平台的发 光二极管 led1、led2、led3、led4 的亮灭控制,使它们有规律地点亮。 这里采用例程提供的顺序点亮方式,按照 led1 亮 led2 亮 led3 亮 led4 亮,如此反复,要求每个 led 亮灭之间延时一段时间,以增强可观性。需要说明的是,这 仅仅作为程序控制 led 的一种控制方式,基于点亮 led 的控制原理,可以编程实现各种显 示 led 的亮灭模式,并提供一种通用的控制方法,要求程序可读性强,易于修改。
1.2、 设计原理
(1)stm32 通用 gpio 端口概述 stm32f10x 处理器上共有 7 个 i/o 端口:a、b、c、d、e、f、g,每个 16 个管脚 每组端口(寄存器必须以 32 位字形式访问) 每组端口有以下寄存器: , 32 位配置寄存器: gpiox_crl、gpiox_crh 32 为数据寄存器: gpiox_idr、gpiox_odr 32 位置位/复位寄存器: gpiox_bsrr 16 位复位寄存器: gpiox_brr 32 为锁定寄存器: gpiox_lckr i/o 口通用输入、输出端口配置为输入时,每个 apb2 时钟周期将端口数据送输入寄存 器(gpiox_idr),在输入模式下,输出是断开的。输出模式时:写到输出寄存器(gpiox_odr) 的值被传给对应的 i/o 引脚。在输出模式下,输入是允许的 (2)程序设计原理 edukit-m3 实验平台上,通过写值配置端口数据输出寄存器 gpioc_odr[15:0]值,可 以实现对四个 led 的亮灭控制, 因为 c 口[9:6]位和四个 led 灯连通。 而这里主要是通过对 时钟控制寄存器以及端口 c 的各配置寄存器和输出寄存器写值, 以达到配置端口, 控制 led 的目的。 汇编语言与 c 语言相比,要求更加贴近硬件,了解 m3 内核的内部结构和寄存器地址。 基于汇编语言的编程控制, 只需要找出需要配置的端口基地址, 然后弄清楚各寄存器的偏移 地址,以及各寄存器每位的含义,按照要求写 1 或写 0 即可。
2
二、 硬件设计:
2.1 硬件电路
2.2 硬件电路描述
本设计是基于 edukit-m3 实验平台的嵌入式开发实例, edukit-m3 实验平台有四个 led 灯,分别为 led1、led2、led3、led4,对应的连接到 i/o 的 c 口 pc.6、pc.7、pc.8、 pc.9 四位输出位上,不需要外扩电路或者额外接线,简单易行。
三、 软件设计
3.1 程 序 流 程 图
3.2 软 件 设 计 描 述
(1)整个工程包含 3 个源文件:stm32f10x.s、和 my led.s,stm32f10x_lib.c 其中3stm32f10x.s 为启动代码, 。启动代码作用是:1)堆和栈的初始化;2)向量表定义;3)地 址重映射及中断向量表的转移;4)设置系统时钟频率;5)中断寄存器的初始化;6)进入 汇编主程序。my led.s 是汇编主程序,完成所有控制功能。
(2)程序工作原理概述: 对于 led 的控制,主要通过对 i/o 端口的配置,将对应的寄存器相应的位写 1 写 0 控 制。程序首先要经过启动代码段进行相关的启动配置,然后跳转到汇编主程序。 汇编主程序完成了时钟、端口配置以及 led 点亮的所有功能。首先需要对于系统时钟进 行配置,已获得系统所用频率。 然后进行端口配置低、高寄存器配置,获得输入输出模式以及最大速度。将时钟和端口 配置完成后,就可以对输出寄存器进行对应位的写值控制了,从而达到控制 led 的目的,高 电平点亮,低电平熄灭。 点亮 led 后,转入延时子程序,延时子程序写值 0x000fffff,做寄存器值减法,减到 0 后,过程所需时间即是延时时间,即单个 led 点亮时间。本程序设置循环点亮模式,即 led1 到 led4 顺序循环点亮,将对应位逐次写 1,如果需要修改点亮模式,只需修改寄存器的值以 及写值顺序即可。
(3)寄存器配置描述 端口配置低寄存器(gpioc_crl) c口基地址:0x40011000 偏移地址:0x00 复位值:0x44444444 寄存器配置:0x22222222 功能含义: 口配置低寄存器为模拟输入模式, 端 通用推挽输出模式, 输出模式, 最大速? 2mhz
端口配置高寄存器(gpioc_crh) c口基地址:0x40011000 偏移地址:0x04 复位值:0x44444444 寄存器配置:0x22222222 功能含义: 口配置高寄存器为模拟输入模式, 端 通用推挽输出模式, 输出模式, 最大速? 2mhz 端口输出数据寄存器(gpioc_odr) c口基地址:0x40011000 地址偏移:0ch 寄存器配置 0xfffffc4f 0xfffffc8f 复位值:00000000h 功能含义 pc.6 位写 1,对应点亮 led1 pc.7 位写 1,对应点亮 led2
40xfffffd0f 0xfffffe0fpc.8 位写 1,对应点亮 led3 pc.9 位写 1,对应点亮 led4
时钟控制寄存器(rcc_cr) 复位和时钟基地址:0x40021000 偏移地址: 0x00 复位值: 0x000 xx83 寄存器配置:0x00000003 功能含义:pll 未锁定,pll 关闭,时钟监测器关闭,外部 1-25mhz 振荡器没有旁?,外部 1-25mhz 时钟没有就绪,hse 振荡器关闭内部 8mhz 时钟就绪,内部 8mhz 时钟开启。 时钟配置寄存器(rcc_cfgr) 复位和时钟基地址:0x40021000 偏移地址: 0x04 复位值: 0x0000 0000 寄存器配置:0x00000000 功能含义:没有时钟输出,pll 时钟 1.5 倍分频作为 usb 时钟,pll 2 倍频输出,hse 不分 频,hsi 时钟 2 分频后作为 pll 输入时钟,pclk2 2 分频后作为 adc 时钟,hclk 不分频, hclk 不分频,sysclk 不分频,hsi 作为系统时钟,hsi 作为系统时钟。 ahb外设时钟使能寄存器 (rcc_ahbenr) 复位和时钟基地址:0x40021000 偏移地址:0x14 复位值:0x0000 0014 寄存器配置:0x00000014 功能含义:睡眠模式时闪存接口电路时钟开启,睡眠模式时 sram 时钟开启,dma 时钟关 闭 apb2 外设时钟使能寄存器(rcc_apb2enr) 复位和时钟基地址:0x40021000 偏移地址:0x18 复位值:0x0000 0000 寄存器配置:0xffffffff 功能含义:usart1 时钟开启,spi1 时钟开启,tim1 时钟开启,adc2 时钟开启,adc1 时钟开启,io 口 e 时钟开启,io 口 d 时钟开启,io 口 c 时钟开启,io 口 b 时钟开启,io 口 a 时钟开启,辅助功能 io 时钟开启
3.2 主 要 程 序 说 明
(1)启动代码转入汇编主程序的设置: 启动代码段设置: reset_handler proc export reset_handler [weak] import main ;声明外部函数,导入符号 ldr r0, =main ;等待工作调用 bx r0 ;跳转到汇编主程序 main 函数 endp ;过程段结束 汇编主程序设置: area mycode,code,readonly ;定义一个代码段,属性为只读 export main main proc (主程序功能段开始) endp end (2)汇编主程序 ;配置时钟
5ldr r1,=0x40021000 ldr r0,=0x00000003 str r0,[r1,#0x00] ldr r0,=0x00000000 str r0,[r1,#0x004] ldr r0,=0x00000014 str r0,[r1,#0x14]
时钟控制寄存器入口
配置时钟控制寄存器(rcc_cr)
配置时钟配置寄存器(rcc_cfgr)
配置 ahb 外设时钟使能寄存器 rcc_ahbenr
ldr r0,=0xffffffff str r0,[r1,#0x18] ;配置 apb2 外设时钟使能寄存器(rcc_apb2enr) ;----------------------------------------------------------------------------------------------------;配置端口 movs r0,#0x22222222 ldr r1,=0x40011000 str r0,[r1,#0x00] ;配置端口配置寄存器 gpioc_crl movs r0,#0x22222222 ldr r1,=0x40011000 str r0,[r1,#0x04] ;配置端口配置寄存器 gpioc_crh ;---------------------------------------------------------------------------------------------------;点 亮 led ldr r0,=0xfffffc4f str r0,[r1,#0x0c] ;将 0xfffffc4f 写进 gipoc_odr, 点亮 led1 bl delay ;延时 --------------------------------------------------------------------------------------------------------ldr r0,=0xfffffc8f str r0,[r1,#0x0c] ;将 0xfffffc8f 写进 gipoc_odr, 点亮 led2 bl delay ;延时 -------------------------------------------------------------------------------------------------------ldr r0,=0xfffffd0f str r0,[r1,#0x0c] ;将 0xfffffd0f 写进 gipoc_odr, 点亮 led3 bl delay ;延时 -------------------------------------------------------------------------------------------------------ldr r0,=0xfffffe0f str r0,[r1,#0x0c] ;0xfffffe0f 写进 gipoc_odr, 点亮 led4 bl delay ;延时 -------------------------------------------------------------------------------------------------------b main ;跳到 main 函数 ;------------------------------------------------------------------------(2)延时子程序 delay
6ldr r3,=0x000fffff ;延时控制字 delay_1 subs r3,r3,#0x01 ;延时控制字自减 beq delay_out ;为 0 跳出返回 b delay_1 ;不为 0 回转继续做减法 delay_out bx lr ;程序返回
四、 调试与结果
4.1 调 试 过 程
(1) 使用 keil uvision3 通过 ulink 2 仿真器连接 edukit-m3 实验平台,打开建立的' my led controler 工程,点击子目录下的 my led.s 文件,编译链接工程。 设置 flash——debug, 选择 cortex-m3 j-link, flash——utilities, 同样选择 cortex-m3 j-link,效果如下
点击编译链接,生成 hex 文件
点击 load,下载源程序到 stm32,运行程序 (2) 选择软件调试模式,点击 mdk 的 debug 菜单,选择 start/stop debug session 项或 ctrl f5 键。
7在逻辑分析仪中添加 gpioc_odr.6、gpioc_odr.7、gpioc_odr.8、gpioc_odr.9, 点击 run 按钮即可在逻辑分析仪中看波形。
4.2 测 试
本程序由于大量的涉及到原理简单,测试方便,只需要单步运行,查看寄存器的值,就 可以测试程序的正确性。
(1) 程序开始时各寄存器的值
(2)将时钟控制寄存器入口基地址赋值给 r1
(3)r1 既已经被赋值了时钟控制寄存器入口地址,利用偏移地址将时钟各控制寄存器的地 址赋值给(r1 偏移量) 达到配置 rcc_cr、rcc_cfgr、rcc_ahbenr、rcc_apb2enr 的目的, , 集体寄存器值变化如下:
8(4)端口配置情况测试:i/o c 口入口地址写进通用寄存器 r1,利用基地址加偏移地址找 到端口配置寄存器 gpioc_crl、gpioc_crh,然后将控制字 0x22222222 写进该寄存器。
(5)端口输出数据寄存器(gpiox_odr) 的值的变化,直接反映了外部 led 的亮灭变化, 采用逐位写 1 的方式,实现循环点亮,此时通用 r1 已经被写进了 c 口的入口基地址,只需 加上偏移地址#0x0c,便是 gpiox_odr 的地址,每次写值控制 led 点亮后,程序跳转到延 时子程序,所测试结果如下: 将 0xfffffc4f 写进 gipoc_odr 点亮 led1 延时子程序运行寄存器变化情况
当转入延时子程序后,寄存器 r3 值做减 1 算法,从 0x000fffff 循环减至 0,是为延时 时间,然后继续跳转至端口输出寄存器配置,点亮 led2,接着再次跳转到延时子程序,r39再次做减 1 运算,如此控制 led 循环点亮。 转入延时子程序
退出延时子程序对 led2 对应位写 1 况
4.3 结 果 及 描 述
(1)逻辑分析仪中波形:
gpioc_odr.6、 gpioc_odr.7、 gpioc_odr.8、 gpioc_odr.9 的波形即对应的 led1、 led2、led3、led4 高低电平波形,由此可以验证程序的正确性,即 led 确实按照程序的 思想循环顺序点亮。
(2)当将程序下载到 stm32 中后,edukit-m3 实验平台上四个 led 确实循环点亮,进一 步验证控制程序的正确性。
五、总结
本设计是基于 stm32 的汇编语言编写的 led 循环顺序点亮控制程序,原理简单易行, 程序可修改性和可读性强, 件电路也很简单, 需要外扩电路, 接利用试验台内部接线, 硬 不 直 通过对 gpio 的控制来相应地点亮 led 灯。 整个控制程序只需要找到相应的时钟、端口、输出寄存器的地址,以及各控制寄存器的 偏移地址,直接寻址写值控制,这是与 c 语言程序最大的不同点,即汇编编程更加的贴近硬 件,要求熟悉内部寄存器的地址,熟悉如何配置各位,这就要求对寄存器每位的含义非常清 楚。 通过用汇编语言编写 i/o 控制程序, 进一步熟悉了解了 stm32 gpio 操作, 以及 cortex m3 的内部架构和优点,学会了如何使用 keil realview 开发 stm32,以及如何进行程序单 步调试,寄存器值查看。了解了 edukit-m3 实验平台内部结构和优良的功能。
怎么写报告178人觉得有帮助
嵌入式课程设计报告怎么写
做嵌入式课程设计报告的时候,得先确定好目标是什么,这个目标要是具体的,不能太笼统。比如你想做一个智能灯控制系统,那就要明确要实现什么功能,像开关控制、亮度调节这些都要提前想好。接着就是查阅资料了,找一些相关的文献和资料,这一步很重要,能帮你了解别人是怎么做的,也能避免走弯路。
在写报告的时候,第一步是把项目背景和意义写清楚,这部分不能太简略,要让看的人明白为什么要搞这个项目。然后就是详细描述设计方案,这里要用到不少专业术语,像单片机选型、电路设计原理之类的,这些都是关键点。记得画几张图,像电路图、流程图这类的,这样看起来直观些,也方便别人理解你的思路。
写技术方案的时候,得把硬件和软件分开来说。硬件部分要写清楚用了哪些元器件,为什么选这些,还有电路连接的方式。软件部分,主要讲程序设计的思路,用到了哪些算法,怎么实现的功能。这部分可能会有点复杂,但一定要条理清晰,不然别人看了会很头疼。
做实验验证的时候,要记录下各种参数和结果,像测试条件、测试方法、测试数据这些都要写全。如果出现了问题,也要如实写出来,说一下是怎么解决的。有时候调试过程中可能遇到一些意想不到的情况,比如某个传感器总是读数不准,这时候就得调整电路或者修改程序,最后达到预期效果为止。
写报告的时候,要注意格式规范,虽然不要求太死板,但基本的顺序还是得遵守的。像摘要、关键词、正文这些部分都不能少,摘要要简洁明了,关键词挑几个最能代表报告内容的词就行。正文里面的数据图表要标注清楚,引用别人的成果也要标明出处,这是基本的学术道德。
有时候写着写着可能会忘记前面写了什么,导致前后有些矛盾的地方,这种情况得仔细检查一下。还有就是语言表达上,尽量通俗易懂,别用太多晦涩难懂的词。写完之后最好找个同学帮忙看看,他们提的意见可能会很有帮助,毕竟旁观者清嘛。
【第8篇】电力电子课程设计报告范文2050字
电子课程设计是在先修理论课:电路理论、模拟电子、数字电子,以及与其相对应的实验课:电路理论实验、模拟电子实验、数字电子实验的基础上开设的一门以培养学生的设计能力、综合应用能力和工程实践能力为目标的必修课。
我国经济、科技的发展和国际范围内电子技术的发展、电子新产品的涌现,对电子类人才的培养提出了一个更高的标准和要求。而我国传统的教育思想和教学方法中重知识、轻能力,重理论、轻实践的教育思想已经不能适应现阶段人才培养的需要。实践教学对于提高学生的综合素质,培养学生的创新精神和实践能力具有特殊的作用。
1. 改革的理念
(1)以“走出去,用得上”为目标,顺应现代科技的发展态势出发,采取工程集成的教学观点,加强课程设计的数字化、综合化、系统化实验。
(2)重视设计方法学的变革,逐步培养学生熟练应用现代互设计工具,增强学生应用大规模复杂系统的能力。
(3)在理论课教学和基础实验教学中,注重加强基础拓展知识面,增强学生的工程实践能力。
(4)以人为本,把情感因素考虑进去,充分发展个性,因材施教。把培养创新意识和创新能力放在核心地位。
(5)打破院系甚至学校的壁垒,充分利用现有资源,本着“宁可用坏,不许放坏”的原则,为学生提供尽量多的
实践环境和实践仪器设备。
2. 实验教学新方法
(1)分层次。把理论教学、基础实验教学和课程设计融为一体,做到一条龙、不断线、重基础、分层次。在新的教学模式中,电子技术分为三个层次:基础理论教学,基础实验教学,综合应用实验教学和科技创新实验教学。其中电子设计课程属于第三层即综合应用层。
教学内容有着必然的连续性,“我要的是葫芦”使不得,既不能像传统的教学体制中重理论、轻实践,但也不能“改革过度”,片面强调实验的重要性。学理论是为了应用,实验也是为了应用,仅仅是在实践中所起的作用不尽相同而已。
基础实验教学又分为两个小的层次:基础实验和设计型实验。基础实验是为了验证理论,使学生对理论有更深的理解,并加固记忆;提高型实验运用某一或某几个理论,设计小型的电子产品,或电子产品的一个模块,对近期学的知识点加以综合应用。
综合应用层实验是在学完电路理论、模拟电子和数字电子及电路理论实验、模拟电子实验、数字电子实验后开设的一门必修课。通过分层次的实验,使学生综合利用所学的知识,学会电子系统设计的基本步骤、硬件安装方法、软件调试方法,学会应用新型的设计工具和仿真工具。使学生的知识结构和设计素质方面大幅度地提高,将比较分散的知识点能综合运用到实际中去。
科技活动层主要包括各类赛事。例如全国大学生电子设计大赛、全国大学生挑战杯科技竞赛以及众多公司举办的电子设计大赛。
(2)充分利用网络资源,在时间和空间上予以开放,改变传统课程设计运作模式。以往进行电子课程设计,具有时间和空间上的局限性。教师和学生任何一个环节出现问题,就不能达到交流的目的,且时间规定得较为严格,从教师给出题目到交实验报告为两周的时间。新的模式是一个学期:实验题目在学期初就发布到网上,学生根据自己的喜好进行在线选择,实验室提供通用的、常规的元器件,其它的器件鼓励学生自己到电子市场去选购器件,让他们熟悉电子器件市场,学会成本核算,为工作后的工程设计做一个“小热身”。学生根据自己的时间到实验室调试,到期末完成即可。
(3)将电子设计新技术、新方法融入到设计中。要求学生对自己的设计先进行软件仿真,根据仿真给出相关器件的参数,以及输入输出数据和波形图。做到虚拟仿真和硬件实验相结合――先虚拟后硬件,淡化软件和硬件设计界限,使学生体会和掌握设计方法学革命所带来的'科学化和高效率。要求或建议学生掌握eda方法,以及常用的mutisim、protel等仿真软件使用。
(4)本着“多样化、综合性、研究型、趣味性”的原则,精心设计实验题目和内容。设计多个题目,学生选做的实验空间加大。每一个题目都和当前新技术、新产品甚至生活中常用品有联系,有的是学院正在进行的项目的一个子模块。难度和工作量适中,设计的内容和所学的理论知识紧密联系,又有一定的提高,这样既激发了学生的学习兴趣,又不使他们在中途望而却步。通过这些待探索性和研究型的设计题目的锻炼,学生将学过的知识串联起来,加以综合和应用,以理论指导实验,理论得到了运用、加深和升华。
(5)改变考核制度。考核的公正性是教育的公平性一个重要体现。由于目前我国的教育现状,分数对学生来说很是重要,所以考核公正有利用提高学生学习的积极性。根据课程设计的特点以及不同的侧重点,对环节进行细分,分为设计、仿真、参数的设定、安装、调试,对遇到问题的解决能力、实现的功能、性能指标测试和试验报告、总结答辩等内容,借鉴“以考促教,以考促学”的思想,每一个环节有不同的分值。
3. 结束语
实践证明,新模式的建立和实施,改变了学生的知识结构,培养了学生的创新意识,提高了学生的综合设计和工程实践能力,为后续层次的学习例如科技创新实验和走向工作岗位打下了坚实的基础。实施新模式后学生在各类竞赛获得的奖项和用人单位的好评是最好的见证。
怎么写报告102人觉得有帮助
做电力电子课程设计报告,这活儿得认真对待。开头部分,先写个引言,说说这个设计的目的和背景,为什么要做这个事,跟实际应用扯上点关系,显得有深度。比如,现在新能源发展挺火的,可以提一下电力电子技术在这块的应用,这样听着就专业。
接着就是设计方案了。这部分最重要,得把你的思路写清楚。你可以从几个方案里挑一个你觉得最靠谱的,然后详细描述它的原理、组成部件什么的。用专业术语,但别堆砌,不然看着费劲。记得画个框图,直观些。不过有时候写着写着可能会跑偏,比如突然想起别的方案的优点,就忍不住多写几句,这样就有点乱了。
然后就是计算环节。这是体现你本事的地方,公式、参数什么的都得算准了。计算过程要一步步来,别跳步,不然检查的时候容易漏掉错误。这里可能会出点小问题,比如单位没统一,或者抄错数字了,这种事常有,自己多检查几遍就好。
接下来就是制作和调试了。这部分要写实一点,说说遇到什么困难,怎么解决的。比如电路焊接时焊错了地方,结果调试一直通不过,后来才发现是接线搞错了。这种经历很宝贵,写出来能让报告更有说服力。
最后是结果分析。把你得到的数据整理一下,看看是不是符合预期。要是偏差太大,得好好分析原因,是理论有问题还是操作不当。这一部分写的时候可能词穷,想不出太多词来形容,就简单说说就好。
整篇报告写完后,别忘了校对一遍。有时候会发现一些小毛病,比如标点符号用错,或者句子不通顺,这些问题虽然不大,但会影响整体观感。校对的时候要耐心,别急着交差。


















