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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

开发工具ICD2使用问题解决PIC编程.docx

1、开发工具ICD2使用问题解决PIC编程开发工具ICD2使用方面需要注意的问题1.1 问: 为什么我的系统编程或校验失败?答:按照第5 章,故障诊断中所述,检查PGC、PGD 和VPP 连接以及电压,诊断故障。确保目标PICmicro 单片机已上电。如果目标PICmicro 单片机有AVSS 和AVPP 引脚,确认这些引脚都已正确连接。1.2 问: 为什么我需要 ICD 转接头?答:对于MPLAB ICD 2 支持的低引脚数器件,如果在线调试引脚被保留,将不能有效地使用这些器件。试想一下,对于8 个引脚的器件, 6 个I/O 引脚失去其中3 个的情形。为此,生产了特殊的外合(bond-out)

2、PICmicro 单片机,这种单片机能通过一个转接头来仿真这些低引脚数器件,这使得能在目标应用中使用所有引脚。外合(bond-out) PICmicro 单片机具有在线通讯引脚与MPLAB ICD 2 接口。这样做的优点是可以用MPLAB ICD 2 开发低引脚数器件。缺点是,对于这些器件,为进行在线调试,不能只在目标应用中采用一个ICD 2 连接插座,还要使用外合(bond-out) PICmicro 单片机。这些外合(bond-out) PICmicro 单片机类似于仿真器芯片,能支持多种器件。在ICD 转接头电路板上有跳线来配置芯片,以与开发使用的器件相匹配。这些低引脚数器件可通过通用编

3、程适配器,或者在目标应用上放置一个ICD 2 连接插座来连接这些器件的VPP、PGC 和PGD,来采用MPLAB ICD 2 编程。1.3 问: 无法连接到MPLAB ICD 2 。我现在该怎么做?答:MPLAB ICD 2 的电源灯亮了吗?这个LED 应该是明亮的。如果它比较暗,可能只连接了USB,用户可能需要连接一个电源。PC 的RS-232 口不能为MPLAB ICD 2 提供电源,不过USB 口可以。注意有些USB 集线器不能提供电源。请针对当前的故障线索,查看在线帮助。USB 驱动安装正确吗?在Windows 设备管理器对话框(如图6-1 所示)中应该可以看到MPLAB ICD 2

4、的USB 驱动。一些USB 集线器不能给连接的USB 设备提供电源。使用这些集线器时,需要在MPLAB ICD 2 上接一个电源。1.4 问: ICD 2 响应“Target not in debug mode error. ”这是什么意思?答:通常这说明MPLAB ICD 2 不能和调试执行程序通讯。只能通过选择DebuggerProgram 菜单,对用户应用中的目标PICmicro单片机编程,来下载调试执行程序。也可能是其它原因使得调试执行程序不能通讯,如目标时钟或电源问题。查看配置位,确保“Background Debug”使能。查看ConfigConfiguration Bits.,确

5、保看门狗被禁止,代码保护被关闭,并且振荡器设置正确。1.5 问: MPLAB ICD 2 能和一个低电压运行的目标器件一起工作吗?答:是的。只要目标PICmicro 单片机支持低电压运行,它就能在VDD 低至约2V 的情况下运行。在MPLAB ICD 2 的输入/ 输出缓冲器中有电平转换器。这些输入/ 输出缓冲器通过目标器件的VDD 供电。另外, MPLAB ICD 2 会检测目标器件的工作电压,并正确地调整其功能来处理低电压操作,即使用正确的FLASH 擦除算法。在MPLAB ICD 2 的“Settings”对话框中, VDD 需选择为“From Target”,并且在目标板上要有一个电源

6、用于低电压运行。1.6 问: MPLAB ICD 2 支持低电压编程(LVP )吗?答:不支持。但这并不表示当目标器件运行在低电压VDD 时,MPLAB ICD 2 不能正常工作。只是表示施加到VPP 上的编程电压应总是+12V。1.7 问: 为什么我在配置锁相环(PLL )振荡器时有问题?MPLAB ICD 2 被挂起答:这是PICmicro 单片机所要求的。在对PLL 振荡器的配置位编程后,电源需要断开然后再加到目标板上。如果没有这样做,目标PICmicro 单片机将没有时钟。没有时钟,调试模式将不能工作。同样,如果在切换到PLL 模式时,电源没有被断开再连接,器件可能会运行,但没有使用P

