PDA

View Full Version : Lỗi #device PIC6F877A?


thuongtin
01-12-2008, 10:02 PM
Khi biên dịch chuơng trình ra file hex,mình bị lỗi nhay cỗ khai báo thư viện nhưng không biết sửa sao,mong các bạn giúp đỡ:
#device PIC16F877A
***Error "C:\Program\PICC\device\16f877a.h"
Và còn 3 lỗi nữa : long_CCP1
long_CCP2
Đây là chuơng trình khi biên dịch file hex:

vrc
02-12-2008, 12:04 AM
Trong file header 16f877a.h đã có dòng khai báo:
#device PIC16F877A
Nếu bạn đã include file header này vào rồi thì không nên khai báo lại #device PIC16F877A nữa, hãy xóa dòng này đi và biên dịch lại.
Chúc bạn thành công.

vrc
02-12-2008, 12:09 AM
Còn các lỗi long_CCP!, long_CCP2 thì mình không hiểu bạn định nói gì. Thế này nhé, bạn hãy post mã nguồn và các thông báo lỗi cụ thể lên, để mọi người biết rõ hơn thì mới có thể giúp đỡ bạn được.

ketxanh
02-12-2008, 09:05 AM
Khi biên dịch chuơng trình ra file hex,mình bị lỗi nhay cỗ khai báo thư viện nhưng không biết sửa sao,mong các bạn giúp đỡ:
#device PIC16F877A
***Error "C:\Program\PICC\device\16f877a.h"
Và còn 3 lỗi nữa : long_CCP1
long_CCP2
Đây là chuơng trình khi biên dịch file hex:

sao bạn không đưa chương trình bạn viết lên luôn cho mọi người thấy mới biết được chứ. Bạn đưa lên có Flile thư viện (file header) không thi sao anh em hiểu được

thuongtin
02-12-2008, 10:04 AM
Đây là chuơng trình mã nguồn của mình.

vrc
03-12-2008, 12:49 PM
Mình xem sơ qua chương trình của bạn rồi. Bạn háy thay 2 dòng
#include<16F877A.h>
#include<def_16f877a.h>
bằng 1 dòng này thôi:
#include<16f877a.h>

Mình cũng là người mới học PIC thôi, nhưng mình có nhận xét thế này, bạn đừng buồn nhé! Bạn dùng các định danh tùy tiện quá. Ví dụ nhé:
+ Lúc nào dùng 16F877A.h, lúc thì bạn dùng 16F877a.h. bạn nên xem lại tên file trong thư mục device
+ Bạn nên dùng PORTA.1 thay cho porta.1,...

Bạn nên xem lại các file header để học hỏi thêm.

ITfire
08-02-2009, 11:08 AM
chào các bác.Em viết 1 đoạn code nhỏ cho xuất nhập PIC6F877 như sau:(file đính kèm).NHƯng báo lỗi#device. Mong mấy bác giúp em.
#include "E:\THUMUCCAI\DIEN_TU\LTforPIC\PICC\Examples\blengk ing8led.h"
#include <16F877A.h>
#fuses XT,NOWDT,NOLVP,NOPROTECT
#use delay(clock=20000000)

#define status=10100000B;

void main()
{
set_tris_b=0x00;
while(1)
{
output_b=0xFF;
delay_ms(1000);
output_b=0x00;
delay_ms(1000);
}
}