1《单片机原理与应用》课程设计指导书2010-6-8

合集下载

单片机课程设计指导书

单片机课程设计指导书

单片机课程设计指导书一、课程目标知识目标:1. 让学生掌握单片机的基本原理,理解其内部结构和功能。

2. 使学生掌握单片机编程的基本方法,能编写简单的控制程序。

3. 帮助学生了解单片机在现实生活中的应用,拓宽知识视野。

技能目标:1. 培养学生动手操作单片机的能力,能够独立完成基本的硬件连接和程序下载。

2. 提高学生编程能力,能运用所学知识解决实际问题。

3. 培养学生团队协作能力,能够在小组合作中发挥自己的作用。

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

2. 引导学生关注科技创新,认识到单片机在现代社会中的重要性。

3. 培养学生严谨、细致的学习态度,提高自我管理和自我约束能力。

课程性质:本课程为实践性较强的课程,旨在让学生在理论学习的基础上,通过动手实践,提高对单片机的认识和编程能力。

学生特点:学生具备一定的电子技术基础知识,对单片机有一定了解,但编程能力参差不齐。

教学要求:注重理论与实践相结合,强化动手实践,关注学生个体差异,分层教学,提高教学质量。

在教学过程中,将课程目标分解为具体的学习成果,以便进行有效的教学设计和评估。

二、教学内容1. 单片机原理概述:介绍单片机的发展历程、内部结构、工作原理及性能特点。

教材章节:第一章 单片机概述内容安排:2课时2. 单片机编程基础:讲解单片机编程语言(如C语言)、编程规范及编程技巧。

教材章节:第二章 单片机编程基础内容安排:4课时3. 单片机硬件连接:介绍单片机硬件电路设计、接口技术及外围设备。

教材章节:第三章 单片机硬件系统内容安排:4课时4. 单片机程序下载与调试:讲解程序下载方法、调试技巧及故障排查。

教材章节:第四章 单片机程序下载与调试内容安排:2课时5. 单片机应用实例:分析典型的单片机应用案例,引导学生学以致用。

教材章节:第五章 单片机应用实例内容安排:4课时6. 单片机课程设计:指导学生进行课程设计,培养实际操作能力和团队协作能力。

单片机原理与应用课程设计任务及指导书-推荐下载

单片机原理与应用课程设计任务及指导书-推荐下载

对全部高中资料试卷电气设备,在安装过程中以及安装结束后进行高中资料试卷调整试验;通电检查所有设备高中资料电试力卷保相护互装作置用调与试相技互术关,系电通,力1根保过据护管生高线产中0不工资仅艺料可高试以中卷解资配决料置吊试技顶卷术层要是配求指置,机不对组规电在范气进高设行中备继资进电料行保试空护卷载高问与中题带资2负料2,荷试而下卷且高总可中体保资配障料置各试时类卷,管调需路控要习试在题验最到;大位对限。设度在备内管进来路行确敷调保设整机过使组程其高1在中正资,常料要工试加况卷强下安看与全22过,22度并22工且22作尽22下可护都能1关可地于以缩管正小路常故高工障中作高资;中料对资试于料卷继试连电卷接保破管护坏口进范处行围理整,高核或中对者资定对料值某试,些卷审异弯核常扁与高度校中固对资定图料盒纸试位,卷置编工.写况保复进护杂行层设自防备动腐与处跨装理接置,地高尤线中其弯资要曲料避半试免径卷错标调误高试高等方中,案资要,料求编试技5写、卷术重电保交要气护底设设装。备备置管4高调、动线中试电作敷资高气,设料中课并技3试资件且、术卷料中拒管试试调绝路包验卷试动敷含方技作设线案术,技槽以来术、及避管系免架统不等启必多动要项方高方案中式;资,对料为整试解套卷决启突高动然中过停语程机文中。电高因气中此课资,件料电中试力管卷高壁电中薄气资、设料接备试口进卷不行保严调护等试装问工置题作调,并试合且技理进术利行,用过要管关求线运电敷行力设高保技中护术资装。料置线试做缆卷到敷技准设术确原指灵则导活:。。在对对分于于线调差盒试动处过保,程护当中装不高置同中高电资中压料资回试料路卷试交技卷叉术调时问试,题技应,术采作是用为指金调发属试电隔人机板员一进,变行需压隔要器开在组处事在理前发;掌生同握内一图部线纸故槽资障内料时,、,强设需电备要回制进路造行须厂外同家部时出电切具源断高高习中中题资资电料料源试试,卷卷线试切缆验除敷报从设告而完与采毕相用,关高要技中进术资行资料检料试查,卷和并主检且要测了保处解护理现装。场置设。备高中资料试卷布置情况与有关高中资料试卷电气系统接线等情况,然后根据规范与规程规定,制定设备调试高中资料试卷方案。

