单片机综合设计报告

合集下载

单片机的设计报告

单片机的设计报告

单片机的设计报告一、设计概述本设计报告主要围绕单片机的设计和实现展开。

单片机的应用广泛,具有集成度高、体积小、可靠性高、功耗低等优点,被广泛应用于智能控制、数据采集、通信、家电等领域。

本报告将详细介绍单片机设计的全过程,包括需求分析、硬件平台选择、软件平台搭建、系统设计、算法与实现、测试与验证、优化与改进等方面。

二、需求分析在单片机设计之前,需要进行详细的需求分析。

根据实际应用需求,确定单片机需要实现的功能,如输入输出控制、数据采集、通信等。

同时,需要考虑单片机的性能指标,如处理速度、存储容量、功耗等。

通过需求分析,为后续的硬件和软件设计提供依据。

三、硬件平台在硬件平台方面,需要根据需求分析选择合适的单片机型号。

单片机的选型需要考虑其性能、功能、开发环境等因素。

在硬件设计过程中,还需要根据单片机的引脚配置和资源情况,设计合适的电路板,以满足实际应用需求。

四、软件平台在软件平台方面,需要选择合适的开发工具和编程语言。

常用的单片机开发工具包括Keil、IAR等,这些工具提供了丰富的库函数和调试手段,方便开发者进行程序的编写和调试。

在编程语言方面,常用的有C语言和汇编语言,需要根据实际情况选择合适的编程语言。

五、系统设计在系统设计方面,需要根据实际需求和硬件平台,设计合适的系统架构。

系统架构需要考虑单片机的资源分配、数据处理流程、通信协议等方面。

同时,还需要设计合适的系统流程图和数据结构,以确保程序的正确性和可维护性。

六、算法与实现在算法与实现方面,需要根据实际需求和系统设计,选择合适的算法并进行实现。

在算法实现过程中,需要考虑单片机的性能和资源限制,以确保算法的可行性和可靠性。

同时,还需要对算法进行优化和改进,以提高系统的整体性能和稳定性。

七、测试与验证在测试与验证方面,需要搭建合适的测试平台对单片机进行测试和验证。

测试内容包括功能测试、性能测试、稳定性测试等。

在测试过程中,需要记录详细的测试数据并进行结果分析,以确保单片机满足实际应用需求。

单片机设计报告

单片机设计报告

单片机设计报告一、引言。

单片机是一种集成了微处理器、存储器、定时器、串行通信接口等功能于一体的微型计算机系统,广泛应用于各种电子设备中。

本报告旨在介绍单片机设计的基本原理、流程和应用,以及对单片机设计过程中的一些关键问题进行探讨。

二、单片机设计流程。

1. 确定需求,首先,需要明确单片机设计的具体需求,包括功能、性能、成本等方面的要求。

2. 硬件设计,根据需求,进行单片机硬件电路设计,包括选择合适的单片机型号、外围电路设计、PCB布局等。

3. 软件设计,编写单片机软件程序,包括程序框架设计、算法实现、调试等。

4. 联调测试,将硬件和软件进行联调测试,确保单片机系统的稳定性和可靠性。

5. 产品验证,对设计的单片机系统进行全面验证,包括功能验证、性能验证、可靠性验证等。

三、单片机设计关键问题探讨。

1. 单片机选型,在单片机设计过程中,选择合适的单片机型号是至关重要的一步,需要综合考虑性能、功耗、成本等因素。

2. 外围电路设计,外围电路设计直接影响到单片机系统的稳定性和可靠性,需要合理布局和精心设计。

3. 软件算法优化,在单片机设计过程中,软件算法的优化能够提高系统的性能和效率,需要不断优化和改进。

4. 系统集成测试,单片机系统集成测试是确保系统功能完整性和稳定性的关键环节,需要充分测试和验证。

四、单片机设计应用案例。

以智能家居控制系统为例,介绍单片机设计在实际应用中的具体案例。

智能家居控制系统利用单片机实现对家居设备的远程控制和监控,包括灯光控制、空调控制、安防监控等功能,极大地提高了家居生活的舒适性和便利性。

五、结论。

本报告介绍了单片机设计的基本流程、关键问题探讨和应用案例,通过对单片机设计的深入了解,可以更好地应用于实际工程中,提高单片机系统的设计和开发能力。

六、参考文献。

[1] 《单片机原理与应用》,XXX,XXX出版社,200X年。

