求助 XIDE + PICkit3 仿真16LF1934 无法进入调试。
可以识别到PICkit3 ,在下载调试代码时无法成功老是提示编程器件失败。首次用XIDE,搞不懂这货。
附件是完整工程,就写了几句代码。 XIDE是官网最新版本,XC8也是最新版本。
我尝试过改复位脚为IO或外部复位(复位加上拉10K),用PICkit3供电或外部供电都无法进入调试。用的是内部震荡。
// CONFIG1
#pragma config FOSC = INTOSC // Oscillator Selection (INTOSC oscillator: I/O function on CLKIN pin)
#pragma config WDTE = OFF // Watchdog Timer Enable (WDT disabled)
#pragma config PWRTE = OFF // Power-up Timer Enable (PWRT disabled)
#pragma config MCLRE = ON // MCLR Pin Function Select (MCLR/VPP pin function is digital input)
#pragma config CP = OFF // Flash Program Memory Code Protection (Program memory code protection is disabled)
#pragma config CPD = OFF // Data Memory Code Protection (Data memory code protection is disabled)
#pragma config BOREN = OFF // Brown-out Reset Enable (Brown-out Reset enabled)
#pragma config CLKOUTEN = OFF // Clock Out Enable (CLKOUT function is disabled. I/O or oscillator function on the CLKOUT pin)
#pragma config IESO = OFF // Internal/External Switchover (Internal/External Switchover mode is disabled)
#pragma config FCMEN = OFF // Fail-Safe Clock Monitor Enable (Fail-Safe Clock Monitor is disabled)
// CONFIG2
#pragma config WRT = OFF // Flash Memory Self-Write Protection (Write protection off)
#pragma config PLLEN = ON // PLL Enable (4x PLL enabled)
#pragma config STVREN = ON // Stack Overflow/Underflow Reset Enable (Stack Overflow or Underflow will cause a Reset)
#pragma config BORV = LO // Brown-out Reset Voltage Selection (Brown-out Reset Voltage (Vbor), low trip point selected.)
#pragma config LVP = OFF // Low-Voltage Programming Enable (Low-voltage programming enabled)
// #pragma config statements should precede project file includes.
// Use project enums instead of #define for ON and OFF.
#include <xc.h>
#include <stdio.h>
#include <stdlib.h>
//#include"pic.h"
之前通宵调试代码得时候遇到这么一回 4个小时在找原因后来偶尔又能下载,从此对PIC 的工具 没了好感. 浮华一生 发表于 2018-3-27 13:47
之前通宵调试代码得时候遇到这么一回 4个小时在找原因后来偶尔又能下载,从此对PIC 的工具 没了好感. ...
我昨天折腾一个晚上了,以前用IDE+ICD2+PICC很好用。 换了新的工具不熟悉,一个小问题也找不到原因了。 你可以用Pickit3独立烧写软件试试,看看能不能烧写成功,如果能烧写成功,就是MPLAB设置的问题,如果不行,就检查PIC引脚周边电路设计是否合理。 caoxuedong 发表于 2018-3-27 15:41
你可以用Pickit3独立烧写软件试试,看看能不能烧写成功,如果能烧写成功,就是MPLAB设置的问题,如果不行, ...
外围也就是供电加一个复位上拉电阻了,没什么外围。 用XIDE 写程序用IDE烧录。XIDE很多莫名奇妙的问题的 按4楼用MPLAB IPE烧一下看看,排查一下。
用PIC的8bitMCU,涉及到要烧录,一定要看清电源正负脚和VPP脚是否接对。尤其是Vpp脚,会升比较高的电压,接到其他IO上,比较大几率打坏MCU。 感谢楼上回复,我是要仿真而不是烧片{:smile:}
一直提示如下:
连接到MPLAB PICkit 3...
Currently loaded firmware on PICkit 3
固件套件版本.....01.51.07
固件类型..............增强型中档
Programmer to target power is enabled - VDD = 3.375000 volts.
Format specifier '%x'
Device Erased...
编程中...
以下存储器区域将被编程:
程序存储器: 起始地址 = 0x0, 结束地址 = 0x7ff
配置存储器
程序存储器
地址:1期望数值:3180收到数值:0
编程器件失败 手动下载一次pk3内部程序看,有时会好 如果确认硬件没问题的话 picket3的解决无非就几种方式:1.检查configure里面的配置,主要是晶振2,configure里面的DEVICE自动识别是否正确(碰到过一次不正确的,手动改正的)3,固件重新更新一下;4,操作完以上后,一般不用重启电脑,但是以上都不能解决的话,可以试试重启电脑(有过几次的经验,不知其所以然) GZZXB 发表于 2018-3-27 22:49
感谢楼上回复,我是要仿真而不是烧片
一直提示如下:
连接到MPLAB PICkit 3...
仿真的前提是能烧片,都不能烧写了 别提仿真 楼主情况硬件电路和连接问题很大 pen245760036 发表于 2018-3-29 14:02
仿真的前提是能烧片,都不能烧写了 别提仿真 楼主情况硬件电路和连接问题很大...
连接也就那5根线了,反复检查了。然后就是MCLR脚接了一个10k电阻到VDD。 没有其他外围了,连接kit3用设置kit3给芯片供电,配置也如上了。
实在是搞不定,今天下了个IDE V8.9准备用ICD2调试,然后发现ICD2居然要仿真头郁闷了{:sad:} focus_hai 发表于 2018-3-29 10:04
如果确认硬件没问题的话 picket3的解决无非就几种方式:1.检查configure里面的配置,主要是晶振2,configur ...
固件重新更新是不是这样操作?
GZZXB 发表于 2018-3-27 22:49
感谢楼上回复,我是要仿真而不是烧片
一直提示如下:
连接到MPLAB PICkit 3...
要进入仿真模式的前提就是——烧录成功{:smile:} 。
有时候什么接对了,但就是烧录不进去有2种可能:
1.本身这个板子的电路就不支持在线烧录,具体参照PICKIT3说明书,有规则说明。
2.如果是用外部电源,电源不是很干净,也经常会烧录失败。 本帖最后由 pen245760036 于 2018-3-30 14:11 编辑
你那款芯片是无法直接仿真的 得通过仿真头 这样的仿真还是算了 ,建议自己把烧写口弄成串口打印数据就行了,简单的话一条线就可以监听运行情况
调试编译用IDE 烧写的话用IPE(装X IDE时附带的)比较直观进入管理员模式就可以配置电压(IDE也是可以配置比较繁琐,实时反馈差),个别电源环境较差的板子 电压偏高了它烧不了的,这时要调电压
至于调试单片机嘛 先点灯(确认引脚配置,芯片状况,尤其PIC),然后定时点灯(芯片时钟情况,调通讯非常重要),然后模拟串口调试 这个搞起来剩下的可以通过看串口信息搞, GZZXB 发表于 2018-3-29 17:30
固件重新更新是不是这样操作?
不用这么麻烦, pen245760036 发表于 2018-3-30 13:56
你那款芯片是无法直接仿真的 得通过仿真头 这样的仿真还是算了 ,建议自己把烧写口弄成串口打印数据就行了 ...
不需要仿真头可以仿真的. 找别人借了个kit3可以正常仿真,应该是我这个kit3有问题。淘宝45买的估计不好用,朋友microchip买的就很好用。 不过这货只能一个断点倒是不如icd2,可惜的是icd2不能在win10上用。不知和原厂的区别是不是只是固件不同?但是固件明明又可以更新,让人搞不懂了。
页:
[1]