单片机课程设计报告80441144

合集下载

单片机课程设计报告范文完美版

单片机课程设计报告范文完美版

单片机课程设计报告范文完美版基于单片机的步进电机控制器设计江南大学课程名称:设计题目:班级:姓名:指导教师:物联网工程学院课程设计报告单片机原理及应用基于单片机的步进电机控制器设计号:评分:2022年6月30日基于单片机的步进电机控制器设计目录设计报告要求1、设计目的2、设计要求3、仪器设备4、硬件线路图及主要芯片说明5、系统工作原理6、程序框图7、程序清单8、设计体会9、参考文献基于单片机的步进电机控制器设计设计目的通过具体小型测试系统设计,实践单片机系统设计及调试的全过程,以加深对单片机内部结构、功能和指令系统的理解,并进一步学习单片机开发系统的应用及一些外围芯片的接口和编程方法,初步掌握单片机系统的硬、软件设计技术及调试技巧。

设计要求1)电机转速可以平稳控制2)通过键盘和显示器可以设置电机的转速3)显示电机的速度趋势仪器设备1、STC89C51单片机芯片一片2、ULN2003驱动芯片一片3、MT03641BR八位共阳数码管芯片一片4、8550PNP四个5、不同阻值电阻若干6、30pF电容两个7、12M晶振一个8、按键四个9、28BYJ-48电机一个10、+5V电源一个硬件线路图及主要芯片说明28BYJ-48四相八拍步进电机步进电机是一种将电脉冲转化为角位移的执行机构。

通俗一点讲:当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(及步进角)。

您可以通过控制脉冲个来控制角位移量,从而达到准确定位的主要技术参数相数:四相电压:5VDC电流:92mA电阻:130Ω步距角:5.625°空载牵出频率:800pp基于单片机的步进电机控制器设计空载牵入频率:500pp减速比:1/64牵入转矩:≥78.4mN.mULN2003ULN2003是大电流驱动阵列,多用于单片机、智能仪表、PLC、数字量输出卡等控制电路中。

可直接驱动继电器等负载。

输入5VTTL电平,输出可达500mA/50V。

单片机课程设计报告

单片机课程设计报告

一、单片机介绍单片微型计算机简称单片机,是典型的嵌入式微控制器(Microcontroller Unit),单片机芯片。

常用英文字母的缩写MCU表示单片机,单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。

单片机由运算器,控制器,存储器,输入输出设备构成,相当于一个微型的计算机(最小系统),和计算机相比,单片机缺少了外围设备等。

概括的讲:一块芯片就成了一台计算机。

它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。

同时,学习使用单片机是了解计算机原理与结构的最佳选择。

它最早是被用在工业控制领域。

由于单片机在工业控制领域的广泛应用,单片机由仅有CPU的专用处理器芯片发展而来。

最早的设计理念是通过将大量外围设备和CPU集成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对体积要求严格的控制设备当中。

(一)、单片机分类应用分类单片机作为计算机发展的一个重要分支领域,根据发展情况,从不同角度单片机大致可以分为通用型/专用型、总线型/非总线型及工控型/家电型。

1、按通用专用分类这是按单片机适用范围来区分的。

例如,80C51是通用型单片机,它不是为某种专用途设计的;专用型单片机是针对一类产品甚至某一个产品设计生产的,例如为了满足电子体温计的要求,在片内集成ADC接口等功能的温度测量控制电路。

2、按线型分类这是按单片机是否提供并行总线来区分的。

总线型单片机普遍设置有并行地址总线、数单片机据总线、控制总线,这些引脚用以扩展并行外围器件都可通过串行口与单片机连接,另外,许多单片机已把所需要的外围器件及外设接口集成一片内,因此在许多情况下可以不要并行扩展总线,大大减省封装成本和芯片体积,这类单片机称为非总线型单片机。

3、按控制型分类这是按照单片机大致应用的领域进行区分的。

一般而言,工控型寻址范围大,运算能力强;用于家电的单片机多为专用型,通常是小封装、低价格,外围器件和外设接口集成度高。

单片机课程设计报告

单片机课程设计报告

单片机课程设计报告系别:信息工程系专业:电子信息工程姓名:陈晨学号:201102305226目录1.绪论 (2)1.1单片机基础知识 (4)1.2单片机的应用领域 (4)1.3单片机的发展趋势 (6)2.程序设计 (8)2.1设计目的 (8)2.2设计要求 (8)2.3设计的总体程序 (8)3.设计总结 (11)3.1实验结论 (11)3.2实验总结 (11)1.绪论二十世纪跨越了三个“电”的时代,即电气时代、电子时代和现已进入的电脑时代。

不过,这种电脑,通常是指个人计算机,简称PC机。

它由主机、键盘、显示器等组成。

还有一类计算机,大多数人却不怎么熟悉。

这种计算机就是把智能赋予各种机械的单片机(亦称微控制器)。

顾名思义,这种计算机的最小系统只用了一片集成电路,即可进行简单运算和控制。

它的出现是近代计算机技术发展史上的一个重要里程碑,因为它体积小,通常都藏在被控机械的“肚子”里。

它在这个装置中,起着有如人类头脑的作用,它出了毛病,整个装置就瘫痪了。

单片机具有体积小、功能强、应用面广等优点,目前正以前所未见的速度取代着传统电子线路构成的经典系统,蚕食着传统数字电路与模拟电路固有的领地。

它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。

同时,学习使用单片机了解计算机原理与结构的最佳选择。

现在,这种单片机的使用领域已十分广泛。

彩电、冰箱、空调、录像机、VCD、遥控器、游戏机、电饭煲等无处不见单片机的影子,单片机早已深深地融入我们每个人的生活之中。

单片机能大大地提高这些产品的智能性,易用性及节能性等主要性能指标,给我们的生活带来舒适和方便的同时,在工农业生产上也极大地提高了生产效率和产品质量。

单片机按用途大体上可分为两类,一种是通用型单片机,另一种是专用型单片机。

1.1 单片机基础知识单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。

概括的讲,一块芯片就成了一台计算机。

单片机课程设计报告

单片机课程设计报告

单片机课程设计报告一、设计目的本课程设计旨在通过对单片机的学习和实践,培养学生的嵌入式系统设计能力。

通过设计报告的撰写,学生需要整理和总结自己在课程设计中的工作,提高自己的表达和沟通能力。

二、设计背景随着科技的迅猛发展,嵌入式系统在各个领域得到广泛应用。

单片机作为嵌入式系统设计的重要组成部分,具有体积小、功耗低、可靠性高等优势,被广泛应用于家电、智能家居、汽车电子等领域。

因此,掌握单片机的基础原理和应用技巧对于工程师来说至关重要。

三、设计内容本次课程设计的主要内容为设计并实现一个简单的单片机应用系统。

