广东工业大学单片机课程设计报告

合集下载

广工自动化单片机课程设计

广工自动化单片机课程设计

自动化学院网络工程专业班学号姓名1.程序一:在显示器上显示任意四位十六进制数:56AFORG 0000HLJMP MAINORG 1000H MAIN: MOV 52H,#02HMOV 53H,#03HMOV 51H,#01HMOV 50H,#00HMOV R5,#53H KEYSUB: M OV A,#0DHMOV DPTR,#7F00HMOVX @DPTR,A BEGIN: ACALL DISAJMP BEGIN DIS: PUSH ACCPUSH 00HPUSH 03HMOV R0,#50HMOV R3,#7FHMOV A,R3 AGAIN: MOV DPTR,#7F03HMOVX @DPTR,AMOV A,@R0MOV DPTR,#DDEGMOV A,@A+DPTRMOV DPTR,#7F01HMOVX @DPTR,AACALL DLIMSINC R0MOV A,R3JNB ACC.3,OUTRR AMOV R3,AAJMP AGAINOUT: POP 03HPOP 00HPOP ACCRETDDEG: DB79H,7CH,07H,5BH,6FH,7FH,77H,39 HA1: MOV A,R3MOV DPTR,#7F01HMOVX @DPTR,AMOV DPTR,#1000HMOV A,R2MOVC A,@A+DPTRMOV DPTR,#7F02H MOVX @DPTR,A CALL DLIMS INC R2MOV A,R3RL AMOV R3,AJNB ACC.4,BEGINJMP A1 DLIMS: MOV R7,#05HDL0: MOV R6,#0FFH DL1: DJNZ R6,DL1DJNZ R7,DL0RETEND2.程序二:将8个键按实验室要求定义键值,按任意键在显示器上显示对应键值,要求显示值能左移;LJMP MAINORG 1000H MAIN: MOV 52H,#00HMOV 53H,#00HMOV 51H,#00HMOV 50H,#00HMOV R5,#53H KEYSUB: M OV A,#0DHMOV DPTR,#7F00HMOVX @DPTR,A BEGIN: ACALL DISACALL CLEARACALL CCSCANJNZ INK1AJMP BEGIN INK1: ACALL DISACALL DLIMSACALL DLIMSACALL CLEARACALL CCSCANJNZ INK2AJMP BEGIN INK2: MOV R2,#07fHMOV R4,#00H COLUM: M OV DPTR,#7F03HMOV A,R2MOVX @DPTR,AINC DPTRINC DPTRMOVX A,@DPTRJB ACC.2,LONEMOV A,#00HAJMP KCODELONE: JB ACC.6,NEXTMOV A,#04HKCODE: ADD A,R4CJNE A,#00H,XYGMOV A,#09HAJMP XYG7XYG: CJNE A,#01H,XYG1 MOV A,#08HAJMP XYG7XYG1: CJNE A,#02H,XYG2MOV A,#0AHAJMP XYG7XYG2: CJNE A,#03H,XYG3MOV A,#0CHAJMP XYG7XYG3: CJNE A,#04H,XYG4MOV A,#0EHAJMP XYG7XYG4: CJNE A,#05H,XYG5 MOV A,#0BHAJMP XYG7XYG5: CJNE A,#06H,XYG6 MOV A,#07HAJMP XYG7XYG6: CJNE A,#07H,XYG7 MOV A,#02HAJMP XYG7XYG7: ACALL PUTBUFPUSH ACCKON: ACALL DISACALL CLEARACALL CCSCANJNZ KONPOP ACCNEXT: INC R4MOV A,R2JNB ACC.3,KEERRR AMOV R2,AAJMP COLUM KERR: AJMP BEGIN CCSCAN: MOV DPTR,#7F03HMOV A,#00HMOV @DPTR,AINC DPTRINC DPTRMOVX A,@DPTRCPL AANL A,#44HRETCLEAR: MOV DPTR,#7F03HMOV A,#00HMOVX @DPTR,ARETDIS: PUSH ACCPUSH 00HPUSH 03HMOV R0,#50HMOV R3,#0F7HMOV A,R3 AGAIN: MOV DPTR,#7F03HMOVX @DPTR,AMOV A,@R0MOV DPTR,#DDEGMOVC A,@A+DPTRMOV DPTR,#7F01HMOVX @DPTR,AACALL DLIMSINC R0MOV A,R3JNB ACC.0,OUTRL AMOV R3,AAJMP AGAINOUT: POP 03HPOP 00HPOP ACCRETDDEG: DB 0FCH,60H,0DAH,0F2H DB 66H,0B6H,0BEH,0E0HDB 0FEH,0F6H,0EEH,3EHDB 9CH,7AH,9EH,8EH DLIMS: MOV R7,#01HDL0: MOV R6,#0FFHDL1: DJNZ R6,DL1DJNZ R7,DL0RETPUTBUF: PUSH 00HPUSH ACCMOV 53H,52HMOV 52H,51HMOV 51H,50HPOP ACCMOV 50H,AGOBACK: POP 00HRETEND2.程序三:程序实现以下要求a)定义键盘按键b)可进行三位16进制除法运算c)可进行两位10进制乘法运算ORG 0000HLJMP MAINORG 1000H MAIN: MOV 53H,#00HMOV 52H,#00HMOV 51H,#00HMOV 50H,#00HMOV 60H,#00HMOV 61H,#00HMOV 62H,#00HMOV 63H,#00HMOV 64H,#00HMOV 65H,#00HMOV 66H,#00HMOV 67H,#00HMOV 68H,#0CCH KEYSUB: M OV A,#0DHMOV DPTR,#7F00HMOVX @DPTR,A BEGIN: ACALL DISACALL CLEARACALL CCSCANJNZ INK1AJMP BEGININK1: ACALL DISACALL DLIMSACALL DLIMSACALL CLEARACALL CCSCANJNZ INK2AJMP BEGININK2: MOV R2,#07fHMOV R4,#00H COLUM: M OV DPTR,#7F03HMOV A,R2MOVX @DPTR,AINC DPTRINC DPTRMOVX A,@DPTRJB ACC.2,LONEMOV A,#00HAJMP KCODELONE: JB ACC.6,NEXTMOV A,#04HKCODE: ADD A,R4CJNE A,#00H,XYGMOV A,#09HAJMP XYG7XYG: CJNE A,#01H,XYG1 MOV A,#08HAJMP XYG7XYG1: CJNE A,#02H,XYG2MOV A,#0AHAJMP XYG7XYG2: CJNE A,#03H,XYG3MOV A,#0CHAJMP XYG7XYG3: CJNE A,#04H,XYG4MOV A,#0EHAJMP XYG7XYG4: CJNE A,#05H,XYG5 MOV A,#0BHAJMP XYG7XYG5: CJNE A,#06H,XYG6 MOV A,#07HAJMP XYG7XYG6: CJNE A,#07H,XYG7 MOV A,#02HAJMP XYG7XYG7: ACALL PUTBUFPUSH ACCKON: ACALL DISACALL CLEARACALL CCSCANJNZ KONPOP ACCNEXT: INC R4MOV A,R2JNB ACC.3,KEERRR AMOV R2,AAJMP COLUM KERR: AJMP BEGIN CCSCAN: MOV DPTR,#7F03HMOV A,#00HMOV @DPTR,AINC DPTRINC DPTRMOVX A,@DPTRCPL AANL A,#44HRETCLEAR: MOV DPTR,#7F03HMOV A,#00HMOVX @DPTR,ARETDIS: PUSH ACCPUSH 00HPUSH 03HMOV R0,#50HMOV R3,#0F7HMOV A,R3 AGAIN: MOV DPTR,#7F03HMOVX @DPTR,AMOV A,@R0MOV DPTR,#DDEGMOVC A,@A+DPTRMOV DPTR,#7F01HMOVX @DPTR,AACALL DLIMSINC R0MOV A,R3JNB ACC.0,OUTRL AMOV R3,AAJMP AGAINOUT: POP 03HPOP 00HPOP ACCRETDDEG:DB11H,12H,0CH,66HDB10H,09H,04H,08H SZDEG: DB0FCH,60H,0DAH,0F2H DB66H,0B6H,0BEH,0E0HDB0FEH,0F6H,0EEH,3EHDB9CH,7AH,9EH,8EHDB0CCH,0DDH,0EEH PUTBUF: PUSH00HPUSH ACCMOV A,62HMOV 63H,AMOV A,61HMOV 62H,AMOV A,60HMOV 61H,APOP ACCPUSH DPHPUSH DPLMOV R5,AMOV DPTR,#DDEGMOVC A,@A+DPTRMOV 60H,AMOV A,R5POP DPLPOP DPH GOBACK: POP 00H JISUAN: CJNE A,#02H,CHUHAOACALL FUHAOAJMP JSEND CHUHAO: CJNEA,#01H,DENGYUHAOACALL FUHAOAJMP JSEND DENGYUHAO:CJNEA,#03H,SHUZIACALL DENGYUAJMP JSEND SHUZI: ACALL PUTBUF JSEND: RETFUHAO: PUSH ACCPUSH DPHPUSH DPLMOV DPTR,#DDEGMOVC A,@A+DPTRMOV DPTR,#SEDEGMOVC A,@A+DPTRMOV 68H,AMOV A,60HMOV 64H,AMOV A,61HMOV 65H,AMOV A,62HMOV 66H,AMOV A,63HMOV 67H,AMOV 60H,#00HMOV 61H,#00HMOV 62H,#00HMOV 63H,#00HPOP DPLPOP DPHPOP ACCRETDENGYU: PUSH ACCMOV A,61HANL A,#0FHRL ARL ARL ARL A MOV R5,A MOV A,60H ANL A,#0FH ORL A,R5 MOV 50H,A MOV A,63H ANL A,#0FH RL ARL ARL ARL A MOV R5,A MOV A,62H ANL A,#0FH ORL A,R5 MOV 51H,A MOV A,65H ANL A,#0FH RL ARL ARL ARL A MOV R5,A MOV A,64H ANL A,#0FHORL A,R5MOV 52H,AMOV A,67HANL A,#0FHRL ARL ARL ARL AMOV R5,AMOV A,66HANL A,#0FHORL A,R5MOV 53H,AMOV A,68HCJNEA,#0DDH,CHENGFAAJMP JIWAN CHENGFA: MOV A,50HANL A,#07HMOV 69H, AMOV A,50HANL A,#10HRR AORL 69H,AMOV A,50HANL A,#60HRR AMOV 70H, A MOV A,51H ANL A,#03H SWAP ARL ARL AORL 70H,AMOV A,51H ANL A,#04H RR ARR AMOV 71H,A MOV A,51H ANL A,#70H RR ARR ARR AORL 71H,AMOV A,#00H ORL A,71HMOV 51H,A MOV A,70H ORL A,69HMOV 50H,A MOV A,52H ANL A,#07H MOV 69H,A MOV A,52H ANL A,#10H RR A ORL 69H,A MOV A,52H ANL A,#60H RR A MOV 70H,A MOV A,53H ANL A,#03H SWAP ARL ARL A ORL 70H,A MOV A,53H ANL A,#04H RR ARR A MOV 71H,A MOV A,53H ANL A,#70H RR ARR ARR AORL 71H,AMOV A,#00HORL A,71HMOV 53H,AMOV A,70HORL A,69HMOV 52H,A DBMUL: MOV A,52HMOV B,50HMUL ABXCH A,50HMOV 74H,BMOV B,53HMUL ABADD A,74HMOV 75H,ACLR AADDC A,BMOV 74H,AMOV A,51HMOV B,52HMUL ABADD A,75HXCH A,51HXCH A,BADDC A,74HMOV 74H,AMOV 73H,#00HPUSH ACCMOV A,73HRLC AMOV 73H,APOP ACCMOV A,53HMUL ABADD A,74HMOV 74H,ACLR AMOV ACC.0,CPUSH ACCMOV A,73HMOV C,ACC.0POP ACCADDC A,BMOV 75H,AMOV 53H,51HMOV 52H,50H COVER: MOV A,52HANL A,#07HMOV 60H,AMOV A,52HRR ARR ARR AANL A,#07HMOV 61H,AMOV A,52HRR ARR ARR ARR ARR ARR AANL A,#03HMOV 62H,AMOV A,53HJNB ACC.0,BUMOV A,62HADD A,#04HMOV 62H,A BU: MOV A,53HRR AANL A,#07HMOV 63H,AAJMP QK JIWAN: MOV A,50HANL A,#0FHMOV 60H,AMOV A,50HANL A,#0F0HRR ARR ARR ARR AMOV 61H,AMOV A,51HANL A,#0FHMOV 62H,AMOV A,51HANL A,#0F0HRR ARR ARR ARR AMOV 63H,A QK: MOV 50H,#00HMOV 51H,#00HMOV 52H,#00HMOV 53H,#00HMOV 64H,#00HMOV 65H,#00HMOV 66H,#00HMOV 67H,#00HMOV 68H,#0CCHPOP ACCRETDL1MS: MOVR7,#05H DL0: MOVR6,#0FFH DL1: DJNZR6,DL1DJNZR7,DL0RETRETEND心得体会:这次的课程设计主要是对单片机编程知识的一次综合运用,也是由理论结合实践的第一步,为我以后的学习奠定了良好的基础。

