1《单片机原理与应用》课程设计指导书2010-6-8
- 格式:doc
- 大小:101.50 KB
- 文档页数:8
单片机课程设计指导书一、课程目标知识目标:1. 让学生掌握单片机的基本原理,理解其内部结构和功能。
2. 使学生掌握单片机编程的基本方法,能编写简单的控制程序。
3. 帮助学生了解单片机在现实生活中的应用,拓宽知识视野。
技能目标:1. 培养学生动手操作单片机的能力,能够独立完成基本的硬件连接和程序下载。
2. 提高学生编程能力,能运用所学知识解决实际问题。
3. 培养学生团队协作能力,能够在小组合作中发挥自己的作用。
情感态度价值观目标:1. 激发学生对单片机及电子技术的兴趣,培养其探究精神。
2. 引导学生关注科技创新,认识到单片机在现代社会中的重要性。
3. 培养学生严谨、细致的学习态度,提高自我管理和自我约束能力。
课程性质:本课程为实践性较强的课程,旨在让学生在理论学习的基础上,通过动手实践,提高对单片机的认识和编程能力。
学生特点:学生具备一定的电子技术基础知识,对单片机有一定了解,但编程能力参差不齐。
教学要求:注重理论与实践相结合,强化动手实践,关注学生个体差异,分层教学,提高教学质量。
在教学过程中,将课程目标分解为具体的学习成果,以便进行有效的教学设计和评估。
二、教学内容1. 单片机原理概述:介绍单片机的发展历程、内部结构、工作原理及性能特点。
教材章节:第一章 单片机概述内容安排:2课时2. 单片机编程基础:讲解单片机编程语言(如C语言)、编程规范及编程技巧。
教材章节:第二章 单片机编程基础内容安排:4课时3. 单片机硬件连接:介绍单片机硬件电路设计、接口技术及外围设备。
教材章节:第三章 单片机硬件系统内容安排:4课时4. 单片机程序下载与调试:讲解程序下载方法、调试技巧及故障排查。
教材章节:第四章 单片机程序下载与调试内容安排:2课时5. 单片机应用实例:分析典型的单片机应用案例,引导学生学以致用。
教材章节:第五章 单片机应用实例内容安排:4课时6. 单片机课程设计:指导学生进行课程设计,培养实际操作能力和团队协作能力。
《单片机原理及应用》教学大纲课程中文名称:《单片机原理及应用》课程代码:517016课程性质:专业必修课学时学分:70学时,5学分(其中讲课56学时,实验14学时)先修课程:《电子技术》、《电工基础》适用专业:应用电子技术一、课程性质、目的和要求本课程适用于机电一体化、应用电子技术等相关专业学生学习,是一门专业基础课。
通过本课程的教学,使学生了解和掌握MCS-51 系列单片机结构、原理及其扩展系统的组成。
掌握MCS-51 系列单片机在实际应用中软件系统与硬件系统的设计思想。
结合实验课教学,增强实际动手能力,使学生能够应用MCS-51 单片机进行简单的单片机应用系统的开发。
为今后应用和设计单片机系统打下较牢固基础,也为后续专业课程的学习奠定一定基础。
二、课程内容:(一)课程重点与难点本课程的重点:为第二章、第三章和第五章。
其中第二章和第三章为单片机的基础,是学习单片机技术的必需。
第五章是单片机应用中必然要涉及的内容。
建议加强这三章的教学,并辅以必要的实验手段。
本课程中的难点:为单片机的存贮器组织、各存贮器的地址的确定及I/O口地址的确定。
难点贯穿于第二章、第三章、第四章、第五章和第七章。
在教学上应有一定的连续性,且应循序渐进,讲深讲透。
(二)课程内容第一章:概述第一节MCS-51系列单片机简介第二节单片机应用系统开发简述第二章MCS-51 系列单片机的结构和原理第一节总体结构第二节存储器组织第三节并行端口结构与操作第四节MCS-51 系列单片机片外总线和复位第三章MCS-51 单片机的指令系统第一节指令格式及常用符号第二节MCS-51 系列单片机的寻址方式第三节数据传送指令第四节算术运算指令第五节逻辑运算指令第六节控制转移指令第七节位操作指令第四章MCS-51 单片机的程序设计第一节程序设计方法和技巧第二节汇编语言源程序的编辑和汇编第三节程序设计基础与举例第五章MCS-51 单片机的中断系统及定时器第一节输入/输出的控制方式第二节中断系统第三节中断处理过程第四节定时器/计数器第六章MCS-51 单片机的串行口第一节计算机串行通信基础第二节MCS-51 单片机的串行口第三节串行口应用举例第七章单片机系统扩展技术第一节程序存贮器的扩展第二节并行口的扩展第三节接口芯片第四节键盘及显示器接口第八章MCS-51 单片机的测控接口第一节D/A转换器第二节A/D转换器第三节开关量接口三、实践性教学环节要求(一)实验教学的要求主要用于配合《单片机原理》课程的课堂教学,加强学生对MCS-51系列单片机结构的感性认识和对使用DICE-5103S单片机开发机进行单片机开发的方法的了解,提高学生对单片机原理的理解,帮助学生掌握MCS-51系列单片机在实际应用中软件系统与硬件系统的设计思想。
《单片机原理及应用》课程设计指导书一、目的与意义《单片机原理及应用》是一门技术性、应用性很强的学科,实验课教学是它的一个极为重要的环节。
不论是硬件扩展、接口应用还是编程方法、程序调试,都离不开实验课教学。
如果不在切实认真地抓好学生的实践技能的锻炼上下功夫,单凭课堂理论课学习,势必出现理论与实践脱节,学习与应用脱节的局面。
任随书本上把单片微机技术介绍得多么重要、多么实用、多么好用,同学们仍然会感到那只是空中楼阁,离自己十分遥远,或者会因此而对它失去兴趣,或者会感到它高深莫测无从下手,这些情况都会令课堂教学的效果大打折扣。
《单片机原理及应用课程设计》的目的就是让同学们在理论学习的基础上,通过完成一个涉及MCS-51单片机多种资源应用并具有综合功能的小系统目标板的设计与编程应用,使学生不但能够将课堂上学到的理论知识与实际应用结合起来,而且能够对电子电路、电子元器件、印制电路板等方面的知识进一步加深认识,同时在软件编程、排错调试、相关仪器设备的使用技能等方面得到较全面的锻炼和提高,为今后能够独立进行某些单片机应用系统的开发设计工作打下一定的基础。
二、任务与要求1.任务《单片机原理及应用课程设计》旨在利用MCS-51系列单片机的定时器、中断、串行口、Flash ROM等内部资源,扩展外部4x4矩阵式键盘、4位LED8段数码管、可与PC机通讯的RS-232C串行接口以及蜂鸣器等外设,设计实现并焊接制作一个具有多种I/O接口的综合性功能电路,并编写出有个性有特色应用软件。
2.要求课程设计内容分为基本要求和附加要求两类。
基本要求是每个人必须完成的内容。
附加要求则是学生根据自己对单片机掌握和运用的情况选作实现的某些功能,这给同学们开动脑筋发挥自己的创造性思维留出了空间。
①单片机信号发生器设计基本要求:使用单片机构成信号发生器,可以产生方波、三角波、锯齿波、脉冲信号或正弦信号等多种波形附加要求:波形的周期或频率可调,更一步可以考虑通过键盘或者电位器设定波形的频率,并在LED上显示频率。
《单片机原理及应用》课程教学大纲一、课程基本情况课程名称:单片机原理及应用/ Principle and Application of Single Chip Microcomputer 课程类别:专业必修课开课学期:5学分:3总学时:48理论学时:40实验学时:8适用专业:电气工程及其自动化专业适用对象:本科先修课程:模拟电子技术、数字电子技术、程序设计基础等二、课程简介1.课程任务与目的让学生获得单片机应用系统设计的基本理论、基本知识与基本技能;掌握单片机应用系统各主要环节的设计、调试方法,并了解单片机在电气自动化控制、测量、保护等电气和电子技术领域的应用;初步具备应用单片机进行设备技术改造、产品开发的能力。
在本课程实验及综合设计环节,介绍有关单片机的最新技术和发展方向,激发学生紧跟时代、不断学习、勇于创新的思想意识。
2.对接培养的岗位能力本课程重点支持以下毕业要求:毕业要求2.3能认识到解决问题有多种方案可选择,能通过文献研究寻求可替代解决方案。
毕业要求3.1掌握设计/开发电气工程领域复杂工程问题解决方案所需要的专业知识和技术手段,熟悉设计/开发相关的技术规范与标准以及影响设计目标和技术方案的各种因素。
毕业要求4.3能综合多学科专业知识,对实验数据进行处理、分析与解释,得到有价值的研究结论。
三、课程目标与毕业要求根据该课程所支撑的毕业要求指标点,确定以下三个课程目标。
课程目标1 掌握单片机系统硬件的组成和基本原理,以及单片机系统软件设计的基本方法。
(支撑毕业要求3.1)课程目标2 具有应用先进设计软件和先进设计工具进行单片机控制系统的分析和设计能力,并具有一定的分析和解决工程实践问题的创新意识和创新能力。
(支撑毕业要求2.3)课程目标3 掌握单片机系统硬件调试和软件调试的方法,并能对调试结果进行分析和处理。
(支撑毕业要求4.3)四、教学内容与成果目标(二)实验或实践学时安排五、课程考核方式与评分标准2.总成绩构成本课程综合绩评定由课程表现成绩(10%)+平时作业成绩(10%)+实验成绩(20%)+上机操作考试成绩(60%)构成。
《单片机原理与应用》课程设计一、课程设计目的《单片机原理及应用》课程是一门技术性、应用性很强的学科,实验课教学是它的一个极为重要的环节。
不论是硬件扩展、接口应用还是编程方法、程序调试,都离不开实验课教学。
单片机课程设计的目的就是要锻炼学生的实际动手能力。
在理论学习的基础上,通过完成一个具有综合功能的小系统,使学生将课堂上学到的理论知识与实际应用结合起来,对电子电路、电子元器件等方面的知识进一步加深认识,同时在软件编程、排错调试、相关仪器设备的使用技能等方面得到较全面的锻炼和提高,为今后能够独立进行某些单片机应用系统的开发设计工作打下一定的基础。
本课程设计是配合课堂教学的一个重要的实践教学环节,它能起到巩固课堂和书本上所学知识,加强综合能力,提高系统设计水平,启发创新思想的效果。
通过本课程设计希望达到以下目地:1.培养资料搜集和汇总的能力。
2.培养总体设计和方案论证的意识。
3.提高硬件、软件设计与开发的综合能力。
4.提高软件和硬件联合调试的能力。
5.熟练掌握相关测量仪器的使用方法。
6.掌握相关开发软件、仿真软件的使用方法。
二、课程设计内容与要求要求每个学生(或小组)都要自己动手独立设计完成一个典型的单片机应用小系统。
设计题目可以在给出的参考题目中选,也可以自己选择设计题目,但难度不应小于参考题目,需经指导教师审查后方可确定是否采纳或修改设计题目。
课程设计的时间为1周。
设计的最终作品包括硬件和软件两个部分,要求能够演示并达到设计指标的要求。
每个学生(或小组)在作品完成后,要经指导教师检查,同意拆除后方可拆卸,并分类放回元器件盒内。
课程设计报告每个学生一份,由课代表收齐后统一交给指导教师。
课程设计成绩评定由3部分组成:作品+出勤等40%;答辩30%;设计报告30%。
三、课程设计步骤设计一个单片机应用系统,可以分为硬件设计和软件设计两个部分,从设计草图开始到样机调试成功,通常要将硬件,必须将软件结合起来统筹考虑,才能取得较好的效果。
《单片机原理及应用》实验指导书广州大学松田学院电气与汽车工程系2011年10月实验一流水灯实验.................................. 实验二数码管动态显示实验 (3)实验三单片机外部中断实验 (5)实验四单片机定时器/计数器应用 (7)实验五中断及综合实验 (10)附录开发板电路原理图 (II)实验一流水灯实验1.实验H的及要求1)掌握keil c51软件和STC-ISP软件使用方法。
2)巩固单片机基本程序的编写方法和单片机工程项F1的建立流程。
3)熟悉用单片机P0 口控制LED灯亮和灭的方法。
2.实验仪器计算机、keil c51软件、单片机开发板、下载线3.实验内容利用P0 口直接控制8个LED灯的亮和灭。
把不同的数据(本实验采用40 个不用的字节)定时输出P0 口,控制LED灯相应的变化,产生花样灯效果。
改变延吋吋间,则改变LED灯改变速度,效果也不一样。
4.实验步骤1)使用ke订c51软件建立一个工程,命名保存,并配置工程。
2)新建一个文件,主文件名与工程名一致,文件后缀名为MSM。
编辑实验源程序。
(注意:源程序编辑不要在屮文状态下)实验参考程序如下:ORG 0100HTMP1:DB 0111, 02H, 04H, 0811, 10H, 2011, 40H, 80H, 8111, 8211DB 84H, 88H, 90H, OAOH, OCOH, 0C1H, 0C2H, 0C4H, 0C8H, ODOHDB OEOH, 0E1H, 0E2H, 0E4H, 0E8H, OFOH, 0F1H, 0F2H, 0F4H,0F8H0RG 000011 ;程序的开始LJMP MAIN ;转入主程序ORG 0200H ;主稈序的开始MAIN: MOV DPTR, #TMP1 ;得到数据的地址MOV R7, #40 ;设置循环40次Ml: CLR AMOVC A, ©A+DPTR ;读取相应地址的数据CPL A ;因发光二极管采用共阳极,所以将数据取反再输出MOV P0, AINC DPTRLCALL DELAY ;转入延时了程序DJNZ R7, Ml ; 40次未完成继续LJMP MAIN ;40次完成冋到开始处DELAY: MOV R5, #255 ;延时子稈序D1: MOV R6, #255DJNZ R6, $DJNZ R5, DIRETEND ;程序体结束3)汇编、连接生产目标文件。
单片机原理及应用课程设计指导书主编:范力旻电子信息与电气工程学院电气工程教研室目录一、课程设计的基本要求............................................... 错误!未定义书签。
二、课程设计选题.............................................................. 错误!未定义书签。
三、课程设计的内容......................................................... 错误!未定义书签。
四、课程设计的工作程序............................................... 错误!未定义书签。
五、课程设计的成绩评定............................................... 错误!未定义书签。
六、课程设计报告格式.................................................... 错误!未定义书签。
七、设计步骤举例.............................................................. 错误!未定义书签。
八、参考用书........................................................................ 错误!未定义书签。
附录1:设计说明书参考样式...................................... 错误!未定义书签。
附录2:课程设计报告范文........................................... 错误!未定义书签。
《单片机原理及应用》是一门技术性,应用性、实践性很强的学科。
课程设计是学好本门课程的又一重要实践性教学环节,课程设计的目的和任务就是配合单片机的教学和平时实验,以达到巩固消化课程的内容,进一步加强综合应用能力及单片机应用系统开发和设计能力的训练,启发创新思维,使之具有独立单片机产品和科研的基本技能,是以培养学生综合运用所学知识的过程,是知识转化为能力和能力转化为工程素质的重要阶段。
单片机原理及应用实验和课程设计指导书徐春辉陈忠斌主编华东交通大学电气与电子工程学院二0一七年九月前言单片机的高可靠性、超小型、低价格、容易产品化等特点,使得其在仪器仪表智能化、实时工业控制、实时数据采集、智能终端、通信设备、导航系统、家用电器等控制应用领域,得到了十分广泛的应用。
《单片机原理及应用》课程成为众多工科专业的一门重要的学科基础课。
为配合《单片机原理及应用》课程的教学,编写了本实验和课程设计指导书。
作为高校教学的主力单片机,51系列单片机尽管仍在发挥巨大的作用,但教学方法和实验手段已发生了一些重要的变化。
一个是大量采用C语言进行教学,强调单片机学习的高效性,通用性和实用性。
二是大量采用仿真软件,对单片机的整个开发过程进行前期的仿真设计,在仿真中发现和解决大量可能在产品实际开发中可能出现的问题。
强调硬件与软件的统一,降低开发成本。
这其中以英国了Labcenter 公司推出的PROTEUS的软件功能最为强大,在全世界都得到了广泛的应用。
目前,国内的很多高校的单片机教学也大量采用PROTEUS软件,这已经成为单片机教学改革的一个很重要的方面。
本实验指导书正是顺应这一教学改革的潮流,充分利用单片机软硬件仿真软件Keil C和PROTEUS,针对教学中的难点和重点,设计了一系列的实验,使得学生既可以在实验室里也可以在安装了相关软件的自有计算机上完成这些实验,这就增加了学生学习的兴趣和主动性。
除此而外,本实验指导书还设计了利用单片机开发板对单片机实验系统进行实时调试的实验,使学生的开发能力得到全面锻炼。
最后,在为期1周的课程设计时间里,利用这些开发工具完成一个完整的单片机系统的设计与调试,使学生的单片机实际应用能力得到一个有效的提高。
本实验及课程设计指导书由电气学院单片机教研组徐春辉、陈忠斌、章海亮、李宋、张永贤等老师编写。
由于时间仓促,加上编者学识有限,如有不妥之处,欢迎读者批评指正。
编者2017年9月目录前言---------------------------------------------(1)第1章实验指导书----------------------------------(3)1.1 实验1 汇编语言简单试验---Keil C51的使用----------------(3)1.2 实验2 汇编语言实验----二进制到BCD转换------------------(6)1.3 实验3 I/O口实验---流水灯-------------------------(8)1.4实验4串口数据发送实验---------------------------(13)1.5实验5 数字电压表---A/D 转换器应用实验------------------------(16)第2章课程设计指导书-----------------------------(20) 附录A-------------------------------------------(22) 附录B-------------------------------------------(30) 参考文献-----------------------------------------(34)第1章实验指导书《单片机原理及应用》是一门实践性很强的课程,必须通过大量的实践才能真正掌握单片机的原理和应用技术。
江西理工大学《单片机原理及应用》课程实验指导书主审人:主撰人:前言单片机技术作为计算机技术的一个重要分支,广泛用于工业控制、智能化仪器仪表、家用电器,甚至电子玩具等各个领域,它具有集成度高、性能价格比优越、货源充足等优点。
因此,越来越受到工程技术人员重视,目前国内中高等学校电力技术、电气自动化、自动控制、电子技术等均开设了此课程。
目录第一部分绪论第二部分基本实验指导实验一单片机及其开发系统入门实验二单片机I/O口控制实验实验三外部中断实验实验四定时/计数器实验实验五蜂鸣器驱动实验实验六串转并的I/O口实验实验七 8x8LED扫描输出实验实验八基于C51单片机综合程序设计实验九并转串的I/O口实验实验十 RS232串行口通信实验实验十一并行的模数转换实验实验十二并行的数模转换实验附录实验仪硬件结构第一部分绪论本实验指导书是根据《单片机原理及应用》课程实验教学大纲编写,适用于电气工程及自动化、自动化专业。
一、本课程实验的作用与任务《单片机原理及应用》实验是单片机学习过程中必不可少的重要实践环节。
通过实验和设计,让学生掌握单片机硬件基本知识、基本操作技能,熟练理解 80C51 汇编语言编程、I/O 控制以及中断控制等基本概念,使学生在分析问题和解决问题等方面受到系统科学的训练,从而提高学生理论联系实际能力、自主动手能力和创新能力。
二、本课程实验的基础知识本课程要求学生掌握单片机硬件基本知识、基本操作技能,熟练理解 80C51 汇编语言编程、I/O 控制以及中断控制等基本概念。
学生在学习这门课程之前,必须掌握《模拟电子技术》、《数字电路》、《微机原理及应用》、《C语言程序设计》等课程相关内容。
三、本课程实验教学项目及要求第二部分基本实验指导实验一单片机及其开发系统入门一. 实验目的熟悉 Keil C51集成开发环境的使用方法。
二.实验原理利用单片机的P1口控制发光二极管,进行Keil C51集成开发环境的仿真调试练习。
单片机课程设计大纲一、课程目标知识目标:1. 让学生掌握单片机的基本组成、工作原理及功能特点;2. 使学生了解单片机编程的基本语法和编程技巧;3. 帮助学生理解单片机在实际应用中的使用方法。
技能目标:1. 培养学生运用单片机进行简单电路设计和控制的能力;2. 使学生能够独立编写简单的单片机程序,实现基础功能;3. 提高学生分析问题、解决问题的能力,学会运用单片机解决实际问题。
情感态度价值观目标:1. 培养学生对单片机及电子技术的兴趣和热情;2. 培养学生具备良好的团队协作精神和沟通能力;3. 增强学生的创新意识和实践能力,激发学生积极参与科技创新活动的意愿。
课程性质:本课程为实践性较强的课程,旨在通过理论学习与实践操作相结合的方式,让学生全面掌握单片机技术。
学生特点:学生处于初中或高中阶段,具备一定的电子技术基础知识,对单片机有一定了解,好奇心强,喜欢动手实践。
教学要求:结合学生特点和课程性质,注重理论与实践相结合,强调动手实践,鼓励学生创新,培养实际应用能力。
将课程目标分解为具体的学习成果,为后续教学设计和评估提供依据。
二、教学内容1. 单片机基础知识- 单片机的组成与结构- 单片机的工作原理- 单片机的性能指标2. 单片机编程语言- 汇编语言基础- 程序结构及编程技巧- C语言在单片机编程中的应用3. 单片机接口技术- I/O接口- 定时器/计数器- 中断系统- 串行通信接口4. 单片机应用实例- 简单电路设计与控制- 基础功能编程实现- 实际应用案例分析5. 单片机实践操作- 基本操作训练- 综合项目设计与实现- 创新实验与拓展教学内容安排与进度:第一周:单片机基础知识学习第二周:汇编语言编程训练第三周:C语言在单片机编程中的应用第四周:单片机接口技术学习第五周:单片机应用实例分析与实践操作第六周:综合项目设计与实现教材章节关联:《单片机原理与应用》第一章:单片机概述《单片机原理与应用》第二章:单片机组成与结构《单片机原理与应用》第三章:单片机编程语言《单片机原理与应用》第四章:单片机接口技术《单片机原理与应用》第五章:单片机应用实例《单片机实践指导书》:实践操作指导内容教学内容确保科学性和系统性,结合课程目标,注重理论与实践相结合,提高学生的实际操作能力。
《单片机原理与应用》课程设计指导书一、课程设计的基本任务本课程设计的基本要求是使学生熟悉掌握MCS-51系列单片机的编程方法,学生在DP-51DPROC单片机综合仿真实验仪的平台环境下,完成一个简单的单片机温度检测系统。
二、设备及器件PC机一台DP-51PROC单片机综合仿真实验仪一台导线若干三、课程设计的基本要求设计题目:数字温度计(1)编写程序,通过单片机的P3.3口控制一个DS18B20完成数字温度的采集,然后用程序处理采集到的数据结果。
(2)编写程序,通过I2C总线器件ZLG7290实现温度数据的输出显示。
(3)结合以上两部分程序,编程实现数字式温度计的程序设计。
要求熟练掌握单总线方式器件的应用,熟悉I2C总线协议,学习I2C器件的使用方法。
(上述设计完成的同学可以选做万年历时钟设计)四、课程设计的基本步骤数字温度计的设计步骤:(1)安装B4区JP12接口上的短路帽,将B4区的DQ与A2区INT1 (P3.3)相连。
(2)安装D5区JP1接口上的短路帽,将D5区的SDA. SCL分别与A2区的P17, P16相连。
(3)将D5区的RST_L针接上高电平。
(4)运行编写好的软件程序,观察D5区数码管显示的温度数据。
然后改变DS18B20的表面温度,查看显示的温度数据是否有变化,并调整实验程序使测量值更准确。
五、设计题目中部分单元电路1、B4区数字温度采集区B4区上面是一片DS18B20单总线数字温度传感器,可在上面进行单总线和温度采集等相关实验,电路图如下图,DQ为控制信号输入端,JP12为电源控制(使用前先短接,做完实验后断开)图1 单总线数字温度采集电路2、D5区IIC实验区D5区上面是IIC实验区,有3个芯片,分别是键盘LED驱动芯ZLG7290、EEPROM(256个字节)CAT24WC02、实时时钟芯片(RTC> RCF8563T,可以在上面进行各种相关的IIC实验。
电路如图2所示如图2所示SCL和SDA为IIC控制信号端,RST_L和INT_KEY为ZLG7290的复位控制和键盘中断接口,CLKOUT和INT_RTC为PCF8563T的时钟输出和中断接口,JP1为电源控制(使用前先短接,做完实验后断开)。
另外ZLG7290芯片同时驱动了8个数码管和16个按键(键值为0X01- OX10)。
图2 IIC实验电路六、设计参考程序TEMPER_L EQU 36H ;存放读出温度低位数据TEMPER_H EQU 35H ;存放读出温度高位数据TEMPER_NUM EQU 37H ;存放转换后的温度值FLAG1 BIT 00HDQ BIT P3.3 ;单总线控制端口SDA BIT P1.7 ;I2C 总线定义SCL BIT P1.6MTD EQU 40H ;发送数据缓冲器MRD EQU 49H ;接收数据缓冲区;定义器件地址,变量ZLG7290 EQU 70H ;ZLG7290 的器件地址ACK BIT 10H ;应答标志位SLA DATA 50H ;器件的从地址SUBA DATA 51H ;器件的子地址NUMBYTE DATA 52H ;读/写的字节数变量ORG 8000HLJMP MAINORG 8100H;温度计主程序如下:MAIN:MOV SP,#70HDISP_LOOP:LCALL GET_TEMPER ;从 DS18B20 读出温度数据LCALL TEMPER_COV ;转换读出的温度数据并保存LCALL DELAYMOV MTD,#60HMOV MTD+1,TEMPER_NUM ;温度值低位ANL MTD+1,#0FHMOV SLA,#ZLG7290 ;指定器件地址MOV SUBA,#07H ;指定子地址MOV NUMBYTE,#02H ;发送 2 字节数据LCALL IWRNBYTE ;调用写 2 字节数据程序MOV MTD,#61HMOV A,TEMPER_NUMSWAP AANL A,#0FHMOV MTD+1,A ;温度值高位MOV SLA,#ZLG7290 ;指定器件地址MOV SUBA,#07H ;指定子地址MOV NUMBYTE,#02H ;发送 2 字节数据LCALL IWRNBYTE ;调用写 2 字节数据程序LCALL DELAYSJMP DISP_LOOP ;温度循环采集显示;读出转换后的温度值GET_TEMPER:SETB DQ ;定时入口BCD:LCALL INIT_1820JB FLAG1,S22LJMP BCD ;若 DS18B20 不存在则返回S22:LCALL DELAY1MOV A,#0CCH ;跳过 ROM 匹配------0CCLCALL WRITE_1820MOV A,#44H ;发出温度转换命令LCALL WRITE_1820NOPLCALL DELAYLCALL DELAYCBA:LCALL INIT_1820JB FLAG1,ABCLJMP CBAABC:LCALL DELAY1MOV A,#0CCH ;跳过 ROM 匹配LCALL WRITE_1820MOV A,#0BEH ;发出读温度命令LCALL WRITE_1820LCALL READ_18200 ;READ_1820RET;读 DS18B20 的程序,从 DS18B20 中读出一个字节的数据READ_1820:MOV R2,#8 ;读取一个字节RE1:CLR CSETB DQNOPNOPCLR DQNOPNOPNOPSETB DQMOV R3,#7 ;延时DJNZ R3,$MOV C,DQ ;读取一个位MOV R3,#23 ;延时DJNZ R3,$RRC ADJNZ R2,RE1RET;写 DS18B20 的程序WRITE_1820:MOV R2,#8 ;发送一个字节CLR CWR1820:CLR DQMOV R3,#6 ;延时DJNZ R3,$RRC AMOV DQ,C ;发送一个位MOV R3,#23 ;延时DJNZ R3,$SETB DQNOPDJNZ R2,WR1820SETB DQRET;读 DS18B20 的程序,从 DS18B20 中读出两个字节的温度数据READ_18200:;将温度高位和低位从 DS18B20 中读出MOV R4,#2MOV R1,#36H; 低位存入 36H(TEMPER_L),高位存入 35H(TEMPER_H)RE00:MOV R2,#8 ;读取一个字节RE01:CLR CSETB DQNOPNOPCLR DQNOPNOPNOPSETB DQMOV R3,#7 ;延时DJNZ R3,$MOV C,DQ ;读取一个位MOV R3,#23 ;延时DJNZ R3,$RRC ADJNZ R2,RE01MOV @R1,ADEC R1DJNZ R4,RE00RET;将从 DS18B20 中读出的温度数据进行转换TEMPER_COV:MOV A,#0F0HANL A,TEMPER_L; 舍去温度低位中小数点后的四位温度数值SWAP AMOV TEMPER_NUM,AMOV A,TEMPER_LJNB ACC.3,TEMPER_COV1 ;四舍五入去温度值INC TEMPER_NUMTEMPER_COV1:MOV A,TEMPER_HANL A,#07HSWAP AADD A,TEMPER_NUMMOV TEMPER_NUM,A ;保存变换后的温度数据LCALL BIN_BCDRET;将 16 进制的温度数据转换成压缩 BCD 码BIN_BCD:MOV DPTR,#TEMP_TABMOV A,TEMPER_NUMMOVC A,@A+DPTRMOV TEMPER_NUM,ARETTEMP_TAB:DB 00H,01H,02H,03H,04H,05H,06H,07HDB 08H,09H,10H,11H,12H,13H,14H,15HDB 16H,17H,18H,19H,20H,21H,22H,23HDB 24H,25H,26H,27H,28H,29H,30H,31HDB 32H,33H,34H,35H,36H,37H,38H,39HDB 40H,41H,42H,43H,44H,45H,46H,47HDB 48H,49H,50H,51H,52H,53H,54H,55HDB 56H,57H,58H,59H,60H,61H,62H,63HDB 64H,65H,66H,67H,68H,69H,70H,71HDB 72H,73H,74H,75H,76H,77H,78H,79HDB 80H,81H,82H,83H,84H,85H,86H,87HDB 88H,89H,90H,91H,92H,93H,94H,95HDB 96H,97H,98H,99H;DS18B20 初始化程序INIT_1820:SETB DQNOPCLR DQMOV R0,#80HTSR1:DJNZ R0,TSR1 ;延时SETB DQMOV R0,#25H ;96uSTSR2:DJNZ R0,TSR2JNB DQ,TSR3LJMP TSR4 ;延时TSR3:SETB FLAG1 ;置标志位,表示 DS1820 存在LJMP TSR5TSR4:CLR FLAG1 ;清标志位,表示 DS1820 不存在LJMP TSR7TSR5:MOV R0,#06BH ;200uSTSR6:DJNZ R0,TSR6 ;延时TSR7:SETB DQRET;重新写 DS18B20 暂存存储器设定值RE_CONFIG:JB FLAG1,RE_CONFIG1 ;若 DS18B20 存在,转 RE_CONFIG1RETRE_CONFIG1:MOV A,#0CCH ;发 SKIP ROM 命令LCALL WRITE_1820MOV A,#4EH ;发写暂存存储器命令LCALL WRITE_1820MOV A,#00H ;TH(报警上限)中写入 00HLCALL WRITE_1820MOV A,#00H ;TL(报警下限)中写入 00HLCALL WRITE_1820MOV A,#7FH ;选择 12 位温度分辨率LCALL WRITE_1820RET;延时子程序DELAY:MOV R7,#00HMIN:DJNZ R7,YS500RETYS500:LCALL YS500USLJMP MINYS500US:MOV R6,#00HDJNZ R6,$RETDELAY1:MOV R7,#20HDJNZ R7,$RET$INCLUDE(VI2C_ASM.INC) ;包含 VIIC 软件包END七、实验报告格式及要求报告格式按照学院课程设计报告格式统一标准,写出设计的基本步骤及方案;绘制硬件设计原理图及电路图;设计出完整的程序框图和程序清单;写出设计心得体会。