具体要求如下:1. 选取一个合适的单片机型号,并给出详细的理由;2. 设计一个实际应用场景,如温度监测、电子琴等,要求具备一定的实际意义;3. 硬件方面,设计电路及相关外围电路,如传感器、显示器等;4. 软件方面,设计控制程序,实现所选应用场景的功能;5. 进行系统集成和调试,确保系统正常工作;6. 撰写设计报告,对设计过程和结果进行详细说明。

四、设计方案1. 单片机的选择在选择单片机时,需要考虑应用需求和成本因素。

根据本次设计的要求,我们选择了XX单片机,这款单片机具有性能稳定、易于编程和丰富的外围接口等特点,非常适合本次设计的需求。

2. 应用场景的设计本次设计的应用场景为温度监测系统。

随着人们对室内温度的要求越来越高,设计一个简单且准确的温度监测系统对于提高生活质量至关重要。

我们将使用温度传感器和数码显示器来实现温度的监测和显示功能。

3. 硬件设计在硬件设计方面,我们将按照以下步骤进行:a) 选择合适的温度传感器,将传感器与单片机进行连接;b) 设计电源电路和信号采集电路,确保传感器与单片机之间的正常通信;c) 设计数字显示电路,将单片机采集到的温度数值进行显示。

4. 软件设计软件设计主要包括编写单片机控制程序。

我们将按照以下步骤进行:a) 初始化单片机和相关外围设备,确保其正常工作;b) 采集传感器的温度数值,并进行数据处理;c) 控制数码显示器,将温度数值显示在屏幕上。

单片机课程设计报告

单片机课程设计报告

单片机课程设计报告1. 引言本文档旨在总结并详细介绍单片机课程设计的相关内容。

本次课程设计的主题为XXXX,我将在接下来的章节中介绍该课程设计的目标、设计思路、具体实施过程以及结论。

2. 设计目标本次单片机课程设计的目标是XXXX。

通过该设计,我希望能够进一步提升对单片机的理解和应用能力,掌握单片机的基本原理、编程技巧以及相关技术。

3. 设计思路在进行单片机课程设计之前,我对基于单片机的XXXX进行了详细的调研和学习,确定了设计思路和方案。

该设计主要分为以下几个步骤:3.1 步骤一:需求分析在开始设计之前,我首先进行了对需求的分析。

通过与指导老师和同学们的交流,我了解到XXXX,因此在设计中需要考虑到XXXX的特点和要求。

3.2 步骤二:系统设计基于对需求的分析,我进行了系统设计。

该系统涵盖了硬件和软件两个方面。

硬件方面,我选择了XXXX作为主控芯片,并设计了适配的电路板;软件方面,我使用XXXX编程语言进行开发,并设计了相应的算法和逻辑控制。

3.3 步骤三:系统实现在完成系统设计后,我开始进行系统实现。

首先,我搭建了相应的实验环境和开发平台,确保能够顺利进行编程和仿真。

然后,根据系统设计中的硬件和软件需求,逐步实现了系统功能。

3.4 步骤四:系统测试在完成系统实现后,我进行了系统测试。

通过模拟实际应用场景,对系统进行了功能性测试和稳定性测试,保证系统可以正常运行并且满足设计需求。

4. 设计实施在设计实施阶段,我按照设计思路和步骤进行了详细的操作和编程工作。

具体实施过程如下:4.1 实施步骤一:需求分析在这一步骤中,我与指导老师进行了深入的交流,详细了解了项目的需求和目标。

4.2 实施步骤二:系统设计基于需求分析的结果,我进行了系统设计。

首先,我绘制了电路图,并选择了合适的单片机作为主控芯片。

在软件方面,我使用XXXX编程语言进行开发。

4.3 实施步骤三:系统实现在系统设计完成后,我开始进行系统实现。

单片机课程设计报告

单片机课程设计报告

单片机课程设计报告单片机课程设计报告一、设计目的本次设计旨在通过对单片机的学习和实践,锻炼学生的综合能力和创新思维,提高学生对单片机工作原理的理解和应用能力。

二、设计内容本次设计以控制LED灯的闪烁为主题,在实现基本闪烁功能的基础上,加入了渐变效果和呼吸灯效果等功能。

三、设计过程1. 硬件设计:(1)准备材料:单片机主板、蓝色LED灯、电阻、杜邦线等;(2)连线:按照电路图将单片机与蓝色LED灯连接起来;(3)测试:使用万用表对电路进行测试,确保电路连接正常。

2. 软件设计:(1)编写主程序:在Keil C中编写主程序,设置LED灯闪烁的时间间隔;(2)编写闪烁函数:编写一个函数使LED灯在设定的时间间隔内闪烁;(3)编写渐变函数:利用PWM(脉冲宽度调制)技术,使LED灯的亮度逐渐增加或减小;(4)编写呼吸灯函数:利用PWM技术,使LED灯呼吸般变亮变暗;(5)调试程序:将程序下载到单片机主板上,通过调试工具进行调试,确保LED灯能按照设计要求正常闪烁、渐变和呼吸。

四、设计结果经过反复调试和修改,最终实现了LED灯的闪烁、渐变和呼吸灯等效果。

LED灯的闪烁时间可以通过修改程序中的参数进行调整,渐变和呼吸灯效果可以根据需求进行改动。

五、心得体会通过本次设计,我对单片机的原理和应用有了更深入的了解。

在实践中,我遇到了许多问题,比如电路连接错误、程序调试失败等,但通过钻研、查找资料和与同学、老师讨论,我逐渐解决了这些问题。

这个过程让我学会了不断尝试和学习,培养了我的耐心和解决问题的能力。

六、改进意见在进行本次设计时,由于时间和条件的限制,我只实现了LED灯的基本闪烁、渐变和呼吸灯效果,但这些功能在实际应用中已经比较常见。

如果有更多的时间和资源,我可以进一步完善程序,增加更多创新的功能,或是将LED灯与其他传感器结合,实现更复杂的控制。

总结:通过本次单片机课程设计,我不仅对单片机有了更深入的认识,也锻炼了实践能力和创新思维。

单片机课程设计报告

单片机课程设计报告

单片机课程设计报告本文主要是讨论单片机课程设计。

从实验内容、步骤以及设计思路来详细阐述单片机课程设计的重要性和实践意义。

一、实验内容单片机课程设计是电子信息类专业中不可或缺的一门课程。

它主要涉及到汇编语言、C语言编程和硬件电路设计等知识,通过这门课程的学习,学生们能够深入了解单片机的原理和应用,将软件和硬件的知识结合起来,完成单片机的功能设计。

具体实验内容一般包括单片机的基本原理、编程以及外部设备的应用等。

学生可以通过单片机实验板来实现各种功能,例如:LED灯跑马灯、数码管的显示、温度测量、语音播报等等。

这些实验内容不仅可以帮助学生理解单片机的运行原理,同时也可以提高学生的情境意识和实践能力。

二、实验步骤在进行单片机课程设计实验的时候,需要提前制定实验计划,包括实验步骤、程序设计以及测试等内容。

