PIC Vietnam

PIC Vietnam (http://www.picvietnam.com/forum/index.php)
-   Các ngôn ngữ lập trình khác (CCS C, HT PIC,...) (http://www.picvietnam.com/forum/forumdisplay.php?f=12)
-   -   Lỗi khai báo #include <def_877a.h> (http://www.picvietnam.com/forum/showthread.php?t=3103)

manhdktd 14-06-2010 09:54 AM

Trích:

Nguyên văn bởi leduykha (Post 20391)
Các anh ơi, em học theo tài liệu TUT01.01.PVN của anh (Bác) Nguyễn Chí Linh, có đoạn chương trình sau:

//================================================
#include <16f877a.h>
#include <def_877a.h>
#device *=16 ADC=8
#FUSES NOWDT, HS, NOPUT, NOPROTECT, NODEBUG, NOBROWNOUT, NOLVP, NOCPD, NOWRT
#use delay(clock=20000000)

void main()
{
TRISB = 0x00;
PORTB = 0xFF;
While(1)
{
PORTB = 0;
delay_ms(250);
PORTB = 0xFF;
delay_ms(250);
}
}

Khi em biên dịch thì báo lỗi:

"File can not opened
Not in "C:\Program Files\PICC\devices\def_877a.h"
Not in "C:\Program Files\PICC\drivers\def_877a.h"
Not in local "C:\khahahah\def_877a.h"
1 Errors, 0 Warnings "[/I]


Lỗi đó tại sao vậy các anh?
Anh nào giúp em với!! Cảm ơn nhiều lắm.

Nếu cậu dùng câu lệnh PORT=0 thi cậu phải khai báo sử dụng PORTB chứ không thì sẽ không sử dụng được.mình đã thử rồi.
#byte PORTB=0x06
sau đó thì cậu dùng PORTB=0 mới được

manhdktd 14-06-2010 09:59 AM

Trích:

Nguyên văn bởi trung297 (Post 34524)
đoạn code của báccNguyễn Chí Linhcem đã chỉnh được lỗi ở def_877a.h. Nhưng chạy ra nó lại báo lỗi ở TRIS B: undefined identifier,bác nào giúp em với

bác định nghĩa sử dụng PORTB ở địa chỉ 0x06 chắc là chạy được thôi.
sử dụng set_tris_b

toan86 10-12-2010 12:44 AM

thanks cái thu viện của bạn nhé

chimcon 07-01-2011 09:26 PM

các ban ai có file16f877a.h cho mình xin.
natien55@yahoo.com

khuongtdh52 15-01-2011 11:04 AM

Trích:

Nguyên văn bởi leduykha (Post 20391)
Các anh ơi, em học theo tài liệu TUT01.01.PVN của anh (Bác) Nguyễn Chí Linh, có đoạn chương trình sau:

//================================================
#include <16f877a.h>
#include <def_877a.h>
#device *=16 ADC=8
#FUSES NOWDT, HS, NOPUT, NOPROTECT, NODEBUG, NOBROWNOUT, NOLVP, NOCPD, NOWRT
#use delay(clock=20000000)

void main()
{
TRISB = 0x00;
PORTB = 0xFF;
While(1)
{
PORTB = 0;
delay_ms(250);
PORTB = 0xFF;
delay_ms(250);
}
}

Khi em biên dịch thì báo lỗi:

"File can not opened
Not in "C:\Program Files\PICC\devices\def_877a.h"
Not in "C:\Program Files\PICC\drivers\def_877a.h"
Not in local "C:\khahahah\def_877a.h"
1 Errors, 0 Warnings "[/I]


Lỗi đó tại sao vậy các anh?
Anh nào giúp em với!! Cảm ơn nhiều lắm.

bạn tải file "def_877a.h " về sau đó copy nó vào thư mục cài đặt mặc định :C:\Program Files\PICC\Devices là oki ^^
mặc đinh khai báo : #include <def_877a.h>
ko up dc đành dùng qua mediafire : http://www.mediafire.com/?addqpo933umpycs
Thân !

toan258252 23-02-2012 12:12 AM

Trích:

Nguyên văn bởi khuongtdh52 (Post 41527)
bạn tải file "def_877a.h " về sau đó copy nó vào thư mục cài đặt mặc định :C:\Program Files\PICC\Devices là oki ^^
mặc đinh khai báo : #include <def_877a.h>
ko up dc đành dùng qua mediafire : http://www.mediafire.com/?addqpo933umpycs
Thân !

rất cảm ơn bác.em đang điên vì nó mà mãi không biết giải quyết ra sao.tiện đây hỏi bác cái vấn đề tạo thư viện cho nó kiểu j vậy nhỉ.em cũng là một con gà nữa học không có thầy,tự học nên nhiều vấn đề khúc mắc quá mà không biết nên hỏi như thế nào cho các bác hiểu mà giúp đỡ nữa..hixx...

dangthihang 18-03-2012 07:49 PM

cau down 2 file def877a.h va lcd_lib_4bit.c sau do copy 2 file nay vao device trong PICC ay. minh cung bi loi nay va thu lai đựoc rồi.

dangthihang 18-03-2012 07:52 PM

có cậu nào hướng dẫn cho mình mấy cái timer với , mình đang học về PIC mà thấy vất vả quá , tìm mà chẳng thấy có bài nào hoàn chỉnh cả. Thanks mọi nguời nhiều!

Duynguyen205 29-07-2012 04:04 PM

bác nào cho em hỏi cái. Em có viết 1 đoạn code của bác Linh chạy thử nhưng mà nó báo lỗi hoài.
còn đây là code chương trình

//================================================
#include <16f877a.h>
#include <def_877a.h>
#device *=16 ADC=8
#FUSES NOWDT, HS, NOPUT, NOPROTECT, NODEBUG, NOBROWNOUT, NOLVP, NOCPD, NOWRT
#use delay(clock=20000000)

void main()
{
TRISB = 0x00;
PORTB = 0xFF;
While(1)
{
PORTB = 0;
delay_ms(250);
PORTB = 0xFF;
delay_ms(250);
}
}
khi biên dịch nó báo lỗi này mà em ko biết xử lí tn. Mong các bác giúp em.

"eross 128'' C.\program file\PICC\devices\def_f877a.h" Line 7(2,6) A #DEVICE required before this line.


line 7 : #byte INDF =0x00 ( trong file def_877a.h)

toancdt 30-07-2012 09:48 AM

Trích:

Nguyên văn bởi Duynguyen205 (Post 76405)
bác nào cho em hỏi cái. Em có viết 1 đoạn code của bác Linh chạy thử nhưng mà nó báo lỗi hoài.
còn đây là code chương trình

//================================================
#include <16f877a.h>
#include <def_877a.h>
#device *=16 ADC=8
#FUSES NOWDT, HS, NOPUT, NOPROTECT, NODEBUG, NOBROWNOUT, NOLVP, NOCPD, NOWRT
#use delay(clock=20000000)

void main()
{
TRISB = 0x00;
PORTB = 0xFF;
While(1)
{
PORTB = 0;
delay_ms(250);
PORTB = 0xFF;
delay_ms(250);
}
}
khi biên dịch nó báo lỗi này mà em ko biết xử lí tn. Mong các bác giúp em.

"eross 128'' C.\program file\PICC\devices\def_f877a.h" Line 7(2,6) A #DEVICE required before this line.


line 7 : #byte INDF =0x00 ( trong file def_877a.h)

bạn khai báo #include <def_877a.h> nhưng sao báo lỗi lại là def_f877a.h, bạn xem lại tên coi đúng chưa?

Duynguyen205 30-07-2012 09:52 AM

vâng em viết nhầm nó báo lỗi trong thư viện def_877a.h. Các chương trình khác nó cũng bị lỗi vậy anh à. em ko biết sửa thế nào cả. anh sửa giúp e với.

toancdt 30-07-2012 11:36 AM

Trích:

Nguyên văn bởi Duynguyen205 (Post 76414)
vâng em viết nhầm nó báo lỗi trong thư viện def_877a.h. Các chương trình khác nó cũng bị lỗi vậy anh à. em ko biết sửa thế nào cả. anh sửa giúp e với.

có thể trong file def có một số thanh ghi chưa được định nghĩa, bạn sửa lại chỗ TRISB thành set_tris_b xem được không?

Duynguyen205 30-07-2012 02:31 PM

Anh Toàn à. Chả biết lỗi gì em sửa linh tinh thế lại được.
Đây là code của em nè.
#include<16f877a.h>
#include<def_877a.h>
#device *=16, ADC=8
#use delay(clock=20M)
#fuses NOWDT, HS, NOPUT, NOPROTECT, NODEBUG, NOBROWNOUT, NOLVP, NOCPD, NOWRT
#use fast_io(b) // cau hinh port b la potr vao ra co ban

#use delay(clock=20000000)

void main()
{

setup_adc_ports(NO_ANALOGS);
setup_adc(ADC_CLOCK_DIV_2);
setup_psp(PSP_DISABLED);
setup_spi(SPI_SS_DISABLED);
setup_timer_0(RTCC_INTERNAL|RTCC_DIV_1);
setup_timer_1(T1_DISABLED);
setup_timer_2(T2_DISABLED,0,1);
//setup_comparator(NC_NC_NC_NC);
//setup_vref(FALSE);

// TODO: USER CODE!!
PORTB = 0x00;
PORTB=0xff;
while(1)
{
PORTB=0;
delay_ms(200);
PORTB=0xff;
delay_ms(200);
}

}

Duynguyen205 30-07-2012 02:33 PM

Nếu em sửa Set_tris_b ý nó báo là too many nested #include ko biết dịch thế nào nữa.

À anh cho em hỏi luôn. 2 thanh ghi PORB= 0x00 và thanh ghi set_tris_b = 0x00. Nó khác

nhau thế nào, cách sử dụng của chúng khác nhau ra làm sao ý, em ko hiểu lắm. Mong anh giải thích dùm em.

toancdt 30-07-2012 02:35 PM

Trích:

Nguyên văn bởi Duynguyen205 (Post 76517)
Anh Toàn à. Chả biết lỗi gì em sửa linh tinh thế lại được.
Đây là code của em nè.
#include<def_877a.h>
#device *=16, ADC=8
#use delay(clock=20M)
#fuses NOWDT, HS, NOPUT, NOPROTECT, NODEBUG, NOBROWNOUT, NOLVP, NOCPD, NOWRT
#use fast_io(b) // cau hinh port b la potr vao ra co ban

#use delay(clock=20000000)

void main()
{

setup_adc_ports(NO_ANALOGS);
setup_adc(ADC_CLOCK_DIV_2);
setup_psp(PSP_DISABLED);
setup_spi(SPI_SS_DISABLED);
setup_timer_0(RTCC_INTERNAL|RTCC_DIV_1);
setup_timer_1(T1_DISABLED);
setup_timer_2(T2_DISABLED,0,1);
//setup_comparator(NC_NC_NC_NC);
//setup_vref(FALSE);

// TODO: USER CODE!!
PORTB = 0x00;
PORTB=0xff;
while(1)
{
PORTB=0;
delay_ms(200);
PORTB=0xff;
delay_ms(200);
}

}

bạn add nick yahoo trao đổi cho tiện toan_cdt09a


Múi giờ GMT. Hiện tại là 07:04 AM.

Tên diễn đàn: vBulletin Version 3.8.11
Được sáng lập bởi Đoàn Hiệp.
Copyright © PIC Vietnam