PIC单片机在线调试中的一些题目

2020-02-17来源: eefocus关键字:PIC单片机  在线调试  串行编程

简介:本文重点叙述在线调试器与目标板的连接、复位以及出现题目的解决办法,有非常强的实用和参考价值,希看引起使用在线调试器读者的重视,节省调试时间。


1在线串行编程


1.1在线串行编程接口


带有Flash闪速存储器的PIC单片机产品一般都具有在线串行编程功能,只需要5根引线就可以把程序下载到单片机的Flash程序存储器中。这5根线的排列顺序是MCLR/Vpp、Vdd、Vss、PD(或PGD)和PC(或PGC),图1是PIC单片机在线串行编程接口图。


按此在新窗口浏览图片

图1PIC单片机在线串行编程接口


1.2引脚含义


上述5根引线的具体含义是:MCLR/Vpp——编程电压(对于PIC单片机一般为13V左右);Vdd——编程电源(5V);Vss——地;PD——编程数据信号;PC——编程时钟信号。


有了这个编程连接电路,只需要合适的编程硬件电路和编程软件,就可以实现单片机在线串行编程和调试。


2在线调试器


2.1在线调试器与目标板的连接


微芯公司推出的第一代在线调试器命名为MPLABICD,其支持PIC16F87X系列单片机的在线调试与烧写,并且性能可靠,使用简捷、方便。在MPLABICD基础上,微芯公司推出第二代在线调试器命名为MPLABICD2(以下简称ICD2),其支持全系列的PICFlash闪速存储器单片机的在线调试和烧写,甚至还支持微芯公司16位单片机dsPIC的在线调试和烧写。ICD2在线调试器与目标板的连接如图2所示。


图2中只画出ICD2的MCLR/Vpp、PGD和PGC三组重要信号与目标板的连接,ICD2的Vdd和Vss按照正常方式与目标板连接。假如目标板上有AVdd(模拟电源)和AVss(模拟地),在目标板上也必须把AVdd和AVss与其对应的电源和地相连,不能有任何电源和地引脚悬空,以保证ICD2在调试时能正常工作。


2.2PGC和PGD信号易出现的题目


①从图2中可以看出,ICD2的PGC和PGD引脚内部已经接有4.7kΩ的下拉电阻,因此用户设计电路板时,电路板上的这2个引脚就不能再接下拉电阻,以免引起不正确的电平。


②PGC和PGD是信号引脚,对于这2个引脚,ICD2和目标板之间的连接不能有任何电容或其他容性器件接进,否则会影响串行数据和时钟信号传输。PGC和PGD信号是双向传输信号,ICD2和目标板之间的连接不能有任何二极管等元件阻断信号传输。


2.3复位


MCLR/Vpp是ICD2编程电压引脚,编程时电压应该在13V左右,这个引脚的另一个功能是复位。我们知道,任何单片机在上电或在其他一些特殊情况下都能引起复位。单片机的复位与电源和晶体振荡是单片机进进正常工作的三大必要条件。因此,应该留意以下题目。


①不能接进大电容,否则Vdd(电源电压)不能快速建立,影响复位。


②目标板的Vdd(电源电压)与MCLR/Vpp间应串接一只10kΩ以下的复位电阻,这样在复位时目标板的MCLR/Vpp引脚能够被正常拉低,而在编程时也可以保持13V左右的烧写电压。

按此在新窗口浏览图片

图2在线调试器与目标板的连接


③复位电阻不能太大,必须要小于10kΩ。根据笔者的经验,对于PIC16F87X系列单片机,复位电阻是10kΩ或10kΩ以下时可以正常复位;对于PIC18FXX2系列单片机,复位电阻是10kΩ时不能正常复位,更换为4.7kΩ左右的电阻就可以实现正常复位了。


2.4应用实践


由于ICD2的实用性和价格低廉,越来越多的用户使用ICD2在线调试器。在ICD2与目标板连接过程中,非常轻易出现这样或那样的题目。对于初学者和自己制作目标板的用户,尤其要留意把ICD2与目标板进行可靠连接,所谓可靠连接就是要接触良好。用户在制作目标板时要遵循本文2.2和2.3小节的叙述,制作出的目标板一般都能与ICD2实现正常连接。


当用户制作的目标板与ICD2连接时,若出现不能连接的情况,对于初学者,由于缺乏实践经验,往往判定不了哪里出了题目,甚至怀疑ICD2有题目。此时,应先判定目标板是否有题目,若目标板没有题目,只能怀疑是ICD2本身或ICD2与计算机连接的题目。

结语


本文重点叙述在线调试器与目标板的连接、复位以及出现题目的解决办法,有非常强的实用和参考价值,希看引起使用在线调试器读者的重视,节省调试时间。


参考文献


1武锋,陈新建.PIC单片机C语言开发进门.北京:北京航空航天大学出版社,2005

2张明峰.PIC单片机进门与实战.北京:北京航空航天大学出版社,2004