[2] 《嵌入式系统设计与开发》,XXX,XXX出版社,200X年。

单片机系统设计报告范文

单片机系统设计报告范文

单片机系统设计报告范文1. 引言本报告介绍了一个基于单片机的系统设计。

本项目旨在设计一个可靠、高效的控制系统,能够实现某一特定功能。

本报告将详细介绍系统的设计目标、硬件设计和软件设计,并对系统进行评估和讨论。

2. 设计目标本项目的设计目标是实现一个智能温湿度控制系统。

系统的主要功能包括实时监测环境的温度和湿度,并根据设定的阈值自动控制温湿度,保持舒适的环境条件。

3. 硬件设计3.1. 主控单元本系统选择了常用的基于单片机的主控单元,采用XMC4500系列单片机。

此单片机具有高性能、低功耗和多种外设接口的特点,非常适合本项目的需求。

3.2. 传感器模块为了实时监测环境的温湿度,我们选择了DHT11温湿度传感器。

该传感器具有较高的精确度和良好的稳定性,可以通过串口和单片机进行数据交互。

3.3. 人机交互模块为了方便用户对系统进行设定和操作,本系统设计了一个人机交互模块。

该模块包括一个液晶显示屏和几个按键,通过显示屏和按键可以实现菜单显示和参数设定功能。

3.4. 控制模块为了控制温湿度,本系统设计了一个控制模块。

该模块通过与主控单元的通信,接收来自传感器模块的数据,并实施相应的控制策略,如开关空调、加湿器等来维持设定的温湿度。

4. 软件设计4.1. 软件架构本系统的软件设计采用了模块化的结构。

主控单元的软件主要分为三个模块:传感器模块、人机交互模块和控制模块。

每个模块都有相应的功能函数,通过调用这些函数来实现不同的功能。

4.2. 传感器模块传感器模块负责实时读取温湿度传感器的数据,并将数据发送给主控单元。

为了增加系统的稳定性,我们设计了数据校验和容错机制。

4.3. 人机交互模块人机交互模块负责显示菜单和接收用户的操作。

用户可以通过按键来选择菜单和设定参数。

我们设计了一个菜单管理器和按键管理器来实现该模块的功能。

4.4. 控制模块控制模块根据传感器模块提供的数据和用户设定的参数,实施相应的控制策略。

例如,当温度超过设定值时,控制模块会发送控制信号给空调,打开空调降低室内温度。

51单片机课程设计报告

51单片机课程设计报告

51单片机课程设计报告一、课程目标知识目标:1. 理解51单片机的硬件结构、工作原理及其功能特点;2. 学会使用51单片机的指令系统进行程序设计;3. 掌握51单片机与外围电路的接口技术,能实现简单的硬件控制功能;4. 了解51单片机在嵌入式系统中的应用及发展趋势。

技能目标:1. 能够运用C语言编写51单片机的程序,实现基础控制功能;2. 能够运用仿真软件对51单片机程序进行调试,分析并解决简单问题;3. 能够设计简单的51单片机硬件系统,进行电路连接和功能测试;4. 培养学生的动手能力、创新能力和团队协作能力。

情感态度价值观目标:1. 培养学生对电子技术的兴趣,激发学习热情;2. 培养学生严谨、务实的科学态度,提高自主学习能力;3. 培养学生关注社会发展,了解科技在生活中的应用,增强社会责任感;4. 培养学生团队合作精神,尊重他人意见,善于沟通交流。

课程性质:本课程为实践性较强的电子技术课程,以51单片机为核心,结合硬件和软件,培养学生的实际操作能力和创新能力。

学生特点:学生具备一定的电子技术基础知识,对单片机有一定了解,但实践经验不足。

教学要求:结合学生特点,注重理论与实践相结合,强调动手实践,提高学生的实际操作能力和解决问题的能力。

通过课程学习,使学生能够独立完成简单的51单片机控制系统设计。

二、教学内容根据课程目标,教学内容分为以下几个部分:1. 51单片机硬件结构及原理- 熟悉51单片机的内部结构、引脚功能;- 掌握51单片机的工作原理及性能特点。

2. 51单片机指令系统与编程- 学习51单片机的指令集,理解各指令的功能和使用方法;- 掌握C语言在51单片机编程中的应用。

3. 51单片机外围接口技术- 学习51单片机与常见外围电路(如LED、LCD、键盘等)的接口技术;- 掌握外围设备的控制原理及编程方法。