单片机课程设计报告 (2)

单片机课程设计报告 (2)

单片机课程设计报告1. 引言本文为单片机课程设计报告,主要介绍了课程设计的背景、目的、设计方案、实施过程以及结果分析和总结。

2. 背景单片机是嵌入式系统的核心部件,广泛应用于各个领域。

作为计算机科学与技术专业的学生,掌握单片机的基本原理和应用是必不可少的。

因此,本次课程设计旨在通过实践,加深对单片机的理解和应用能力。

3. 目的本次课程设计的目的是设计一个基于单片机的智能温度监控系统。

该系统能够实时监测环境温度,并通过显示屏展示当前温度值,并在温度超过设定阈值时发出警报。

4. 设计方案4.1 硬件设计本设计使用STC89C52单片机作为控制核心,配合温度传感器和液晶显示屏,实现温度监测和显示的功能。

温度传感器负责采集环境温度,将采集到的数据发送给单片机进行处理;液晶显示屏用于显示当前温度值和警报信息。

4.2 软件设计软件设计分为两个模块:温度采集和温度监控。

温度采集模块通过单片机的ADC接口获取温度传感器的模拟信号,将其转化为数字信号,并保存在单片机的内存中。

温度监控模块不断读取内存中的温度值,并与设定的阈值进行比较,如果温度超过阈值,则发出警报信号,同时在液晶显示屏上显示警报信息。