下面是一个简单的实验步骤示例:步骤一:在电脑上安装单片机开发软件(例如Keil、MPLAB 等),选择适合的芯片型号步骤二:编写程序代码,实现指定的功能,例如闪烁LED灯等步骤三:将程序烧录到单片机中,一般通过USB转串口的方式进行烧录步骤四:将单片机模块接入电路板上,进行实际运行测试步骤五:根据测试结果进行调试和修改,保证程序运行稳定步骤六:根据实验数据撰写课程设计报告,评估实验结果和学习效果三、设计思路在进行单片机课程设计的过程中,需要积极探索新的设计思路,发挥自己的想象力和创造力,充分利用已有的资源和知识。

设计思路主要包括以下几个方面:1、创新思维:在实验设计中,可以采用新的思路、新的方法来解决问题,充分发挥自己的想象力和创造力。

2、开放思维:打破固有的思维模式,与他人交流、思考、合作,获得更广阔的思路和设计方案。

3、整合思维:将已有的知识、技能、经验整合,形成新的设计思路和创意,将多个元素组合成更复杂的设计方案。

4、实践思维:在实验过程中,不断实践、优化和改进,获得更好的设计结果和实践经验。

综上所述,单片机课程设计是电子信息类专业中非常重要的一门课程。

单片机技术及应用课程设计报告

单片机技术及应用课程设计报告

课程设计报告第一部分:概述1.1 课程设计的背景和意义单片机技术在现代工业生产和科研中起着举足轻重的作用,因此对单片机技术的理论和应用知识的学习显得尤为重要。

本课程设计的目的在于通过理论与实践相结合的方式,使学生能够全面掌握单片机技术的基本原理和应用方法,为将来的工作和研究打下坚实的基础。

1.2 课程设计的目标和要求本课程设计旨在培养学生对单片机技术的全面理解和应用能力,具体要求包括:- 掌握单片机的基本原理和结构- 熟练掌握单片机的编程语言和开发工具- 能够设计并实现简单的单片机应用系统- 具备一定的单片机故障排除和维护能力第二部分:课程内容2.1 单片机基础知识- 单片机的定义和分类- 单片机的基本结构和工作原理- 单片机的发展历程及应用领域2.2 单片机编程语言- C语言在单片机编程中的应用- 汇编语言在单片机编程中的应用- 单片机常用编程语言对比与选择2.3 单片机开发工具- 单片机编程与仿真工具的选用- 常用单片机开发板介绍与使用- 单片机调试工具的应用2.4 单片机应用系统设计- 单片机控制原理- 单片机在自动控制领域的应用案例- 单片机在智能监控领域的应用案例2.5 单片机故障排除与维护- 单片机常见故障及解决方法- 单片机维护的注意事项- 单片机相关知识的拓展与学习第三部分:课程设计方法3.1 教学内容的设置本课程设计旨在通过理论教学和实践操作相结合的形式展开教学,具体内容包括课堂讲解、实验演示、课程设计等多种形式。

3.2 教学方法的选择- 教师为主导,学生为主体的教学方式- 实验操作和项目设计为主要形式- 多媒体教学与互动授课相结合3.3 课程评估方式本课程将通过平时表现、实验报告、课程设计报告和期末考核等方式对学生的学习情况进行全面评估。

第四部分:课程设计实施4.1 教学内容详细安排- 第1-2周:单片机基础知识- 第3-4周:单片机编程语言- 第5-6周:单片机开发工具- 第7-8周:单片机应用系统设计- 第9-10周:单片机故障排除与维护4.2 实验教学实施方案- 设置不同难度的实验内容- 强调实验操作的规范性和实用性- 配备实验教学相关设备和工具4.3 课程设计作业安排- 各阶段的课程设计报告要求- 课程设计报告的提交时间和形式- 课程设计报告的评分标准第五部分:课程总结和展望5.1 课程总结通过本次课程设计,学生对单片机技术的基本理论和应用能力得到了显著提升,实践操作能力也得到了锻炼和提高。

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

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

单片机课程设计报告

单片机课程设计报告

