2

我是一个尝试学习 PIC 的新手,我下载了 MPLAB 和 MPLAB X IDE。我已经这样做了大约 100 次,并且在问这个问题之前已经浏览了足够多的网页,但是我的代码没有编译并且它总是失败。

这是我所做的:

  1. 使用项目向导创建了一个新项目,
  2. 编辑了代码,
  3. 复制16F871.H两个文件夹中的库头文件(我在其中创建了项目)并将其添加到 MPLAB IDE 的头文件中。

这是我的代码:

// IFIN.C Tests an input
#include " 16F877A.h "
void main()
{
    int x; // Declare variable
    output_D(0); // Clear all outputs
    while(1) //
    {
        x = input(PIN_C0); // Get input state
        if(x = = 1)
            output_high(PIN_D0); // Change output
    }
}

但是在编译代码时,我收到以下错误:

Executing:
"C:\Program Files\PICC\Ccsc.exe" +FM "NEW.c" #__DEBUG=1 +ICD +DF +LN
+T +A +M +Z +Y=9 +EA  #__16F877A=TRUE

*** Error 18 "NEW.c" Line 2(10,23): File can not be opened
    Not in project "C:\Users\jatin\Desktop\DHAKKAN PIC\ 16F877A.h "
    Not in "C:\Program Files\PICC\devices\ 16F877A.h "
    Not in "C:\Program Files\PICC\drivers\ 16F877A.h "
*** Error 128 "NEW.c" Line 2(10,17): A #DEVICE required before this line
*** Error 12 "NEW.c" Line 6(9,10): Undefined identifier  -- output_D
*** Error 12 "NEW.c" Line 9(10,11): Undefined identifier  -- input
*** Error 51 "NEW.c" Line 10(8,9): A numeric expression must appear here

      5 Errors,  0 Warnings. Build Failed. Halting build on first failure as requested. 
BUILD FAILED: Mon Jul 08 15:09:17 2013

如果你能帮助我,我将不胜感激。

4

1 回答 1

4

没有找到头文件的错误是头文件名中有多余的空格。换句话说,这:

#include " 16F877A.h "

应该:

#include "16F877A.h"

其他错误可能是由此造成的,一旦正确包含标题就会消失。

请注意,编译器实际上将字符串内部""<>作为头文件的文件名,并且不会为您修剪空格。

于 2013-07-08T11:53:38.513 回答