5. 实施过程5.1 硬件实施首先,根据设计方案的要求,将STC89C52单片机、温度传感器和液晶显示屏组装在一起,搭建出硬件平台。

接下来,使用面包板和杜邦线等连接元件,将各个模块按照设计方案进行连线。

最后,使用电源适配器给整个系统供电。

5.2 软件实施软件实施主要分为两个步骤:编写硬件控制程序和编写温度监控程序。

硬件控制程序主要负责初始化硬件设备和处理硬件输入输出;温度监控程序则负责实现温度采集和温度监控逻辑。

在编写硬件控制程序时,需要使用STC89C52的GPIO接口对传感器和显示屏进行控制。

在编写温度监控程序时,需要使用STC89C52的ADC接口进行温度采集,以及使用GPIO接口对警报信号和显示屏进行控制。

6. 结果分析和总结经过实施过程的努力,我们成功地完成了基于单片机的智能温度监控系统。

单片机课程设计报告

单片机课程设计报告

单片机课程设计报告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 实施步骤三:系统实现在系统设计完成后,我开始进行系统实现。

课程设计单片机计算器

课程设计单片机计算器

广东工业大学课程设计任务书题目名称单片机计算器(上机)/ 单片机应用系统设计(理论设计)学生学院自动化专业班级网络工程姓名XXX学号一、课程设计的内容1.巩固和加深对《单片机原理》课程内容的熟悉和明白得,提高应用水平。