7、LL。1.8 问: 当我尝试安装时,为什么找不到驱动,即使当我能在驱动文件夹中看到它们,并且我在驱动向导中指向了正确的文件夹也不行?答:这个问题可以这样解决:退出驱动安装向导,再到控制面板选择“Add New Hardware (添加新硬件)”。在系统搜索新硬件后,选择“No, the device isnt in the list.”,然后选择“No, I want to select the hardware from a list.”,再选择“Universal Serial Bus Controller,”。当出现“Have Disk.”按钮时,进入驱动文件夹,并选择正确的驱动。1.9

8、 问: 我能使用MPLAB ICD 2 实现代码保护吗?答:不能。代码保护,特别是程序存储器中任何区域的表读保护会妨碍MPLAB ICD 2 正常工作。当使用MPLAB ICD 2 调试时,不要使用任何代码保护或表读保护的配置设置。当烧写器件进行测试时,如果没有连接MPLAB ICD 2,可以使能代码保护。1.10 问: 单步执行时,定时器为什么运行不正常?答:这是使用在线调试器的缺点之一。由于代码实际上是在调试执行程序中运行,在调试执行程序运行期间,即使用户的应用程序被中止,定时器也会继续运行。1.11 问:在使用PIC12F629/675 或PIC16F630/676 时,为什么会有警告和

9、错误?答:在使用MPLAB ICD 2 过程中,这些器件的GP1/RA1 引脚不能被拉高。参见MPLAB ICD 2 Header (DS51292)文档,获得更多关于对这些器件使用ICD 2 的信息。1.12 问: 什么使电源和忙信号LED 闪烁?答:这可能表示目标板上MPLAB ICD 2 连接插座的接线顺序反了(与接线图相反)。灯闪烁表示由于有大电流, MPLAB ICD 2 正在关闭。下面的测试表明目标板上接线顺序反了: 查找闪烁的Power 和Busy 信号LED (电源可能都关断了)。 执行一次“Self Test”,查找“MCLR=VPP”上的小错误(所有其它测试可能都会通过)。

10、 使用目标单片机的默认地址范围,执行一次编程。引脚1(VPP)上7-8V 的电平太低了。注意,如果目标板接线顺序相反, MPLAB ICD 2 中的保护电路会防止对模块造成破坏。当目标板正确连线时,可以看到其正常运作。1.13 问:MPLAB ICD 2 中的“Self Test ”起什么作用?答:“Self Test”按钮有助于确定MPLAB ICD 2 模块或目标板连接的问题。目标VDD如果选择了“Power from ICD2”,则测试由MPLAB ICD 2 提供的VDD 仅5 V。如果选择了“Power from target”,则测试由目标板提供的VDD 2 至6V。Pass/Fa

11、il 码:错误表示在Advanced 对话框中“Power”设置不正确,或者目标板的VDD 高于/ 低于规定值。模块VPP测试在编程过程中由MPLAB ICD 2 提供给目标板VPP/MCLR 引脚的编程电压(VPP)。Pass/Fail 码:出现错误表明目标板VPP/MCLR 引脚接线不正确。MCLR=Gnd测试MPLAB ICD 2 为复位目标单片机,提供地电平给目标VPP/MCLR 引脚的能力。Pass/Fail 码:出现错误表明VPP/MCLR 引脚接线不正确。00 = Pass VDD 在指定的范围内01 = Min error VDD 低于指定的范围80 = Max error V

12、DD 高于指定的范围00 = Pass VPP 在指定的范围内01 = Min error VPP 低于指定的范围80 = Max error VPP 高于指定的范围00 = Pass 地电平可以提供给目标VPP/MCLR 引脚80 = Max error 地电平对于目标VPP/MCLR 引脚太高MCLR=VDD测试正常工作如Run期间, MPLAB ICD 2 提供VDD 给目标VPP/MCLR 引脚的能力。Pass/Fail 码:出现错误表明在Advanced 对话框中“Power”设置不正确,或者目标的VDD 高于/ 低于规定值。MCLR=VPP测试在编程过程中MPLAB ICD 2 提

13、供VPP 给目标VPP/MCLR 引脚的能力。Pass/Fail 码:出现错误表明VPP/MCLR 引脚接线不正确。1.14 问: 通过RETFIE 指令来使用高优先级中断时,为什么 W 、 STATUS 和BSR 寄存器的值会改变?答:用于高优先级中断和CALL FAST 的影子寄存器被MPLABICD 2 使用了。这些是保留给MPLAB ICD 2 操作的资源。如果断点设置在CALL FAST 子程序内,或者在通过 RETURN FAST 或RETFIE 指令使用了影子寄存器的高优先级中断服务程序内,将会出现问题。00 = Pass VDD 可提供给目标VPP/MCLR 引脚01 = Mi

