ImageVerifierCode 换一换
格式:DOCX , 页数:22 ,大小:1,016.19KB ,
资源ID:6400821      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/6400821.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(PIC单片机实验指导书.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

PIC单片机实验指导书.docx

1、PIC单片机实验指导书实验一MPLAB IDE系统使用向导一、启动MPLAB IDE启动MPLAB IDE有两种方式:(1)StartProgramsMicrochipMPLAB IDE 7.41MPLAB IDE。 (不同版本的MPLAB IDE软件可能路径名称会略有不同。)(2)双击桌面上的MPLAB IDE 图标二、创建源文件选择File(文件)new(新建),出现一个文本编辑窗口,在该窗口中输入以下汇编语言源程序先创建文件夹F:myprj,然后将上面输入的源程序保存该文件夹,注意文件的扩展名为asm,这里我们将它保存为exam1.asm:文件保存后,我们发现源程序编辑窗口中的程序被着上

2、了各种颜色,这些颜色能帮助我们更好地阅读源程序,快速发现输入有误的指令:三、创建项目项目是将文件组织起来以便进行编译和汇编的方式。 选择Project(项目)new(新建),出现New Project(新项目)对话框:在New Project(新项目)对话框中,我们将这个示例项目命名为MyPrj,使用Browse 按钮,将项目放在名为D:myprj的文件夹中。单击OK按钮,在MPLAB IDE 界面上我们会看到已创建项目的的项目窗口,如下图:四、给项目节点添加文件源文件是必须添加的。其他文件,如头文件、库文件、链接描述文件,视项目的具体情况可加可不加。在本实例中,只添加一个源文件exam1.a

3、sm,在左边的项目窗口中找到Source Files节点,在其上点鼠标右键,在弹出的快捷菜单中选Add Files(如上图所示)。双击要添加的文件exam1.asm,或单击要添加的文件exam1.asm,然后点“打开”按纽:文件添加成功后的项目窗口如下,Source Files节点下已经添加了文件 exam1.asm五、 编译文件 选择ProjectBuild All 或在项目窗口中的项目名称上点击右键,并从弹出菜单中 选择“Build All”。 MPASM 汇编器总会生成文件名与源文件(.asm 文件)名相同的目标文件(.hex 文件)。编译时会打开一个状态窗口,显示编译的进度和最后的结果

4、。编译完成后自动关 闭该窗口。 同时还将打开Output 窗口,Output 窗口没有出现红色警告或错误信息, 而且最后一句显示“BUILD SUCCEEDED”,就表示编译成功了:如果编译失败,请检查以下各项,然后重新编译项目:1检查在编辑器窗口中输入的所有代码的拼写和格式。如果在Output 窗口中报告有错,双击该错误就会在源代码窗口左侧的灰色区域中以绿色箭头指出源代码中出错的行。 2检查用于该项目及其项目文件的语言工具是否正确。 六、 程序实例 ORG 0020HMAIN NOP BANKSEL TRISD ;选择TRISD寄存器所在存储体 MOVLW B00000000 ;赋值给工作寄

5、存器W MOVWF TRISD ;设置PORTD全部输出以便驱动LED显示 BANKSEL TRISB ;选择TRISB寄存器所在存储体 MOVLW B11111111 ;赋值给工作寄存器W MOVWF TRISB ;设置PORTB全部输入以便读取开关量 BANKSEL PORTB ;选择PORTB寄存器所在存储体 MOVF PORTB,W ;RB口赋值给工作寄存器W BANKSEL PORTD ;选择PORTD寄存器所在存储体 MOVWF PORTD ;将值工作寄存器W值赋给PORTD口 NOP NOP NOP GOTO MAIN实验二按键计数器一、实验目的学习PIC16FXXX系列单片机I

6、/O端口的特点与应用,以及RB0端口外部中断功能应用,了解中断概念与实际应用,熟悉查寻方式与中断方式的编程方法,实现按键计数器应用编程。二、实验原理PIC系列单片机的I/O口具有较强的驱动能力,可以直接驱动LED显示器。每个I/O口允许最大灌电流和拉电流分别为25mA和20mA。由于不同端口结构有所差异,使得各端口接供的总电流也各不相同,RB口的总灌电流和拉电流分别可达到150mA和100mA。其它口为80mA和50mA。限流电阻的选择与发光二极管有关。当PIC单片机电压为5V,发光二极管正常工作时压2V,驱动电流为5mA,则限流电阻的大小应为:(5V-2V)/5mA=600。本实验是按键计数

7、器,按键按下一次计数器加一。再判断按键按下时要做去抖动处理。计数值经LED数码管显示。 三、实验电路(参考)四、实验要求1对按键按下的次数计数,在四位数码管上显示数值。2段码可通过查表方法获取或直接送至I/O口。3四位数码管进行动态显示,不能出现闪烁现象。4段选及位选如图2.1。五、实验程序流程图六、实验步骤1运行程序,观察显示结果。2改变延时程序时间常数,观察显示结果,并确定显示最佳刷新频率。 3脱机运行,观察显示结果。实验三SPI接口一、实验目的熟悉PIC单片机同步串行外围接口(SPI)的主控模式与从控模式。二、实验原理本实验采用两片PIC16FXXX芯片:一片PIC16FXXX芯片工作于

8、SPI接口主动方式,该芯片(主控器)对模拟电压采集转换,并将转换结果经SPI接口串行传输出;另一片PIC16F877芯片工作于SPI接口从动方式,该芯片(被控器)将主控器传输过来数据通过LED数码管显示。三、实验电路(参考)四、实验内容与要求1 完成主控器的初始化编程2 完成被控器的初始化编程3 完成调试,实现主控器与被控器的通信。五、实验程序流程图六、实验步骤1执行程序,观察LED数码管显示的数值。2调整电位器,观察LED数码管显示的数值。实验四EEPROM存储器读写一、实验目的1. 熟悉I2C总线的通信方式。2. 掌握通过I2C总线实现CAT24WC02存储器的数据读写。二、实验原理本实验

9、采用两片PIC16FXXX芯片作为主控器,该芯片(主控器)对IO口模拟I2C协议对CAT24WC02存储器进行读写。PIC16FXXX单片机将RB口开关量读入,并写入CAT24WC02存储器某单元,然后从该单元读出,数据经RD口LED灯显示。三、实验电路 四、实验内容与要求1.完成主控器的初始化编程2.完成被控器的初始化编程3.完成调试,实现主控器与被控器的通信。五、实验程序流程图六、实验步骤1执行程序,观察LED数码管显示的数值。2调整电位器,观察LED数码管显示的数值。实验五异步串行通信一、实验目的1熟悉UART串行通信标准。2掌握PIC单片机之间及其与PC机的串行通信的编程技术。二、实验

10、原理PIC16FXXX与PC机进行近距离通信或PIC16FXXX单片机之间的近距离通信。当采用PC机作为上位机则采用MAX232芯片将TTL电平转换成RS232电平。实验实现上位机向下位机机发出发送数据。下位机将接收到数据返回给上位机。三、实验电路(参考)四、实验内容与要求1 完成PIC16FXXX系列单片机异步串行通信端口的初始化编程。2 完成PIC16FXXX系列单片机异步串行通信数据发送与接收编程。3 当采用PC机为上位机,则需要完成PRS232C通信相关电路设计并使用调试助手实现PC机数据发送与接收(也可采用VB6.0编写相关通信程序);完成调试,实现单片机与PC机的通信。五、实验步骤

11、1 编写下位机程序,并编译。2 编写上位机程序,并编译。如果采用PC机为上位机则采用串口调试助手实现上位机与下位机通信的调试3完成上位机与下位机软硬件调试。实验六定时器/计数器与CCP模块一、实验目的理解定时器的工作原理,熟悉CCP模块PWM功能的实践方法,利用定时器结合CCP模块,产生连续的脉冲信号,掌握相关的软件编程。二、实验原理PWM输出波形有两个参数:周期和工作周期。PWM周期由寄存器PR2决定,计算公式为:PWM周期(PR2)+14Tosc(TMR2预分频数)。10位分辨率的PWM高电平脉宽由寄存器CCPR1L的八位与CCP1CON中的两位决定定时器2复位,RS触发器置位,当定时器2

12、值与CCPR1L的八位与CCP1CON中的两位相匹配时RS触发器复位,当定时器2值与PR2内容相匹配,定时器2复位,RS触发器置位,一个PWM信号周期结束,另一个PWM信号周期开始。三、实验要求1用示波器观察PORTC2引脚波形,并记录输出波形频率及占空比。改变定时器2初值,观察频率的变化。2通过改变CCPR1L的八位与CCP1CON中的两位的数值,观察占空比的变化。四、实验程序流程图 五、实验步骤1 执行程序,观察PORTC输出,计算频率和占空比。2 改变定时器2初始化值,重复1。3 改变CCPR1L的八位与CCP1CON中的两位的数值,重复1。实验七A/D转换一、实验目的理解 PIC16F

13、XXX系列单片机 A/D转换模块的原理,掌握A/D转换功能的实现方法。二、实验原理PIC16FXXX系列单片机的A/D转换模块具有8个模拟输入。这些模拟输入通道共享一个采样保持电路,用一个多选一模拟开关进行切换。采样保持电路的输出也是A/D转换器的输入。A/D转换器是采用逐次逼近法进行模数转换,转换结果是10位数字量。A/D转换的模拟基准电压可用软件编程选择,可以选择芯片的正电源电压Vdd,负电源Vss以及参考电压。为实现A/D转换功能,PIC16F877使用了4个寄存器,它们分别是:存放10位A/D转换结果的ADRESH和ADRESL,A/D控制器0(ADCONO)和A/D控制器1(ADCO

14、N1)。ADCON0主要控制A/D模块的工作,ADCON1主要负责配置端口的引脚,使这些引脚成为A/D模拟量的输入端。三、实验电路 图一 图二四、实验内容与要求由A/D通道输入可调的模拟信号,A/D转换结果由发光二极管显示。PIC16F877的转换位数为10位。在连续两次A/D转换之间需要有一定时间的延迟,以提高采样精度,等待时间不小于2倍A/D转换时间。启动A/D转换开始,可以通过查询PIR1寄存器中的中断标志位ADIF,以判断A/D转换是否结束。转换结束后,方可准确读取其结果。程序可设计成(复位一次采样一次)间断式采样显示,也可设计成连续式采样显示。A/D转换结果显示方式可采用LED数码显

15、示,也可采用将结果发送给上位机(PC机),通过串口调试助手上位机(PC机)上得到显示。五、实验程序流程图六、实验步骤1执行程序,观察显示结果。2调整电位器,观察显示结果变化情况。附录A 单片机芯片引脚图附录B PIC16F946编程几点说明教材使用PIC16F877芯片目前市场价格昂贵,采用PIC16F946有利于降低成本,但PIC16F946进行试验指导书相关实验编程时与PIC16F877有明显不同的地方一、 引脚不同在进行SPI实验过程中,SCK在PIC877单片机中为RC3,而在PIC16F946单片机中为RC6;SDI在PIC877单片机中为RC4,而在PIC16F946单片机中为RC

16、7;SDO在PIC877单片机中为RC5,而在PIC16F946单片机中为RC4。在进行PWM(脉宽调制)实验中,采用CCP1模块编程,CCP1模块的输出在PIC16F877单片机中为RC2,而在在PIC16F946单片机中为RC5。二、新增寄存器(可以采用默认值) 在进行AD转换编程中,数字口与模拟口功能选择,PIC16F946需要使用ANSEL寄存器配置模拟通道为输入模拟模式,ANSEL寄存器0位对应模拟通道AN0,依次类推ANSEL寄存器7位对应模拟通道AN7。当ANSEL寄存器内容为B 10000000,则表示模拟通道AN7工作在模拟模式下。三、同名寄存器内容发生变化 AD转换编程中,

17、PIC16F946单片机中寄存器相对于PIC16F877单片机,其中ADCON0与ADCON1的内容发生了变化。MPLAB-ICD模块和仿真头用来对演示板或目标板进行在线调试(ICD)MPLAB-ICD的电源是由目标板提供的,电压3.0V到5.5V。ICD在不同工作模式下的电压和相应的电流如下表,MPLAB-ICD模块电原理图如附图1,仿真头电路板如附图2,仿真头电原理图如附图3。工作模式5V3V调试35mA(最大)20 mA(最大)运行40 mA25 mA校验60 mA50 mA烧写60 mA50 mA二、 MPLAB-ICD演示板MPLAB-ICD演示板是一个支持PIC16F87X微控制器

18、的简单演示电路板。该电路板上插入一片预先编程PIC16F87X芯片后可独立工作,也可配合MPLAB-ICD模块和仿真头一起工作.演示板上提供了40脚和28脚插座,可供PIC16F871/874/877(40脚)和PIC16F870/872/876(28脚)两种管脚类型的处理器选择。1、显示:8只发光二极管连接到处理器的PORTC。PORTC的管脚输出高电平时点亮发光二极管。2、DIP拨码开关:SW3是8位DIP拨码开关。当所有的开关都处于“NO”时,则所有发光二极管都接到PORTC上相应的口线上。3、电源供应:MPLAB-ICD模块的供电来自应用板,电压范围3.0V到5V(电流0.75mA或更

19、大)。假如有PICTART PLUS烧写器,则可用它的电源适配器为演示板直接供电。4、ICD的连接:紧接着电源插座下面的插座是将ICD模块和演示板直接连接的电缆插座。5、RS-232串行口:在演示板上安装一片RS-232电平转换接口芯片,通过一个DB插座和主计算机的串行口连接。该串行口被配置为DCE(一种规范:数据通信设备)方式,和计算机之间用一条通用RS-232接口电缆连接,和NULL MODEM电缆不同。电路由用户配置安装:U4-MAX232A或兼容接口芯片。R14-R19-330,1/8W电阻。C7-C11-0.1F电容。6、按钮开关:按钮开关的功能如下:MCLR用作复位处理器。连接到R

20、BO,低电平有效(按下时输出低电平)。7、振荡类型选择:通过正确设置跳线(JPI),可选择演示板上的RC振荡器或在4芯插座里插入一只振荡器。振荡器插座里可以插入时钟振荡器:频率范围 32kHz20MHZ RC振荡电路:时钟由一个4.7k电阻和一只20PF电容器组成。频率范围3.5MHz到6MHz之间,取决于工作电压和环境温度。8、模拟量输入:一个1 k的电位器串联一只470的固定电阻(保护电阻,其管脚之一设置为输出)连接到MCU的口线RAO/ANO。对于16F87X其模拟输入口的电压可以从VDD到电源地(GND)之间变化。9、由于PIC16F87X内建在线调试能力和Microchip调试器的“

21、在线串行编程”功能,MPLABICD将会占用以下资源:系统复位MCLR和编程电压VPP共用一个管脚。禁止低电压“在线串行编程(ICSP)”。RB6和RB7保留为编程和在线调试用。六个通用文件寄存器保留给调试监控程序。程序存储器的最后256或88个字被保留用来存放调试代码(根据芯片类型不同所占字节数不同)。MPLABICD占用的PIC16F87X目标系统控制器中的文件寄存器和程序存储器资源如下表:处理器类型被占用的文件寄存器被占用的程序存储器PIC16F870/871/8720x70,0x0BB0x0BF0x06E00x07FFPIC16F873/8740x70,0x0EB0x0F00x0EE00x0FFFPIC16F876/8770x70,0x1EB0x0BF0x1F000x1FFF9、电原理图:附图1 4为MPLAB-ICD的电路原理图。附录A 16F877芯片引脚图附录A 16F877芯片引脚图

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1