2、完成对单片机应用系统的理论设计。

3.把握MCS-51汇编语言程序的编制方式。

4.熟悉键盘操纵和七段数码管的利用。

具体设计包括系统设计和上机编程两个部份。

二、课程设计的要求与数据一.(一)上机编程上机编程要求和内容已附页给出。

二.(二)系统设计内容要求:系统中具有输入设备(如键盘,键数不限)、输出设备(如LED数码显示管)。

具体内容可自己设计、网上搜索应用例、参考书中例。

非自己设计的应用系统应明白得消化,可修改(如增加或减少某些功能部件)。

在系统设计中说明其出处和自己做的修改部份。

三、课程设计应完成的工作三.(一)上机编程完成符合规定要求的程序并上机调试成功。

(二)系统设计内容1.设计一个单片机应用系统的硬件电路。

2. 选择所需元件,并对每一个元件的管脚做简单说明。

3.用35×50cm方格纸作图,画出详细的系统连接图。

撰写课程设计报告四、课程设计进程安排五、应搜集的资料及要紧参考文献[2] 何立民,单片机高级教程.(M).北京航空航天大学出版社, 2000[3] 许兴存、曾琪琳微型运算机接口技术(M).北京电子工业出版社,2003[4] 朱宇光,单片机应用新技术教程(M).北京电子工业出版社,2000发出任务书日期:2020年 9 月 10 日指导教师签名:打算完成日期: 2020 年 9 月 25 日基层教学单位责任人签章:主管院长签章:摘要随着经济的进展,带动汽车行业快速进展,出租车日趋普遍,了解在出租车上应用的计费系统,对咱们日常生活也有帮忙。

而利用单片机实现该系统,是深化单片机应用的良好途径。

本系统设计由单片机AT89S51为核心操纵器和一些外围模块组成,使得其操作简单,显示明了,功能丰硕。

广东工业大学单片机课程设计报告

广东工业大学单片机课程设计报告

课程设计课程名称单片机原理及接口技术题目名称电灯无级PWM亮度调节学院信息工程学院专业班级应用电子技术2班学号 3112002560 姓名张伟奇任课教师李优新2015年01月16日广东工业大学课程设计任务书题目名称电灯无级PWM亮度调节学生学院信息工程学院专业班级信息工程(应用电子方向)12(2)班姓名张伟奇学号3112002560一、课程设计的内容本次课程设计的内容从下面两个方面任选一个:一是在学院的单片机实验平台上进行,开发一个基于单片机与PWM技术的灯光调节系统,主要开发内容为按键定义、输入与防抖动技术、PWM调节技术以及显示技术等的程序设计。

二是利用51系列单片机及必要的外围芯片、输入输出等接口电路设计开发一个简易的单片机系统,在此基础上,自行设计一个单片机应用程序来实现一些实用的功能。

通过这些内容的设计、开发、安装、调试等一系列工作,熟练掌握单片机系统的开发流程与工作机理,加深对所学课程知识的理解与把握,为将来相关的研究开发工作打下坚实的基础。

二、课程设计的要求与数据1 全面掌握硬件结构与电路原理;2 自行设计开发、编辑、调试应用程序;3 必须有完善的功能介绍与调试过程说明;4 提供完整的软件流程框图。

5 提供完整的程序清单。

三、课程设计应完成的工作1 硬件理解与安装调试;2 软件设计与开发、调试;3 软硬件联合调试与实验;4 按照学校要求撰写并上交完整的课程设计报告5 完成课程设计答辩。

四、课程设计进程安排序号设计各阶段内容地点起止日期1 查找资料,熟悉硬件电路或实验平台的资源图书馆或实验1号馆4042015年1月5日-7日2 整体方案设计,输入输出通道定义(方案一)或硬件安装、调试与检查(方案二)宿舍或实验1号馆4041月8日-9日3 软件设计与流程图编写宿舍或实验1号馆404 1月10日4 程序编写宿舍实验1号馆4041月11日-12日5 软件调试,与硬件联合调试宿舍或实验1号馆404 1月13日6 撰写课程设计报告宿舍或实验1号馆4041月14日7 交课程设计报告实验1号馆404 1月15日-16日五、应收集的资料及主要参考文献[1] 吴宁. 80X86/Pentium 微型计算机原理及应用[M]. 北京:电子工业出版社,2004:1-249.[2] 蔡美琴. MCS-51系列单片机系统及其应用[M].北京:高等教育出版社,2003:1-169.[3]段晨东. 单片机原理与接口技术[M]. 北京: 清华大学出版社, 2013:1-333[4] 吴黎明等. 单片机实验指导书[M]. 广州:广东工业大学教材科,2014发出任务书日期: 2015 年 1 月 5 日指导教师签名:计划完成日期: 2015 年 1 月 16日基层教学单位责任人签章:目录目录 (1)第一章系统总体设计 (2)第一节概述 (2)第二节功能设计 (2)第三节功能实现 (2)第二章软件系统设计 (4)第一节工作原理 (4)第二节程序清单 (4)第三节程序流程图 (5)第四节程序源代码 (6)第三章调试结果 (10)第一节单元及系统测试 (10)第四章课程设计体会 (10)基于单片机与PWM技术的可调灯光系统第一章系统总体设计第一节概述PWM(Pulse Width Modulation),即脉冲宽度调制,简称脉宽调制,是一种对模拟信号电平进行数字编码的方法。