14、n error VDD 对于目标VPP/MCLR 引脚太低80 = Max error VDD 对于目标VPP/MCLR 引脚太高00 = Pass VPP 可提供给目标VPP/MCLR 引脚01 = Min error VPP 对于目标VPP/MCLR 引脚太低80 = Max error VPP 对于目标VPP/MCLR 引脚太高1.15 问: 当我在程序的起始位置设置一个断点时,为什么它停止在地址0001 ,而不是地址0000 ?答:MPLAB ICD 2 在断点后的指令上暂停。这意味着设置了断点的地址0000 处的指令会被执行,接着当它发现断点时,程序计数器会指向地址0001。如果用户

15、需要在其代码的第一条指令处暂停,他们必须在地址0000 处插入一条NOP 指令。1.16 问: 为什么我的校准存储器显示已擦除的值?答:MPLAB IDE 正在显示默认的存储器值。要显示器件上的实际值,必须使用MPLAB ICD 2 进行一次器件读操作。1.17 问: 单步执行代码时,我的定时器超时了,但为什么我的定时器中断服务程序没有执行?答:单步执行时,在线调试器不允许PICmicro 单片机响应中断。如果允许的话,当用户有外部中断时,那么单步执行将几乎总是在中断服务程序中结束。要调试中断,应在中断服务程序中设置断点并运行,这样在产生中断后执行到断点。1.18 问:MCHP的工具串口属性都

16、要做调整答:右击我的电脑属性硬件设备管理器端口(COM)COM1(如果用其他COM,则选择相应的COMx)属性端口设置,好现在开始两个步骤的设置。1,流控制方式选择硬件2,点击“高级”按纽FIFOxxxxx.前面那个钩去掉。不管用PLUS,还是ICD2用串口调试/烧写时,都要做以上动作。设置完,可以考虑重新启动电脑,因为有的电脑需要重新启动后对串口的修改才能生效,有的是不需要。拨特率,细心的客户可能会发现MCHP做的东西要嘛是19200,要嘛是57600,但电脑默认是9600,那么电脑的COM属性要做匹配调整吗,答案是不需要。1.19:问:经常有人用MCHP的ICD2,PLUS烧写,然后校验的

17、时候提示错误0161答:这就表示烧写没烧成功,很多时候这是串口属性没设置引起的,修改后就OK了。还有的可能比如工具底层固件突然崩溃。PLUS的底层尤其脆弱。解决也很简单重新DOWNLOAD一下底层固件,也就是工具的OPERATING SYSTEM。另外,如果由于电源比较异常,也可能引起0161的问题。1.20:问:MCHP的PLUS烧16C57答:MCHP的PLUS烧16C57,记得把芯片的26脚与烧写座脱离接触。可以翘起来,烧完翘回去,当然,还可以在加一个28PIN座,把座子的26脚废了,那芯片与PLUS的烧写座26脚就实际上脱离了接触。还有的人,打开了PLUS,断开了26脚,搞了个跳线,平

18、时连通,需要烧57的时候把跳线拔掉,本质上也是做到脱离接触。1.21:问:经常有这样的事情发生,仿真OK,烧写失败其中一点,烧写方法有误导致的烧写失败。烧PIC的片子,除非你用的是MCHP设计的工具,比如ICD2,ICE2000/4000,用任何的第三方设计的仿真工具,请执行按以下动作烧写,以保证烧写OK。 1,在仿真器下调试通过的源代码,拿到MCHP的编译器MPLAB IDE下(现在最高版本V7.31),再次编译。这时候可能需要建立必要的项目,而且必须对芯片类型,CONFIG BITS,进行相应的设置。 2,此时生产的HEX文件才是必然包含config 信息的HEX文件,是值得信赖的烧写文件

19、。可以从FILEEXPORT导出HEX文件,提交烧写的专人。 3,用FILEIMPORT导入HEX文件,检查检查芯片设置和CONFIG,然后烧写。我们公司的2004,2002软件环境下生成的HEX文件是不包含config信息,一个同事用过wave的某款仿真器,也发现可能有类似的问题,最后拿到MPLAB IDE下一编译再烧写,天下太平。由于我们公司仅代理制造PLUS,ICD2,PIKIT2,遇到其他MCHP的烧写工具问题,请咨询相关的代理商或MCHP的FAE。1.22:问:PIC MCU 中有A結尾和沒A結尾的兩中型號有什區別?答:带A的便宜。不带A的行将停产,又贵。877到877A,内部资源增