陈新建:工程师,主要研究方向为单片机、水利量测自动化及闸和坝安全监测自动化。

武锋:高级工程师,主要研究方向为单片机、水利量测自动化及闸门和泵站计算机监控。

关键字:PIC单片机  在线调试  串行编程 编辑:什么鱼 引用地址:http://news.eeworld.com.cn/mcu/ic488497.html 本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。

上一篇:基于PIC单片机的防伪包装技术
下一篇:PC机与PIC单片机主从式多机通讯及其在数据检测系统

关注eeworld公众号 快捷获取更多信息
关注eeworld公众号
快捷获取更多信息
关注eeworld服务号 享受更多官方福利
关注eeworld服务号
享受更多官方福利

推荐阅读

PIC单片机入门_MPLAB 集成开发环境和 MPASM编译器
1.七大汇编指令1.1 #INCLUDE语法:  #include “文件名.*” 或<文件名.*> 或无括号 或 引号示例:   #INCLUDE p12f675.inc1.2 #DEFINE用于定义变量和分配初始值;用户友好的名字被分配给常数,寄存器 ,管脚名等. 使程序易读;例:   #DEFINE MYCONSTANT H’5A’1.3 _ _CONFIG设置配置位1.4 ORG语法: ORG   <address>例: ORG 0x0000描述:  定义起始地址(0x0000).1.5 EQU语法:  &nbs
发表于 2020-03-09
PIC单片机入门_MPLAB 集成开发环境和 MPASM编译器
PIC单片机的第一个例程
今天白天在网上找软件找了好久,在官网下了MPLAB,和PICC还要注册比较麻烦。今天用的软件Protues仿真的。 第一个程序点亮一盏灯,电路很简单。下面贴出程序。 #include <pic.h>//包含头文件int main(void){    TRISB=0x00;//PortB方向寄存器,PortB为输出         while(1)    {         
发表于 2020-03-09
PIC单片机存储器拓展
择备用电池顶替上,改为备用电池供电,确保感应水龙头能正常工作不受影响。英锐恩开发芯片PIC16F684是Microchip的8位单片机产品,其功能特性主要有以下几点:增强中程核心,49个指令,16个堆栈级别具有自读写功能的FLASH程序存储器96 LCD段驱动支持内32 MHz振荡器集成电容mTouch传感模块综合温度指示器MI2C,SPI,EUSART W/AUTOW3 ECCP和2 CCP(增强/捕获比较PWM)可选电压基准的比较器14路电压基准10b模数转换器25 mA源/槽电流I/O四个8位定时器(TMR 0/TMR 2/TMR 4/TMR 6)一个16位定时器(TMR 1)扩展看门狗定时器(EWDT)增强型断电复位棕色复位
发表于 2020-03-08
如何在PIC单片机的GPIO引脚上生成PWM信号
T_OFF, 如上所示。T_OFF = T_TOTAL – T_ON鉴于这些公式,我们可以开始编程PIC单片机。该程序涉及PIC定时器模块 和PIC ADC模块 ,根据POT的ADC值,根据变化的占空比创建PWM信号。编程PIC在GPIO引脚上生成PWM在本节中,让我们了解程序的实际编写方式。像所有程序一样,我们首先设置配置位。我已经使用了memory views选项为我设置它。// CONFIG#pragma config FOSC = HS        // Oscillator Selection bits (HS oscillator)#pragma config WDTE
发表于 2020-03-08
如何在PIC单片机的GPIO引脚上生成PWM信号
PIC单片机的新开发环境--MPLAB X IDE
自从学习pic单片机开始所有的历程全部是以MPLAB  IDE为编译环境,然MPLAB  IDE即便是最新的版本在win7 64位下运行也会出现挂载不上picc编译器的情况,这就导致了作为初学者的我选择了更换电脑系统的下下策。我安装了win7 32位系统,首先说32位系统会吞掉将近一个多G的内存分配给显卡,而且32位系统最多识别4个G的内存所以家内存条也解决不了问题,也就是说实际电脑使用的时候能用到的内存只有2个多G,这将对我们电脑的工作产生非常大的影响。于是我在网上搜罗发现Microchip公司推出的新版本的编译环境MPLAB X IDE是可以在windows7-10之间畅游的,所以便打起了这个家伙的主意
发表于 2020-03-05
PIC单片机之硬件仿真的配置字问题
注意:本实验的芯片是PIC24FJ256DA210,用到的开发环境是:MPLAB IDE v8.92   编译工具是xc16-gcc.exePIC单片机在硬件仿真的时候如果配置字配置不好,会出现不能仿真的后果,会有下面提示:PK3Err0040: The target device is not ready for debugging.Please check your configuration bit settings and programthe device before proceeding.如下图:这时候我的配置字是这样的:        _CONFIG1
发表于 2020-03-04
PIC单片机之硬件仿真的配置字问题
小广播
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

更多每日新闻
电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2020 EEWORLD.com.cn, Inc. All rights reserved