广东工业大学 单片机课程设计报告

广东工业大学 单片机课程设计报告

一、实验目的、要求掌握单片机的开发应用,巩固、加深已学过的知识,提高动手能力及解决实际问题的能力。

要求用AT89S52芯片控制彩灯(流水灯)图形。

即AT89S52单片机上点工作时控制由发光二极管组成的图形有规律地不停闪烁;当按下按钮时彩灯图形全灭,而继电器工作吸合(控制~220V 30W灯泡亮)5秒,5秒后返回彩灯闪烁(若再次按下按钮,彩灯图形又全灭,而继电器又能工作吸合5秒,5秒后又回到彩灯闪烁)。

也就是说每当按下按钮时,彩灯都能全灭,继电器能吸合5秒,5秒后能回到彩灯图形的闪烁。

按此要求:①设计并绘制硬件电路图,电路图应包含强电控制部分,做实物板时强电部分可省略;②制作实物板;③编写程序并将调试好的程序固化实物板中的单片机中。

硬件(电路图、元器件布置、排线、元器件的焊接)及软件(程序设计、编写)均由同学们自己完成。

程序编写完后进行调试,调试成功后将程序烧录到单片机内。

实物板通电检查是否能正确运行,如果不行,要找出问题并解决它。

二、实验仪器设备与器材三、硬件方案1、设计思想用单片机P口实现流水灯,先从9~0进行倒数后出现“2012”和“gdut”字样。

当按下按钮,继电器吸合,中断响应,延时5秒,然后返回主程序继续运行。

3、工作原理用单片机P口实现流水灯,先从9~0进行倒数后出现“2012”和“gdut”字样。

当按下按钮,继电器吸合,中断响应,延时5秒,然后返回主程序继续运行。

四、软件方案1、程序流程图主程序中断程序2、程序清单ORG 0000HAJMP MAINORG 0003HAJMP INT_0ORG 000BHAJMP T_0ORG 001BHAJMP T_1ORG 0030HMAIN:MOV R0,#14HMOV R1,#16HMOV R2,#00HMOV R3,#64HMOV R4,#38HMOV DPTR,#TABSETB ET0SETB ET1SETB EX0SETB EASETB PT0MOV TMOD,#11H ;初始化MOV TH1,#3CHMOV TL1,#0B0HSETB TR1SJMP $T_1:MOV TH1,#3CHMOV TL1,#0B0HMOV A,R4JZ L6 ;判断流水灯是否完全输出,完全输出(R4=0)后则跳到L6L7: ACALL L2 ;开始输出流水灯MOV P0,AACALL L2MOV P1,AACALL L2MOV P2,ADEC R4L1: RETIL6: DJNZ R0,L1 ;开始倒计时10秒和输出2012 gdutACALL L2MOV P0,AACALL L2MOV P1,AACALL L2MOV P2,AMOV R0,#14HDJNZ R1,L1 ;判断倒计时10秒和输出2012 gdut 是否完全输出,若完全输出则重新开始MOV R1,#16HMOV R2,#00HMOV R4,#38HSJMP L1L2: INC R2MOV A,R2MOVC A,@A+DPTRRETINT_0:MOV P0,#0FFH ;响应外部中断,LED全灭MOV P1,#0FFHMOV P2,#0FFHCLR P3.0 ;继电器线圈吸合MOV TH0,#3CHMOV TL0,#0B0HSETB TR0L4:JNB P3.0,L4RETIT_0:MOV TH0,#3CH ;延时5秒MOV TL0,#0B0HDJNZ R3,L3SETB P3.0 ;继电器线圈断开MOV R3,#64HCLR TR0L3: RETITAB:DB0FFH,0DFH,0FFH,0FFH,0EFH,0FFH,0FFH,0F7H,0FFH,0FFH,0FBH,0FFH,0FF H,0FDH,0FFH,0FFH,0FEH,0FFH,0FFHDB0FFH,0FFH,0FEH,0FFH,0FEH,0FFH,0FFH,0FDH,0FFH,0FFH,0FBH,0FFH,0FF H,0F7H,0FFH,0FFH,0EFH,0FFH,0FFH,0DFH,0FFH,0FFH,0BFH,0FFH,0FFH,7 FH,0FFHDB0FFH,0FFH,0F7H,7FH,0FFH,0FFH,0BFH,0FFH,0FFH,0FFH,0FFH,0FFH DB0DFH,0FFH,0FFH,0CFH,0FFH,0FFH,0C7H,0FFH,0FFH,0C3H,0FFH,0FFH,0C1 H,0FFH,0FFH,0C0H,0FFH,0FFH,0C0H,0FFH,0FEHDB0C0H,0FFH,0FEH,0C0H,0FEH,0FEH,0C0H,0FCH,0FEH,0C0H,0F8H,0FEH,0C 0H,0F0H,0FEH,0C0H,0E0H,0FEH,0C0H,0C0H,0FEH,0C0H,080H,0FEH,0C0H,000H,0FEH,0C0H,000H,0F6HDB 40H,00H,0F6H,00H,00H,0F6HDB40H,00H,0F6H,0C0H,000H,0F6H,0C0H,00H,0FEH,0C0H,080H,0FEH,0C0H, 0C0H,0FEH,0C0H,0E0H,0FEH,0C0H,0F0H,0FEH,0C0H,0F8H,0FEH,0C0H,0F CH,0FEH,0C0H,0FEH,0FEHDB0C0H,0FFH,0FEH,0C0H,0FFH,0FFH,0C1H,0FFH,0FFH,0C3H,0FFH,0FFH,0C7 H,0FFH,0FFH,0CFH,0FFH,0FFH,0DFH,0FFH,0FFH ;流水灯DB 0FFH,0FFH,0FFH ;全灭1秒DB00H,0C0H,0F0H,00H,00H,0F0H,0C0H,0F8H,0FEH,03H,00H,0F0H DB03H,0C0H,0F0H,18H,0F8H,0F0H,0C0H,0C0H,0F0H,0C0H,03H,0F0H,1FH,1 FH,0F7H,00H,00H,0F6H ;倒计时10秒DB0FFH,0FFH,0FFH,0C0H,03H,0F0H,00H,00H,0F6H,1FH,1FH,0F7H,0C0H,03 H,0F0H ;2012DB0FFH,0FFH,0FFH,00H,0C0H,0F0H,0F8H,00H,0F0H,18H,00H,0F6H,1FH,03 H,0F0H,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH ;gdutEND3、方案论证硬件方面采用低电平灌电流方案,使得灯更为亮。