20、加,工艺改变。627到627A,内部资源不动,工艺改变。使用ICD2支持dsPIC注意事项使用ICD2调试dsPIC时需要注意以下内容:1、 调试线不能太长,建议20cm以内;2、 调试dsPIC时应先连接ICD2,然后再对用户板上电,否则有可能出现ICDWarning20或烧写失败提示在使用某些旧版本ICD2调试dsPIC过程中可能会出现重新烧写项目时烧写失败的提示,解决方案如下:1、 拆开ICD2机壳,在主机板上找到R23、R36(180欧,0603);2、 将R23、R36更换为0欧0603的电阻,或使用焊锡将其短路即可;如果用户不希望作以上更改也可以采用如下方式解决:1、使用ICD2提

21、供电源时,将调试线从用户板取下再插上(用户板下电),然后重新连接ICD2即可进行调试;或点击Debugger-Debugger Settings-power设置为使用用户板电源,点“应用”,然后改回使用ICD2电源,再次点“应用”然后重新连接ICD2即可进行调试。2、使用用户板电源时,应去掉用户板电源,连接ICD2一次,然后再对用户板上电。此时重新连接ICD2即可进行调试。开发工具ICD2使用方面需要注意的问题。答:按照第5 章,故障诊断中所述,检查PGC、PGD 和VPP 连接以及电压,诊断故障。确保目标PICmicro 单片机已上电。如果目标PICmicro 单片机有AVSS 和AVPP

22、引脚,确认这些引脚都已正确连接。1.2 问: 为什么我需要 ICD 转接头?答:对于MPLAB ICD 2 支持的低引脚数器件,如果在线调试引脚被保留,将不能有效地使用这些器件。试想一下,对于8 个引脚的器件, 6 个I/O 引脚失去其中3 个的情形。为此,生产了特殊的外合(bond-out) PICmicro 单片机,这种单片机能通过一个转接头来仿真这些低引脚数器件,这使得能在目标应用中使用所有引脚。外合(bond-out) PICmicro 单片机具有在线通讯引脚与MPLAB ICD 2 接口。这样做的优点是可以用MPLAB ICD 2 开发低引脚数器件。缺点是,对于这些器件,为进行在线调

23、试,不能只在目标应用中采用一个ICD 2 连接插座,还要使用外合(bond-out) PICmicro 单片机。这些外合(bond-out) PICmicro 单片机类似于仿真器芯片,能支持多种器件。在ICD 转接头电路板上有跳线来配置芯片,以与开发使用的器件相匹配。这些低引脚数器件可通过通用编程适配器,或者在目标应用上放置一个ICD 2 连接插座来连接这些器件的VPP、PGC 和PGD,来采用MPLAB ICD 2 编程。1.3 问: 无法连接到MPLAB ICD 2 。我现在该怎么做?答:MPLAB ICD 2 的电源灯亮了吗?这个LED 应该是明亮的。如果它比较暗,可能只连接了USB,用

24、户可能需要连接一个电源。PC 的RS-232 口不能为MPLAB ICD 2 提供电源,不过USB 口可以。注意有些USB 集线器不能提供电源。请针对当前的故障线索,查看在线帮助。USB 驱动安装正确吗?在Windows 设备管理器对话框(如图6-1 所示)中应该可以看到MPLAB ICD 2 的USB 驱动。一些USB 集线器不能给连接的USB 设备提供电源。使用这些集线器时,需要在MPLAB ICD 2 上接一个电源。1.4 问: ICD 2 响应“Target not in debug mode error. ”这是什么意思?答:通常这说明MPLAB ICD 2 不能和调试执行程序通讯。

25、只能通过选择Debuggerrogram 菜单,对用户应用中的目标PICmicro单片机编程,来下载调试执行程序。也可能是其它原因使得调试执行程序不能通讯,如目标时钟或电源问题。查看配置位,确保“Background Debug”使能。查看ConfigConfiguration Bits.,确保看门狗被禁止,代码保护被关闭,并且振荡器设置正确。1.5 问: MPLAB ICD 2 能和一个低电压运行的目标器件一起工作吗?答:是的。只要目标PICmicro 单片机支持低电压运行,它就能在VDD 低至约2V 的情况下运行。在MPLAB ICD 2 的输入/ 输出缓冲器中有电平转换器。这些输入/ 输

26、出缓冲器通过目标器件的VDD 供电。另外, MPLAB ICD 2 会检测目标器件的工作电压,并正确地调整其功能来处理低电压操作,即使用正确的FLASH 擦除算法。在MPLAB ICD 2 的“Settings”对话框中, VDD 需选择为“From Target”,并且在目标板上要有一个电源用于低电压运行。1.6 问: MPLAB ICD 2 支持低电压编程(LVP )吗?答:不支持。但这并不表示当目标器件运行在低电压VDD 时,MPLAB ICD 2 不能正常工作。只是表示施加到VPP 上的编程电压应总是+12V。1.7 问: 为什么我在配置锁相环(PLL )振荡器时有问题?MPLAB I

