打印
[PIC®/AVR®/dsPIC®产品]

mplab x ide 下载程序没反应

[复制链接]
1240|15
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
背景:mplab x ide 和 ICD 3 点亮 PIC16F877A板载lED灯过程
     1、例程导入maplab x ide 中,编译下载没错误,但是板子没反应。

     2、把例程中的led.hex文件导入mplab x IPE中下载灯可以亮。

            

    3、新建项目,添加一个新的main.c源文件,把例程中的led.c内容copy进去,编译下载也没反应。并且将自己编译生成的.hex文件导入mplab x IPE中下载也没反应
求问:
步骤都是按照教程来的,我是不是漏了某些步骤?

使用特权

评论回复
沙发
程序员阳仔|  楼主 | 2019-10-25 15:15 | 只看该作者
附上代码:就用过STM32的板子,周末学学PIC的配置

#include <stdio.h>
#include <stdlib.h>
#include <pic.h>           //调用PIC16F87XA单片机的头文件

// CONFIG
#pragma config FOSC = EXTRC     // Oscillator Selection bits (RC oscillator)
#pragma config WDTE = OFF        // Watchdog Timer Enable bit (WDT enabled)
#pragma config PWRTE = OFF      // Power-up Timer Enable bit (PWRT disabled)
#pragma config BOREN = ON       // Brown-out Reset Enable bit (BOR enabled)
#pragma config LVP = ON         // Low-Voltage (Single-Supply) In-Circuit Serial Programming Enable bit (RB3/PGM pin has PGM function; low-voltage programming enabled)
#pragma config CPD = OFF        // Data EEPROM Memory Code Protection bit (Data EEPROM code protection off)
#pragma config WRT = OFF        // Flash Program Memory Write Enable bits (Write protection off; all program memory may be written to by EECON control)
#pragma config CP = OFF         // Flash Program Memory Code Protection bit (Code protection off)

#include <xc.h>
//根据选项,配置字应该如下所示:
__CONFIG(HS&WDTDIS&LVPDIS);

void delay(void);

int main(int argc, char** argv)
{
    unsigned int i=0;
    char data=0;
    TRISD=0x00;      //初始化RD7-RD0的输出方向
    PORTD=0xFF;      //初始化RD7-RD0的输出方向

    //死循环,单片机初始化后,将一直运行这个死循环
    while(1)        
      {
       data=0xFE;
       for(i=0;i<8;i++)
         {
          PORTD=data;      //初始化RD7-RD0的数值
          delay();
          data=(data<<1)|0X01;     
         }
      }
        return (EXIT_SUCCESS);
}
void delay(void)
{
unsigned int a;   
for(a=0;a<50000;a++);   
}

使用特权

评论回复
板凳
lcczg| | 2019-10-25 15:55 | 只看该作者
本帖最后由 lcczg 于 2019-10-25 15:59 编辑

调试看看什么现象

使用特权

评论回复
地板
程序员阳仔|  楼主 | 2019-10-25 16:15 | 只看该作者
lcczg 发表于 2019-10-25 15:55
调试看看什么现象


3.png (27.71 KB )

3.png

使用特权

评论回复
5
heisexingqisi| | 2019-10-26 00:04 | 只看该作者
配置字的问题?

使用特权

评论回复
6
huahuagg| | 2019-10-26 21:55 | 只看该作者
不知道,这个芯片挺老的, 没用过了。

使用特权

评论回复
7
huahuagg| | 2019-10-26 21:56 | 只看该作者
你换以前的老版本的MPLAB试试。

使用特权

评论回复
评论
程序员阳仔 2019-10-28 08:48 回复TA
ok,我试试,这周有事回家了,回复晚了 
8
CoolSilicon| | 2019-10-28 09:51 | 只看该作者
你这个是用的什么板子??
你用的是外部RC????不是晶振???
这个片子比较老了, 时钟就2个选择, 首先你确认一下时钟源..
#pragma config FOSC = EXTRC     // Oscillator Selection bits (RC oscillator)

使用特权

评论回复
评论
程序员阳仔 2019-10-28 13:52 回复TA
@CoolSilicon :好的,我也觉着这个太老了,MCC也不支持。 
CoolSilicon 2019-10-28 11:14 回复TA
@程序员阳仔 :建议你选新一点的型号来学吧...建议选PIC16F1xxx, PIC16F1XXXX, 就是F后面加4个数字, 或者5个数字的型号, 另外,这个论坛有月月送活动, 都是比较新的,比较实用的板子送, 你可以去申请一下, 中签的概率还是比较高的.. 祝学习顺利! 
程序员阳仔 2019-10-28 10:28 回复TA
pic16f877a,之前接触过32,正在学pic的编程,这些配置还不太会,这个用的例程代码 
9
程序员阳仔|  楼主 | 2019-10-28 10:53 | 只看该作者
CoolSilicon 发表于 2019-10-28 09:51
你这个是用的什么板子??
你用的是外部RC????不是晶振???
这个片子比较老了, 时钟就2个选择, 首先你确认一下 ...

应该就是时钟源设置的问题

使用特权

评论回复
10
talktea| | 2019-10-28 14:52 | 只看该作者
#pragma config LVP = ON

正常编程模式下低电压编程使能位不用打开。

使用特权

评论回复
评论
程序员阳仔 2019-10-28 15:00 回复TA
LVP:低电压编程使能位。如果不使用低电压编程 RB3将做普通I/O.MCLR必须用于编程。(根据需求) 刚看到这个配置 
程序员阳仔 2019-10-28 14:58 回复TA
666,这个改了就对了。我现在正在看配置位的介绍,感谢大哥 
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

6

主题

130

帖子

1

粉丝