单片机课程设计报告

单片机课程设计报告

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

二、设计内容本次设计以控制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灯与其他传感器结合,实现更复杂的控制。

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

单片机课程设计实验报告

单片机课程设计实验报告

单片机课程设计实验报告单片机课程设计实验报告引言单片机是嵌入式系统中常见的一种计算机芯片,具有体积小、功耗低、成本低等优势。

本次实验旨在通过单片机的应用设计,加深对单片机原理和应用的理解,并提升解决问题的能力。

实验目的本次实验的目的是设计一个简单的温度监测系统,通过单片机采集温度传感器的数据,并将数据显示在液晶显示屏上。

通过这个实验,我们可以掌握单片机的基本编程和电路连接方法,同时加深对温度传感器的原理和应用的理解。

实验原理1. 单片机基本原理单片机是一种集成电路,内部包含了CPU、内存、输入输出端口等功能模块。

通过编程,可以控制这些功能模块的工作,实现各种应用。

2. 温度传感器原理温度传感器是一种能够感知环境温度变化的器件,常见的有热敏电阻、热电偶等。

本次实验使用的是热敏电阻,其电阻值随温度的变化而变化。

实验材料1. 单片机开发板2. 温度传感器3. 液晶显示屏4. 连接线等实验步骤1. 连接电路将单片机开发板与温度传感器、液晶显示屏连接起来,确保电路连接正确无误。

2. 编写程序使用C语言编写单片机的程序,实现温度传感器数据的采集和液晶显示屏的显示。

程序的基本思路是通过单片机的模拟输入端口读取温度传感器的电阻值,然后将电阻值转换为温度值,并将温度值显示在液晶显示屏上。

3. 烧录程序将编写好的程序烧录到单片机开发板上,确保程序能够正常运行。

4. 实验测试将温度传感器放置在不同的环境中,观察液晶显示屏上的温度数值是否能够准确显示,并记录实验结果。

实验结果与分析经过实验测试,我们发现温度传感器能够准确地采集环境温度,并将温度数值显示在液晶显示屏上。

通过对比实际温度和显示温度的差异,我们可以评估温度传感器的准确性和精度。

实验总结通过本次实验,我们深入了解了单片机的基本原理和应用,掌握了单片机的编程方法和电路连接方法。

同时,我们也加深了对温度传感器的原理和应用的理解。

这些知识和技能对于今后的学习和工作都具有重要意义。

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

广东工业大学单片机课程设计报告一、实验目的、要求掌握单片机的开发应用,巩固、加深已学过的知识,提高动手能力及解决实际问题的能力。

要求用AT89S52芯片控制彩灯(流水灯)图形。

即AT89S52单片机上点工作时控制由发光二极管组成的图形有规律地不停闪烁;当按下按钮时彩灯图形全灭,而继电器工作吸合(控制~220V 30W灯泡亮)5秒,5秒后返回彩灯闪烁(若再次按下按钮,彩灯图形又全灭,而继电器又能工作吸合5秒,5秒后又回到彩灯闪烁)。