(此文档为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、走时(能实现时分秒,年月日的计时)2、显示+秒闪(分屏显示时分秒、年月日,修改时能定位闪烁显示)3、校时+位闪(能用按键修改和校准时钟)4、定时报警在时和分的中间闪动,时间显示格式:0 0。

0 0小时秒点分钟二、实验电路由于电脑画图工具操作不够熟练,现在临近期末又没时间学习画图,所以附上总电路图一份(老师上课所给出的),我们所做的实验是比这个图更简单的,此中截取的一部分,即为我们所做的电路图。

此次实验和实验报告均是我独立完成。

1、芯片、器材选择数字钟电路由单片机、键盘输入模块、时钟显示模块组成。

单片机选用STC89C51芯片既可以;由于是静态显示,所以要用74LS164实现串并转换;键盘输入可以采用4*4键盘;LED数码管采用共阳;2、实验完整电路三、编程思路与资源分配1、32H单元存储时,33H为分单元,20H控制秒闪,R5,R6,R7控制延时的子程序,P1.7,P1.4为修改的按键。

2、中断16次为1秒,每次中断为0.0625秒。

计算得到初值0BDCH。

3、秒闪的实现:在20H单元,20H.3控制秒闪。

0到7二进制为:0000、0001、0010、0011、0100、0101、0110、0111,20H.3为0;8到15二进制为:1000、1001、1010、1011、1100、1101、1110、1111,20H.3位为1。

就这样,每隔半秒闪一次,一秒闪一次,从而实现秒闪。

4、修改校时的实现:P.17和P1.4按键为低电平有效,按下则计数加1.5、调用子程序完成显示:32H为时单元,33H为分单元四、程序功能模块划分(1)第一步:走时+秒闪+显示ORG 0000HLJMP MAINORG 001BH ;定时器1中断入口LJMP ZSORG 0100HMAIN: MOV 32H,#00H ;时单元清零MOV 33H,#00H ;分单元清零MOV 34H,#00H ;秒单元清零MOV 20H,#00H ;秒闪MOV TMOD,#10H ;定时器1非门控方式1MOV TH1,#0BH ;赋0.0625s定时初值MOV TL1,#0DCHMOV IE ,#88H ;允许中断SETB TR1 ;开启定时SJMP $ ;等中断和调用显示ZS: MOV TH1,#0BH ;重新赋初值MOV TL1,#0DCHMOV A,20HINC AMOV 20H,ACJNE A,#0FH,DISP ;1秒未到,跳转MOV 20H,#00MOV A,34HADD A,#01H ;1秒到,秒单元加1DA A ;十进制调整MOV 34H,ACJNE A,#60H,DISP ;1分未到,跳转MOV 34H,#00HMOV A,33HADD A,#01H ;1分到,分单元加1DA AMOV 33H,ACJNE A,#60H,DISP ;1小时未到,跳转MOV 33H,#00HMOV A,32HADD A,#01H ;1小时到,加1DA AMOV 32H,ACJNE A,#24H,DISPMOV 32H,#00H ;24小时到了,时单元清零DISP: MOV DPTR,#TAB ;子程序显示MOV A,32H ;显示时单元SWAP AANL A,#0FH ;显示高四位MOVC A,@A+DPTRMOV SBUF,AJNB TI,$CLR TIMOV A,32HANL A,#0FH ;屏蔽高四位MOVC A,@A+DPTRMOV C,20H.3 ;秒闪MOV ACC.0,CMOV SBUF,AJNB TI,$CLR TIMOV A,33H ;显示分单元SWAP AANL A,#0FHMOVC A,@A+DPTRMOV SBUF ,AJNB TI,$CLR TIMOV A,33HANL A,#0FHMOVC A,@A+DPTRMOV SBUF,AJNB TI,$CLR TIRETI ;中断返回TAB: DB 09H,7DH,07H,15H,71H,91H,81H,3DH,01H,11H ;笔形码END(2)第二步:走时+秒闪+显示+修改校时在第一步的基础上加了键盘功能进去,P.17和P1.4按键为低电平有效,按下则计数加1.此部分程序即为我完成的最后程序,见下面的实验程序,此处步再重复叙述。

单片机课程设计报告

单片机课程设计报告

单片机课程设计 报告一、课程目标知识目标:1. 学生能理解单片机的基本概念,掌握其工作原理及结构组成。

2. 学生能掌握单片机编程的基本语法,如指令系统、寄存器等。

3. 学生能了解并运用单片机在现实生活中的应用,如智能家居、机器人控制等。

技能目标:1. 学生具备使用开发板进行单片机程序编写、调试的能力。

2. 学生能通过小组合作,设计并实现简单的单片机控制系统,培养动手实践能力。

3. 学生能运用所学知识解决实际问题,具备一定的创新能力和问题解决能力。

情感态度价值观目标:1. 学生通过单片机课程学习,培养对电子技术的兴趣和热情,增强学习动力。

2. 学生在学习过程中,养成团队协作、沟通交流的良好习惯,增强集体荣誉感。

3. 学生了解单片机在我国科技发展中的重要性,培养国家使命感和社会责任感。

课程性质分析:本课程为单片机课程设计,旨在让学生通过实践操作,掌握单片机的基本原理和编程技术,提高解决实际问题的能力。

学生特点分析:本年级学生具备一定的电子技术基础知识,对单片机有一定了解,但编程能力和实践操作经验有限。

教学要求:1. 注重理论与实践相结合,强化学生的动手实践能力。

2. 采用项目驱动教学法,引导学生主动探究、解决问题。

3. 培养学生的团队协作能力,提高沟通表达水平。

4. 结合生活实际,激发学生学习兴趣,培养创新思维。

二、教学内容根据课程目标,本章节教学内容分为以下三个部分:1. 单片机基础理论- 理解单片机的概念、发展历程及应用领域。

- 掌握单片机的硬件结构、工作原理及性能指标。

- 学习单片机的指令系统、寄存器、I/O口编程等基本知识。

教学内容对应教材章节:第一章 单片机概述、第二章 单片机硬件结构及工作原理。

2. 单片机编程与调试- 学习单片机编程语言(如C语言、汇编语言)及开发环境。

- 掌握单片机程序编写、调试方法,了解程序下载、运行过程。

- 学习中断、定时器、串行通信等单片机功能模块的使用。

教学内容对应教材章节:第三章 单片机编程语言、第四章 单片机编程与调试。

单片机课程设计报告

单片机课程设计报告

单片机课程设计报告导言随着科技的不断进步和发展,单片机技术在各个领域中的应用日益广泛。

作为电子工程的重要组成部分,单片机课程的设计也具有重要意义。

本报告将分享我在单片机课程设计中的学习和实践经验,并对所设计的项目进行详细分析和讨论,以期对相关领域的学习者提供参考和启发。

一、课程设计背景介绍单片机课程设计是电子工程相关专业学生的必修课程之一。

它旨在培养学生的实际应用能力、创新思维和问题解决能力。

在本次设计中,我选择了一个智能家居控制系统作为课程设计的主题。

通过设计和实现该系统,我将掌握单片机的硬件连接和软件编程,并在实践中进一步理解和应用相关知识。

二、系统设计1. 系统概述智能家居控制系统是一种可以通过手机或者其他设备进行远程控制的家居系统。

该系统可以实现对家中电器、照明、安防等设备的远程控制和自动化管理。

通过单片机控制芯片、无线通信模块和相应的传感器,可以实现对家居环境的监测和控制。

2. 硬件设计系统硬件设计主要包括单片机控制芯片的选择、传感器的选用和连接、通信模块的设置等。

在本设计中,我选择了一款常用的单片机控制芯片,并添加了温湿度传感器、光照传感器和人体红外传感器。

通过这些传感器,系统可以实时监测室内温度、湿度、光强度以及人体动静情况,并根据设置的规则进行相应的控制。

3. 软件设计系统软件设计主要包括单片机的编程、手机APP的开发和服务器的搭建等。

在本设计中,我使用C语言编写了单片机的程序,并通过串口通信与传感器和通信模块进行数据交互。

同时,我还使用Android开发平台进行了手机APP的开发,用户可以通过APP与家居控制系统进行交互和控制。

为了实现远程控制和数据传输,我搭建了一台服务器,并编写了相应的脚本和接口。

三、系统实现和测试1. 硬件连接和调试在硬件设计完成后,我进行了各个部件的连接和调试。

通过仔细查阅硬件连接图和相应的接口说明,我按照规定的步骤进行了连接,并通过测试仪器对各个部件的工作状态进行了检查和调试。

单片机课程设计报告

单片机课程设计报告

单片机课程设计报告一、课程目标知识目标:1. 学生能理解单片机的基本原理,掌握其内部结构及工作方式。

2. 学生能掌握单片机编程的基本语法,具备编写简单程序的能力。

3. 学生能了解单片机在各种实际应用中的功能,如智能家居、机器人等。

技能目标:1. 学生能够运用所学知识,独立完成单片机的硬件连接与调试。

2. 学生能够运用编程软件,编写简单的单片机程序并进行烧录。

3. 学生能够通过小组合作,完成一个具有实际应用价值的单片机项目。

情感态度价值观目标:1. 学生培养对单片机及电子技术的兴趣,激发探索精神。

2. 学生通过课程学习,提高问题解决能力和团队协作能力。

3. 学生能够认识到单片机技术在实际应用中的价值,增强社会责任感和创新意识。

课程性质:本课程为实践性较强的学科,要求学生结合理论知识,动手实践,培养实际操作能力。

学生特点:六年级学生具备一定的逻辑思维能力,对新事物充满好奇,但需加强团队协作和问题解决能力的培养。

教学要求:注重理论与实践相结合,关注学生的个体差异,提高学生的动手能力和创新能力。

通过课程学习,使学生在知识、技能和情感态度价值观方面均取得明显成果。

教学设计和评估将围绕具体学习成果展开,确保课程目标的实现。

二、教学内容1. 单片机基础理论:包括单片机的基本原理、内部结构、工作方式等,对应教材第一章内容。

- 单片机的发展历程与分类- 单片机的内部结构与功能- 单片机的工作原理与指令系统2. 单片机编程语言:学习单片机编程的基本语法和编程技巧,对应教材第二章内容。

- 汇编语言的编写与烧录- C语言的编写与烧录- 常用编程指令的应用3. 单片机硬件连接与调试:学习如何搭建单片机硬件系统并进行调试,对应教材第三章内容。

- 单片机最小系统搭建- 外围电路的设计与连接- 硬件调试方法与技巧4. 单片机应用案例:分析并实践单片机在各种实际应用中的功能,对应教材第四章内容。

- 智能家居系统设计- 机器人控制程序编写- 物联网应用案例分析5. 实践项目:结合所学知识,完成一个具有实际应用价值的单片机项目,为期4周。

单片机课程设计实验报告

单片机课程设计实验报告

单片机课程设计实验报告一、课程目标知识目标:1. 让学生理解单片机的基本原理和功能,掌握其内部结构及工作流程。

2. 使学生掌握单片机编程的基本语法和编程技巧,能独立完成简单的程序编写。

3. 帮助学生了解单片机在现实生活中的应用,提高对新技术、新领域的认识。

技能目标:1. 培养学生运用单片机进行实验设计和实践操作的能力。

2. 培养学生分析问题、解决问题的能力,提高创新思维和动手实践能力。

3. 提高学生的团队协作和沟通能力,学会在实验过程中相互交流、共同进步。

情感态度价值观目标:1. 激发学生对单片机及电子技术的兴趣,培养主动学习的习惯。

2. 培养学生严谨、细致的实验态度,养成良好的实验操作习惯。

3. 增强学生的自信心和责任感,使他们认识到学习单片机对国家科技发展的意义。

课程性质分析:本课程为单片机课程设计实验,侧重于实践操作和实际应用。

课程要求学生具备一定的电子技术基础和编程能力,通过实验深入了解单片机的工作原理和应用领域。

学生特点分析:本课程面向高年级学生,他们在之前的学习中已掌握了基本的电子技术和编程知识,具备一定的自学能力和动手实践能力。

但学生在单片机应用方面的实践经验不足,需要通过本课程加强实践锻炼。

教学要求:1. 结合课本内容,注重理论与实践相结合,提高学生的实际操作能力。

2. 注重启发式教学,引导学生主动思考、探索,培养学生的创新精神和实践能力。

3. 关注学生的个体差异,给予个别辅导,确保每位学生都能达到课程目标。

二、教学内容1. 单片机基础知识:- 单片机原理与结构- 单片机内部资源及功能- 单片机编程语言(汇编语言、C语言)2. 单片机编程与实验:- 基本输入输出编程- 定时器、中断编程- 模数转换、串行通信编程3. 单片机应用案例:- 实例分析:温度控制器、智能小车等- 创新设计:学生自主选题,设计单片机应用项目4. 实验操作与调试:- 实验步骤与方法- 常用工具与仪器的使用- 故障分析与调试技巧教学大纲安排:第一周:单片机基础知识学习,包括原理、结构、编程语言等第二周:基本输入输出编程,实验一:LED灯控制第三周:定时器、中断编程,实验二:简易电子时钟第四周:模数转换、串行通信编程,实验三:温度传感器数据采集第五周:单片机应用案例分析,学生自主选题,设计单片机应用项目第六周:实验操作与调试,完成设计项目,撰写实验报告教材章节关联:教学内容与教材《单片机原理与应用》相关章节紧密关联,具体包括:- 第一章:单片机概述- 第二章:单片机的结构与原理- 第三章:单片机编程语言- 第四章:单片机内部资源及应用- 第五章:单片机实验与调试教学内容确保科学性和系统性,以培养学生的实际操作能力为目标,注重理论与实践相结合,提高学生的创新能力和实践技能。

单片机课程设计报告

单片机课程设计报告

单片机课程设计总结报告时间:2012年12月23日学校:湖北科技职业学院班级:电信四班老师:李主国人员:一,设计题目:流水灯控制二,设计要求;本次单片机课程设计要求学生实现单片机最小系统板的软硬件集成任务,即根据提供的单片机最小系统板和元件,将各部分组件正确集成为一个系统,并对单片机进行编程,完成特定的实现输入输出功能。

本次课程设计每两名学生为一小组,共同协作完成任务。

单片机板上有四个独立按键,需要分别实现四个不同的功能,并将四部分有机地集成为一个综合性程序,成功编译后下载到单片机ROM中,实现要求的输入输出功能。

单片机开机后自动循环执行其中的一个程序(流水灯程序),按动各按键分别执行对应程序。

以下各子程序当中的时间,要求用定时器实现。

课程设计结束后,按组分别提交本次课程设计的实践报告,内容包括硬件集成方案、软件集成方法、最终源程序以及课程设计体会等,实践报告作为课程设计的成绩评定依据。

三,设计功能描述;流水灯程序:该子程序为必选功能,分四个阶段,四阶段自动依次循环。

第一阶段:8个LED从上到下依次点亮一秒后熄灭。

第二阶段:8个LED每间隔一秒从两端往当中收拢。

第三阶段:8个LED每间隔一秒从当中往两端扩展。

第四阶段:8个LED每间隔一秒闪烁一次,持续八秒。

备选子程序一,间隔时间更改为两秒。

二,暂停当前执行的任务,执行悬球摆程序。

完毕后,继续执行原任务。

三,间隔时间缩短一倍。

★考核评分原则:正确完成软硬件集成任务的,成绩评定为优。

硬件集成正确,子程序有一项不能完全达到要求的,成绩评定为良。

硬件集成正确,子程序只有两项达到要求的,成绩评定为及格。

硬件集成不正确,或达到要求的子程序不足两项,或实验报告不合要求的,成绩评定为不及格。

四,原理图设计:五,程序设计:C文件:#include "1129n.h"bit Flag,FlashFlag;unsigned char btNo=0,Num=20;Tab[]={1,2,4,8,16,32,64,128,0x55,0xaa};PendTab[]={0x81,0x82,0x84,0x88,0x48,0x28,0x18,0x28,0x48, 0x88,0x84,0x82,0x81};void delay(unsigned char n){unsigned char i;while (n--) for (i=0;i<123;i++);}void ledFlow(){static unsigned char i=0;Flag=0;P1=~Tab[i%8];i++;}void pendBall(){static unsigned char i=0;FlashFlag=0;P1=~PendTab[i++];if (i==13){i=0;TR0=1;TR1=0;btNo=1;}}void ledFlash(){static unsigned char i=0;FlashFlag=0;P1=Tab[8+i%2];i++;if (i==6) {i=0;TR0=1;TR1=0;}}void init(){EA=1;ET0=1;ET1=1;EX0=1;EX1=1;IT0=1;//下降沿IT1=1;//下降沿TMOD=0x11;TH1=(65536-50000)/256;TL1=(65536-50000)%256;TH0=(65536-50000)/256;TL0=(65536-50000)%256;TR0=1;TR1=0;}void t0() interrupt 1{static unsigned char i=0;TH0=(65536-50000)/256;TL0=(65536-50000)%256;i++;if (i>=Num) {i=0;Flag=1;}}void t1() interrupt 3{static unsigned char i=0;TH1=(65536-50000)/256;TL1=(65536-50000)%256;i++;if (i>=2) {i=0;FlashFlag=1;}}void int0() interrupt 0{//TR0=0;//TR1=1;//btNo=1;Num=40;}void int1() interrupt 2{ //TR0=0;//TR1=1;//btNo=2;if (Num>1) Num/=2; }int keyScan(){if (!P3_4){delay(5);if (!P3_4){btNo=3;TR0=0;TR1=1;while(!P3_4);}}if (!P3_5){delay(5);if (!P3_5){btNo=4;TR0=1;TR1=0;while(!P3_5);}}return btNo;}void prog(){keyScan();switch (btNo){//case 1:break;//case 2:break;case 3:if (FlashFlag) pendBall();break;case 4:if (Flag) ledFlow();break;default:Num=20;if (Flag) ledFlow();break;}}Main文件:#include "1129n.h"extern bit Flag,FlashFlag;void main(){init();while(1){//if (Flag) ledFlow();//if (FlashFlag) pendBall();prog();}}H文件:#ifndef _1129_H_#define _1129_H_#include <at89x52.h>void ledFlow();void ledFlash();void pendBall();void init();void prog();#endif六,实验结果及心得:实验结果:实现了流水灯程序,该子程序为必选功能,分四个阶段,四阶段自动依次循环第一阶段:8个LED从上到下依次点亮一秒后熄灭。

单片机课程设计实验报告

单片机课程设计实验报告

单片机课程设计实验报告1. 实验目的本实验旨在通过单片机课程设计实验,掌握单片机的基本原理、编程方法和实验操作技巧,培养实际动手能力和创新意识。

2. 实验内容本次实验的内容是使用单片机进行信号采集与控制。

具体包括以下几个部分:2.1 信号采集首先,我们需要利用单片机的模拟输入功能,通过外部传感器采集环境中的温度、湿度和光照等信号,并将其转换为数字信号供单片机处理。

在本实验中,我们采用温湿度传感器和光敏传感器作为信号源,将它们与单片机的模拟输入引脚连接,通过编程读取传感器输出的模拟电压值,并进行相应的数值处理。

2.2 数据处理与显示采集到的信号经过模数转换后,将在单片机内部得到相应的数字值。

接下来,我们需要对这些数据进行处理,并将结果显示在数码管或LCD液晶屏上。

在本实验中,我们可以利用单片机的数字输出端口控制数码管显示温度、湿度和光照度等数据。

也可以通过串口通信方式将数据发送到上位机进行进一步处理和显示。

2.3 信号控制除了信号采集和显示外,单片机还具备信号输出的功能。

我们可以使用单片机的数字输出端口向外部器件发送控制信号,控制其工作状态。

在本实验中,我们可以利用单片机的数字输出口控制LED灯的亮灭,或者控制电机的转动方向和速度等。

2.4 扩展应用我们还可以通过外部扩展模块,如无线模块、蓝牙模块等,将单片机连接到网络或其他设备上,实现更加丰富的应用。

3. 实验步骤1.搭建实验电路:按照实验要求,连接单片机、传感器和显示模块等元件,确保电路连接正确无误。

2.编写程序:打开开发环境,编写单片机程序,实现信号采集、处理和控制功能。

3.烧录程序:将编写好的程序烧录到单片机中,并确保烧录成功。

4.实验调试:连接电源,启动单片机,进行实验调试。

根据实验需求,调整传感器和器件的工作参数,观察实验结果是否符合预期。

5.总结与报告撰写:对实验过程和结果进行总结,撰写实验报告,包括实验目的、实验内容、实验步骤、实验结果及分析等。

《单片机课程设计》报告

《单片机课程设计》报告

机械与车辆学院课程设计题目:姓名:学号:班级:指导老师:时间:成绩:水塔水位控制系统职称:《单片机课程设计》考查评分表、出勤率:□全勤□缺勤较少□缺勤较多□全缺(20%) 2、进度:□较快□正常□较慢□没有按时完成布局焊接:□合理(20%) □错误较多□较合理□原则性错误□基本合理1、程序编写框架:□合理□较合理□基本合理(20%) (10%) (15%) (15%)□原则性错误□基本正确□错漏较多系统调试结果:□实现□基本实现□不能实现1、硬件设计:2、软件设计:3、联调结果:4、过程体味:□合理□合理□正确□属实□较合理□较合理□较正确□较属实□基本合理□基本合理□基本正确□基本属实□不合理□不合理□错漏较多□不属实□思路清晰,内容正确□思路基本清晰,内容基本正确指导教师:吴明友 2022 年 1 月 3 日□错误较多2、程序编写过程:□正确□较正确□思路较清晰,内容较正确□思路较混乱,内容错漏较多一、课程设计性质和目的 (4)二、课程设计的内容及要求 (4)1、硬件设计 (4)2、软件设计 (5)3 、功能要求: (5)三、课程设计的进度及安排 (5)四、设计所需设备及材料 (6)五、设计思路及原理分析 (7)六、流程图及程序编写 (7)(1)根据功能要求画出控制程序流程图。

(8)(2)根据控制程序流程图编写C51 程序 (8)七、调试运行 (10)1 、软件测试: (10)2、硬件测试: (11)八、结果及分析 (12)九、心得体味 (13)十、参考文献 (14)十一、致谢 (14)十二、附录 (15)【1】整流器protel 防真原理图: (15)【2】数字时钟 (16)单片机课程设计是《单片机原理与接口技术》课程与实验结束后的一门综合性实践课。

设计一种基于单片机水塔水位检测控制系统。

该系统能实现水位检测、机电故障检测、处理和报警等功能,实现超高、低警戒水位报警,超高警戒水位处理。

介绍电路接口原理图,给出相应的软件设计流程图和汇编程序,并用Proteus 软件仿真。

单片机课程设计报告[5篇]

单片机课程设计报告[5篇]

单片机课程设计报告[5篇]第一篇:单片机课程设计报告《单片机课程设计报告》学校:专业:班级:姓名:学号:指导教师:摘要由于单片机体积小、成本低、使用方便,所以被广泛地应用于仪器仪表、现场数据的采集和控制。

通过本次课程设计掌握单片机硬件和软件方面的知识,更深入的了解单片机的实际应用。

关键词单片机,程序,流水灯,数码管,温度计,键盘扫描,定时器等。

实验内容一、课程设计的目的以本学期对单片机的学习和认识,并通过本次课程设计加以应用,从而达到一个对所学知识的巩固、更深一步的理解,面对一个电子设计,应对出系统的方案,分析出各个板块来,再对各个板块进一步的具体的设计,先进行硬件电路设计,此时一定要考虑好要用什么元件、各个元件的具体参数、是否能实现应有功能,从而得到一个完整的硬件电路。

在根据该电路设计出软件的功能模块、从而完成程序流程图,在根据流程图完成程序的设计,并通过反复的调试、运行、更正,直至完成既定功能为止,最后将软件、硬件结合进行调试、运行,对其功能进行最终测试,并反复思考其测试中遇到相应问题的原因,并将其一一处理,从而完成本次设计的实验要求,以及本次课程设计的最终目的。

实验一:键盘操作实验实验要求:通过本次实验实现对键盘的控制,操作数码管的显示数字。

实验程序:#include #include #include #include #define WR273 XBYTE[0XC000] #define RD244 XBYTE[0XC000] #define uchar unsigned char #define uint unsigned int sbit DQ =P1^0;uint count=0,x,buf[20],tim,flag;uchar fen,shi;uchar codetable_16_1[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80 ,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e};uchar codetable_16_2[]={0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x78,0x0 0,0x10,0x08,0x03,0x46,0x21,0x06,0x0e};voidled_clc(void){ XBYTE[0X8000]=0XFF;XBYTE[0X9000]=0XFF;XBYTE [0XA000]=0XFF;XBYTE[0XB000]=0XFF;}void delay(unsigned int i){ while(i--);} void delay_1ms(uint z){ uint i,j;for(i=z;i>0;i--)for(j=110;j>0;j--);} uchar key_test(){ WR273=0XF0;if((RD244&0X0F)!=0X0F)return 1;else return 0;}void time_init(){ TMOD=0X01;TH0=(65536-46080)/256;TL0=(65536-46080)%256;TR0=1;ET0=1;EA=1;} void time_display(){if(count==10000)count=0;XBYTE[0X8000]=table_16_1[coun t%10];XBYTE[0X9000]=table_16_1[count%100/10];XBYTE[0XA00 0]=table_16_1[count%1000/100];XBYTE[0XB000]=table_16_1[co unt/1000];} void TIME_SET(){ uchar a,b,c,d,key;while(flag==1){ led_clc();while(!key_test());a=keyscan();XBYTE[0XB000]=table_16_1[a];while(!key_test());b=keyscan();XBYTE[0XA000]=table_16_2[b];while(!key_test());c=keyscan();XBYTE[0X9000]=table_16_1[c];while(!key_test());d=keyscan();XBYTE[0X8000]=table_16_1[d] ;while(!key_test());key=keyscan();if(key==11){shi = a*10+b;fen = c*10+d;flag=0;} } } void TIME_DIS(){if(tim==60){ fen++;tim=0;if(fen==60){ shi++;fen=0;if(shi==24)shi=0;} } XBYTE[0X8000]=table_16_1[fen%10];XBYTE[0X9000]=table_16_1 [fen/10];XBYTE[0XA000]=table_16_2[shi%10];XBYTE[0XB000]=ta ble_16_1[shi/10];} void main(){ uint temp;led_clc();// serial_init();time_init();while(1){ temp=keyscan();if(temp==10)fla g=1;TIME_SET();//XBYTE[0X8000]=table_16_1[temp];//time_display();TIME_DIS();} } void time()interrupt 2 { uchar m;TH0=(65536-46080)/256;TL0=(65536-46080)%256;m++;if(m==20){ m=0;count++;tim++;} } void serial()interrupt 4 { if(RI==1){ x=SBUF;RI=0;} put_char(x);delay_1ms(5);}实验心得体会:通过本次实验,让我对单片机实验有了更深的了解,认为这个实验还是比较容易的,没有花太多的时间。

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

(此文档为word格式,下载后您可任意编辑修改!)沈阳工程学院课程设计任务书课程设计题目:多功能温度巡检仪程序设计系别班级学生姓名学号指导教师吕勇军职称教授课程设计进行地点:任务下达时间:15年1月12日起止日期:15年1月12日起——至15年1月23日止系主任年月日批准1.设计主要内容及要求;编写多功能温度巡检仪程序。

要求:1)多路温度测量和显示。

