单片机原理与接口技术实验教程_第1页
单片机原理与接口技术实验教程_第2页
单片机原理与接口技术实验教程_第3页
单片机原理与接口技术实验教程_第4页
单片机原理与接口技术实验教程_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

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

文档简介

单片机原理及接口技术(实验教程)动力装置电控所编哈尔滨工程大学前言单片机是一款功能强大的实用工具,其本身的性质就决定了学习单片机最为有效的途径实践。而实践的缺乏同时也是造成大多数人学习单片机比较困难的主要原因。本实验课程设置的目的旨在部分解决上述问题,为同学们提供相关实验设备,通过实践的方式解决理论学习中存在的疑惑,以期达到整个课程设置的目的帮助同学们完成单片机入门知识的学习。实验预习及实验步骤请参考第一章实验手册实验课程分数分配请参考第二章考核方式相关软件以及驱动安装请参考第三章实验箱使用说明第一章实验手册实验一单片机通用输入输出端口应用实验一实验目的1、熟悉实验箱的组成与使用。2、掌握程序的下载与调试的基本流程。3、了解单片机通用端口工作的基本原理。二实验器材主机试验箱组件接插线三实验说明本实验旨在通过使用GPIO通用输入输出端口检测拨码开关状态和点亮LED小灯的形式使学生了解单片机工作的基本原理。四实验原理1、LED原理如下图所示,8个LED(D1D8)一端接VCC5,另一端接三极管(RQ1RQ8)的集电结。三极管发射结接地,基区经电阻(RD1RD8)接插孔DJK。16个插孔每两个一组,分别对应8个LED,同组的两个插孔等价。由三极管的工作原理可知。将插孔,即三极管的基区电压接低。使得三极管集电节反相偏置,LED正向导通后点亮。图11LED原理图2、拨码开关原理如图所示四个拨码开关(K1K4),“1”脚接地,“3”脚悬空,“2”脚一方面经1K电阻与VCCINPUT连接,另一方面与插孔KJK相连。通过拨动拨码开关改变插孔KJK的输出电平。当“2”脚与“1”脚连接时,插孔KJK被拉低。当“2”脚与“3”脚连接时,插孔KJK被置高。图12拨码开关原理图五实验步骤1、安装CODEWARRIOR50(上课前务必安装好)。2、由实验指导老师介绍实验原理,注意事项。3、连接下载器与主机,参考本教程第三章第二节的步骤3、4安装下载器的相关驱动。5、将子版上PB端口的8个插针分别与8个调试小灯(DJK)相连,将拨码开关K4与子板上PA的第0端口相连。图13实物连线图5、连接烧写器与目标板。7、经指导老师检测无误后上电。8、在CODEWARRIOR开发环境中打开实验资料/程序/CODEWARRIOR50编写/PROJECT01GPIO,并将编译无误的程序烧写到目标板中。9、点击全速运行按钮后拨动拨码开关,观察LED灯亮灭变化。12、修改代码改变LED灯的点亮逻辑,诸如左边四个与右边四个交替点亮,或是8个灯交叉点亮。10、关掉电源,从子板上拔掉下载器。11、重新上电,拨动拨码开关,再次观察实验现象。六程序流程图图15程序流程图七源程序代码VOIDMAINVOID/PUTYOUROWNCODEHERE/BYTEK0,TEMP0INTI0,J0/变量声明/配置端口方向寄存器DDRB0XFF/PORTB全为输出DDRA0XFE/PORTA的第0端口为输入ENABLEINTERRUPTSFORIFPORTAIINCLUDE“DERIVATIVEH“/全局变量/UNSIGNEDINTTIMEEX0/前一次下降沿时定时器计数值UNSIGNEDINTTIMENOW0/当前下降沿定时器计数值LONGINTPERIODTIM0/计算得到的周期值LONGINTFLOWNUM0/记载自由运行定时器溢出次数/总线时钟设置外部晶振16MHZ,单片机总线时钟也设置为16MHZ/VOIDBUSCLOCK_INITVOIDCLKSEL0X00/将PLL锁相环脱离系统从而进行配置PLLCTL_PLLON1/打开PLL锁相环SYNR0X00REFDV0XC0POSTDIV0X00WHILECRGFLG_LOCK1/等待PLL锁相环稳定CLKSEL_PLLSEL1/在系统中使用PLL锁相环开始初始化锁相环PL配置总线时钟初始化ECT模块初始化PWM模块结束主循环/TIM初始化/VOIDTIM_INITVOID/配置自由运行定时器的分频系数/TSCR2_TOI1/定时器溢出中断使能TSCR2TSCR2/预分频系数为1,即定时器频率为总/线频率TSCR1_TEN1/开启自由运行定时器/输入捕捉相关寄存器设置/TIOS_IOS00/通道0设置为输入捕捉功能TCTL4TCTL4/通道0下降沿捕捉TIE_C0I1/通道0输入捕捉/输出比较中断允许/PWM初始化/VOIDPWM_INITVOIDPWMPOL0X01/通道0先输出高电平PWMCLK_PCLK00/0通道使用A时钟源PWMPRCLK0X04/A时钟频率为总线时钟16分频PWMCAE0X00/左对齐输出PWMCTL0X00/各通道8位PWM输出PWMPER0200/PWM0周期PWMDTY0100/PWM0占空比PWMSDN0X00PWME_PWME00/0通道禁止/主程序/VOIDMAINVOIDBUSCLOCK_INIT/调用总线时钟设置函数TIM_INIT/调用TIM初始化函数PWM_INIT/调用PWM初始化函数PWMDTY0100/PWM0周期PWMPER0250/PWM0占空比ENABLEINTERRUPTS/全局中断使能PWME_PWME01/PWM的0通道使能FOR/永久循环/中断服务程序/PRAGMACODE_SEGNON_BANKED/自由运行定时器溢出中断服务程序进行溢出次数计算/VOIDINTERRUPT16TIMOVFISRVOID/TIM自由定时器计时溢出中断向/量号为16FLOWNUMTFLG2_TOF1/通道0输入捕捉中断服务程序完成周期的计算/VOIDINTERRUPT8TIMCH0ISRVOID/输入捕捉通道0的中断向量号/为8TIMENOWTC0PERIODTIMTIMENOWFLOWNUM65536TIMEEXTIMEEXTIMENOWFLOWNUM0/每计算一次周期后需要将FLOWNUM清零TFLG1_C0F1/清除中断标识位实验三单片机串行通信实验一实验目的1、了解串口通信的基本工作原理。2、熟悉并掌握对SCI模块的控制与使用。3、能够进行SCI串口通信的C语言编程。二实验器材主机试验箱组件接插线USB转串口线三实验说明本实验通过RS232串口通信实现电脑和单片机的通信,其中单片机部分通过SCI模块进行数据传输。本实验程序完成如下功能初始化单片机后,单片机向电脑发送字符串“OK”,在电脑端通过串口通信助手向单片机发送字符,单片机会将接收到的字符回发给电脑。四实验步骤1、检测实验箱电源开关是否为关,请务必保证开关处于关的位置。2、由实验指导老师介绍实验原理。3、连接主机、烧写器与目标板。4、通过USB转串口线(或串口线)将实验箱中“串口通信”部分的DB9端口与计算机相连。图31USB转串口线图32实物连线图5、在CODEWARRIOR开发环境中打开实验资料/程序/CODEWARRIOR50编写/PROJECT03SCI,并将编译无误的程序烧写到目标板中。6、在电脑上打开串口调试工具试验资料/串口调试工具,选择正在使用的串口号,方法是右击我的电脑/管理/设备管理器/端口(COM和LPT),并将串口调试工具的波特率设置为9600。7、运行程序,串口调试工具中的接收区将会收到字符串“OK”,在串口调试工具的发送区输入字符或字符串,按下“手动发送”按钮发送字符或字符串,目标板接收到字符后会将字符再回发给电脑,在串口调试工具的接收区显示。五程序流程图图33程序流程图接受缓冲区满开始结束初始化SCI模块读取接收内容并返回是否六源程序代码/头文件/INCLUDEINCLUDE“DERIVATIVEH“/总线时钟设置,设置为16MHZ/VOIDBUSCLOCK_INITVOIDCLKSEL0X00/将PLL锁相环脱离系统从而进行配置PLLCTL_PLLON1/打开PLL锁相环SYNR0X00REFDV0XC0POSTDIV0X00WHILECRGFLG_LOCK1/等待PLL锁相环稳定CLKSEL_PLLSEL1/在系统中使用PLL锁相环/SCI模块的初始化/VOIDSCI_INITVOIDSCI0BD104/设置波特率,波特率为16000000/16104,/约9600BIT/SSCI0CR10X00/普通操作模式;SCI在等待模式下使能;1/位起始位8位数据位,1位停止位;PE0,/禁止奇偶校验SCI0CR20X0C/发送器和接收器使能,相关中断禁止/单片机发送一个字节/VOIDSCI_CHAR_SENDUNSIGNEDCHARCHWHILESCI0SR1/等待发送数据寄存器空,为空跳出循/进行数据发送SCI0DRLCH/单片机接收一个字节/UNSIGNEDCHARSCI_CHAR_GETVOIDRETURNSCI0DRL/主程序/VOIDMAINVOIDCHARGETCHAR0/用于保存接收到的字符BUSCLOCK_INIT/调用时钟总线初始化函数SCI_INIT/调用SCI初始化函DISABLEINTERRUPTS/全局中断禁止SCI_CHAR_SENDOSCI_CHAR_SENDKSCI_CHAR_SENDN/发送换行符FOR/进入大循环IFSCI0SR1/读取接收到的数据SCI_CHAR_SENDGETCHAR/将接收到的数据发送给PC机SCI_CHAR_SEND/每个字符之间用/隔开实验四模/数转换实验一实验目的1、了解AD转换的原理。2、熟悉并掌握对模数转换AD模块的使用。3、能够进行模数转换模块的C语言编程。二实验器材主机试验箱组件接插线三实验说明本实验完成AD模块的数据采集,将变阻器的一端与单片机的AD模块的0端口相连,旋转变阻器即改变输入到单片机引脚的电压,AD模块采集电压值,并将其转化为8位数字值,再通过8个LED显示数字值的二进制值,灯亮代表1,灯灭代表0,旋转变阻器,可以看见8个LED相应变化。四实验原理AD转换原理请参考教材或其他资料,在此简单说明电位器原理。图41电位器原理图如上图所示,电位器实际上就是滑动电阻,V1的3脚接5V(VCCINPUT),1脚接地。旋转电位器改变12和23之间的电阻值,从而改变2端口的输出电压。2端口与三个插孔(ADV1JK)相连。三个插孔等价,V2同V1。五实验步骤1、检测实验箱电源开关是否为关,请务必保证开关处于关的位置。2、由实验指导老师介绍实验原理。3、连接主机、烧写器与目标板。4、将子版上PB端口的8个插针分别与8个调试小灯(DJK)相连,将变阻器ADV1JK或ADV2JK的任意一个接口与子板上PAD的第0端口相连。图42实物连线图2、在CODEWARRIOR开发环境中打开实验资料/程序/CODEWARRIOR50编写/PROJECT04AD,并将编译无误的程序烧写到目标板中。3、运行目标板,旋转变阻器,观察变量ADRESULT以及LED的显示。4、改变采样精度,重新编译并下载程序。旋转变阻器,观察AD转换结果。六程序流程图AD转换结束开始结束初始化AD模块读取AD转换结果是否图43AD转换流程图七源程序代码/头文件/INCLUDEINCLUDE“DERIVATIVEH“/AD模块0初始化/VOIDATD0_INITVOIDATD0CTL10X00/8位采样精度ATD0CTL20X40/AD模块上电,标志快速清除,禁止外部触发ATD0CTL30X88/每个转换序列完成1次转换,非先入先出模式ATD0CTL40X87/采样时间为2个AD时钟,AD时钟为总线时/钟16分频ATD0CTL50X20/对通道0单通道连续采样,转换结果右对齐/无符号数/PTB端口初始化函数/VOIDPORTB_INITVOIDDDRB0XFF/定义PORTB端口为输出口PORTB0XFF/关闭所有LED灯/主程序/VOIDMAINVOIDUNSIGNEDCHARADRESULT0/定义变量,存储A/D转换结果ATD0_INIT/调用AD模块初始化函数PORTB_INIT/调用PTB端口初始化函数DISABLEINTERRUPTS/全局中断禁止FORWHILEATD0STAT2_CCF0/等待A/D转换结束ADRESULTATD0DR0LPORTBADRESULT第二章考核方式实验课程占整个课程的20分,考核方式分为基础分数和附加分数两部分,而实验课总成绩并不等于两者之和,具体详述如下。一、基础部分(必做)该部分包括出勤、实验过程、实验报告、课程反馈四部分内容项目分值次数共计备注出勤14特殊情况者可调至其他班级上课实验过程14A实验报告248B课程反馈212C相关说明如下实验过程A按照实验手册实验步骤,能观察到实验现象。实验报告B实验报告包括两部分内容抄写源程序(08分);关键词叙述(12分)。1抄写(手写)每次实验的源程序(包括程序注释)。2每次实验课后由助教给出备选关键词,要求每位同学就其中的至少一个关键词的相关知识进行搜集、总结、理解并用自己的语言予以表述。当然也可以自己查找与单片机软硬件相关的任何关键词予以描述。3纸张要求A4纸,实验报告封皮由学委统一发放,实验指导老师填写理论课授课老师名字。每做完一个实验后,下次上实验课时由学委收集交于助教处。除以上要求外无任何排版格式、字体以及书写方式的要求。课程反馈C该项目设置的目的旨在完善我们的单片机教学课程,就课程相关的所有方面都可以提出自己的意见或是存在的问题。大致包括以下内容1教学相关教材、课件、实验手册的编排;课程的考核方式;教师的授课方式等。2知识点相关教材以及实验遗漏的知识点;教材以及实验错误讲解的知识点;反复思考不得其解的难点;对某一内容有自己更为深入的理解以及叙述方式的知识点;教材及实验手册存在的错别字以及标点符号等。3其他相关课程反馈的内容不局限于以上两者,凡是旨在完善课程的所有意见及问题都可以进行反馈。每反馈一条意见给予05分,凡提出4条意见及以上者给予课程反馈部分满分分值(2分)。二、附加部分(选做)该部分内容具有一定的难度,可依据个人兴趣选做。表现杰出者在保证四次实验课出勤以及完成四份实验报告的前提下将直接获得1820分的实验课程分(不管基础部分分值是多少)。具体内容包括以下两个选项软件设计及实现飞思卡尔单片机资源丰富,要求能利用单片机资源进行自主程序设计并予以代码实现。主题叙述就单片机相关的某一项主题给出具体的叙述。包括该主题涉及的原理以及在工业领域中的实际应用。三、交流途径课程反馈请发送邮件至以下任何一个邮箱,并注明班级、学号及姓名。有意从事附加部分选做内容的同学可以通过邮件或是现场交流的方式寻求额外指导。助教邮箱李坤LKLKLCLC163COM黄帅HSLEUNG163COM刘羽飞LYF232911163COM第三章实验箱实用说明一、认识试验箱依次查看实

温馨提示

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

评论

0/150

提交评论