也就是说每当按下按钮时,彩灯都能全灭,继电器能吸合5秒,5秒后能回到彩灯图形的闪烁。

按此要求:①设计并绘制硬件电路图,电路图应包含强电控制部分,做实物板时强电部分可省略;②制作实物板;③编写程序并将调试好的程序固化实物板中的单片机中。

硬件(电路图、元器件布置、排线、元器件的焊接)及软件(程序设计、编写)均由同学们自己完成。

程序编写完后进行调试,调试成功后将程序烧录到单片机内。

实物板通电检查是否能正确运行,如果不行,要找出问题并解决它。

二、实验仪器设备与器材三、硬件方案1、设计思想用单片机P口实现流水灯,先从9~0进行倒数后出现“2012”和“gdut”字样。

当按下按钮,继电器吸合,中断响应,延时5秒,然后返回主程序继续运行。

3、工作原理用单片机P口实现流水灯,先从9~0进行倒数后出现“2012”和“gdut”字样。

当按下按钮,继电器吸合,中断响应,延时5秒,然后返回主程序继续运行。

四、软件方案1、程序流程图主程序中断程序2、程序清单ORG 0000HAJMP MAINORG 0003HAJMP INT_0ORG 000BHAJMP T_0ORG 001BHAJMP T_1ORG 0030H MAIN:MOV R0,#14H MOV R1,#16H MOV R2,#00HMOV R3,#64HMOV R4,#38HMOV DPTR,#TABSETB ET0SETB ET1SETB EX0SETB EASETB PT0MOV TMOD,#11H ;初始化MOV TH1,#3CHMOV TL1,#0B0HSETB TR1SJMP $T_1:MOV TH1,#3CHMOV TL1,#0B0HMOV A,R4JZ L6 ;判断流水灯是否完全输出,完全输出(R4=0)后则跳到L6 L7: ACALL L2 ;开始输出流水灯MOV P0,AACALL L2MOV P1,AACALL L2MOV P2,ADEC R4L1: RETIL6: DJNZ R0,L1 ;开始倒计时10秒和输出2012 gdutACALL L2MOV P0,AACALL L2MOV P1,AACALL L2MOV P2,AMOV R0,#14HDJNZ R1,L1 ;判断倒计时10秒和输出2012 gdut 是否完全输出,若完全输出则重新开始MOV R1,#16HMOV R2,#00HMOV R4,#38HSJMP L1L2: INC R2MOV A,R2MOVC A,@A+DPTRRETINT_0:MOV P0,#0FFH ;响应外部中断,LED全灭MOV P1,#0FFHMOV P2,#0FFHCLR P3.0 ;继电器线圈吸合MOV TH0,#3CHMOV TL0,#0B0HSETB TR0L4:JNB P3.0,L4RETIT_0:MOV TH0,#3CH ;延时5秒MOV TL0,#0B0HDJNZ R3,L3SETB P3.0 ;继电器线圈断开MOV R3,#64HCLR TR0L3: RETITAB:DB0FFH,0DFH,0FFH,0FFH,0EFH,0FFH,0FFH,0F7H,0FFH,0FFH,0FB H,0FFH,0FF H,0FDH,0FFH,0FFH,0FEH,0FFH,0FFHDB0FFH,0FFH,0FEH,0FFH,0FEH,0FFH,0FFH,0FDH,0FFH,0FFH,0FB H,0FFH,0FFH,0F7H,0FFH,0FFH,0EFH,0FFH,0FFH,0DFH,0FFH,0FFH,0BFH,0FFH, 0FFH,7 FH,0FFHDB0FFH,0FFH,0F7H,7FH,0FFH,0FFH,0BFH,0FFH,0FFH,0FFH,0FFH ,0FFH DB0DFH,0FFH,0FFH,0CFH,0FFH,0FFH,0C7H,0FFH,0FFH,0C3H,0F FH,0FFH,0C1 H,0FFH,0FFH,0C0H,0FFH,0FFH,0C0H,0FFH,0FEH DB0C0H,0FFH,0FEH,0C0H,0FEH,0FEH,0C0H,0FCH,0FEH,0C0H,0F 8H,0FEH,0C0H,0F0H,0FEH,0C0H,0E0H,0FEH,0C0H,0C0H,0FEH,0C0H,080H,0F EH,0C0H,000H,0FEH,0C0H,000H,0F6HDB 40H,00H,0F6H,00H,00H,0F6HDB40H,00H,0F6H,0C0H,000H,0F6H,0C0H,00H,0FEH,0C0H,080H ,0FEH,0C0H,0C0H,0FEH,0C0H,0E0H,0FEH,0C0H,0F0H,0FEH,0C0H,0F8H,0FEH, 0C0H,0F CH,0FEH,0C0H,0FEH,0FEHDB0C0H,0FFH,0FEH,0C0H,0FFH,0FFH,0C1H,0FFH,0FFH,0C3H,0F FH,0FFH,0C7 H,0FFH,0FFH,0CFH,0FFH,0FFH,0DFH,0FFH,0FFH ;流水灯DB 0FFH,0FFH,0FFH ;全灭1秒DB00H,0C0H,0F0H,00H,00H,0F0H,0C0H,0F8H,0FEH,03H,00H,0F 0H DB03H,0C0H,0F0H,18H,0F8H,0F0H,0C0H,0C0H,0F0H,0C0H,03H ,0F0H,1FH,1 FH,0F7H,00H,00H,0F6H ;倒计时10秒DB0FFH,0FFH,0FFH,0C0H,03H,0F0H,00H,00H,0F6H,1FH,1FH,0F7H,0C0H,03 H,0F0H ;2012DB0FFH,0FFH,0FFH,00H,0C0H,0F0H,0F8H,00H,0F0H,18H,00H,0F6H,1FH,03 H,0F0H,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH ;gdut END3、方案论证硬件方面采用低电平灌电流方案,使得灯更为亮。

