打印

pic18f25k22用MPLAB IDE里面的HT-TECH工具编译所遇到的问题

[复制链接]
4653|14
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
     
      我用MPLAB IDE里面的HT-TECH的工具来编译pic18f25k22这个芯片的程序,发现不能编译,貌似不支持这款芯片,在选择芯片的界面,出现这样的结果,并且在编译时就会出现很多脚没有定义的错误。
                                                      

   求怎么解决,还有就是pic18f25k22这款芯片用什么编译器来编译程序.......不知道问题描述清楚了没,以前玩的是51系列的单品机,公司用的是pic系列的单片机,只能重新学,刚开始就遇到这个问题了,怎么解决。。。。。
沙发
Rain_King|  楼主 | 2013-7-9 22:30 | 只看该作者
Error   [192] E:\ZRAIN\MPLAB\Temporary\Temporary.c; 24.1 undefined identifier "RC0"
Error   [192] E:\ZRAIN\MPLAB\Temporary\Temporary.c; 25.1 undefined identifier "RC1"
Error   [192] E:\ZRAIN\MPLAB\Temporary\Temporary.c; 26.1 undefined identifier "RC2"
Error   [192] E:\ZRAIN\MPLAB\Temporary\Temporary.c; 27.1 undefined identifier "RC3"
Error   [192] E:\ZRAIN\MPLAB\Temporary\Temporary.c; 28.1 undefined identifier "RC4"
Error   [192] E:\ZRAIN\MPLAB\Temporary\Temporary.c; 29.1 undefined identifier "RC5"
Error   [192] E:\ZRAIN\MPLAB\Temporary\Temporary.c; 30.1 undefined identifier "RC6"
Error   [192] E:\ZRAIN\MPLAB\Temporary\Temporary.c; 31.1 undefined identifier "RC7"
这个是错误提示.....

使用特权

评论回复
板凳
Rain_King|  楼主 | 2013-7-9 22:31 | 只看该作者
#include"p18f25k22.h"

#define LCD_A RC0
#define LCD_B RC1
#define LCD_C RC2
#define LCD_D RC3
#define LCD_E RC4
#define LCD_F RC5
#define LCD_G RC6
#define LCD_DP RC7

我写的程序的部分.....

使用特权

评论回复
地板
Rain_King|  楼主 | 2013-7-9 22:50 | 只看该作者
求解答啊.....各位大神....

使用特权

评论回复
5
dogglove| | 2013-7-9 23:22 | 只看该作者
看你的问题啦,我编译通过啊,
这是我的编译器 HI-TECH Software\PICC-18\PRO\9.65\bin\picc18.exe

使用特权

评论回复
6
dogglove| | 2013-7-9 23:22 | 只看该作者
本帖最后由 dogglove 于 2013-7-9 23:24 编辑

看你的问题啦,我编译通过啊,
这是我的编译器 HI-TECH Software\PICC-18\PRO\9.65\bin\picc18.exe

testpic18f25k22.rar

41.59 KB

使用特权

评论回复
7
Rain_King|  楼主 | 2013-7-10 08:03 | 只看该作者
dogglove 发表于 2013-7-9 23:22
看你的问题啦,我编译通过啊,
这是我的编译器 HI-TECH Software\PICC-18\PRO\9.65\bin\picc18.exe ...

你用的是picc-18??我选这个编译器的时候,提示的问题是没有合适的芯片……

使用特权

评论回复
8
yklstudent| | 2013-7-10 18:41 | 只看该作者
看看是不是头文件引用错误了

未命名.JPG (68.02 KB )

未命名.JPG

未命名1.JPG (35.86 KB )

未命名1.JPG

使用特权

评论回复
9
Rain_King|  楼主 | 2013-7-10 20:58 | 只看该作者
dogglove 发表于 2013-7-9 23:22
看你的问题啦,我编译通过啊,
这是我的编译器 HI-TECH Software\PICC-18\PRO\9.65\bin\picc18.exe ...

我把你的下载了...也编译了...发现是可以通过的...但是我的就是不可以通过...提示上面的错误..

使用特权

评论回复
10
Rain_King|  楼主 | 2013-7-10 21:00 | 只看该作者
yklstudent 发表于 2013-7-10 18:41
看看是不是头文件引用错误了

是第一个文件....

使用特权

评论回复
11
Rain_King|  楼主 | 2013-7-10 21:09 | 只看该作者
我的代码附上吧.....


#include<pic18f25k22>

#define LCD_A RC0
#define LCD_B RC1
#define LCD_C RC2
#define LCD_D RC3
#define LCD_E RC4
#define LCD_F RC5
#define LCD_G RC6
#define LCD_DP RC7

#define LCD_1 RA0
#define LCD_2 RA1
#define LCD_3 RA2
#define LCD_4 RA3

#define uchar unsigned char
//const Display[10]={};


uchar Count=0;
void main()
{
        LCD_A=0;
        LCD_B=0;
        LCD_C=0;
        LCD_D=0;
        LCD_E=0;
        LCD_F=0;
        LCD_G=0;
        LCD_DP=0;
       
        TMR0ON=1;
        T08BIT=0;
        T0CS=1;
        T0ES=1;
        PSA=1;
       
        TMR0IE=1;
        TMR0TF=1;
       
        while(1)
        {
                switch(Count)
                {
                        case 1:
                        {
                                LCD_1=1;
                                LCD_2=0;
                                LCD_3=0;
                                LCD_4=0;
                                break;
                        }
                        case 2:
                        {
                                LCD_1=0;
                                LCD_2=1;
                                LCD_3=0;
                                LCD_4=0;
                                break;
                        }
                        case 3:
                        {
                                LCD_1=0;
                                LCD_2=0;
                                LCD_3=1;
                                LCD_4=0;
                                break;
                        }
                        case 4:
                        {
                                LCD_1=0;
                                LCD_2=0;
                                LCD_3=0;
                                LCD_4=1;
                                break;
                        }
                        default :
                        {
                                LCD_1=1;
                                LCD_2=1;
                                LCD_3=1;
                                LCD_4=1;
                        }
                }
        }
}


void interrupt ISR(void)
{
        if(TMR0TF==1&&TMR0IE)
        {
                if(Count==4)
                {
                        Count=0;
                }
                else
                {
                        ++Count;
                }
                TMR0IF=0;
        }
}





使用特权

评论回复
12
Rain_King|  楼主 | 2013-7-10 21:10 | 只看该作者
请不要纠结代码的优化和一些其他语法问题....只是在编译的时候提示脚没有定义.....这个怎么解决...

使用特权

评论回复
13
Rain_King|  楼主 | 2013-7-10 21:16 | 只看该作者
问题已经知道了....是定义出了问题...应该这样使用#define LCD_A PORTCbits.RC0

使用特权

评论回复
14
jickli| | 2016-6-8 10:21 | 只看该作者
Rain_King 发表于 2013-7-10 21:09
我的代码附上吧.....

第一行  #include<pic18f25k22>改为
#include<pic18f25k22.h>

使用特权

评论回复
15
Pace、| | 2016-11-23 09:38 | 只看该作者
Rain_King 发表于 2013-7-10 08:03
你用的是picc-18??我选这个编译器的时候,提示的问题是没有合适的芯片…… ...

我从4520换到PIC18F25K22上出现这个问题 No valid installed HI-TECH compiler drivers,你们是怎么解决的啊

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:努力学习,积极回复,只为申请版主.......

29

主题

784

帖子

4

粉丝