|
Tài trợ cho PIC Vietnam |
PIC - Thiết kế và Ứng dụng Ý tưởng cho các sản phẩm sử dụng PIC/dsPIC và các sản phẩm của Microchip |
|
Ðiều Chỉnh | Xếp Bài |
|
13-05-2010, 12:56 PM | #1 |
Đệ tử 2 túi
Tham gia ngày: Feb 2010
Bài gửi: 27
: |
cần giải đáp thắc mắc gấp!mong các cao thủ giúp đỡ
em đang làm bài mạch đèn giao thông với PIC6f877a và thạch anh 20M!Dưới là sơ đồ quét led hiển thị thời gian dành cho các hướng của em.
Thuật toán của em là dùng ngắt RB0 định thì 1s để giảm biến count void ngat_ngoai() { --count; } sau đó sẽ xuất giá trị #separate void hienthi1( int x) { //int t1,t2; t1=x/10; t2=x%10; portb=0x02; porta=t1; delay_ms(5); portb=0x00; portb=0x04; porta=t2; delay_ms(5); portb=0x00; } tuy khi làm trên mô phỏng thì thời gian đếm đúng là 1s nhưgn khi vào mạch thật thì nó lại chạy nhanh hơn rất nhiều lần khiến em trong hàm ngắt phải cho đếm đến 30 mới đc gần 1s!!Có cao thủ nào có nhiều kinh nghiệm làm mạch thật mong giúp đỡ em để tuần sau em nộp btl thay đổi nội dung bởi: chuot chui, 13-05-2010 lúc 08:33 PM. |
13-05-2010, 08:23 PM | #2 | |
Đệ tử 2 túi
Tham gia ngày: Feb 2010
Bài gửi: 27
: |
Trích:
thay đổi nội dung bởi: chuot chui, 13-05-2010 lúc 08:48 PM. |
|
14-05-2010, 08:50 PM | #3 |
Đệ tử 2 túi
Tham gia ngày: Feb 2010
Bài gửi: 27
: |
mẹ cha ơi~ko ai trả lời sao!!chắc toàn cao thủ code chứ ko chịu làm mạch thật
|
14-05-2010, 11:26 PM | #4 | |
Đệ tử 4 túi
Tham gia ngày: Aug 2008
Bài gửi: 89
: |
Trích:
PIC không chạy sai theo cấu hình OSC như chỉ dẫn trong datasheet đâu, chỉ có bạn config + code không đúng thôi. Regards
__________________
Quang báo RG/RGB 6/8/12/16 bits màu Phone No: 0905.034.086 Email: lmquyen@gmail.com |
|
15-05-2010, 01:09 AM | #5 | |
Đệ tử 2 túi
Tham gia ngày: Feb 2010
Bài gửi: 27
: |
Trích:
em chẳng có ý gì xấc xược đâu! chỉ nghĩ là các bác chưa bao h gặp qua cái lỗi này nên ko ai trả lời thôi |
|
15-05-2010, 03:19 PM | #6 |
Đệ tử 2 túi
Tham gia ngày: Feb 2010
Bài gửi: 27
: |
|
15-05-2010, 01:16 AM | #7 |
Đệ tử 2 túi
Tham gia ngày: Feb 2010
Bài gửi: 27
: |
đây là code modul em đã test mạch!trong này em đã chỉnh lại cho mo fỏng đúng 1s (như lí thuyết em nghĩ) nhưng trong thực tế thì nó chỉ là 1/30s!em không hiểu chỗ này mong các bác chỉ giáo cho!
|
15-05-2010, 09:44 AM | #8 |
Đệ tử 2 túi
Tham gia ngày: Feb 2010
Bài gửi: 27
: |
bác ơi!em tính toán đúng 1s dùng timer1 mà vẫn thế bác ạ!vì em cho thử nháy led thì vẫn đúng 1s mà!code em để trên là đang dùng ngắt ngoài RB0 do chân SOUT của DS1307 tạo xung 1HZ!nhưng vào mạch thật thì lại sai khác!các bác có thể xem hộ em phâng quét led có chỗ nào trục trặc không mà sai thế !
thanks! |
15-05-2010, 10:29 AM | #9 | ||
...Damned...
Tham gia ngày: Apr 2006
Nơi Cư Ngụ: Hồ Chí Minh
Bài gửi: 522
: |
Mô phỏng proteus ko thể thể hiện được thời gian thực hiện lệnh của PIC. Tức là proteus thực hiện 1 lệnh có thể nhanh hơn hoặc chậm hơn so với PIC.
Do đó Trích:
Để người khác có thể giúp bạn được thì bạn cần cung cấp thông tin nhiều nhất có thể. Thử nghĩ bạn có mạch có code còn ko làm nó chạy được thì người khác chỉ nghe bạn mô tả: Trích:
Các bạn mới tham gia chịu khó đọc thread bên dưới chữ ký của mình một lần để biết cách đặt câu hỏi! |
||
15-05-2010, 03:13 PM | #10 | |
Đệ tử 2 túi
Tham gia ngày: Feb 2010
Bài gửi: 27
: |
Trích:
Vậy em xin bác nào đã từng chạy quét led mạch thật mà chạy đúng 1s cho em xin cái code và mạch để em so sánh!! Vấn đề của em hiện tại là chưa hiểu qued led theo đúng 1s thì chịu ảnh hưởng của cái gì và khi sử dụng ngắt 1s thì sử dụng như thế nào cho nó đúng! Theo lời bác bien_van_khat nói thì mô phỏng có thể thực hiện thời gian chênh lệch so với của pic nhưng vào trường hợp của em thì em thấy như vậy thì chênh lệch quá lớn!!???liệu có đúng ko?? |
|
16-05-2010, 12:56 AM | #11 |
Đệ tử 2 túi
Tham gia ngày: Mar 2007
Bài gửi: 44
: |
Ừh, xin lỗi bạn, mình dùng PIC khác nên nhầm. Bạn bỏ QUOTE cái đoạn nhầm đó của mình nhé,
Thank. Chúc bạn sớm tìm ra nguyên nhân. |
16-05-2010, 01:11 AM | #12 |
Đệ tử 2 túi
Tham gia ngày: Feb 2010
Bài gửi: 27
: |
cảm ơn bác!!em biết cái lỗi này nghe chừng cũng vô lí!nó còn hài hước hơn khi sau vài ngày ko sửa code mà mạch lại chạy đúng đc!em cũng đến pó tay cái vụ này!
Thôi nhân tiện đây được trao đổi với các tiền bối đi trước,bây h em thấy mình gà quá lí thuyết với mạch thực tế thật cần nhiều hiểu biết hơn là đơn giản chỉ ngồi code và mô phỏng!thế nên không biết các bác có nhã hứng thử post một số chương trình của mình và kể một số lỗi gặp khi làm mạch thật để coi đó là kinh nghiệm cho đàn em sau này không?? |
17-05-2010, 04:13 PM | #13 | |
Đệ tử 4 túi
Tham gia ngày: Aug 2008
Bài gửi: 89
: |
Trích:
Code:
setup_timer_1(T1_INTERNAL||T1_DIV_BY_8); Regards
__________________
Quang báo RG/RGB 6/8/12/16 bits màu Phone No: 0905.034.086 Email: lmquyen@gmail.com |
|
17-05-2010, 04:28 PM | #14 | |
Đệ tử 2 túi
Tham gia ngày: Feb 2010
Bài gửi: 27
: |
Trích:
Tiện thể em xin hỏi các bác :hiện nay như mạch em đưa ở trên thì em điều khiển hiển thị led 7 thanh từ port b thông qua 1 con tran C828 và điện trở 10k giảm dòng.Tuy nhiên em chỉ hiển thị được các số từ 1 đến 9 mà thiếu mất số 0@em đo điện áp khi cho hiển thị 0 thì dòng của tran quá bé ! em không biết bây h thay đổi nội dung bởi: chuot chui, 18-05-2010 lúc 02:24 AM. |
|
17-05-2010, 03:18 PM | #15 |
Đệ tử 2 túi
Tham gia ngày: Feb 2010
Bài gửi: 27
: |
chán quá!cái trên thì thôi em khắc phục đc cho đếm đúng 1 s!nhưng h cái code kia nạp vào mạch của em lại không hiện số 0 ở led 7 đoạn dù các số từ 1==>9 vẫn hiện rõ nét!các bác thử cho em ý tưởng gì về lỗi này không?
|
|
|