软件方面采用定时器延时使得比硬件延时更为准确。

4、调试过程硬件电路焊接完成后,在下载调试的过程中,软件弹出“CHIP PROGRAM ERROR”的错误提示,经过反复检查,发现下载器10针插头的第8脚和第10脚未接地。

在正确连接好下载器10针插头后,程序成功下载到AT89S52芯片中,但是灯完全不亮。

在老师的提示下,我们对晶振进行检测更换,但并不是晶振的问题。

接下来,我们用万用表逐一排查检测各元件的电压,判断元件好坏以及元件是否连接正确。

我们检测到发光二极管的正向端有电压,但是反向端却一直处于高电平状态,这也是灯一直不亮的原因。

为什么发光二极管的反向端会一直处于高电平状态呢?经过反复地思考与查阅大量相关的资料,我们小组讨论并得出结论:发光二极管连接正确,晶振连接正确,芯片也完好,唯一可能出现问题的就是复位电路。

经过检查,果然是复位电路出了问题。

复位按钮在焊接的时候由于焊锡过多而导致短路,使得芯片一直处于复位状态,所有P口处于复位状态时的高电平,因此灯不亮。

在正确焊接好复位按钮之后,单片机流水灯按照程序所设计的规律正常闪烁。

但是,又一个问题出现了。

按下中断申请的按钮之后,继电器并没有吸合,指示灯也不亮。

经过反复排查,原来是继电器焊接错误。

在正确连接好所有电路后,单片机运行成功。

5、运行结果流水灯先从9~0进行倒数后出现“2012”和“gdut”字样。

当按下按钮,继电器吸合,中断响应,延时5秒,然后返回主程序继续运行。

6、思考题(1)P0口作为输出口使用时应注意哪些问题?答:当P0口作为输出口使用时,来自CPU的"写入"脉冲加在D锁存器的CP端,内部总线上的数据写入D锁存器,并向端口引脚P0.x输出.但由于输出电路是漏极开路(因为这时上拉场效应管截止),必须外接上拉电阻才能有高电平输出.(2)若用单片机的I/O口控制强电设备(例如控制~220V的电灯)应如何处理?答:为了避免烧坏芯片,①可以利用继电器控制强电设备。

如图6-1,当AT89S52单片机的P2.1引脚输出低电平时,三极管T饱和导通,+5V电源加到继电器线圈两端,继电器吸合,同时状态指示的发光二极管也点亮,继电器的常开触点闭合,相当于开关闭合;当AT89S52单片机的P2.1引脚输出高电平时,三极管T截止,继电器线圈两端没有电位差,继电器衔铁释放,同时状态指示的发光二极管也熄灭,继电器的常开触点释放,相当于开关断开。

②使用固态继电器接口,如图6-2所示。

③使用光电耦合器(隔离器)件及驱动接口。

如图6-3所示电路,光电耦合器4N25起到耦合脉冲信号和隔离单片机89C51系统与输出部分的作用,使两部分电流相互独立。

输出部分的地线接机壳或大地,而89C51系统的电源地线浮空,不与交流电源的地线相接,这样可以避免输出部分电源变化对单片机电源的影响,减小系统所受的干扰,提高系统可靠性。

④用双向可控硅来控制强电设备;图6—4中所示电路为光耦合器构成的可控硅开关电路。

可控硅SCR的触发电压取自电阻R,其大小由通过光电三极管的电流决定,直接由输入电压控制。

该电路简单,控制端与输出端有可靠的电隔离。

图6-1 图6-2图6-3 图6-47、本次课程设计的心得体会通过这次“材料成型计算机应用综合实验”,我们学到了更多关于单片机的知识,对单片机的开发运用有了初步的了解,以及对课本知识有了更深入的认识。

①从元器件布局的步骤中我们明白到布局合理可以节省电路板材料,减少导线连接,使得元件之间更加紧凑有序。

在实际生产中,内部芯片的形状肯定要符合一定的尺寸,这时就相当于考验芯片设计者元件布局的能力了。

②在检测各种元器件的好坏时我们遇到一些问题,但最终问题解决的同时也让我们学到了很多元器件实物操作的知识。

如:没有示波器的情况下,我们只能用万用表粗略地测试晶振的好坏,即用万用表电阻档测量晶振只能判断是否短路,晶振正常是不通的,如果通说明已短路,但不通也不能代表就是坏的。

③在焊接过程中我们的焊接技术比起电工实训时提高不少,能减少“虚焊”,能正确下料保证焊接质量,不过对于埋线焊的方法至今还没有突破。

相关文档
最新文档