4. 仿真软件的使用- 学习使用Keil、Proteus等仿真软件进行51单片机程序设计和调试;- 掌握仿真软件的操作方法,提高程序调试效率。

单片机综合设计报告(完整版)

单片机综合设计报告(完整版)

综合设计报告设计名称:智能机器人综合设计设计题目:单片机智能温度检测系统设计学生学号:专业班级:学生姓名:学生成绩:指导教师(职称):课题工作时间:2013年6月3 至2013年6月15日说明:1、报告中的第一、二、三项由指导教师在综合设计开始前填写并发给每个学生;四、五两项(中英文摘要)由学生在完成综合设计后填写。

2、学生成绩由指导教师根据学生的设计情况给出各项分值及总评成绩。

3、指导教师评语一栏由指导教师就学生在整个设计期间的平时表现、设计完成情况、报告的质量及答辩情况,给出客观、全面的评价。

4、所有学生必须参加综合设计的答辩环节,凡不参加答辩者,其成绩一律按不及格处理。

答辩小组成员应由2人及以上教师组成。

5、报告正文字数一般应不少于5000字,也可由指导教师根据本门综合设计的情况另行规定。

6、平时表现成绩低于6分的学生,其综合设计成绩按不及格处理。

7、此表格式为武汉工程大学计算机科学与工程学院提供的基本格式(适用于学院各类综合设计),各教研室可根据本门综合设计的特点及内容做适当的调整,并上报学院批准。

成绩评定表学生姓名:学号:班级:答辩记录表指导教师评语目录目录 (I)摘要 (II)Abstract (III)第一章课题背景 (1)第二章整体方案设计 (1)2.1 设计思想 (1)2.2 设计方案 (1)2.3方案比较与选择 (2)第三章详细设计 (2)3.1 电源模块设计 (2)3.2单片机最小系统 (3)3.3.温度采集与量化模块 (4)3.4显示与报警模块设计 (6)3.5总体设计 (7)第四章设计结果及分析 (8)4.1 系统软件仿真 (8)4.2 结果分析 (8)总结 (10)致谢 (11)参考文献 (12)附录主要程序代码 (13)摘要随着现代信息技术的飞速发展和传统工业改造的逐步实现,能够独立工作的温度检测和显示系统应用于诸多领域。

传统的温度检测以热敏电阻为温度敏感元件。

热敏电阻的成本低,但需后续信号处理电路,而且可靠性相对较差,测温准确度低,检测系统也有一定的误差。

单片机课程设计报告

单片机课程设计报告

单片机课程设计实验报告设计题目:基于单片机的多功能综合应用系统的设计专业:电子信息工程班级:姓名:指导老师:目录第一章设计说明1.1 设计目的 (3)1.2 设计内容及要求 (3)第二章硬件电路仿真实现2.1 硬件结构分析 (5)2.2基本功能仿真电图 (6)2.3扩展功能仿真电路图 (10)2.4 实物电路图 (15)第三章软件设计实现3.1软件程序内容 (16)3.2模块分析 (16)3.3 程序流程图 (17)第四章系统测试4.1 软件调试 (19)4.2硬件调试 (19)第五章心得体会 (20)第六章参考文献 (21)附录 (21)第一章设计说明1.1 设计目的单片机在许多领域使用十分广泛,如智能仪器仪表、实时工控、通讯设备、导航系统、家用电器等。

各科任老师们经常说“学好单片机,工作就不成问题了。

”可见学好单片意义之重大。

单片机作为一门基础学科,既是对前期学习C语言的综合运用,也是理论与实践相结合的一大体现。

本次课程设计通过基础部分,拓展功能以及整体电路的实现能很好地锻炼我们的动手及编程能力。

1.2 设计内容及要求内容:1.设计并实现具有复位功能的单片机小系统。

2.利用单片机进行灯光的场景开关控制、循环点亮控制、花样变化控制及速度变化控制(如:左右循环、扩散收缩式移动、流星雨、舞台灯光综合效果、名曲名句跟随显示等。

至少应做两项:前两项选一并有速度变化控制功能,后三项选一或自创特色花样)。

3. 炫彩音乐显示(依据3秒以上某名曲名句,模拟高、中、低音三分频,彩色LED随音频变化而起伏显示的效果,进一步地,LED 亮度跟随音乐响度闪烁)。

4.利用单片机进行灯光的色彩连续变化效果控制。

