《单片机课程设计报告格式洗衣机.doc》由会员分享,可在线阅读,更多相关《单片机课程设计报告格式洗衣机.doc(32页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、单片机原理及应用课程设计专 业: 自动化 设计题目: 洗衣机控制器设计 班级:自0856 学生姓名: 郜辉学号: 24 指导教师:唐耀武 分院院长: 许建平 教研室主任: 方健 电气工程学院一、课程设计任务书 1.设计内容1)以89C51单片机为核心器件组成控制器,采用定时中断实现精确时间定时;用A/D转换对水温进行检测。2)利用提供的单元模块构成硬件系统。2.设计要求要求:1)基本功能:使用6位LED显示器,4位用来显示时间;显示格式为“分分秒秒”;2位显示温度值,4个键组成键盘,可设置洗衣机整个工作过程中各段时间,热加热温度设定。按键启动、停止等。键盘:功能键、移位键、加1键、启动/停止键
2、。2)扩展功能: 增加定时启动功能。3. 课程设计报告要求 1)自行设计系统硬件结构,硬件图纸要求B5图纸打印;图纸符合电气规范、美观。2)编写系统程序,要求程序书写规范,功能完全;3)书写报告,3千字左右,报告按照设计过程来进行撰写,文后需要附系统硬件原理图一份。4)课程设计总结(可包括课程设计过程中的收获、体会及对该课程设计的意见、建议等)。5)参考图书及文献清单。3、参考资料1李广弟,朱月秀,王秀山编著.单片机基础. 北京:北京航空航天大学出版社,20012 何立民编著.MCS-51系列单片机应用系统设计系统配置与接口技术.北京:北京航空航天大学出版社,19993 蔡美琴等编著.MCS-
3、51 单片机系统及应用.北京:高等教育出版社.19924.设计进度(2010年6月14日至6月27日) 时间设计内容第1-2天查阅资料,方案比较、设计与论证,理论分析与计算第3-5天硬件焊接、单元电路调试第6-8天系统调试第9-10天书写报告、答辩5.设计地点新实验楼 308、313二、评语及成绩评分项目评分标准量化分数1.独立分析与解决问题的能力很强较强一般不能102单片机系统设计能力很强较强一般较差很差353.报告撰写情况规范整洁逻辑杂乱有错误254.辅导答疑积极认真应付消极105.设计态度积极认真应付消极106.出勤全勤缺勤次数10附加评语量化总分成绩:指导教师:单片机课程设计报告班 级
4、: 自0856 姓 名: 郜辉 学 号: 24 指导教师: 唐耀武 撰写日期: 2010-7-6 目录目 录第一章 课程设计内容与要求分析11.1课程设计内容11.2课程设计要求分析11.2.1系统单元电路组成1 1. 2. 2 加热器的工作原理 .11 .2 .3 显示接口的设计1 1. 2. 4 键盘接口的设计. 2 1. 2. 5 74LS16的简介.3 1. 2. 6 74LS39的简介.4 1. 2. 7 ADC0809的工作原理.5第二章 控制系统程序设计6 2. 1 加热器程序的程图20 2.2加热器程序清单.20单片机原理及应用课程设计总结21参考文献22附录23第二章课程设计
5、内容与要求分析第一章 课程设计内容与要求分析1.1课程设计内容以89C51单片机为核心器件组成控制器,采用定时中断实现精确时钟定时;用A/D转换对水温进行检测。利用提供的单元模块构成硬件系统。1.2课程设计要求分析基本功能:使用6位LED显示器,4位用来显示时间;显示格式为“时时分分”;秒用LED指示;2位显示温度值,4个键组成键盘,可设置热水器启动和停止时间,加热温度设定。随时按键启动、停止等。键盘:功能键、移位键、加1键、启动/停止键。扩展功能: 增加多时段启动/停止功1.2.1加热器的工作原理 加热器开始工作进行程序初始化,等待按键如果有按键按下判断是否是启动键,如果是内部标志位取反进行
6、启动。利用A/D转换来控制温度是否达到预定值。否则是功能键进行设定。如果没有按键,是否有定时启动和时间对比是否到时,时间到即开始启动。1.2.2系统单元电路组成8031单片机是Intel公司生产的MCS-51系列单片机中的一种,除无片内ROM外,其余特性与MCS-51单片机基本一样。8031单片机都采用40引脚的直插封装(DIP方式),在单片机的40条引脚中有2条专用于主电源的引脚,2条外接晶体的引脚,4条控制或与其它电源复用的引脚,32条输入/输出(I/O)引脚。8031单片机的引脚除了电源、复位、时钟接入,用户I/O口外,其余管脚是为实现系统扩展而设置的。这些引脚构成8031单片机片外三总
7、线结构,即: 地址总线(AB):地址总线宽为16位,因此,其外部存储器直接寻址为64K字节,16位地址总线由P0口经地址锁存器提供8位地址(A0至A7);P2口直接提供8位地址(A8至A15)。 数据总线(DB):数据总线宽度为8位,由P0提供。控制总线(CB):由P3口的第二功能状态和4根独立控制线RESET、EA、ALE、PSEN组成。1. 2 .3 显示接口电路的设计键盘和显示电路是人机交互的重要手段。控制键是用户干预系统运行的唯一接口,也是用户比较关心的问题。为了实现控制器对时间与温度的设定及显示功能,串行显示电路采用串入并出芯片74LS164驱动4位数码管实现时间与温度的静态显示。该
8、电路只使用80C51的3个端口,配接4片串入并出移位寄存器74LS164与1片三端可调稳压器LM317T。其中74LS164的引脚Q0Q7为8位并行输出端;引脚A、B为串行输入端;引脚CL K为时钟脉冲输入端,在CLK脉冲的上升沿作用下实现移位,在CLK=0、清除端MR=1时,74LS164保持原来数据状态;MR=0时,74LS164输出清零,其显示电路如图:74ls164其工作过程如下:80C51的串行口设定在方式0移位寄存器状态下,串行数据由P3.0发送,移位时钟由P3.1送出。在移位时钟的作用下,串行口发送缓冲器的数据一位一位地移入74LS164中。4片74LS164串级扩展为4个8位并
9、行输出口,分别连接到4个LED显示器的段选端作静态显示。需要指出的是,由于74LS164无并行输出控制端,因而在串行输入过程中,其输出端的状态会不断变化,造成不应显示的字段仍有较暗的亮度,影响了显示的效果。以往的做法是在74LS164的输出端加接4片锁存器或三态门,使移位寄存器串行输入数据时其输出端的变化不反映到LED上,待串行输入结束后再打开锁存器或三态门,将稳定的显示数据送给LED。本设计电路的独特之处在于仅采用了1片三端可调稳压器LM317T,317T的3、2脚分别是电压输入、输出端,317T的1脚是电压调整端,脚2输出电压随脚1电压而变化。脚1与接地电阻之间并一个NPN三极管,它的基极
10、受P1.7口线控制,串行输入时P1.7口线为高电平,三极管饱和导通使317T的脚1约为0.3 V,脚2输出电压随之下降到1.5 V,不足以使共阳极LED发光,故此时串行输入的影响不会反映到LED上;串行输入结束后,使P1.7口线为低电平,三极管截止,脚2输出电压因脚1电压增高便上升到2.0V使LED正常发光。因此,1片三端可调稳压器LM317T起到了4片锁存器的作用使LED显示不会闪烁。本电路的另一优点是通过可调电位器P1可在线调整脚2的输出电压,使LED的显示亮度均匀可调,而且省掉了大量的LED限流电阻。1. 2. 4 键盘电路设计四键模式:功能键(P1.0)、移位键(P1.1)、加1键(P
11、1.2)、启动键(P1.3)在定时设定时,是定时功能取消键。启动键按一下启动,再按一下停止。键盘电路跟显示电路一样采用扫描方式,并利用动态显示时的数码管驱动位置信号来判断相应按键的状态单片机的P33P35口输出的BCD码经译码器译码后,相应的Y口呈低电平,而AT89C205 1的P37口平时为高电平(由于有上拉电阻),只有当某一按键按下时,P37才被下拉为低,这时,单片机将利用程序查询P37是否为低,如果P37为低电平,则读回单片机P33P35口的值(从缓冲区读取),并判断是那个按键按下然后调用相应的处理程序进行处理1.2.5 74LS164简介ls164为8位移位寄存器,其主要电特性的典型值
12、如下:54/74164 185mW 54/74LS164 80mW当清除端(CLEAR)为低电平时,输出端(QAQH)均为低电平。 串行数据输入端(A,B)可控制数据。当 A、B任意一个为 低电平,则禁止新数据输入,在时钟端(CLOCK)脉冲上升沿作用下Q0 为低电平。当A、B 有一个为高电平,则另一个就允许输入数据,并在CLOCK 上升沿作用下决定Q0 的状态.164为8位移位寄存器, 门控(赋能/禁止)串行输入,并行输出; 全为缓冲的时钟和串行输入; 异步清除其主要电特性的典型值如下: 型号 fm pn 54/74164 36mhz 185mw 54/74ls16436 mhz 80mw
13、当清除端(clear)为低电平时,输出端(qa-qh)均为低电平. 串行数据输入端(a,b)可控制数据.当a,b任意一个为低电平,则禁止新数据输入,在时钟端(clock)脉冲上升沿作用下q0为低电平.当a,b有一个为高电平,则另一个就允许输入数据,并在clock上升沿作用下决定q0的状态. 引出端符号 clock 时钟输入端 clear 同步清除输入端(低电平有效) a,b 串行数据输入端 qa-qh 输出端 逻辑及封装图 双列直插封装 极限值 电源电压7v 输入电压为5.5v 工作环境温度 54164 -55125 74164 -070 储存温度-65150 真值表 h-高电平 l-低电平
14、x-任意电平 -低到高电平跳变 qa0,qb0,qh0 -规定的稳态条件建立前的电平 qan,qgn -时钟最近的前的电平 时序图为推荐工作条件: 54/74164 最小 额定 最大 单位 54 4.5 5 5.5 电源电压vcc74 4.75 5 5.25 v 输入高电平电压vih2 v 输入低电平电压vil 0.8 v 输出高电平电流ioh -400 ua 输出低电平电流iol 8 ma 时钟频率fcp0 25 mhz 脉冲宽度tw clock,clear 20 ns 建立时间tset 25 ns 保持时间th5 ns 静态特性(ta为工作环境温度范围) 164 参 数 测 试 条 件【1
15、】最小 最大 单位 vik输入嵌位电压 vcc=最小,vik=-12ma -1.5 v voh输出高电平电压 vcc=最小vih =2v vil=0.8v, ioh=-400 a 2.4 v vol输出低电平电压 vcc=最小,vih=2v, vil=0.8v,iol=8ma 0.4 v ii最大输入电压时输入电流 vcc=最大 vi=5.5v 1 ma iih输入高电平电流 vcc=最大,vih=2.4v 40 a iil输入低电平电流 vcc=最大,vil=0.4v -1.6 ma 54 -10 -27.5 ios输出短路电流 vcc=最大 74 -9 -27.5 ma icc电源电流 v
16、cc=最大,a和b接地,clock接2.4v,clear瞬间接地后接4.5v 54 ma 1: 测试条件中的最小和最大用推荐工作条件中的相应值. 动态特性(ta=25) 164 参 数2测 试 条 件 最小 最大 单位 fmax 25 mhz tplh 27 ns tphl clock任一q32 ns tphl clear 任一qvcc =5v,cl=15pf,rl=800 36 ns 2: fmax 最大时钟频率.tplh输出由低电平到高电平传输延迟时间 tphl输出由高电平到低电平传输延迟时间1. 2. 6 74LS393的简介74ls393 lsttl型双四位二进制计数器 推荐工作条件
17、电 性 能:(除特别说明外,均为全温度范围) 74 54 参数值 参数值 符号 参数名称 测试条件 最小 典型 最大 最小 典型 最大 单位vik 输入钳位电压 vcc=最小 ii=-18ma -1.5 -1.5 v voh 输出高电平电压 vcc=最小 vil=最大vih=2v ioh=最大2.7 2.5 3.4 v vol 输出低电平电压 vcc=最小 vil=最大vih=2v iol=最大 0.5 0.25 0.4 v vcc=最大 vi=7v 清除clr 0.1 0.1 ii 输入电流 (最大输入电压时) vcc=最大vi=5.5v a输入 0.2 0.2 ma清除clr 20 20
18、iih 输入高电平电流 vcc=最大 vi=2.7v a输入 100 100 a清除clr -0.4 -0.4 iil 输入低电平电流 vcc=最大 vi=0.4v a输入 -1.6 -1.6 maios 输出短路电流 vcc=最大 vo=0v-20 -100 -20 -100 maicc 电源电流 vcc=最大 (注) 26 15 26 ma注:测icc时,所有输出开路,二个清除输入先瞬时接4.5v再接地,所有其它输入端接地. 所有典型值均在vcc=5.0v, ta=25下测量得出. 1. 2. 7 ADC0809的简介与工作原理ADC0809是一种逐次比较式8路模拟输入,8位数字量数字输入
19、量输出的A/D转换器。1.ADC0809引脚功能ADC0809共有28脚,采用双列直插式封装。其主要功能如下:(1) IN0-IN7是八路模拟信号输入端。(2) D0-D7是八位数字量输出端。(3) A,B,C与ALE控制八路模拟通道的切换,A,B,C分别与3根地址线或数据线相连,3位编码对应8个通道地址口。C,B,A=000-111分别对应IN0-IN7通道的地址。这里要强调的是:ADC0809虽然有八路模拟通道可以同时输入八路模拟信号,但每个瞬间只能转换一路,各路之间的切换由软件改变C,B,A引脚上的代码来实现。入端,CLK为时钟输入端。(5)Vr(+)和VR(+)为参考电压输入端。2.
20、ADC0809结构及转换原理 ADC0809是采用逐次比较的方法完成A/D转换的,由单一的+5v电源供电。片内带有锁存功能的八路选一的模拟开关,由C,B,A引脚的编码来决定所选通道。0809完成一次转换需要100us左右,输出三态锁存缓冲器,直接连到8031的数据总线上。通过适当的外接电路,0809可对0-5v的模拟信号进行转换。3.ADC0809与8031单片机的接口 由于ADC0809片内无时钟,可利用8031提供的地址锁存允许信号ALE经D触发器2分频后获得,ALE引脚的频率是8031单片机时钟频率的1/6。由于ADC0809具有输出三态锁存器,其8位数据引脚可直接与数据总线相连。地址引
21、脚C,A,B分别与地址总线的低3位A2,A1,A0相连,以选通IN0-IN7中的一个通路。第二章 热水器的程序设计 2.1 热水器程序流程图结束转功能键开始是否启动键有键按?标识位取反启动初始化A|D读温度判断停止停止有无定时时间对比到时否时间到启动启动时间到否停止 2.2 热水器程序清单:;四键模式:功能键(P1.0)、移位键(P1.1)、加1键(P1.2)、启动键(P1.3)在定时设定时,是定时功能取消键。 启动键按一下启动,再按一下停止。;A/D转换地址:0000H;指示灯输出地址:5000HORG 0000HAJMP MAINORG 000BHAJMP T00KORG 0030HMAI
22、N:MOV SP,#60HSTRT:MOV P1,#0FFHMOV DPTR,#4000HMOV A,#0FFHMOVX DPTR,AMOV 30H,#1 ;显示缓冲单元MOV 31H,#2MOV 32H,#3MOV 33H,#4MOV 35H,#0 ;按键功能计数MOV 50H,#00H ; 启动时间1设定MOV 51H,#00H ;MOV 52H,#00H ; 关闭时间1设定MOV 53H,#00H ;MOV 54H,#60H ; 温度设定 默认温度60度MOV 3CH,#0 ;分起始值MOV 3DH,#0 ;时起始值CLR 00H ;定时启动标志CLR 02H ;定时启动标志CLR 05
23、H ;按键标志CLR 01H ;人为启动标志MOV TMOD,#01HMOV TH0,#3CHMOV TL0,#0B0HMOV 40H,#10 ;中断次数MOV 44H,#0 ;交替显示标志CLR F0 ;闪烁标志SETB TR0SETB ET0SETB EAMOV 41H,3CH ;41H 是分MOV 42H,3DH ;42H 是时MOV 43H,#00H ;43H是秒MOV R0,#3CHACALL BCDF ;bcd码分解,把3ch,3dh分解送显示缓冲区ACALL DISPNOPHH:ACALL KSMAO ;查按键JZ HHACALL T10MSACALL KSMAOJZ HHAJM
24、P KEY ;转健处理程序;用34H存闪烁的数 ;用35H记录功能号 ;用36H记录闪烁单元 ;用37H记录闪烁起始单元 ;用38H记录被设定单元地址KEY:MOV A,P1 ;KEY #JB ACC.0,HK ;不是功能键SETB 05H ;置按键标志INC 35HKE10:MOV A,35HDEC ARL A ;乘2MOV DPTR,#K20JMP A+DPTR ;功能散转NOPK20:AJMP K111 ;时间设定AJMP K112 ;启动定时设定AJMP K113 ;关闭时间设定AJMP K114 ;温度设定HK:JB ACC.3,HH ;也不是启动键,转回HK1:ACALL KSMA
25、OJNZ HK1LJMP QD ;转人工启动NOP ;K12K12K12K12K12K1K12:ACALL KSMAO ;K12 功能键按下后,再判其他键JZ K12NOPACALL T10MSACALL KSMAOJZ K12NOPMOV A,P1JB ACC.0,KES1CLR F0K15:MOV R1,36H ;功能键,保存最后一位闪的内容MOV A,34HMOV R1,A ;保存设定值MOV R0,38HACALL HBCD ;合并bcd码INC 35HMOV A,35HCJNE A,#05H,KE10MOV 35H,#0CLR F0CLR 05HMOV 41H,3CHMOV 42H,
26、3DHMOV R0,#41H ;设定完成ACALL BCDFACALL DISPKS11:ACALL KSMAOJNZ KS11LJMP HHKES1:JB ACC.1,KES2MOV R1,36H ;*移位键MOV A,34HMOV R1,A ;恢复现场INC 36H ;移位闪烁MOV A,36HCJNE A,#34H,K62MOV 36H,37H ;恢复闪烁起始单元K62:MOV R1,36HMOV 34H,R1K63:LCALL KSMAO ;判松键JNZ K63AJMP K12KES2:JB ACC.2,KES3 ;-加1键INC 34HANL 34H,#0FHMOV A,35HCJN
27、E A,#4,KS2SSJMP KS23 ;温度设定不大于99KS2S:MOV A,36HCJNE A,#30H,KS21MOV A,34H ;30H的内容不大于2CJNE A,#3,KS2AMOV 34H,#0SJMP KS2AKS21:MOV A,36HCJNE A,#31H,KS22MOV A,34HCJNE A,#4,KS2A ;31H的内容不大于3MOV 34H,#0SJMP KS2AKS22:MOV A,36HCJNE A,#32H,KS23MOV A,34HCJNE A,#6,KS2A ;32H的内容不大于5MOV 34H,#0SJMP KS2AKS23:MOV A,34HCJN
28、E A,#10,KS2A ;33H的内容不大于9MOV 34H,#0KS2A:ACALL KSMAOJNZ KS2AAJMP K12KES3:NOP ;定时启动取消键MOV A,35HCJNE A,#2,KS32CLR 00H ;取消定时标志MOV A,38HMOV R0,AMOV R0,#0INC R0MOV R0,#0MOV 30H,#0MOV 31H,#0MOV 32H,#0MOV 33H,#0MOV 34H,#0ACALL DISPKS32:ACALL KSMAOJNZ KS32KES4:AJMP K12;K111:CLR F0 ;停止闪烁MOV 30H,#01H ;时间设定设定MOV
29、 31H,#01H ;4个数码管显示1111 2秒钟MOV 32H,#01HMOV 33H,#01HACALL DISPMOV R7,#250LOP1:ACALL T10MSDJNZ R7,LOP1 ;延时2秒MOV 38H,#3CHMOV R0,#3CHACALL BCDFMOV 36H,#30HMOV 37H,#30HMOV 34H,30HACALL DISPSETB F0 ;开始闪烁KZ11:ACALL KSMAO ;判松键JNZ KZ11AJMP K12K112:CLR F0 ;定时启动时间设定MOV 30H,#2 ; 4个数码管显示2222 2秒钟MOV 31H,#2MOV 32H,
30、#2MOV 33H,#2ACALL DISPMOV R7,#250LOP2:ACALL T10MSDJNZ R7,LOP2 ;延时2秒MOV 38H,#50HMOV R0,#50HACALL BCDFMOV 36H,#30HMOV 37H,#30HMOV 34H,30HACALL DISPSETB F0SETB 00H ;置定时启动标志KZ21:ACALL KSMAOJNZ KZ21AJMP K12K113:CLR F0 ;关闭时间设定设定MOV 30H,#3MOV 31H,#3 ; 4个数码管显示3333 2秒钟MOV 32H,#3MOV 33H,#3ACALL DISPMOV R7,#25
31、0LP2:ACALL T10MSDJNZ R7,LP2 ;延时2秒MOV 38H,#52HMOV R0,#52HACALL BCDFMOV 36H,#30HMOV 37H,#30HMOV 34H,30HACALL DISPSETB F0KZ31:ACALL KSMAOJNZ KZ31AJMP K12K114:CLR F0 ;温度设定 温度设定小于99MOV 30H,#4MOV 31H,#4 ; 4个数码管显示4444 2秒钟MOV 32H,#4MOV 33H,#4ACALL DISPMOV R7,#250LP23:ACALL T10MSDJNZ R7,LP23 ;延时2秒MOV 38H,#54
32、HMOV R0,#54HACALL BCDFMOV 30H,#10 ;灭码MOV 31H,#10MOV 36H,#32HMOV 37H,#32HMOV 34H,32HACALL DISPSETB F0KZ41:ACALL KSMAOJNZ KZ41AJMP K12T00K:PUSH ACC ;T0中断子程序PUSH PSWPUSH 00HPUSH 01HMOV TH0,#3CH ;定时中断MOV TL0,#0B0HDJNZ 40H,RETUNMOV 40H,#10JB 05H,SANS ;05H是按键状态;INC 43H ;秒加1;MOV A,43H;CJNE A,#60,T10;MOV 43
33、H,#0 ;时间处理MOV A,41HADD A,#1DA AMOV 41H,ACJNE A,#60H,T10MOV 41H,#0MOV A,42HADD A,#1DA AMOV 42H,ACJNE A,#24H,T10MOV 42H,#0 ;42H是时,41H是分,43H是秒T10:JNB 01H,T11 ;不是手动方式AJMP RETUNT11:JNB 00H,T12 ; 不是定时方式MOV A,50HCJNE A,41H,T20 ;比较分MOV A,51HCJNE A,42H,T20 ;比较时SETB 02HMOV DPTR,#4000H ;启动MOV A,#0FEHMOVX DPTR,
34、ANOPACALL ADBJ ;调A/D比较程序NOPT20:JNB 02H,T12MOV A,52H ;是否到停止时间CJNE A,41H,T22MOV A,53HCJNE A,42H,T22CLR 02HMOV DPTR,#4000HMOV A,#0FFHMOVX DPTR,A ;停SJMP T12T22: ACALL ADBJ ;调A/D比较程序 显示温度SJMP T13T12:MOV R0,#41H ;显示时间ACALL BCDFT13:ACALL DISPSJMP RETUNSANS:JNB F0,RETUN ;F0=1闪烁 是按键状态MOV A,44HCPL AMOV 44H,AJ
35、Z SAN1MOV R0,36HMOV R0,#10SJMP SAN2SAN1:MOV R0,36HMOV R0,34HSAN2:ACALL DISPRETUN:POP 01HPOP 00HPOP PSWPOP ACCRETIT10MS:MOV R2,#2 ;10MS延时SS2:MOV R3,#200SS1:NOPNOPNOPDJNZ R3,SS1DJNZ R2,SS2RETDISP:MOV SCON,#00H ;显示子程序MOV R0,#30HMOV R2,#4DISP2:MOV A,R0MOV DPTR,#DDB1MOVC A,A+DPTR ;取断码MOV SBUF,ADISP1:JNB
36、TI,DISP1CLR TIINC R0DJNZ R2,DISP2RETDDB1: DB 0C0H,0F9H,0A4H,0B0H,99H DB 92H,82H,0F8H,80H,90H,0FFHADBJ:MOV DPTR,#0000HMOV A,#00H ;选择0通道MOVX DPTR,AMOV R7,#200ADC1:DJNZ R7,ADC1 ;延时等AD结果MOV DPTR,#0000HMOVX A,DPTR ;结果在A中NOPACALL BCD ;结果在31H,32H,33H中MOV A,31HJNZ AD1 ;百位不为0MOV A,32HSWAP AORL A,33HCJNE A,#9
37、0H,AD2 ;和90度比较AD2:JNC AD1CJNE A,54H,AD3 ;和设定温度比较AD3:JNC AD1MOV DPTR,#4000H ;温度低,加热MOV A,#0FEHMOVX DPTR,ASJMP AD4AD1: MOV DPTR,#4000H ;温度高,关闭加热MOV A,#0FFHMOVX DPTR,AAD4:RETKSMAO:MOV A,P1CPL AANL A,#0FHRETBCDF:MOV A,R0 ;把3ch,3dh分解送显示缓冲区ANL A,#0FHMOV 33H,AMOV A,R0SWAP AANL A,#0FHMOV 32H,AINC R0MOV A,R0
38、ANL A,#0FHMOV 31H,AMOV A,R0SWAP AANL A,#0FHMOV 30H,ARETHBCD:MOV A,32H ;回存设定值SWAP AORL A,33HMOV R0,AINC R0MOV A,30HSWAP AORL A,31HMOV R0,ARETBCD:NOPMOV B,#100DIV ABMOV 31H,AMOV A,BMOV B,#10DIV ABMOV 32H,AMOV 33H,BMOV 30H,#10RETQD:NOP ;人工启动SETB 01H ;MOV DPTR,#4000HMOV A,#0FEHMOVX DPTR,A ;启动QD3:ACALL A
39、DBJ ;调a/D比较ACALL DISPMOV R7,#100QD5:ACALL T10MS ;延时2秒DJNZ R7,QD5ACALL KSMAO ;调键扫描JZ QD3ACALL T10MSACALL KSMAOJZ QD3MOV A,P1JB ACC.3,QD3 ;判断是否按下启动键NOPACALL T10MSQD4:ACALL KSMAOJNZ QD4MOV DPTR,#4000HMOV A,#0FFHMOVX DPTR,A ;关闭CLR 01H ;人工启动标志清零LJMP HH单片机课程设计原理及总结课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的
40、重要环节,是对学生实际工作能力的具体训练和考察过程.随着科学技术发展的日新日异,单片机已经成为当今计算机应用中空前活跃的领域, 在生活中可以说得是无处不在。因此作为二十一世纪的大学来说掌握单片机的开发技术是十分重要的。回顾起此次单片机课程设计,我仍感慨颇多,的确,从选题到定稿,从理论到实践,在接近四星期的日子里,可以说得是苦多于甜,但是可以学到很多很多的的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,比如说不懂一些元器件的使用方法,对单片机汇编语言掌握得不好通过这次课程设计之后,一定把以前所学过的知识重新温故。这次课程设计终于顺利完成了,在设计中遇到了很多编程问题,最后在唐耀武老师的辛勤指导下,终于游逆而解。同时,在唐耀武老师那里我学得到很多实用的知识,在次我表示感谢!同时,对给过我帮助的所有同学和各位指导老师再次表示忠心的感谢! 郜辉 201007.05参考资料