《单片机原理及应用》课程教学大纲及教材

《单片机原理及应用》课程教学大纲及教材

《单片机原理及应用》教学大纲课程中文名称:《单片机原理及应用》课程代码: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%。

三、课程设计步骤设计一个单片机应用系统,可以分为硬件设计和软件设计两个部分,从设计草图开始到样机调试成功,通常要将硬件,必须将软件结合起来统筹考虑,才能取得较好的效果。

《单片机原理与应用》实验指导书

《单片机原理与应用》实验指导书

10
实验三 定时器/计数器实验
一、实验目的
1.了解 MCS-51 单片机定时/计数器的基本结构、工作原理和工作方式。
2.掌握定时/计数器工作在定时器和计数器两种方式下的编程方法。
3.掌握数码管显示电路的驱动原理及编程方法。
二、实验原理
8031 内部有TO 、T1 两个定时器/计数器,它们分别是 16 位的可编程定
延时时间的计算:
因为本实验系统的晶振频率为 6MHz,即一个机器同期时间为 12/6MHz 即
2uS,所以该段程序的执行时间为:2+(2+4×250+4)×10 = 10.06 mS
七、实验方法与步骤
将P3.0、P3.1 分别对应连接至K0、K1、将P1.0、 P1.1、 P1.2、 P1.3
分别对应连接至LO ~ L3 ,运行程序,观察LED显示状态.
表 3-1 数字 0 1 2 3 4 5 6 7 8 9
段码 3FH 06H 5BH 4FH 66H 6DH 7DH 07H 7FH 6FH
三、实验电路
图 3-2 四、实验内容
1.参照实验电路,利用 8031 的定时/计数器,设计一个 60 秒计时器, 秒计时结果选用实验仪上两位 LED 数码管显示。
图 1-6 如果仿真器和仿真头设置正确,并且硬件连接没有错误,将会出现 “硬 件仿真”对话框,并显示仿真器、仿真头的型号及仿真器的序列号。表明 仿真器初始化正确。如果仿真器初始化过程中有错,软件就会再次出现仿 真器设置对话框。这时应当检查仿真器及仿真器类型选择是否有错,硬件 连接是否正确,纠正错误后,再次确认。 (三)程序的编译 选择菜单:项目/编译或按编译快捷图标或 F9 键,对源文件或项目进 行编译。在编译过程中,如果有错,将会在信息窗口中显示出来,双击错 误信息,可以在源程序中定位所在行。纠正错误后,再次编译直到没有错 误,在编译之前,软件会自动将项目和程序存盘,编译没有错误后,就可 对程序进行调试了。 (四)程序的调试方法 1、单步调试 选择菜单:执行/跟踪或按单步快捷图标或按 F1 键,进入单步跟踪调 试方式,单步跟踪是一条一条指令地执行程序,若有子程序调用,也会跟 踪到子程序中去。用户可以通过观察寄存器和数据窗口的各种数据,了解 程序的运行状态。 2、执行到光标处 将光标移到程序想要暂停的地方,选择菜单:执行/执行到光标处或按 F4 键,程序会全速执行到光标所在行。

《单片机原理及应用》实验指导书.doc

《单片机原理及应用》实验指导书.doc

《单片机原理及应用》实验指导书广州大学松田学院电气与汽车工程系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. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《单片机原理与应用》课程设计指导书一、课程设计的基本任务本课程设计的基本要求是使学生熟悉掌握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七、实验报告格式及要求报告格式按照学院课程设计报告格式统一标准,写出设计的基本步骤及方案;绘制硬件设计原理图及电路图;设计出完整的程序框图和程序清单;写出设计心得体会。

相关文档
最新文档