5.利用单片机进行灯光的三色联动定时控制(以交通灯为例)。

(说明:3、4中二选一,1、2、5必选)6. 配合2至5项中功能,实现液晶屏输出功能或状态信息。

7. 以调节5或4项中的时间为例实现基于4X4键盘的输入功能。

单片机综合设计报告模板

综合设计报告(基于XXX的XXX的设计实现)学院名称(小3号黑体)专业名称(小3号黑体)学生姓名(小3号黑体)学号(Times New Roman小3)指导教师(姓名小3号黑体)报告成绩答辩成绩二〇一二年四月目录功能设计: (2)(一)可以实现XXX功能 (2)(二)可以实现XXX功能 (2)(三)可以实现XXX功能 (2)设计开发平台简介: (3)硬件平台 (3)软件平台 (3)硬件设计及实现: (4)软件设计及实现: (5)实现效果测试: (6)设计总结: (7)功能设计:(阐述所选题目计划实现的全部功能,尽量逐条描述详细,后面效果测试章节严格按照此章节提到的功能进行逐一测试。

控制在一页左右,可以插入一张与实现功能相关的具体应用化图片,比如钟表图片、计数器图片、交通灯图片等)(一)可以实现XXX功能(二)可以实现XXX功能(三)可以实现XXX功能设计开发平台简介:(控制在2页以内,注意图文并茂)硬件平台CS—III……软件平台Keil C51……(硬件电路连接图(器件级,比如用一矩形框代表单片机,一矩形框代码蜂鸣器,两者连线上标注P3_6)、硬件原理结构图(数码管、矩阵键盘等)绘图推荐使用Visio绘制)(软件流程图(规范化)、算法描述、关键性代码、函数、变量等说明,绘图推荐使用Visio绘制)实现效果测试:(包括软件编译、调试通过截图,功能性测试(建议设计一个表格,测试项与前面功能设计章节对应),硬件运行照相等)设计总结:(包括实现这次综合设计所遇到的问题及最终解决办法,参加这次学前训练有什么收获、体会等)。

单片机原理及应用课程设计报告

培养实践能力和创新思维
课程设计为学生提供了一个实践平台,学生可以在实践中锻炼动手能力,培养解决实际问题的能力,同时通过创新思 维,设计出具有特色的单片机应用系统。
促进理论与实践相结合
单片机原理及应用课程设计将理论知识与实践操作相结合,使学生能够更好地理解单片机的实际应用场 景,加深对理论知识的理解。
时间安排
共计8周,每周5天, 每天8小时。
04
单片机应用实践
单片机外围电路设计
电源电路
为单片机提供稳定的电源,确 保单片机正常工作。
时钟电路
为单片机提供稳定的时钟信号 ,保证程序正常运行。
复位电路
在单片机出现异常时,能够实 现自动复位或手动复位。
输入输出接口
实现单片机与外部设备的通信 和控制。
单片机程序编写与调试
单片机的编程语言和开发环境
单片机的编程语言主要有汇编语言和C语言。汇编语言是一种低级语言,直接控制硬件操作,但编程 难度较大;C语言是一种高级语言,具有可读性强、易于编程和维护等优点。
单片机的开发环境是指用于编写、编译、调试和烧录程序的软件环境。常用的单片机开发环境有Keil 、IAR、SDCC等。这些开发环境都支持汇编语言和C语言编程,提供了丰富的库函数和调试工具,方 便开发者进行单片机应用开发。
• 解决方案
检查数码管的位选信号和段选信号是否正确连接。
对未来学习和实践的建议与展望
深入学习
进一步研究单片机的内部结构和工作原理,掌握 更多高级功能和应用。
实践应用
将所学知识应用到实际项目中,提高解决实际问 题的能力。
持续学习
关注单片机技术的最新发展动态,保持学习的持 续性。
THANKS
感谢观看

单片机项目设计报告

单片机项目设计报告一、引言单片机是一种集成电路芯片,具有处理器、存储器和输入输出设备等功能,广泛应用于嵌入式系统中。

本报告旨在介绍一个针对单片机的项目设计,包括设计目标、硬件设计、软件设计和测试结果等内容。

二、设计目标本项目旨在设计一个能够实现温度监测和控制的系统。

具体目标如下:1. 实时监测环境温度,并通过显示器显示当前温度值;2. 当温度超过设定阈值时,自动触发风扇工作,降低温度;3. 当温度降低到设定阈值以下时,自动关闭风扇。

