Khủng hoảng với chân RB5
Mình tìm hiểu PIC cũng khá lâu, nhưng ít khi thực hành với PIC (vì là dân ngoại đạo). nhưng khi làm mạch thì đụng chuyện với chân RB5, không hiểu sao chân này không lên dù với 1 code đơn giản.
Code:
Mình mua 3 con mới về thử, cũng không lên. Chắc là mạch amatuer của mình bị chạm, làm thêm cái mạch khác .........cũng không lên. Ghét quá mua cái EasyPIC về test luôn, kết quả là ........... cũng không lên, nản quá!!! Ai giúp mình giải quyết vấn đề nhức đầu này với, không chắc bỏ PIC xài con khác quá. THk cả nhà, Năm mới hạnh phúc! |
Trước tiên, bạn dùng PIC16F877A hay PIC16F887, hay là cả hai?
Code của bạn thì viết cho PIC16F877A, nhưng trong bài viết thì bạn nói đang dùng PIC16F887. Thân, |
Trích:
1.Bỏ phần __CONFIG _CP_OFF & _PWRTE_ON & _WDT_OFF &_HS_OSC trong chương trình 2.Dịch chương trình ra file HEX đặt tên là testled.hex chẳng hạn 3. Nếu bạn dùng MPLAB V8.40 thì bạn vào mục Configure chọn Configuration bits với cấu hình như sau: http://farm3.static.flickr.com/2529/...cdce00da_o.jpg Sau đó bạn vào File chọn Export http://farm5.static.flickr.com/4015/...ff9a45ca_o.jpg Ở cửa sồ hiện ra chọn File format http://farm3.static.flickr.com/2779/...afbf0464_o.jpg Rồi save file vào cùng tên file Hex mà bạn đã biên dịch (testled.hex) Và kết quả chạy ở đây: http://farm3.static.flickr.com/2519/...d7af7f72_b.jpg PS: Các bạn mới học gặp khó ban đầu dễ nản lắm đề nghị mọi người giúp đỡ tận tình nhé, càng chi tiết càng tốt (Kết quả chụp bằng HTC HD2 nhìn ngon hơn Iphone 3GS kg bà con:X) |
Tui cũng là dân amatuer mới tập tẹ làm PIC và cũng gặp vấn đề này khi cho RB và RE để điểu khiển LED 7 SEG (CATHOT common) và cũng gặp vấn đề như trên (RB5 ko set đc lên 1). Nhưng nếu cho qua 1 điện trở treo Vcc và đệm thêm 1 con NPN thì là okie (do làm mạch xong rồi... nên phải dùng giải pháp tình thế này). Chưa hiểu kỹ phần cứng lắm nhưng hiểu nôm na khi bị tình trạng này là do nó (RB5) ko có khả năng tự dâng lên 1 đc (theo kiểu cực góp thả nổi).
|
to namqn: mình s/dụng con PIC16F877A, sorry vì là dân amatuer nên tưởng 2 con đó giống nhau :).
to thanh_nam1977: botay, bài viết của bạn quá là chi tiết, hình minh họa rất sinh động, đến nỗi con EasyPIC cũng y chang của mình luôn :D, mình làm y chang theo cách bạn và kết quả là .... mạch không chạy, chắc tại mình dốt quá, cuối cùng phải làm theo cách khác, sửa code lại thành __CONFIG _CP_OFF & _PWRTE_ON & _WDT_OFF &_HS_OSC & _LVP_OFF cũng tương tự như cách bạn hướng dẫn, và kết quả là quá OK, đèn chạy sáng trưng :D, Thk bạn nhiều lắm, kết bạn nhất là câu PS: Các bạn mới học gặp khó ban đầu dễ nản lắm đề nghị mọi người giúp đỡ tận tình nhé, càng chi tiết càng tốt (Kết quả chụp bằng HTC HD2 nhìn ngon hơn Iphone 3GS kg bà con:X). Mong rằng năm mới nhà bạn nước chảy dài dài để bạn có thời gian nằm chờ nước chảy cho dân ngoại đạo học đòi chơi PIC như mình đỡ khổ :D. Nhân tiện cho mình hỏi cái _LVP_OFF có ý nghĩa gì vậy? Một lần nữa xin cám ơn và chúc cả nhà vui vẻ!!! |
Trích:
Code:
2: While in Low Voltage ICSP mode, the |
To: Thầy Nguyển Quang Nam (Học với thầy môn thí nghiệm kỹ thuật điện 1 lâu rồi, nhanh thật!)
Theo tài liệu thì PORT A của 16F877A có thể đực dùng như I/O. Về điểm này, nhiều người làm không chạy, mà những người trả lời thì cũng trả lời chung chung là do chưa đặt ADCON1 và CMCON.Xem lại datasheet thì có điều đó thật nhưng thử lại rồi vẫn không được. Code sau cực đơn giản chỉ để nhằm mục đích test cách đặt cấu hình port A, bật 2 bit RA1,RA2 lên nhưng khi chạy thì chỉ có bit RA6 sáng còn các bit khác tắt. Nhờ thầy xem hộ Code:
;======================================================= |
thank anh Nam, bài viết rất bổ ích
|
Như này thì bảo sao không khủng hoảng cơ chứ!
|
Múi giờ GMT. Hiện tại là 04:08 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