2)可以设置正常温度范围,越限报警。

2.对设计论文撰写内容、格式、字数的要求;(1).课程设计论文是体现和总结课程设计成果的载体,一般不应少于3000字。

(2).学生应撰写的内容为:中文摘要和关键词、目录、正文、参考文献等。

课程设计论文的结构及各部分内容要求可参照《沈阳工程学院毕业设计(论文)撰写规范》执行。

应做到文理通顺,内容正确完整,书写工整,装订整齐。

(3).论文要求打印,打印时按《沈阳工程学院毕业设计(论文)撰写规范》的要求进行打印。

(4). 课程设计论文装订顺序为:封面、任务书、成绩评审意见表、中文摘要和关键词、目录、正文、参考文献。

3.时间进度安排;中文摘要随着人们生活水平的不断提高,单片机控制无疑是人们追求的目标之一,它所给人带来的方便也是不可否定的,其中数字温度测量就是一个典型的例子。

温度测量系统广泛应用于社会生活的各个领域,如家电、汽车、材料、电力电子等。

但人们对它的要求越来越高,要为现代人工作、科研、生活、提供更好的更方便的设施就需要从数单片机技术入手,一切向着数字化控制,智能化控制方向发展。

本设计以C8051F020芯片为核心,辅以必要的外围电路,设计了一个简易的多路温度巡检仪。