三、硬件设计1. 传感器模块本项目使用温度传感器模块,通过模拟输入引脚读取环境温度。

传感器模块与单片机通过模拟输入引脚相连。

2. 控制模块本项目使用继电器模块作为控制模块,通过控制继电器的通断实现风扇的开关。

控制模块与单片机通过数字输出引脚相连。

3. 显示模块本项目使用液晶显示器模块作为显示模块,通过显示器显示当前环境温度值。

显示模块与单片机通过数字输出引脚相连。

四、软件设计1. 初始化在程序开始时,对单片机进行初始化设置,包括配置模拟输入引脚、数字输出引脚和显示器等。

2. 温度读取通过模拟输入引脚读取温度传感器模块的输出值,将其转换为温度值。

3. 温度显示将温度值通过数字输出引脚发送给液晶显示器模块,实时显示当前温度值。

4. 温度控制设置一个设定阈值,当温度超过该阈值时,控制继电器模块通断,触发风扇工作;当温度低于设定阈值时,关闭风扇。

五、测试结果经过测试,本项目能够准确地实时监测环境温度,并通过液晶显示器模块显示当前温度值。

当温度超过设定阈值时,风扇能够自动启动,有效降低温度;当温度降低到设定阈值以下时,风扇能够自动关闭。

六、结论本项目成功设计并实现了一个能够实时监测和控制温度的系统。

通过单片机的硬件设计和软件设计,实现了温度传感器的读取、显示模块的显示和风扇的控制。

该系统具有温度监测和控制的功能,可广泛应用于各种需要温度控制的场合。

七、展望在今后的改进中,可以考虑添加更多的传感器模块,如湿度传感器、光照传感器等,实现更多的环境监测功能。

单片机课程设计报告

(此文档为word格式,下载后您可任意编辑修改!)目录一、课程设计的目的………………………………………………二、课程设计用的仪器和器件……………………………………………三、课程设计的具体内容…………………………………………………1、总体报告…………………………………………………………………2、硬件设计…………………………………………………………………3、软件流程和程序…………………………………………………………4、调试结果…………………………………………………………………四、课程设计的体会和发生的问题……………………………………参考文献………………………………………………………………………一、课程设计的目的单片机系统课程设计是《单片机原理与接口技术》课程与实验结束后的一门综合性实践课。

所选题目《交通灯控制系统》紧密结合所学的主要内容,加深巩固所学知识,同时对所学内容进行扩展,有一定的深度和广度,能充分发挥学生的能动性和想象力。

通过电路设计、安装、调试等一系列环节的实施,提高学生的单片机应用系统的设计能力。

二、课程设计用的仪器和器件实验设备:试验台、电烙铁、焊锡丝、支架、吸枪、剪刀、PC机一台、仿真仪一台实验材料:电路板(12*8 cm 1块)、发光二级管(红、黄、绿各4只)、发光二级管插座(4只)、接线排座(7针)、电阻(300Ω 12只)、导线(红、黄、绿各0.5米)三、课程设计的具体内容1、总体报告本次单片机课程设计的任务是以单片机为核心设计一个完整的交通灯模拟系统,用P1.0、P1.1、P1.2控制南北通道的红、黄、绿灯;用P1.3、P1.4、P1.5控制东西通道的红、黄、绿灯。

开始时,南北红灯亮并保持25秒,同时东西绿灯亮,保持20秒,20秒钟到了之后,东西绿灯闪亮3次(每周期1秒)后熄灭。

继而东西黄灯亮并保持2秒,到2秒后,东西黄灯灭,东西红灯亮并保持25秒,同时南北红灯灭,南北绿灯亮20秒,20秒到了之后,南北绿灯闪亮3次(频率为0.5秒)后熄灭。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

综合设计报告(基于CS—III的迷宫游戏的设计实现)学院名称计算机科学与技术学院专业名称计科1101学生姓名周杭黄太春学号20111579 20111559指导教师高小明彭勇报告成绩答辩成绩二〇一四年五目录功能设计: (2)(一)可以实现地图选择功能 (2)(二)可以实现所走步数计数功能 (2)(三)可以实现显示当前地图功能 (2)(四)可以实现显示当前已走步数功能 (2)(五)可以实现限制最多可以走多少步以结束游戏功能 (2)(六)可以实现游戏胜利、失败时出现提示画面功能 (2)(七)实际推广应用图所示 (2)设计开发平台简介: (3)(一)硬件平台 (3)(二)软件平台 (4)硬件设计及实现: (5)实现效果测试: (12)设计总结: (14)功能设计:(一)可以实现地图选择功能每当用户开始游戏或重新游戏时都需要先进行游戏地图的选择,地图的选择是通过单片机上的按键C、D、E、F来进行确定,其分别相对应于地图1、地图2、地图3、地图4的选择。

