




已阅读5页,还剩63页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
MPLAB软件的安装和使用一、实验目的1熟悉MPLABIDE的编译环境2了解在MPLABIDE环境下运用汇编语言、C语言的编程开发流程,包括源程序的编写、编译、模拟仿真、调试及程序下载3掌握PIC单片机汇编指令二实验内容1MPLAB集成开发实验系统的基本操作使用三、实验原理、方法和手段1MPLAB界面及系统工程的建立MPLAB集成开发环境(IDE)是一个综合的编辑器、项目管理器和设计平台,适用于使用MICROCHIPPICMICRO和DSPIC单片机进行嵌入式设计的应用开发。1MPLAB菜单及工具栏2VIEW菜单下常用调试窗口选项2PROJECT菜单下常用命令窗口选项3DEBUGGER菜单由所示两个子菜单组成,一个用于选择调试工具及方式,一个用于清理内存空间。4PROGRAMMER程序烧写工具选择菜单。(对于程序的烧写,MICROCHIP有专门的工具用来完成程序的烧写编程,但有些破解的工具同样支持程序的烧写)5TOOLS一些其他特殊功能用途的软件工具选择窗口6CONFIGURE常用于器件的选择及单片机系统编程配置位的设置。在器件选择对话框中,绿色表示PROGRAMMERS、DEBUGGERS硬件工具及编译器支持所选用的单片机器件的对应功能;黄色表示只有测试版(BETA版)硬件工具及编译器才支持以上功能;红色表示硬件工具及编译器不支持所选用的单片机器件的对应功能。该窗口主要完成对单片机内部系统配置寄存器CONFIG进行配置;由于这个寄存器的信息采用一种映像方式存储在程序存储器中,地址为2007H,已经超出用户编程存储空间可寻址的范围,系统配置存储器CONFIG的读、写只能通过特殊方法来实现。可以通过以下设置方式设置,编译后,随系统程序一起下载到目标器件中。2利用MPLAB工程向导建立一个完整的工程第一步选择菜单命令PROJECT|PROJECTWIZARD(工程|工程向导)将出现如图24所示的欢迎界面。第二步直接单击“下一步”,选择芯片型号,如图25所示第三步单击“下一步”,根据使用的芯片和源程序选择相应的编译工具,需要注意的是(对于PIC16F877A来说)当你的源程序为C语言时,编译工具应选HITECHUNIVERSALTOOLSUITE;若源程序为汇编语言时,编译工具应选MICROCHIPMPASMTOOLSUITE。同时保证TOOLSUITECORTENTS下方的方框内的某个文件前面没有出现红色的叉;若出现则需要鼠标选中该文件,然后执行下方的BROWSE按钮为其手动指定正确的路径。第四步单击“下一步”,选择项目保存目录和填写项目名称,如图27所示第五步单击“下一步”,添加源程序到当前工程,如图28所示。如果还没有编写源程序直接点击“下一步”。如果编写了源程序,向项目中添加文件流程如下选择要添加的文件,单击一个文件名以选择该文件或按住CTRL键并单击以选择多个文件,单击ADD(添加),要添加到新项目中的文件将出现在右面的列表中。要将文件从列表中删除,单击文件名选择要删除的文件,然后单击REMOVE(删除)。第六步单击“下一步”直到单击“完成”,退出向导。至此,完成一个工程的建立。第七步选择MPLAB的菜单命令FILE|NEW(文件|新建)或快捷方式(如图所示),MPLAB将自动调用MPLABEDITOR(源程序编辑器),工作区内将出现一个文本编辑窗口,可以在此完成源程序的录入工作。如图22所示。在“文本编辑窗口”内编辑源程序,选择菜单命令FILE|SAVE(文件|保存),将编辑好的源文件保存到指定的目录下,如图23所示。点击保存,这是编辑区的文字由之前的灰色变为彩色。第八步将新建的源文件添加到工程中去,右键工程中的SOURCEFILES,点击ADDFILES,找到工程下新建的源文件,选中,点击打开。第九步使用PROJECT(项目)菜单汇编和链接当前文件。要编译项目,可选择以下任一种方式APROJECTBUILDALLB在项目窗口中右击项目名称并选择BUILDALL(编译所有)C在项目工具栏中单击BUILDALL图标(汇编语言)或(C语言)。OUTPUT(输出)窗口将显示编译的结果。如果没有错误,将会显示内存使用情况,如果编译有错误,输出窗口会有提示,需修改程序,直到没有错误。编译后,打开工程文件夹,可以看出编译生成了HEX可执行文件,即用来烧写单片机的文件。四、实验组织运行要求分组实验,每组两人(在上电情况下,禁止用手触摸实验板上芯片及引脚;实验前检查连线是否正确,连接正确后方能实验)。五、实验条件实验器材单片机实验板、电源、下载器、计算机。六、实验步骤七、实验报告要求(1)画出程序流程图,利用汇编语言编写源程序,并在目标板上实现相应的功能。(2)严格按照实验报告格式完成实验报告。(3)写出实验心得体会。I/O端口实验一、实验目的1熟悉PIC16F877A的I/O的基本功能2掌握在MPLABIDE环境下I/O端口的定义、设置及其相关应用3掌握PIC单片机相关汇编指令二实验内容1利用I/O控制实现实验板上LED灯的流水点亮。2利用I/O控制实现实验板上数码管动态扫描显示”01234567”三、实验原理、方法和手段LED(LIGHTEMITTINGDIODE),发光二极管,是一种固态的半导体器件,它可以直接把电转化为LED的心脏是一个半导体的晶片,晶片的一端附在一个支架上,一端是负极,另一端连接电源的正极,使整个晶片被环氧树脂封装起来。半导体晶片由两部分组成,一部分是P型半导体,在它里面空穴占主导地位,另一端是N型半导体,在这边主要是电子。但这两种半导体连接起来的时候,它们之间就形成一个“PN结”。当电流通过导线作用于这个晶片的时候,电子就会被推向P区,在P区里电子跟空穴复合,然后就会以光子的形式发出能量,这就是LED发光的原理。而光的波长也就是光的颜色,是由形成PN结的材料决定的。LED的特点非常明显,寿命长、光效高、无辐射与低功耗。LED耗电非常低,一般来说LED的工作电压是236V。工作电流是2MA30MA。对于贴片LED,参考压降为红色的压降为182188V,绿色的压降为175182V,橙色的压降为1718V,蓝色的压降为3133V。电阻的大小由根据下图中的公式来决定。开发板上用的电阻为470欧。限流电阻计算公式实验板LED实物图根据原理图分析可知,当由I/O口控制的J13(连接到LED负极)被置低时,发光二极管导通被点亮。流水灯原理点亮一位LED,其它七位熄灭,经适当延时后,点亮下一位LED,其它七位熄灭,按照这样的顺序依次点亮8位LED,延时长短决定流水灯的效果。LED连接原理图LED数码管显示器内部由七个条形发光二极管和一个小圆点发光二极管组成,每个发光二极管称为一个字段,因而它的控制原理和发光二极管的控制原理是相同的。根据各管的接线形式,它可分为两种,一是共阳极(发光二极管的阳极都接在一个公共点上),另一是共阴极(发光二极管的阴极都接在一个公共点上)。给LED数码管的七个条形发光二极管加不同的电平,二极管显示不同亮灭的组合就可以形成不同的字形,这种组合称之为字形码。下面以1为高电平,0为低电平,给出字形码表。共阴极数码管示意图共阴极数码管示意图常用数码管显示字码表常用的LED数码管多位显示实现方式有静态和动态显示。LED数码管静态显示需要占用较多的I/O口,且功耗较大,因此在大多数场合通常不采用静态显示,而采用动态扫描的方法来控制LED数码管的显示。动态显示的特点是将所有位数码管的段选线并联在一起,由位选线控制是哪一位数码管有效。点亮数码管采用动态扫描显示。所谓动态扫描显示即轮流向各位数码管送出字形码和相应的位选,只要扫描显示速度够快,利用发光管的余辉和人眼视觉暂留作用,使人的感觉好像各位数码管同时都在显示。每个数码管显示时间不能太长也不能太短,时间太长会影响刷新率,导致总体显示呈现闪烁的现象,时间太短发光二极管的电流导通时间也就短,会影响总体的显示亮度。一般控制在1MS左右最佳。原理图所示为实验数码管显示硬件连接图,原理图中用到两片74HC573,一片用于位选,选择8位共阴数码管中的某位或几位,另一片74HC573用于段选,用于输入以上表格中的编码来控制要显示的内容。举个例子,如果要使数码管的最低位显示“A”,那么,首先通过控制DS1(置“1”),选中位选控制的74HC573,控制DSD7为“0”(共阴,如果是共阳的数码管就置“1”),断开DS1(置“0”)实现最低位位选。然后通过控制DS2(置“1”),选中段选控制的74HC573,在DSD0DSD7输入0X77,断开DS2(置“0”),即可实现“A”在最低位显示。实验板中数码管电路原理图四、实验组织运行要求分组实验,每组两人(在上电情况下,禁止用手触摸实验板上芯片及引脚;实验前检查连线是否正确,连接正确后方能实验)。五、实验条件实验器材单片机实验板、电源、下载器、计算机。六、实验步骤七、实验报告要求(1)画出程序流程图,利用汇编语言编写源程序,并在目标板上实现相应的功能。(2)严格按照实验报告格式完成实验报告。(3)写出实验心得体会。I/O端口实验一、实验目的1熟悉PIC16F877A的I/O的基本功能2掌握常用按键连接方式、原理3掌握PIC单片机相关汇编指令,熟练应用查表法。二实验内容1利用1X5独立键盘点亮实验板上LED灯。2利用实验板上数码管动态扫描显示4X4矩阵键盘按键键值。三、实验原理、方法和手段按键判断的原理与电路连接方式有密切关系,实验板中独立键盘部分电路和实物图片如下所示。按键判断的原理按键按下时,相应的I/O口变为低电平,单片机检测低电平来判断是否有按键按下。需要注意的是由原理图可知在无按键按下情况下,相应的I/O口为悬空状态,即I/O口电平为不定态,因此在检测之前对相应的I/O初始化时,要初始化为输出状态且全部置高电平。独立键盘按键个数决定占用I/O数,当设计中需要较多按键时,为减少I/O端口占用量,常用矩阵键盘来代替。如图所示为4X4矩阵键盘,矩阵键盘由行线和列线组成,J6_1、J6_2、J6_3、J6_4对应键盘的行线,J6_5、J6_6、J6_7、J6_8对应键盘的列线。按键设置在行列线交叉点,其中列线通过上拉电阻接VCC,即列线的输入在无按键按下时被拉高置高电平。判断键盘中有无按键按下是通过行线送入扫描信号,然后从行线读取状态得到的。具体方法依次给行信号线输出低电平,检查列线的输入,如果列线输入都为高电平,则表示信号所在的行中无按键按下;如果行线输入有低电平,则低电平所在的行和出现高电平的列的交点处有按键按下。例如将行线J6_1置低电平,读得列线J6_6为低电平,可判断是S2按下。J6_1J6_4OUTPUTJ6_5J6_8INPUT对应的按键1110S41101S31011S201110111S11110S81101S71011S610110111S51110S121101S111011S1011010111S91110S161101S151011S1411100111S13无论是独立键盘还是矩阵键盘,当按键按下或弹起时,都会有毛刺状的脉冲信号产生,通常称为抖动信号。这些信号作为干扰信号影响对按键键值的判断通常要进行去抖处理。常用去抖方法有硬件去抖及软件去抖。硬件去抖需要在每个相应I/O端口前连接去抖电路,成本较高,适用于对按键反应及要求较高的场所。软件去抖方法简单,通常也叫延时去抖,即在检测到相应端口有电平变化时加一延时,延时后对相应端口进行二次检测,当检测的电平与前一次相同时,认为该信号为有效信号,反之,则认为是干扰信号。软件去抖方法中的延时长短通常取10MS,为经验值。四、实验组织运行要求分组实验,每组两人(在上电情况下,禁止用手触摸实验板上芯片及引脚;实验前检查连线是否正确,连接正确后方能实验)。五、实验条件实验器材单片机实验板、电源、下载器、计算机。六、实验步骤七、实验报告要求(1)画出程序流程图,利用汇编语言编写源程序,并在目标板上实现相应的功能。(2)严格按照实验报告格式完成实验报告。(3)写出实验心得体会。INCLUDE/头文件在HITECH安装目录下HITECHSOFTWAREPICCSTD960INCLUDEDEFINEUCHARUNSIGNEDCHARDEFINEUINTUNSIGNEDINTDEFINELE1RA0/位选573锁存器使能DEFINELE2RA1/段选573锁存器使能DEFINEDATAPORTPORTD/数据口定义UCHARWEIUCHARIUCHARDIS160X3F,0X06,0X5B,0X4F,0X66,0X6D,0X7D,0X07,/012345670X7F,0X6F,0X77,0X7C,0X39,0X5E,0X79,0X71/0F的段码/89ABCDEF/延时/VOIDDELAYUINTTIMEUINTI,JFORI0I4个引脚输入电平变化中断;4)、CCP模块事件捕捉/比较匹配中断;5)、串行通信(同步或异步)接收发送中断;6)、A/D转换结束中断;7)、片上EEPROM写入完成中断;8)、8位并行从动口中断。中断优先级中断优先级是指两个或多个中断源同时满足中断条件时,单片机内核响应这些中断的顺序,实际上表示了中断源紧急的程度。其他类型的计算机系统一般可以通过寄存器直接定义中断优先级,硬件在响应中断时能自动完成优先级的判断。但对于PIC中档单片机而言,有两个中断同时发生时,它只会进入0004H处的中断入口处。判别中断源和中断源的优先级的工作就只能完全由软件来实现。当然由软件来实现中断优先级的方法也非常简单和容易理解先被判别的中断优先级为高,后判别的优先级为低。优先级由软件处理顺序流程决定,这就是PIC软件优先级的概念。如果允许一个中断打断另一个中断,执行所谓“中断嵌套”操作,就必须规定哪些中断能够打断其他中断,而最直接的标准就是用“中断优先级”作为判别的标尺。高优先级的中断比较紧急,因此允许它们通过中断嵌套打断其他低优先级的中断,反过来低优先级的中断就不允许对高优先级的中断实施嵌套。中断嵌套在很多类型的单片机中都是允许的,但MICROCHIP公司不推荐在PIC中档单片机中使用中断嵌套,原因可以从中断过程中看出来。PIC单片机通过硬件在进入中断入口时对GIE自动清零,也就是暂时禁止了其他中断,直到中断服务程序结束时,中断返回指令RETFIE指令会将GIE自动置位,从而重新允许其他中断的响应。也就是说,不论PIC中档单片机响应何种中断请求,在中断响应期间如果不对GIE进行人为干预,PIC中档单片机都将自动禁止其他中断被响应。如果在中断响应期间发生了其他中断,不论它的优先级是否高于当前中断,它的中断请求将一直保留,并在当前中断退出后才能得到响应。试验方法、手段实验一首先要明确中断源,正确设置与中断相关的寄存器,熟悉中断程序的入口地址,要利用中断实现8位LED反转点亮的功能,只需在中断响应程序中将控制8位LED的I/O端口值取反即可。实验二首先正确配置输入电平变化中断相关寄存器,等待中断响应,在中断发生后检测哪个按键按下,并执行相应按键对应的子程序。四、实验组织运行要求分组实验,每组两人(在上电情况下,禁止用手触摸实验板上芯片及引脚;实验前检查连线是否正确,连接正确后方能实验)。五、实验条件实验器材单片机实验板、电源、下载器、计算机。六、实验步骤七、实验报告要求(1)画出程序流程图,利用汇编语言编写源程序,并在目标板上实现相应的功能。(2)严格按照实验报告格式完成实验报告。(3)写出实验心得体会。串行通信接口实验一、实验目的1熟悉PIC16F877A的中断类型、机理、中断源。2掌握对中断寄存器的操作、中断服务程序的设计。3掌握PIC单片机相关汇编指令并对中断进行响应和处理。二实验内容1编写单片机接收、发送异步串口程序,实现上位机将一个数利用串口助手发送到单片机,单片机接收并将接收的数据发送到上位机,要求波特率为9600。2三、实验原理、方法和手段计算机与外界的信息交换称为通信。常用通信方式有两种并行通信与串行通信,也称并行传送和串行传送。并行传送具有传送速度快,效率高等优点,但传送多少数据位就需要多少根数据线,传送成本高;串行传送是按位顺序进行数据传送,最少仅需要一根传输线即可完成,传送距离远,但传送速度慢。串行通信又分同步和异步两种方式。这两种通信方式的区别在于发送设备时钟与接收设备时钟是否严格一致。同步通信中,在数据传送开始时先用同步字符来指示(常约定12个),并由同时传送的时钟信号来实现发送端和接收端同步,即检测到规定的同步字符后,接着就连续按顺序传送数据。这种传送方式对硬件结构要求较高。异步通信中,接收器和发送器有各自的时钟,它们的工作是非同步的,异步通信用一帧来表示一个字符,其内容如下一个起始位,仅接着是若干个数据位,下图中传输45H的数据格式。一个字符应包括以下信息起始位对应逻辑0(SPACE)状态。发送器通过发送起始位开始一帧字符的传送。数据位起始位之后传送数据位。数据位中低位在前,高位在后。数据位可以是5、6、7、8位。奇偶校验位奇偶校验位实际上是传送的附加位,若该位用于奇偶校验,可校检串行传送的正确性。奇偶校验位的设置与否及校验方式(奇校验还是偶校验)由用户需要确定。停止位用逻辑1(MARK)表示。停止位标志一个字符传送的结束。停止位可以是1、15或2位。串行通信中用每秒传送二进制数据位的数量表示传送速率,称为波特率。在串行通信中,数据是在两个站之间传送的。按照数据传送方向,串行通信可分为单工方式、半双工和全双工三种方式。单工方式数据仅按一个固定方向传送。因而这种传输方式的用途有限,常用于串行口的打印数据传输与简单系统间的数据采集。半双工方式数据可实现双向传送,但不能同时进行,实际的应用采用某种协议实现收、发开关转换。全双工方式允许双方同时进行数据双向传送,但一般全双工传输方式的线路和设备较复杂。多工方式以上三种传输方式都是用同一线路传输一种频率信号,为了充分地利用线路资源,可通过使用多路复用器或多路集线器,采用频分、时分或码分复用技术,即可实现在同一线路上资源共享功能,我们盛之为多工传输方式。通常,许多串行通讯接口电路均具有全双工通讯能力,但是在实际使用中,大多数情况只工作在半双工方式,即两个工作站通常并不同时收发。常用接口方式1、RS232收发电平为正负12V的EIA电平,由于收发共地,所以直接通信距离不能太远,通常小于100M。2、RS422与RS485采用对称输入输出,即收与发各两条线,距离可达1000M。RS422是全双工,RS485是半双工。进行串行通讯时要满足一定的条件,两者之间必须有一个电平转换电路,我们采用了专用芯片MAX3232进行转换。我们采用了三线制连接串口,也就是说和计算机的9针串口只连接其中的3根线第5脚的GND、第2脚的RXD、第3脚的TXD。这是最简单的连接方法,但是对我们来说已经足够使用了,电路如下图所示实验方法及手段四、实验组织运行要求分组实验,每组两人(在上电情况下,禁止用手触摸实验板上芯片及引脚;实验前检查连线是否正确,连接正确后方能实验)。五、实验条件实验器材单片机实验板、电源、下载器、计算机。六、实验步骤七、实验报告要求(1)画出程序流程图,利用汇编语言编写源程序,并在目标板上实现相应的功能。(2)严格按照实验报告格式完成实验报告。(3)写出实验心得体会。A/D转换实验一、实验目的1熟悉A/D转换的原理及A/D转换器相关技术指标。2掌握PIC16F877A内部A/D转换器模块相关的寄存器的应用、配置。3能熟练利用PIC单片机相关汇编或C指令编写A/D转换器模块的应用程序。二实验内容1简易数字式电子温度计设计利用PIC16F877A内部A/D转换器将实验板上的光敏元件或热敏元件所反映的光强度或温度值通过数码管显示出来,要求用数码管后三位实现。为简化实验中相关算法可将光敏或热敏元件所反映的阻值光度或阻值温度关系看成线性关系。2简易数字式电子温度、光强计设计利用PIC16F877A内部A/D转换器多路转换的特点实现光强度或温度值数码管显示,要求数码管高三位显示光强,低三位显示温度,假设阻值光度或阻值温度关系为线性关系。三、实验原理、方法和手段1A/D转化概念及原理由于系统的实际处理对象往往都是一些模拟量(如温度、压力、位移、图像等),要使计算机或数字仪表能识别和处理这些信号,必须首先将这些模拟信号转换成数字信号;而经计算机分析、处理后输出的数字量往往也需要将其转换成为相应的模拟信号才能为执行机构所接收。这样,就需要一种能在模拟信号与数字信号之间起桥梁作用的电路模/数转换电路和数/模转换电路。能将模拟信号转换成数字信号的电路,称为模/数转换器(简称A/D转换器);而将能把数字信号转换成模拟信号的电路称为数/模转换器(简称D/A转换器),A/D转换器和D/A转换器已经成为计算机系统中不可缺少的接口电路。在A/D转换器中,因为输入的模拟信号在时间上是连续量,而输出的数字信号代码是离散量,所以进行转换时必须在一系列选定的瞬间(亦即时间坐标轴上的一些规定点上)对输入的模拟信号取样,然后再把这些取样值转换为输出的数字量。因此,一般的A/D转换过程是通过采样、保持量化和编码这四个步骤完成。A/D转换原理图2热敏、光敏电阻简介热敏电阻温度转换原理热敏电阻器是敏感元件的一类,按照温度系数不同分为正温度系数热敏电阻器(PTC)和负温度系数热敏电阻器(NTC)。热敏电阻器的典型特点是对温度敏感,不同的温度下表现出不同的电阻值。正温度系数热敏电阻器(PTC)在温度越高时电阻值越大,负温度系数热敏电阻器(NTC)在温度越高时电阻值越低,它们同属于半导体器件。NTC热敏电阻与普通电阻不同,它具有负的电阻温度特性,当温度升高时,电阻值减少,其特性曲线如图所示。热敏电阻的阻值温度特性曲线是一条指数曲线,线性度差,因此,在使用时要进行线性化处理。线性化处理虽然能改善热敏电阻的特性曲线,但比较复杂。因此,在要求不高的应用系统中,在一定的温度范围内,常常把温度与阻值看成是线性的关系,以简计算和系统设计。热敏电阻测试温度的原理给热敏电阻通以恒定的电流,电阻两端就可以测到一个电压,通过下面的公式就可以计算出温度值TT0KVTT被测温度T0与热敏电阻特性有关的温度参数K与热敏电阻特性有关的系数VT热敏电阻两端的电压根据这一公式,如果测得热敏电阻两端的电压,再知道参数T0和系数K,则可计算出热敏电阻的环境温度,也就是被测的温度。这样就把电阻随温度的变化关系转化为电压随温度变化的关系。光敏电阻原理光敏电阻又称光导管,常用的制作材料为硫化镉,另外还有硒、硫化铝、硫化铅和硫化铋等材料。这些制作材料具有在特定波长的光照射下,其阻值迅速减小的特性。这是由于光照产生的载流电子都参与导电,在外加电场的作用下作漂移运动,电子奔向电源的正极,空穴奔向电源的负极,从而使光敏电阻器的阻值迅速下降。光敏电阻器是利用半导体的光电效应制成的一种电阻值随入射光的强弱而改变的电阻器;入射光强,电阻减小,入射光弱,电阻增大。光敏电阻器一般用于光的测量、光的控制和光电转换(将光的变化转换为电的变化)。常用的光敏电阻器硫化镉光敏电阻器,它是由半导体材料制成的。光敏电阻器的阻值随入射光线(可见光)的强弱变化而变化,在黑暗条件下,它的阻值(暗阻)可达110M欧,在强光条件(100LX)下,它阻值(亮阻)仅有几百至数千欧姆。光敏电阻器对光的敏感性(即光谱特性)与人眼对可见光(04076)M的响应很接近,只要人眼可感受的光,都会引起它的阻值变化。2实验实现方法及手段实验板上光敏及热敏连接如图所示数字式电阻温度计设计工作的主要内容就是把热敏电阻两端的电压值经A/D(模拟量转化为数字量)转换为数字量,然后通过软件方法计算得到温度值(线性关系不需要),再进行显示等处理。通过光敏电阻测量光强的原理基本和热敏电阻测量温度一致。图中的R38即为光敏电阻,AD转换器采集DT处的电压值,再通过软件处理得到光强度。四、实验组织运行要求分组实验,每组两人(在上电情况下,禁止用手触摸实验板上芯片及引脚;实验前检查连线是否正确,连接正确后方能实验)。五、实验条件实验器材单片机实验板、电源、下载器、计算机。六、实验步骤七、实验报告要求(1)画出程序流程图,利用汇编语言编写源程序,并在目标板上实现相应的功能。(2)严格按照实验报告格式完成实验报告。(3)写出实验心得体会。一、实验目的1熟悉I2C总线相关协议。2掌握I2C总线相关协议单片机实现方法。3掌握利用PIC单片机相关汇编指令或C语言编程实现对EEPROM读写。二实验内容12将独立键盘三个按键连接到引脚输入电平变化中断端口,利用中断实现蜂鸣器反转鸣叫、数码管加一显示、1位LED反转点亮。三、实验原理、方法和手段串行EEPROM中,较为典型的有ATMEL公司的AT24CXX系列和AT93CXX等系列产品,它们是I2C总线式串行器件。串行器件不仅占用很少的资源和I/O线,而且体积大大缩小,同时具有工作电源宽、抗干扰能力强、功耗低、数据不易丢失和支持在线编程等特点。I2C总线是一种用于IC器件之间连接的二线制总线。它通过SDA(串行数据线)及SCL(串行时钟线两根线在连到总线上的器件之间传送信息,并根据地址识别每个器件不管是单片机、存储器、LCD驱动器还是键盘接口。以ATMEL公司的2线EEPROM为例,从AT24C01AT24C16,其内存架构分别由16PAGE8BYTE、32PAGE8BYTE、32PAGE16BYTE、64PAGE16BYTE、128PAGE16BYTE组成。寻址字节需要711BIT的数据字。AT24C32和AT24C64分别由128PAGE32BYTE、256PAGE32BYTE组成。系统提供了2个字节的寻址数据字。引脚描述SCL串行时钟SDA串行数据A20设备地址、页地址WP写禁止VCC电源供电GND地在数据传送过程中,必须确认数据传送的开始和结束。在I2C总线技术规范中,开始和结束信号(也称启动和停止信号)的定义如图所示。时钟和数据传输SDA引脚正常状态下由外部器件拉高。SDA上的数据只有在SCL为低的时间段才能进行改变,在SCL为高时SDA数据的更改会表现为如下所述的一个开始条件或者一个结束条件。开始条件SCL为高,SDA由高变为低是一个开始条件,开始命令优先于其他所有的命令。结束条件SCL为高,SDA由低变为高是一个结束条件。在一个读序列之后的结束命令,会将EEPROM置于一个待机电源模式。响应所有的地址和数据字都是以8BIT字,串行的传入或者传出EEPROM。在第九个时钟周期,EEPROM发出一个0来作为收到一个字的响应信号。I2C总线的数据传送格式是在I2C总线开始信号后,送出的第一个字节数据是用来选择从器件地址的,其中前7位为地址码,第8位为方向位R/W读写控制,如上图所示。方向位为“0”表示发送,即主器件把信息写到所选择的从器件;方向位为“1”表示主器件将从从器件读信息。开始信号后,系统中的各个器件将自己的地址和主器件送到总线上的地址进行比较,如果与主器件发送到总线上的地址一致,则该器件即为被主器件寻址的器件,其接收信息还是发送信息则由第8位R/W确定。在I2C总线上每次传送的数据字节数不限,但每一个字节必须为8位,而且每个传送的字节后面必须跟一个应答位(ACK),ACK信号在第9个时钟周期时出现。数据的传送过程如上图所示。每次都是先传最高位,通常从器件在接收到每个字节后都会作出响应,即释放SCL线返回高电平,准备接收下一个数据字节,主器件可继续传送。如果从器件正在处理一个实时事件而不能接收数据时,(例如正在处理一个内部中断,在这个中断处理完之前就不能接收I2C总线上的数据字节)可以使时钟SCL线保持低电平,从器件必须使SDA保持高电平,此时主器件产生1个结束信号,使传送异常结束,迫使主器件处于等待状态。当从器件处理完毕时将释放SCL线,主器件继续传送。当主器件发送完一个字节的数据后,接着发出对应于SCL线上的一个时钟(ACK)认可位,在此时钟内主器件释放SDA线,一个字节传送结束,而从器件的响应信号将SDA线拉成低电平,使SDA在该时钟的高电平期间为稳定的低电平。从器件的响应信号结束后,SDA线返回高电平,进入下一个传送周期。四、实验组织运行要求分组实验,每组两人(在上电情况下,禁止用手触摸实验板上芯片及引脚;实验前检查连线是否正确,连接正确后方能实验)。五、实验条件实验器材单片机实验板、电源、下载器、计算机。六、实验步骤七、实验报告要求(1)画出程序流程图,利用汇编语言编写源程序,并在目标板上实现相应的功能。(2)严格按照实验报告格式完成实验报告。(3)写出实验心得体会。一、实验目的1熟悉PIC16F877A的中断类型、机理、中断源。2掌握对中断寄存器的操作、中断服务程序的设计。3掌握PIC单片机相关汇编指令并对中断进行响应和处理。二实验内容1将你的学号用LCD1602显示出来,显示格式要求第一行“MYSTUDENTID”;第二行“201XXXXX”。2结合定时器功能,试着实现一个简易实时显示的电子表。显示格式要求第一行“DATEXXXXXXXX”;第二行“TIMEXXXXXX”。三、实验原理、方法和手段1字符型液晶显示原理及相关介绍字符型液晶显示模块是一种专门用于显示字母、数字、符号等的点阵式液晶显示模块。在显示器件上的电极图型设计,它是由若干个57或511等点阵符位组成。每一个点阵字符位都可以显示一个字符。点阵字符位之间有一个点距的间隔起到了字符间距和行距的作用。目前市面上常用的有16字1行,16字2行,20字2行和40字2行等的字符模块组。这些LCM虽然显示字数各不相同,但是都具有相同的输入输出界面。1602LCD分为带背光和不带背光两种,其控制器大部分为HD44780,带背光的比不带背光的厚,是否带背光在应用上并无差别。1602LCD采用标准的14脚(无背光)或16脚(带背光)接口,各引脚接口说明如表所示在控制芯片HD44780中内置了DDRAM、CGROM和CGRAM。DDRAM就是显示数据RAM,用来寄存待显示的字符代码。共80个字节,其地址和屏幕的对应关系如下表例如要在LCD1602屏幕的第一行第一列显示一个“A“字,就要向DDRAM的00H地址按LCD模块的指令格式写入“A”字的代码即可。从表中可知DDRAM第一行(00H27H)、第二行(40H67H)各有40个地址,但在实际应用中LCD1602只需每行的前16个地址,且各行的地址与显示位置是一一对应关系,如图所示。DDRAM地址与显示位置的对应关系HD44780内置了192个常用字符的字模,存于字符产生器CGROMCHARACTERGENERATORROM中,另外还有8个允许用户自定义的字符产生RAM,称为CGRAMCHARACTERGENERATORRAM。下图说明了CGROM和CGRAM与字符的对应关系。例如想要在LCD1602屏幕的第二行第三列显示一个“A“字,就要向DDRAM的42H地址写入“A”字的代码41H即可。显示“A”字代码41H如何而来呢从上图可以看出,“A”字的对应上面高位代码为0100,对应左边低位代码为0001,合起来就是01000001,也就是41H。其实仔细研究上图可知0X200X7F为标准的ASCII码,0XA00XFF为日文字符和希腊文字符,其余字符码0X100X1F及0X800X9F没有定义。字符代码0X000X0F为用户自定义的字符图形RAM对于5X8点阵的字符,可以存放8组,5X10点阵的字符,存放4组,即为CGRAM。2字符型液晶显示指令系统HD44780控制的LCD1602显示器有相应的指令,只有按照指令相关操作才能使LCD1602正常工作显示,其指令共11条,详细如下1清屏指令功能清除液晶显示器,即将DDRAM的内容全部填入“空白“的ASCII码20H光标归位,即将光标撤回液晶显示屏的左上方将地址计数器AC的值设为0。2光标归位指令功能把光标撤回到显示器的左上方把地址计数器AC的值设置为0保持DDRAM的内容不变。3进入模式设置指令功能设定每次定入1位数据后光标的移位方向,并且设定每次写入的一个字符是否移动。参数设定的情况如下所示位名设置I/D0写入新数据后光标左移1写入新数据后光标右移S0写入新数据后显示屏不移动1写入新数据后显示屏整体右移1个字符4显示开关控制指令功能控制显示器开/关、光标显示/关闭以及光标是否闪烁。参数设定的情况如下位名设置D0显示功能关1显示功能开C0无光标1有光标B0光标闪烁1光标不闪烁5设定显示屏或光标移动方向指令功能使光标移位或使整个显示屏幕移位。参数设定的情况如下S/CR/L设定情况00光标左移1格,且AC值减101光标右移1格,且AC值加110显示器上字符全部左移一格,但光标不动11显示器上字符全部右移一格,但光标不动6功能设定指令功能设定数据总线位数、显示的行数及字型。参数设定的情况如下位名设置DL0数据总线为4位1数据总线为8位N0显示1行1显示2行F057点阵/每字符1510点阵/每字符(7)设定CGRAM地址指令功能设定下一个要存入数据的CGRAM的地址。DB5、DB4、DB3为字符号,也就是你将来要显示该字符时要用到的字符地址000111(能定义八个字符)。DB2DB1DB0为行号(000111)(八行)。(8)设定DDRAM地址指令功能设定下一个要存入数据的DDRAM的地址。(9)读取忙信号或AC地址指令功能读取忙碌信号BF的内容,BF1表示液晶显示器忙,暂时无法接收单片机送来的数据或指令当BF0时,液晶显示器可以接收单片机送来的数据或指令读取地址计数器AC的内容。(10)数据写入DDRAM或CGRAM指令一览功能将字符码写入DDRAM,以使液晶显示屏显示出相对应的字符将使用者自己设计的图形存入CGRAM。DB7、DB6、DB5可为任何数据,一般取“000”。DB4、DB3、DB2、DB1、DB0对应于每行5点的字模数据。(11)从CGRAM或DDRAM读出数据的指令一览功能读取DDRAM或CGRAM中的内容。概括起来LCD1602指令操作系统及基本操作时序如下读状态输入RSL,RWH,EH,输出DB0DB7状态字写指令输入RSL,RWL,E下降沿脉冲,DB0DB7指令码输出无读数据输入RSH,RWH,EH输出DB0DB7数据写数据输入RSH,RWL,E下降沿脉冲,DB0DB7数据输出无3液晶显示实验板连接原理图四、实验组织运行要求分组实验,每组两人(在上电情况下,禁止用手触摸实验板上芯片及引脚;实验前检查连线是否正确,连接正确后方能实验)。五、实验条件实验器材单片机实验板、电源、下载器、计算机。六、实验步骤七、实验报告要求(1)画出程序流程图,利用汇编语言编写源程序,并在目标板上实现相应的功能。(2)严格按照实验报告格式完成实验报告。(3)写出实验心得体会。一、实验目的1熟悉I2C总线相关协议。2掌握I2C总线相关协议单片机实现方法。3掌握利用PIC单片机相关汇编指令或C语言编程实现对EEPROM读写。二实验内容12将独立键盘三个按键连接到引脚输入电平变化中断端口,利用中断实现蜂鸣器反转鸣叫、数码管加一显示、1位LED反转点亮。三、实验原理、方法和手段人们习惯把红外线发射管和红外线接收管称为红外对管。红外线发射与接收的方式有两种,其一是直射式,其二是反射式。直射式是指发光管和接收管相对安放在发射与受控物的两端,中间相距一定距离;反射式指发光管和接收管并列一起,平时接收管始终无光照,只在发光管发出的红外光遇到反射物时,接收管收到反射回来的红外线才工作。开发板上使用的红外对管为直射式。开发板上使用的红外对管为U15,J5的第7位连接到J5的第8位给给本模块提供电源,当发射管和线接收管之间没有障碍物时,T5三极管的基极(B)电压为低,三极管导通,这样发射极(E)输出为高电平并输入比较器的1N脚,与1N脚25V比较,当1N大于1N时,比较器的OUT到J5的第6位为低电平。相反,当发射管和线接收管之间有障碍物(实验时可以用卡片或厚一点的纸片阻挡)时,T5三极管的基极(B)电压为高,三极管截止,这样发射极(E)输出为低电平并输入比较器的1N脚,与1N脚25V比较,此时1N小于1N时,比较器的OUT到J5的第6位为高电平。步进电机是数字控制电机,它将脉冲信号转变成角位移,即给一个脉冲信号,步进电机就转动一个角度,即电机的总转动角度由输入脉冲数决定,而电机的转速由脉冲信号频率决定,因此非常适合于单片机控制。开发板上设计的步进电机是减速比1/64的5线4相电机,采用单极性直流电源供电。只要对步进电机的各相绕组按合适的时序通电,就能使步进电机步进转动。下图是该四相反应式步进电机工作原理示意图。开始时,开关SB接通电源,SA、SC、SD断开,B相磁极和转子0、3号齿对齐,同时,转子的1、4号齿就和C、D相绕组磁极产生错齿,2、5号齿就和D、A相绕组磁极产生错齿。当开关SC接通电源,SB、SA、SD断开时,由于C相绕组的磁力线和1、4号齿之间磁力线的作用,使转子转动,1、4号齿和C相绕组的磁极对齐。而0、3号齿和A、B相绕组产生错齿,2、5号齿就和A、D相绕组磁极产生错齿。依次类推,A、B、C、D四相绕组轮流供电,则转子会沿着A、B、C、D方向转动。四相步进电机驱动方式可以采用双四拍ABBCCDDAAB方式,也可以采用单四拍ABCDA方式,或单、双八拍AABBBCCCDDDAA方式。单四拍、双四拍与八拍工作方式的电源通电时序与波形分别如图中A、B、C所示四、实验组织运行要求分组实验,每组两人(在上电情况下,禁止用手触摸实验板上芯片及引脚;实验前检查连线是否正确,连接正确后方能实验)。五、实验条件实验器材单片机实验板、电源、下载器、计算机。六、实验步骤七、实验报告要求(1)画出程序流程图,利用汇编语言编写源程序,并在目标板上实现相应的功能。(2)严格按照实验报告格式完成实验报告。(3)写出实验心得体会。/INCLUDEDEFINEUCHARUNSIGNEDCHARDEFINEUINTUNSIGNEDINT/延时/VOIDDELAYUINTTIMEUINTI,JFORI0IDEFINEUCHARUNSIGNEDCHARDEFINEUINTUNSIGNEDINTDEFINEDATAPORTPORTD/数据口定义DEFINES17RC7/定义按键IODEFINES18RC6DEFINES19RC5DEFINES20RC4DE
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 电缆保护施工方案(3篇)
- 完善疫情防控的应急预案(3篇)
- 广播电视台应急预案(3篇)
- 突发诉讼事件应急预案方案(3篇)
- 租赁场所疫情防控应急预案(3篇)
- 直播电商内容创新的创意生成与传播机制对GMV的作用研究
- 阜阳市应急预案哪家好(3篇)
- 人员擅入轨行区应急预案(3篇)
- 河北机电职业技术学院《媒介素养教育》2024-2025学年第一学期期末试卷
- 应急管理预案的制定与实施(3篇)
- 对标工作的方案和计划对标管理实施方案
- 图书管理员考试的注意事项和建议试题及答案
- 警校区队管理制度规定
- 郑州银行总行信息科技岗位招聘考试真题2024
- 新发展英语(第二版)综合教程2 课件 Unit 6 Cultural Difference
- 脑卒中失语症的康复护理
- 消防联动调试方案
- 2025年安徽中医药高等专科学校单招职业技能测试题库审定版
- 自动化仪表施工方案
- 注射用重组人TNK组织型纤溶酶原激活剂-药品临床应用解读
- 小儿泄泻(小儿腹泻病)中医临床路径
评论
0/150
提交评论