在硬件方面,除了CPU外,系统采用DS18B20数字温度传感器测量温度,采用1602液晶显示屏显示当前温度。

然后通过三个独立按键来设置一个正常温度的范围的最小值和最大值,当温度不在设置的正常温度范围内,用于报警的蜂鸣器就会发出响声。

在软件反面,采用C语言设计,系统能够准确测量三路温度并且显示,并且具有调整温度范围和报警的功能。

此系统严格按照要求设计,最终达到预期的效果,能够测量和显示多路温度,并且可以设置正常的温度范围,超过范围具有报警功能。

是一次比较成功的设计。

关键字: 单片机测温显示报警1课程设计要求1.1设计主要内容及要求编写多功能时钟程序要求:1)多路温度测量和显示。

2)可以设置正常温度范围,越限报警。

1.2 对设计论文撰写内容、格式及字数的要求(1).课程设计论文是体现和总结课程设计成果的载体,一般不应少于3000字。

(2).学生应撰写的内容为:中文摘要和关键词、目录、正文、参考文献等。

课程设计论文的结构及各部分内容要求可参照《沈阳工程学院毕业设计(论文)撰写规范》执行。

应做到文理通顺,内容正确完整,书写工整,装订整齐。

(3).论文要求打印,打印时按《沈阳工程学院毕业设计(论文)撰写规范》的要求进行打印。