按下其中一个按键即表示已选择地图,当所走步数为零时可以随意切换地图,否则不可再次选择地图。

(二)可以实现所走步数计数功能当用户选择地图后即开始游戏,用户通过单片机4×4的按键进行操作,除了之前用作选择地图的C、D、E、F按键外其它按键只要相对应地可以组成上下左右的关系即可用于控制走向。

当用户按下一个有效按键则系统自动计数,如果按键操作不符合规定系统不进行计数。

(三)可以实现显示当前地图功能当用户按下用于选择地图的按键C、D、E、F其中的任何一个键,LED就会在P1_0进行显示,每次仅可以显示当前所选的地图号。

(四)可以实现显示当前已走步数功能当用户开始游戏后,当所走位置符合要求,系统就会自动进行计数,并且当前计数值LED就会在P1_2 、P1_3进行动态显示,以方便用户实时了解自己的成绩。

(五)可以实现限制最多可以走多少步以结束游戏功能当用户所走步数大于游戏规定的最大步数值时,系统自动结束游戏。

(六)可以实现游戏胜利、失败时出现提示画面功能当用户完成游戏或未完成游戏时LED点阵屏上会显示相应的画面,微笑即胜利,悲伤即失败。

(七)实际推广应用图所示设计开发平台简介:(一)硬件平台CS—III型单片机实验开发设备是由计算机学院独立设计开发,用于《单片机原理及应用》课程的实验教学。

这套设备的设计和开发采用模块化组合设计,可以结合不同类型的单片机模块进行实验开发。

针对课程的教学采用了ATMEL公司的AT89S52单片机芯片,同时配合Keil集成开发环境,支持汇编语言和C语言的程序设计。

功能特点:* 使用CPU主模块与实验板分离设计的方式,同时可以兼容不同类型的单片机模块,并可根据用户需要独立设计模块。

* 采用ISP通信技术,支持在线编程,方便用户开发。

* 采用开关电源设计,安全可靠(板上最高电压不超过18v),驱动电流最高可达5V/3A,过载自动保护,方便用户其他设备的引入* 所有IO端口全部引出,方便与外部端口连接搭配。

* 实验板上的功能器件可直接采用跳线器直接连接,减少过多的飞线连接。

* 2个端口模拟显示,可直接模拟端口高低电平状态,方便用户观察。

* 8个状态开关,可模拟256种开关状态,利用一个端口直接读取。

* 交通灯模拟显示。

* 6个数码管显示,方便开发秒表,时钟,计算器,以及显示特殊提示信息等。

* 一个4*4矩阵键盘,配合状态模拟LED,可作键盘全扫描和逐行扫描,一个shift键,方便键盘功能开发* 独立脉冲产生模块,可产生脉冲及方波,配合中断和计数器使用。

* 普通键盘接口和鼠标接口,方便用户开发通信协议。

* 采用串转并的方式进行端口扩展,同时配合汉字点阵模块显示,可作汉字显示和字库开发。

* 扩展显示模块。

* 具有发声器,配合定时器方便用户开发电子音乐盒。

* 具备8k字节程序/数据存储器扩展。

* 具有RS232转换电路,完成UART通信实验,可与上位机进行通信设计。

* 8通道8位A/D转换模块,可外接信号源,方便数据采集。

* 8位D/A转换实验,两路模拟量输出。

实验开发板功能框图:实验板布局图:(二)软件平台Keil C51 已被完全集成到uVision2的集成开发环境中,这个集成开发环境包含:编译器、汇编器、实时操作系统、项目管理器、调试器等。

uVision2 IDE 可提供灵活的开发环境。

uVision2包含一个器件数据库(device database),可以自动设置汇编器、编译器、连接定位和调试器选项,以满足用户选择各种不同型号微控制器的要求。

此数据库包含:片上存储器和外围设备的信息、扩展数据指针(extra data pointer)和加速器(math accelerator)的特性。

同时,uVision2还可以为片外存储器产生必要的连接选项,以确定起始地址和使用规模。