27、CD 2 被挂起答:这是PICmicro 单片机所要求的。在对PLL 振荡器的配置位编程后,电源需要断开然后再加到目标板上。如果没有这样做,目标PICmicro 单片机将没有时钟。没有时钟,调试模式将不能工作。同样,如果在切换到PLL 模式时,电源没有被断开再连接,器件可能会运行,但没有使用PLL。1.8 问: 当我尝试安装时,为什么找不到驱动,即使当我能在驱动文件夹中看到它们,并且我在驱动向导中指向了正确的文件夹也不行?答:这个问题可以这样解决:退出驱动安装向导,再到控制面板选择“Add New Hardware (添加新硬件)”。在系统搜索新硬件后,选择“No, the device is

28、nt in the list.”,然后选择“No, I want to select the hardware from a list.”,再选择“Universal Serial Bus Controller,”。当出现“Have Disk.”按钮时,进入驱动文件夹,并选择正确的驱动。1.9 问: 我能使用MPLAB ICD 2 实现代码保护吗?答:不能。代码保护,特别是程序存储器中任何区域的表读保护会妨碍MPLAB ICD 2 正常工作。当使用MPLAB ICD 2 调试时,不要使用任何代码保护或表读保护的配置设置。当烧写器件进行测试时,如果没有连接MPLAB ICD 2,可以使能代码保护

29、。1.10 问: 单步执行时,定时器为什么运行不正常?答:这是使用在线调试器的缺点之一。由于代码实际上是在调试执行程序中运行,在调试执行程序运行期间,即使用户的应用程序被中止,定时器也会继续运行。1.11 问:在使用PIC12F629/675 或PIC16F630/676 时,为什么会有警告和错误?答:在使用MPLAB ICD 2 过程中,这些器件的GP1/RA1 引脚不能被拉高。参见MPLAB ICD 2 Header (DS51292)文档,获得更多关于对这些器件使用ICD 2 的信息。1.12 问: 什么使电源和忙信号LED 闪烁?答:这可能表示目标板上MPLAB ICD 2 连接插座的

30、接线顺序反了(与接线图相反)。灯闪烁表示由于有大电流, MPLAB ICD 2 正在关闭。下面的测试表明目标板上接线顺序反了: 查找闪烁的Power 和Busy 信号LED (电源可能都关断了)。 执行一次“Self Test”,查找“MCLR=VPP”上的小错误(所有其它测试可能都会通过)。 使用目标单片机的默认地址范围,执行一次编程。引脚1(VPP)上7-8V 的电平太低了。注意,如果目标板接线顺序相反, MPLAB ICD 2 中的保护电路会防止对模块造成破坏。当目标板正确连线时,可以看到其正常运作。1.13 问:MPLAB ICD 2 中的“Self Test ”起什么作用?答:“Se

31、lf Test”按钮有助于确定MPLAB ICD 2 模块或目标板连接的问题。目标VDD如果选择了“Power from ICD2”,则测试由MPLAB ICD 2 提供的VDD 仅5 V。如果选择了“Power from target”,则测试由目标板提供的VDD 2 至6V。Pass/Fail 码:错误表示在Advanced 对话框中“Power”设置不正确,或者目标板的VDD 高于/ 低于规定值。模块VPP测试在编程过程中由MPLAB ICD 2 提供给目标板VPP/MCLR 引脚的编程电压(VPP)。Pass/Fail 码:出现错误表明目标板VPP/MCLR 引脚接线不正确。MCLR=

32、Gnd测试MPLAB ICD 2 为复位目标单片机,提供地电平给目标VPP/MCLR 引脚的能力。Pass/Fail 码:出现错误表明VPP/MCLR 引脚接线不正确。00 = Pass VDD 在指定的范围内01 = Min error VDD 低于指定的范围80 = Max error VDD 高于指定的范围00 = Pass VPP 在指定的范围内01 = Min error VPP 低于指定的范围80 = Max error VPP 高于指定的范围00 = Pass 地电平可以提供给目标VPP/MCLR 引脚80 = Max error 地电平对于目标VPP/MCLR 引脚太高MCLR=VDD测试正常工作如Run期间, MPLAB ICD 2 提供VDD 给目标VPP/MCLR 引脚的能力。Pass/Fail 码

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

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