(4). 课程设计论文装订顺序为:封面、任务书、成绩评审意见表、中文摘要和关键词、目录、正文、参考文献。

1.3 时间进度安排3.时间进度安排;2 课程设计思路本设计主要介绍单片机编程来实现系统功能,本设计由C8051F020芯片为主要核心,采用DS18B20数字温度传感器测量当前温度,采用1602液晶显示屏显示当前温度。

正常温度的设置采用三个按键,其中一个功能按键,用来选择设置后温度最小值和温度最大值,另外两个按键分别是设置温度时用来加减温度。

2.1 测温和显示数字温度传感器DS18B20,因其内部集成了AD转换器,使得电路结构更加简单,而且减少了温度测量转换时的精度损失,使得测量温度更加精确。

数字温度传感器DS18B20只用一个引脚即可与单片机进行通信,大大减少了接线的麻烦,使得单片机更加具有扩展性。

DS18B20采用单总线的方式和单片机进行通信,通过编程,单片机可以直接从DS18B20内部读取温度值。

本次设计使用的1602液晶显示器为5V电压驱动,带背光,可显示两行,每行16个字符,不能显示汉字,内置128个字符的ASCII字符集字库。

2.2 设置正常温度范围系统采用三个按键,KEY1,KEY2,KE3设置正常的温度范围,其中,KEY1是功能选择按键,按KEY1可以在显示温度,设置正常温度最小值,设置正常温度最大值三个模式中切换。