Keil 集成开发环境的使用如图所示:硬件设计及实现:根据CS —III 型单片机实验开发设备设计出符合要求且在实验开发板上可实现功能的迷宫小游戏。

如下图所示:8X8点阵地图计步计由上图可知,硬件用到了LED数码管显示、蜂鸣器、AT89S52、8X8点阵、4X4按键键盘,其中按键键盘相应位置所对应的数值如下图所示:4X4键盘数值对应软件设计及实现(1)程序流程图如图所示:(2)关键代码延时函数:void delay(){int i;for(i=0;i<500;i++);}键盘扫描函数:int keyboardscanning(){unsigned char tmp;int xline,yline;P2=0x0f;tmp=P2&0x0f;if(tmp==0x0f) //无键盘按下的状态 {flag=0;mark=0;P3_6=1;}else //有键盘按下的状态 {if(tmp==0x07) xline=0;if(tmp==0x0b) xline=1;if(tmp==0x0d) xline=2;if(tmp==0x0e) xline=3;mark=1;P3_6=0;}P2=0xf0;tmp=P2&0xf0;if(tmp==0xf0) //无键盘按下的状态 {mark=0;flag=0;P3_6=1;}else //有键盘按下的状态 {if(tmp==0x70) yline=0;if(tmp==0xb0) yline=4;if(tmp==0xd0) yline=8;if(tmp==0xe0) yline=12;mark=1;P3_6=0;}return xline+yline;}获胜点阵屏显示函数:void WinScreenOut(){int i;for(i=0;i<8;i++){datasend(columnchoose[i]); //点阵屏列选择 datasend(winscreen[i]); //点阵屏列显示 P1_5=1;}}失败点阵屏显示函数:void LostScreenOut(){int i;for(i=0;i<8;i++){datasend(columnchoose[i]); //点阵屏列选择 datasend(lostscreen[i]); //点阵屏列显示 P1_5=1;}}迷宫地图显示函数:void MapScreenOut(){int i;for(i=0;i<8;i++){datasend(columnchoose[i]); //点阵屏列选择datasend(Bitmapscreen[i]); //点阵屏列显示P1_5=1;}datasend(columnchoose[7]); //点阵屏列选择 datasend(0x00); //点阵屏列显示 P1_5=1;}点移动判断函数:void movejudgement(){if(mark==1) //判断是否有键按下 {if(n==2 && flag==0) //下移判断{if(y==0 || (Bitmapscreen[x]>>y-1&0x01)==1) y=y;else{y--;step++;}flag++;n=0;}else if(n==5 && flag==0) //左移判断{if(x==0 || (Bitmapscreen[x-1]>>y&0x01)==1) x=x;else{x--;step++;}flag++;n=0;}else if(n==7 && flag==0) //右移判断{if(x==7 || (Bitmapscreen[x+1]>>y&0x01)==1) x=x;else{x++;step++;}flag++;n=0;}else if(n==10 && flag==0) //上移判断{if(y==7 || (Bitmapscreen[x]>>(y+1)&0x01)==1) y=y;else{y++;step++;}flag++;n=0;}}}主函数:void main(){int bt=0;time();TR0=1; //中断开关while(1){if(mark==1){if(n==15&&step==0){p=4;for(q=0;q<8;q++){Bitmapscreen[q]=Bitmapscreen1[q];}}else if(n==14&&step==0){p=3;for(q=0;q<8;q++){Bitmapscreen[q]=Bitmapscreen2[q];}}else if(n==13&&step==0){p=2;for(q=0;q<8;q++){Bitmapscreen[q]=Bitmapscreen3[q];}}else if(n==12&&step==0){p=1;for(q=0;q<8;q++){Bitmapscreen[q]=Bitmapscreen4[q];}}}bt++;printstep(step,p);if(x==7 && y==0 && step<5) //胜利点阵屏显示画面 WinScreenOut();else if(step>5) //失败点阵屏显示画面 LostScreenOut();else{if(bt<50){movepointscreen(); //移动点显示函数调用}if(bt>=250)bt=0;MapScreenOut(); //迷宫地图函数调用}}}实现效果测试:(2)硬件运行图:图1图2图3图4图5图6设计总结:通过此次训练收获很多,尤其是编程能力有很大提高,同时与同学交流能力也得到了锻炼,基本掌握了数码管,键盘扫描,蜂鸣器,定时器等的编程。

相关文档
最新文档