![]() |
|
![]() |
#1 |
Đệ tử 1 túi
Tham gia ngày: Oct 2007
Bài gửi: 11
: |
xuat ra leb
Hi, Minh moi hoc voi PIC, minh da mua mot con PIC6F877A va lap trinh cho out ra portB. Nhung chang hieu sao con leb o portB cha sang j het.
Cao thu chi jup. Code (Su dung CCS) #use delay(clock=4000000) //dung thach anh 4Mhz int main () { set_tris_b(0x00); output_b(0xFF); while (TRUE) { output_low (PINB_7); delay_ms (500); output_high (PINB_7); delay_ms (500); } } |
![]() |
![]() |
![]() |
#2 |
Đệ tử 6 túi
Tham gia ngày: Nov 2007
Nơi Cư Ngụ: BK TP HCM
Bài gửi: 136
: |
bạn đã dịch ra file hex chương trình mà bạn đã post chưa mình đã chép và bổ sung một số khai báo thì nó báo lỗi 2 dong này đó, bạn xem kỹ cái help trong ccs đi "output_low (PINB_7);" và "output_high (PINB_7);", code như vậy sẽ chạy nè
#include <16F877a.h> #fuses NOWDT,PUT,HS,NOPROTECT #use delay(clock=4000000) //#byte porta=0x05 #byte portb=0x06 //#byte portc=0x07 //#byte portd=0x08 //#byte porte=0x09 int8 A=0; int i; int main () { set_tris_b(0x00); output_b(0xFF); while (TRUE) { output_low (PIN_B7); delay_ms (500); output_high (PIN_B7); delay_ms (500); } } |
![]() |
![]() |
![]() |
#3 |
Đệ tử 6 túi
Tham gia ngày: Jul 2007
Bài gửi: 146
: |
có khi phải treo lên cao cổng B thông qua trở 1K lên 5V thì tốt hơn
mà riêng port B thì có thể tự treo được bằng lệnh port_b_pullups(TRUE); thì phải không biết có giúp gì được bạn ko nhể ![]()
__________________
mạch nạp - kit phát triển - linh kiện điện tử www.PNLabvn.com |
![]() |
![]() |
![]() |
#4 |
Đệ tử 1 túi
Tham gia ngày: Oct 2007
Bài gửi: 11
: |
thanks
thanks cac ban nhieu. hom nay ve se thu xem sao.
|
![]() |
![]() |
![]() |
#5 |
Đệ tử 1 túi
Tham gia ngày: Oct 2007
Bài gửi: 11
: |
PIC6f877A Xuất ra leb
Hi,mình đã sửa code và download lại nhưng con pic vẫn không hoạt động.
Mình có dùng Ohsoft simulator để test thử thì thấy code output portB chạy bình thường. Có cao thủ nào giúp mình với. Có thể port B die hoặc sai cấu hình ??? PIC die (mình đã thử với 3 con PIC16F877A đều không xuất ra được port B -- Cả 3 con PIC deu download/upload binh thuong) ??? |
![]() |
![]() |
![]() |
#6 |
Đệ tử 4 túi
Tham gia ngày: Apr 2008
Nơi Cư Ngụ: Hanoi
Bài gửi: 78
: |
Bạn có thể copy đoạn code bạn đã viết lên(nguyên vẹn nhé và chụp mạch nguyên lý của bạn lên không(Nếu không có gì bí mật).Sửa thế này thì như bói toán quá
|
![]() |
![]() |
![]() |
#7 |
Đệ tử 1 túi
Tham gia ngày: Oct 2007
Bài gửi: 11
: |
PIC6f877A Xuất ra leb
Hi
Mình chỉ mới học PIC thôi, chỉ là mạch đơn giản cấp nguồn, thạch anh 4Mhz và gắn con led với pull up resistor vào portB (làm theo sơ đồ của anh F). Mình chỉ gắn nó vào board test thôi. Code (Sử dụng CCS) #include <pic16f877a.h> #fuses NOWDT,PUT,HS,NOPROTECT,NOLPV #used delay(clock=4000000) void main () { set_tris_b(0x00); output_b(0xFF); while(TRUE) { output_low (PIN_B7); delay_ms(500); output_high (PIN_B7); delay_ms(500); } } Mình đã build và run simulator OK. Nhưng khi nap vào con PIC là không chạy. |
![]() |
![]() |
![]() |
#8 |
Đệ tử 4 túi
Tham gia ngày: Apr 2008
Nơi Cư Ngụ: Hanoi
Bài gửi: 78
: |
với code trên ok:
((((chỗ này chắc bạn nhầm :include <16f877a.h>,không có pic đằng trước ;NoLVP chứ không phải nolpv;dòng 3 use chứ không phải used)))Bạn đã dịch tốt rồi chứng tỏ lỗi này là do bạn gõ trên đây thôi nên bỏ qua. Nếu nó vẫn không chạy với code này mình đoán do kết nối phần cứng của bạn chỗ nào đó nhầm nhọt thôi. |
![]() |
![]() |
![]() |
#9 |
Đệ tử 6 túi
Tham gia ngày: Nov 2007
Nơi Cư Ngụ: BK TP HCM
Bài gửi: 136
: |
bạn dịch ra file hex có báo lỗi kô,đoạn code của bạn chỉ nhầm mỗi #include <pic16f877a.h>,dịch ra file hex kô báo lỗi nạp vô kô chạy chỉ có thể là do phần cứng,phần cứng chí cần
-chân 11,32 nối 5V -chân 12,31 nối OV -chân 13,14 thạch anh,và tụ 33p xuống mass, kô nên xài 15 hay 22p chĩ đơn giản vậy gắn trên texboard nó cũng chạy |
![]() |
![]() |
![]() |
|
|