当选择设置正常温度最小值或设置正常温度最大值模式时,液晶显示正常温度范围的最小值或者最大值,然后通过按键KEY2和KEY3可以选择让这个值增加或者减小。

2.3报警功能报警功能的电路采用一个三极管驱动的蜂鸣器作为报警电路,在显示温度时,当测得三路温度中有任何一路的温度不在正常温度的范围内时,报警电路就开始工作,发出响声。

4 各模块程序设计4.1 测温部分DS18B20采用单总线方式与单片机之间经行通信,所以在程序中,单片机只要操作一个IO口就可以对DS18B20经行操作,完成测温的功能。

DQ0~DQ2分别对应三个DS18B20。

程序主要包括四个函数,分别说传感器初始化操作,读字节操作,写字节操作和读取温度操作。

代码如下:*初始化ds1820 ******************************************************************** uchar Init_DS18B20(void){DQ0 = 1 ;DQ1 = 1 ;DQ2 = 1 ; DQ复位Delay(10) ; 稍做延时DQ0 = 0 ;DQ1 = 0 ;DQ2 = 0 ; 单片机将DQ拉低Delay(100) ; 精确延时大于480usDQ0 = 1 ;DQ1 = 1 ;DQ2 = 1 ; 拉高总线Delay(8) ;presence =DQ;Delay(100) ;DQ0 = 1 ;DQ1 = 1 ;DQ2 = 1 ; 拉高总线return(presence) ; 返回信号,表示初始化成功,否则表示初始化失败}* 读一个字节********************************************************************void ReadOneChar(void){unsigned char i = 0 ;dat0 = 0 ;dat1 = 0 ;dat2 = 0 ;for (i = 8 ; i > 0 ; i--){DQ0 = 0;DQ1 = 0;DQ2 = 0; 给脉冲信号dat0>>= 1;dat1>>= 1;dat2>>=1; 用于存放数据的字节右移一位DQ0 = 1;DQ1 = 1;DQ2 = 1; 给脉冲信号Delay(1); 稍做延时if(DQ0) 如果总线为高,说明返回的数据时1dat0 |= 0x80 ; 将1写入变量中,如果是0则不写,因为前面已经清零了?if(DQ1)dat1 |= 0x80 ;if(DQ2)dat2 |= 0x80 ;Delay(6) ;}}* 写一个字节********************************************************************void WriteOneChar(unsigned char dat){unsigned char i = 0 ;for (i = 8 ; i > 0 ; i--){DQ0 = 0 ;DQ1 = 0 ;DQ2 = 0 ; 单片机将DQ拉低DQ0 = dat&0x01 ; 如果写的数据位是1,则拉高总线,否则总线保持低电平即可DQ1 = dat&0x01 ;DQ2 = dat&0x01 ;Delay(6) ;DQ0 = 1 ;DQ1 = 1 ;DQ2 = 1 ; 拉高总线dat>>=1 ; 要写的数据右移一位}}* 读取温度********************************************************************void Read_Temperature(void){Init_DS18B20() ;WriteOneChar(0xCC) ; 跳过读序号列号的操作WriteOneChar(0x44) ; 启动温度转换Init_DS18B20() ; 初始化DS18B20WriteOneChar(0xCC) ; 跳过读序号列号的操作WriteOneChar(0xBE) ; 读取温度寄存器ReadOneChar() ; 温度低8位wd0=dat0; 先将温度低8位存到16位的变量中wd1=dat1;wd2=dat2;ReadOneChar() ; 温度高8位wd0=wd0+256*dat0; 将温度的高8位也存到16位的变量中wd1=wd1+256*dat1;wd2=wd2+256*dat2;wd0=wd0*0.625; 转化成实际温度,保留一位小数wd1=wd1*0.625;wd2=wd2*0.625;}4.2 显示部分1602液晶显示屏采用并口方式与单片机进行通信,单片机的P0口与液晶的数据口链接,P2.0,P2.1,P2.2分别与液晶的RS,RW,EN三个命令端相连。

通过正确的时序,单片机就可以控制1602液晶显示我们需要的字符。

程序主要包括三个函数,液晶初始化函数,写命令函数,写数据函数。

代码如下:*******************************************************************检查LCD忙状态**lcd_busy为1时,忙,等待。

lcd-busy为0时,闲,可写指令与数据。

*******************************************************************bit lcd_busy(){bit result ;LCD_RS = 0 ;LCD_RW = 1 ;LCD_EN = 1 ;delayNOP() ;result = (bit)(P0&0x80) ;LCD_EN = 0 ;return(result) ;}*写指令数据到LCD **RS=L,RW=L,E=高脉冲,D0-D7=指令码。

********************************************************************void lcd_wcmd(uchar cmd){while(lcd_busy()) ;LCD_RS = 0 ;LCD_RW = 0 ;LCD_EN = 0 ;_nop_() ;_nop_() ;P0 = cmd ;delayNOP() ;LCD_EN = 1 ;delayNOP() ;LCD_EN = 0 ;}******************************************************************* *写显示数据到LCD **RS=H,RW=L,E=高脉冲,D0-D7=数据。

相关文档
最新文档