《单片机原理与应用》实验教案_第1页
《单片机原理与应用》实验教案_第2页
《单片机原理与应用》实验教案_第3页
《单片机原理与应用》实验教案_第4页
《单片机原理与应用》实验教案_第5页
已阅读5页,还剩10页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

《单片机原理与应用》实验教案青岛科技大学自动化与电子工程学院

实验1keilc编程软件的使用本实验设备选用SXL-100型微机接口单片机实验开发系统,目的是培养学生综合运用本学期所学到的《单片机原理与设计》课程的知识,提高学生分析问题和解决问题的能力,进一步深化和巩固所学到的知识,增强学生的实验技能,提高学生的技术应用能力,为搞好毕业设计打基础,并使学生养成严谨、踏实的工作作风等思想素质方面受到教育和培养。实验目的熟悉keilc系统,利用现有单片机实验室的具有的微机和单片机实验器材,指导学生采用KeilC建立实验题目的“工程”,实际连接各实验的线路、调试各实验的过程,从而完成后续实验。对内部数据存储器50H~70H的内容清零。对外部数据存储器2000H~20FFH的内容清零。实验方法:整机介绍(SXL-100B+实验箱电路板简介)①SXL—100B+实验扩展板布局图如图所示AAPCI板卡输出接口BUSB&单片机扩展区C1ADC0809模数转换CDAC0832数模转换D2温度D1直流电机D步进电机E发光管控制F八位逻辑电平输入G138译码电路信号发生器与分频器H8253计数器8259IPC16C550串行通信实验J32位输入输出4片8255控制1个16×16的点阵K数码显示电路及4×4键盘电路②板图分区说明APCI板卡输出接口BUSB&单片机扩展区6116读写电路CDAC0832数模转换电路C1ADC0809模数转换电路D步进电机8MHZ信号发生器与分频器D1直流电机D2温度模块E发光管控制译码电路8255电路F八位逻辑电平输入G138译码电路信号发生器与分频器H8253计数器8259IPC16C550串行通信实验J32位输入输出,4片8255控制1个16×16的点阵,单脉冲发生电路K8255数码显示电路及4×4键盘电路③接线柱说明区号圆柱编号功能区号圆柱编号功能KJ14-1~8A~数码管的A段~DP段AJ19-2IOWI/O写端J37-1~4数码管LD8~5的控制端J19-3IORI/O读端BJ20-1~8ADD0~ADD7地址线ADD0~ADD7J19-4IMEMW内存写端J22-1~8D7~D0数据线D7~D0J19-5IMEMR内存读端J21-1~8ADD8~ADD15地址线ADD8~ADD15J19-6RESET复位端J19-1IRQ中断J83地GJ7-14MHz信号输出J82电源+5VJ7-22MHz信号输出J13电源+12VJ7-31MHz信号输出J12电源-12VJ7-4500KHz信号输出J11电源-5VJ7-5250KHz信号输出GJ2-Y1地址10HJ7-6125KHz信号输出J2-Y2地址20HJ7-831.25KHz信号输出J2-Y3地址30HJ8为ADC0809提供时钟信号的短路块J2-Y4地址80HJ2-Y0地址0HJ2-Y5地址90HJ50PA0~78255的A口0~7J2-Y6地址0A0HKJ49PC0~78255的C口0~7J2-Y7地址0B0HC1J65IN0~7模拟量输入,第0~7信道J2-Y1地址10HJ70EOCADC0809的EOC端(EOC为转换完成)J2-Y2地址20HJ69SIGNAL_IN模拟量输入J2-Y3地址30HJ67/CSADC0809的片选端J2-Y4地址80HCJ77/CSDAC0832的片选J2-Y5地址90HJ76Xfer控制DAC0832的Xfer端J2-Y6地址0A0HJ72OUTDAC0832的输出J2-Y7地址0B0HJ78WW停止DAC0832工作的控制端(为Windows9x下特有)KJ48-0~7PB0~78255的B口0~7HJ53-1OUT0第1个计数器输出J50PA0~78255的A口0~7KJPC0-JPC78255与键盘的缺省连接J49PC0~78255的C口0~7④地址分配电路图(G区)系统特点:1、

一体化设计,系统功能齐全,涵盖了微机/单片机教学实验课程的大部分内容。2、

实验模块化,适合计算机原理与接口教学,满足大纲要求。3、独立性强,自带CPU、键盘、LED显示,可独立运行;自带EPROM的读取、编程、比较和查空功能。

4、

灵活的电源接口:配有PC机电源插座,可由PC提供电源。另外还配有外接开关电源,提供所需的+5V,±12V,其输入为220V的交流电。5、

系统的联机运行模式:配有系统调试软件,系统调试软件wqWINDOWS版两种,均为中文多窗口界面。调试程序时可以同时打开寄存器窗口、内存窗口、变量窗口、反汇编窗口等等,极大地方便了用户的程序调试。该软件集源程序编辑、编译、链接、调试于一体,每项功能均为中文下拉菜单,简明易学。6、

系统的单机运行模式:系统在没有与计算机连接的情况下,自动运行在单机模式,在此模式下,用户可通过键盘输入运行程序(机器码)和操作指令,同时将输入信息及操作的结果在LED数码管上显示出来。7、

系统功能齐全,可扩展性强。本实验系统不仅完全能满足教学大纲规定的基本接口芯片实验,其灵活性和可扩展性(数据总线、地址总线、控制总线为用户开放)亦能轻松满足其课程设计、毕业设计使用等。实验步骤用KeilC建立一个工程:点击Project菜单,选择弹出的下拉式菜单中的NewProject,如图1-1。接着弹出一个标准Windows文件对话窗口,如图1-2,在“文件名”中输入您的程序项目名称,这里我们用“test”。“保存”后的文件扩展名为uv2,这是KEILuVision2项目文件扩展名,以后我们可以直接点击此文件以打开先前做的项目。图1-1NewProject菜单选择所要的单片机,这里我们选择Ateml公司的AT89C52。然后确定,出现如下对话框选“N”,工程建立完毕,如下图:图1-2文件窗口向工程中添加文件:(1)我们要在项目中创建新的程序文件或加入旧程序文件。如果您没有现成的程序,那么就要新建一个程序文件。点击新建文件的快捷按钮,便会出现一个新的文字编辑窗口,这个操作也可以通过菜单File-New或快捷键Ctrl+N来实现。现在可以编写程序了,光标已出现在文本编辑窗口中,等待我们的输入了。(2)点击保存新建的程序,也可以用菜单File-Save或快捷键Ctrl+S进行保存。我们把第一个程序命名为test1.asm,保存在项目所在的目录中,这时您会发现程序单词有了不同的颜色,说明KEIL的ASM语法检查生效了。图1-3文件对话框(3)如图1-4鼠标在屏幕左边的SourceGroup1文件夹图标上右击弹出菜单,在这里可以做在项目中增加减少文件等操作。我们选“AddFiletoGroup‘SourceGroup1’”弹出文件窗口,选择刚刚保存的文件,按ADD按钮,关闭文件窗,程序文件已加到项目中了。这时在SourceGroup1文件夹图标左边出现了一个小+号说明,文件组中有了文件,点击它可以展开查看。图1-4添加文件窗口文件设置:(1)用鼠标右键点击Target1,选OptionsforTarget‘Target1’(2)然后选Debug页,在右边选“Use:KeilMonitor-51Driver”,并勾选Gotillmain编译、运行、调试:(1)点击Project菜单,选择弹出的下拉式菜单中的Buildtarget,或按F7键,编译并生成目标代码。。在窗口中可以看到编译的错误信息和使用的系统资源情况等。(2)回到KeilC界面,按Debug菜单中的Start\StopDebugSession,或Ctrl+F5键,进入联机调试状态(快捷键为一个小放大镜)。程序通过串行接口下载到单片机内,接下来就可以运行和调试程序了。(3)运行调试:在Debug菜单下有运行、单步运行等选项可以运行程序。另外,在View菜单下还可以打开观察窗口,跟踪变量的变化。实验2输入输出接口实验实验目的1、熟悉利用keilc编写和调试单片机程序的方法。2、掌握利用简单芯片实现并行接口扩展的方法。实验题目1闪烁灯1.实验说明在P1.0端口上接一个发光二极管L1,使L1在不停地一亮一灭,一亮一灭的时间间隔为0.5秒。2.系统板上硬件连线把“单片机系统”区域中的P1.0端口用导线连接到K模块PC5上。3.程序设计内容ORG0000HLJMPMAINORG0030HMAIN:MOVSP,#60HSTART:CLRP1.0LCALLDELAYSETBP1.0LCALLDELAYLJMPSTARTDELAY:MOVR5,#45;延时子程序,延时0.5秒D1:MOVR6,#20D2:MOVR7,#248D3:DJNZR7,D3DJNZR6,D2DJNZR5,D1RETEND实验题目2霓虹灯输出1.实验说明利用74ls273扩展的输出口接8路发光二极管,按循环点亮的方式输出。并行口的抵制为8060H2.电路图如附录所示;参考程序2-3可控霓虹灯实验流程2-3可控霓虹灯实验流程图2-1霓虹灯输出流程图图2-2输入接口扩展流程图ADDIOEQU8060HORG0000HLJMPMAINORG0030HMAIN:MOVSP,#60HMOVA,#01HMOVDPTR,#ADDIOMOVX@DPTR,AL1:ACALLDELAYRRAMOVX@DPTR,AAJMPL1DELAY:MOVR5,#45;延时子程序,延时0.5秒D1:MOVR6,#20D2:MOVR7,#248D3:DJNZR7,D3DJNZR6,D2DJNZR5,D1RETEND实验题目3输入输出接口实验1.实验说明利用74ls244扩展的输入口读取开关状态,并利用74ls273扩展的输出口接口连接的8路发光二极管显示结果。并行口的地址为8060H电路图;3.参考程序ADDIOEQU8060HORG0000HLJMPMAINORG0030HMAIN:MOVSP,#60HL1:MOVDPTR,#ADDIOMOVXA,@DPTRMOVX@DPTR,ASJMPL1END实验题目4可控霓虹灯输出实验1.实验说明利用扩展的输出口驱动8路发光二极管,按循环点亮的方式输出,并由输入开关控制循环方向2.电路图如附录所示;连线:P1.0接F模块J15IN_13.参考程序ADDIOEQU8060HORG0000HLJMPMAINORG0030HMAIN:MOVSP,#60HMOVA,#01HMOVDPTR,#ADDIOMOVX@DPTR,AL1:ACALLDELAYJBP1.0,L2RRASJMPNEXTL2:RLANEXT:MOVX@DPTR,AAJMPL1DELAY:MOVR5,#45;延时子程序,延时0.5秒D1:MOVR6,#20D2:MOVR7,#248D3:DJNZR7,D3DJNZR6,D2DJNZR5,D1RETEND实验3定时/计数器实验实验目的1、掌握利用51系列单片机编写中断服务程序的方法。2、掌握使用单片机内部定时计数器实现定时功能的方法。实验题目1定时器实验1.实验说明每隔1秒点亮和熄灭由p1.0所连接的发光二极管。2.系统板上硬件连线把单片机系统区域中的P1.0端口用导线连接到K模块PC5上。3.程序设计内容图3-1定时器实验主程序 图3-2定时器实验中断程序ORG0000HLJMPMAINORG000BHLJMPINTT0ORG0030HMAIN:MOVSP,#60HCLRP1.0MOVR1,#14HMOVTMOD,#01H;00000001MOVTH0,#4CH;50msMOVTL0,#00HSETBTR0SETBET0SETBEAHERE:AJMPHEREINTT0:MOVTH0,#4CHMOVTL0,#00HDJNZR1,NEXTCPLP1.0MOVR1,#14HNEXT: RETIEND实验题目2计数器实验1.实验说明把定时器0外部输入的脉冲进行计数,并送显示器显示。2.程序设计内容ORG0000HSE15:MOVSP,#53H MOVTMOD,#05HMOVTH0,#00HMOVTL0,#00H SETBTR0LO29:MOVR2,TH0MOVR3,TL0LCALLR0,#79HMOVR0,#79HMOVA,R6LCALLPTDS MOVA,R5LCALLPTDSMOVA,R4LCALLPTDSLCALLSSEESJMPLO29ZOY0:CLRAMOVR4,AMOVR5,AMOVR6,AMOVR7,#10HLO30:CLRCMOVA,R3RLCAMOVR3,AMOVA,R2RLCAMOVR2,AMOVA,R6ADDCA,R6DAAMOVR6,AMOVA,R5ADDCA,R5DAAMOVR5,AMOVA,R4ADDCA,R4DAAMOVR4,ADJNZR7,LO30RETORG0061HPTDS:MOVR1,AACALLPTDS1MOVA,R1SWAPAPTDS1:ANLA,#0FHMOV@R0,AINCR0RETORG0D50HSSEE:SETBRS1MOVR5,#05HSSE2:MOV30H,#20HMOV31H,#7EHMOVR7,#06HSSE1:MOVR1,#21HMOVA,30HMOVX@R1,AMOVR0,31HMOVX@R0,AMOVDPTR,#DDFFMOVCA,@A+DPTRMOVR1,#22HMOVX@R1,AMOVA,30HRRAMOV30H,ADEC31HMOVA,#0FFHMOVX@R1,ADJNZR7,SSE1DJNZR5,SSE2CLRRS1RETDDFF:DB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90HDB88H,83H,0C6H,0A1H,86H,8EH,0FFH,0CH,89H,0DEH实验4中断系统实验实验题目1利用定时器中断实现可控霓虹灯实验1.实验说明每隔1s循环点亮p1口所连的发光二极管。2.系统板上硬件连线把单片机系统区域中的INT0(P3.2)端口用导线连接到J模块J101上。3.程序设计内容ADDIOEQU8060HORG0000HLJMPMAINORG000BHLJMPINTT0ORG0030HMAIN:MOVSP,#60HMOVDPTR,#ADDIOMOVR1,#14HMOVA,#0FEHMOVX@DPTR,ASETBIT0SETBEX0MOVTMOD,#01H;MOVTH0,#4CHMOVTL0,#00HSETBTR0SETBET0SETBEACLRCHERE:AJMPHEREINTT0:MOVTH0,#4CHMOVTL0,#00HDJNZR1,STOPMOVR1,#14HJCRIGHTRLAMOVX@DPTR,AAJMPSTOPRIGHT:RRAMOVX@DPTR,ASTOP:RETIEND实验题目2利用定时器和外部中断实现可控霓虹灯实验1.实验说明每隔1s循环点亮p1口所连的发光二极管,并用INT0控制循环方向。2.系统板上硬件连线把单片机系统区域中的INT0(P3.2)端口用导线连接到J模块J101上。3.程序设计内容ADDIOEQU8060HORG0000HLJMPMAINORG0003HLJMPIINT0ORG000BHLJMPINTT0ORG0030HMAIN:MOVSP,#60HMOVDPTR,#ADDIOMOVR1,#14HMOVA,#0FEHMOVX@DPTR,ASETBIT0SETBEX0MOVTMOD,#01H;MOVTH0,#4CH5-15-1显示子程序流程SETBTR0SETBET0SETBEACLRCHERE:AJMPHEREIINT0:CPLCRETIINTT0:MOVTH0,#4CHMOVTL0,#00HDJNZR1,STOPMOVR1,#14HJCRIGHRLAMOVX@DPTR,AAJMPSTOPRIGHT:RRAMOVX@DPTR,ASTOP:RETIENDT实验5LED动态显示实验实验目的1、掌握利用单片机实现扩展LED动态显示的方法。实验题目1时钟显示电路1.实验说明利用8255的PA、PB口扩展4位LED显示器,并利用动态扫描的方式显示一个时钟电路,每隔一秒种变化一次。2.系统电路图电路图如下图。本实验不需连线。3.程序设计内容图5-3主程序流程图图5-3主程序流程图图5-2图5-2中断服务程序流程PA55EQU8000HPB55EQU8001HCTL55EQU8003HMIN1EQU40H;分十位MIN2EQU41H;分个位SEC1EQU42H;秒十位SEC2EQU43H;秒个位COUNTEQU31H;ORG0000HLJMPMAINORG000BHLJMPINTT0ORG0030HMAIN:MOVSP,#60HMOVA,#80HMOVDPTR,#CTL55MOVX@DPTR,AMOVDPTR,#PB55MOVA,#0FFHMOVX@DPTR,AMOVTMOD,#01HMOVTL0,#00HMOVTH0,#4CHCLRAMOVMIN1,AMOVMIN2,AMOVSEC1,AMOVSEC2,ASETBTR0SETBET0SETBEALOOP:LCALLDISPLAYLCALLDELAYSJMPLOOPDISPLAY:MOVA,#01HMOV30H,AMOVR2,#04HMOVR0,#40HDISP:MOVA,@R0MOVDPTR,#LEDMOVCA,@A+DPTRMOVDPTR,#PA55MOVX@DPTR,AMOVA,30HCPLAMOVDPTR,#PB55MOVX@DPTR,ALCALLDELAYDJNZR2,NEXT1MOVA,#0FFHMOVDPTR,#PB55MOVX@DPTR,ARETNEXT1:INCR0MOVA,30HRLAMOV30H,AMOVA,#0FFHMOVDPTR,#PB55MOVX@DPTR,ASJMPDISPDELAY:MOVA,10HAA:DECAJNZAARETINTT0:PUSHACCMOVTL0,#00HMOVTH0,#4CHINCCOUNTMOVA,COUNTCJNEA,#10,QUITMOVCOUNT,#0INCSEC2MOVA,SEC2CJNEA,#10,QUITMOVSEC2,#0INCSEC1MOVA,SEC1CJNEA,#06,QUITMOVSEC1,#0INCMIN2MOVA,MIN2CJNEA,#10,QUITMOVMIN2,#0INCMIN1MOVA,MIN1CJNEA,#06,QUITMOVMIN1,#0QUIT:POPACCRETILED:DB,0c0H,0f9H,0a4H,0b0H,99H,92H,82H,0f8H,80H,98HEND8255七段LED显示段驱动8255七段LED显示位驱动图6-1键盘识别主程序流程图图6-1键盘识别主程序流程图实验6矩阵式动态扫描键盘实验实验目的1、掌握利用单片机实现对矩阵式的扩展和驱动方法。实验题目小键盘识别1.实验说明利用PC口扩展一个4*4的矩阵键盘,利用键盘扫描方式读取键盘值并在LED中显示。2.系统电路图电路图如下图。本实验不需连线。3.程序设计内容PA55EQU8000HPB55EQU8001HPC55EQU8002HCTL55EQU8003Hkey_valueEQU31Hkey_rowequ32hLINE_VLAUEEQU34HORG0000HLJMPMAINORG0300HMAIN:LCALLD1MLCALLD1MMOVSP,#60HMOVA,#00HMOVR0,#40HMOVR1,#04HNEXT:MOV@R0,AINCR0DJNZR1,NEXTMOVDPTR,#CTL55MOVA,#81HMOVX@DPTR,AAA:LCALLDISPLAYLCALLKEY_SCANMOVA,KEY_VALUECJNEA,#0FFH,AA1SJMPAAAA1:MOVR0,#42HMOVR2,#03HAA5: MOVA,@R0INCR0 MOV@R0,A DECR0DECR0DJNZR2,AA5INCR0 MOVA,KEY_VALUEMOV@R0,ASJMPAAKEY_SCAN:MOVKEY_VALUE,#0FFHMOVA,#0FHMOVDPTR,#PC55MOVX@DPTR,AMOVXA,@DPTRORLA,#0F0HCJNEA,#0FFH,LOP1SJMPSTOPLOP1:LCALLDISPLAYMOVDPTR,#PC55MOVA,#0FHMOVX@DPTR,AMOVXA,@DPTRORLA,#0F0HCJNEA,#0FFH,LOP2SJMPSTOPLOP2:MOVKEY_VALUE,#00HMOVR7,#04HMOVDPTR,#PC55MOVkey_row,#0EFHAGA:MOVA,KEY_ROWMOVX@DPTR,AMOVXA,@DPTRORLA,#0F0H MOVR6,ACJNER6,#0FEH,LINE1 MOVA,key_value ADDA,#00H MOVkey_value,ASJMPSLOWLINE1:CJNER6,#0FDH,LINE2MOVA,key_value ADDA,#01H MOVkey_value,ASJMPSLOWLINE2:CJNER6,#0FBH,LINE3MOVA,key_valueADDA,#02H MOVkey_value,ASJMPSLOWLINE3:CJNER6,#0F7H,NEXT10MOVA,key_valueADDA,#03H MOVkey_value,ASJMPSLOWNEXT10:MOVA,KEY_ROWRLAMOVKEY_ROW,A MOVA,KEY_VALUEADDA,#04H MOVKEY_VALUE,ADJNZR7,AGAMOVKEY_VALUE,#0FFHSJMPSTOPslow:LCALLDISPLAYMOVDPTR,#PC55MOVA,#0FHMOVX@DPTR,AMOVXA,@DPTRORLA,#0F0HCJNEA,#0FFH,slowSTOP:RETDISPLAY:MOVA,#01HMOV30H,AMOVR2,#04HMOVR0,#40HDISP:

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论