![]() |
|
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 |
![]() |
#1 |
Nhập môn đệ tử
Tham gia ngày: Mar 2009
Bài gửi: 3
: |
Mạch mô phỏng đèn giao thông viết bằng CCS C!!
Chào các bạn,mình đang thực hiện 1 đèn giao thông điều khiển bằng 16F877A,đang trong giai đoạn viết code,khi thực hiện mô phỏng trên proteus thì gặp các vấn đề sau mà không giải quyết được,mong các bạn giúp đỡ:
-Khi mô phỏng thì CPU load 100% nên thời gian trên proteus chạy rất chậm,mình không biết có bị tràn vòng lặp chỗ nào không. -Khi mình set thời gian đèn sáng chỉ là 1s thì sau đến 4s(thời gian trong proteus) đèn mới chuyển chế độ (set 10s thì 40s mới chuyển). -Mình quét led 2ms đèn led nó cứ nhảy lung tung,mắt mình vẫn nhìn thấy led nó nháy(cái này thì mình tìm hiểu thì nghe bảo proteus không mô phỏng được cái quét led này,không biết có đúng ko). Mình gửi kèm file mô phỏng và code dưới đây. PS:Có bạn nào biết nguyên tắc hoạt động của cái đèn rẽ trái không vậy??Mình cần thêm cái này vào nữa. |
![]() |
![]() |
![]() |
#2 |
Đệ tử 6 túi
Tham gia ngày: Oct 2008
Nơi Cư Ngụ: HCM
Bài gửi: 137
: |
Làm mạch thật đi bạn!
__________________
A&A |
![]() |
![]() |
![]() |
#3 |
Đệ tử 4 túi
Tham gia ngày: Oct 2008
Bài gửi: 71
: |
minh nho la co mot chuong trinh mo phong den giao thong hoan thien ,co ca code lun,hinh nhu la minh down ben dien dan dientuvietnam.net
ban can thi lien he voi minh:ramromct@yahoo.com / tienchuanct@gmail.com minh dang o quan NET nen khong co san,thong cam ha! |
![]() |
![]() |
![]() |
#4 |
Nhập môn đệ tử
Tham gia ngày: Mar 2009
Bài gửi: 3
: |
Cảm ơn bạn,nhưng mình không tìm mạch đèn giao thông hoàn chỉnh,mình chỉ muốn tìm hiểu thử xem cái code với cái mô phỏng của mình có bị sai chỗ nào không mà nó có 1 số chỗ không như mong muốn như trên thôi.Thx for reply ^^!
|
![]() |
![]() |
![]() |
#5 |
Đệ tử 7 túi
Tham gia ngày: Aug 2007
Bài gửi: 213
: |
Tui nghĩ cái chậm này là do bạn chưa chỉnh cái tần số trong proteus cho đúng với tần số khai báo trong code.Và t đã chỉnh lại code của bạn để thấy các số ró hơn rồi nhưng cũng chưa thật sự hiểu ý đồ của bạn trong mạch này,t chỉ thấy các số đêm 0,1,2 gì đó thôi hà.Bạn nói rõ hơn về cái ý tưởng đi
|
![]() |
![]() |
![]() |
#6 |
Nhập môn đệ tử
Tham gia ngày: Mar 2009
Bài gửi: 3
: |
Chỉnh cái tần số trong proteus như thế nào vậy bạn.Còn cái thời gian là thời gian của cái đèn giao thông đó,bạn vào trong code chỉnh lại xanh1=15s vang1=3s trong hàm main là giống như đèn giao thông bình thường thôi mà.
. |
![]() |
![]() |
![]() |
#7 |
Đệ tử 7 túi
Tham gia ngày: Aug 2007
Bài gửi: 213
: |
Khi nạp file hex cho vi điều khiển,dưới cái ô để dẫn tới file hex còn có ô tần số.bạn chỉnh ở ngay đó
|
![]() |
![]() |
![]() |
#8 |
Đệ tử 1 túi
Tham gia ngày: Nov 2007
Bài gửi: 16
: |
proterus mô phỏng ở tốc độ thấp cho tương thích mọi máy, chỉnh nhanh wa máy yếu dễ treo lắm đó. thg này tương đối thôi, làm mạch nó khác 1 trời 1 vực... ráp test bo là tốt nhất.
|
![]() |
![]() |
![]() |
#9 |
Đệ tử 1 túi
Tham gia ngày: Aug 2006
Bài gửi: 24
: |
Hi ngochieubmt :
Mình đã đọc bảng proteur cảu bạn, mình có nhận xét thế này : - Bạn dùng 01 PIC để vừa xuất tín hiệu cho đèn THGT và cả đèn đếm số (lưu ý ở đây là đếm lùi) là không phù hợp với thực tế. Theo mình bạn nên làm thế này : - Dùng 01 PIC (gọi là P1) để xuất ra tín hiệu Xanh - Vàng - Đỏ (nếu làm mô hình thử thì chỉ cần làm 01 xuất tuyến là được rồi, lưu ý trong thực tế có ít nhất 02 xuất tuyến và có cả đèn xanh đi bộ-đoe đi bộ nữa) - Dùng 01 PIC (gọi là P2) khác để nhận tín hiệu Xanh-Vàng-Đỏ từ P1 (đếm khoảng thời gian thực tế của Xanh-Vàng-Đỏ) sau đó lưu vào bộ nhớ của P2 trong 01 chu kỳ Xanh-Vàng-Đỏ đầu tiên (Khi mới khởi động chu kỳ đầu ko xuất tín hiệu đếm), đến chu kỳ thứ hai trở lên thì xuất tín hiệu đếm lùi khi ra 02 LEd 7 đoạn khi có tín hiệu của đèn Xanh hoặc Vàng hoặc Đỏ. Từ cơ sở này bạn mới có thể hoàn thiện một mạch tín hiệu giao thông gần giống với thực tế được. Chúc thành công |
![]() |
![]() |
![]() |
#10 | |
Đệ tử 6 túi
Tham gia ngày: Oct 2008
Nơi Cư Ngụ: HCM
Bài gửi: 137
: |
Trích:
__________________
A&A |
|
![]() |
![]() |
![]() |
#11 |
Đệ tử 1 túi
Tham gia ngày: Aug 2006
Bài gửi: 24
: |
Chào lequocbao!
Vấn đề mình nói không phải là làm được hay không được, ý mình ở đây là làm mô hình hệ thống đèn THGT cho giống với thực tế. Ở trong thực tế thì bạn sẽ thấy hệ thống có 1 tủ điều khiển đèn THGT (thường thì người ta dùng PLC để lập trình điều khiển còn trong demo của chúng ta mình đã đề nghị dùng 01 con PIC (gọi là P1) để thay cho tủ điều khiển). Kế đến tín hiệu đến các trụ đèn là tín hiệu Xanh-Vàng-Đỏ và dây chung (ngoài ra còn có tín hiệu đèn đi bộ Xanh-Đỏ mà ở đây mình không cần xét đến), do đặt thù như vậy mà khi thiết kế thì bộ đếm lùi phải được tách riêng hoàn toàn và phải chạy dựa trên 3 tín hiệu Xanh-Vàng-Đỏ đưa đến từng trụ. Do đó phương án sẽ là : - Dùng 01 PIC (gọi là P2) khác để nhận tín hiệu Xanh-Vàng-Đỏ từ P1 (đếm khoảng thời gian thực tế của Xanh-Vàng-Đỏ) sau đó lưu vào bộ nhớ của P2 trong 01 chu kỳ Xanh-Vàng-Đỏ đầu tiên (Khi mới khởi động chu kỳ đầu ko xuất tín hiệu đếm), đến chu kỳ thứ hai trở lên thì xuất tín hiệu đếm lùi khi ra 02 LEd 7 đoạn khi có tín hiệu của đèn Xanh hoặc Vàng hoặc Đỏ. Làm đựơc như vậy thì khi ứng dụng vào thực tế sẽ bớt bỡ ngỡ hơn. Thân chào. Chúc một ngày vui! |
![]() |
![]() |
![]() |
#12 |
Nhập môn đệ tử
Tham gia ngày: May 2009
Bài gửi: 3
: |
đối với proteus thì bạn nên delay khoảng 40 đến 50ms. chứ bạn delay 2ms thì proteus sẽ không mô phỏng được. khi cho delay_ms(40) thi ta thấy nó hơi nhấp nháy. Còn đối với mạch thật thì nên delay khoảng 4-5ms, nếu nhanh quá thì sẽ để lại bóng mờ.
|
![]() |
![]() |
![]() |
#13 |
Nhập môn đệ tử
Tham gia ngày: Mar 2009
Bài gửi: 1
: |
xin loi vi dg tham vao do an hoc phan nen ko thoi pót bai nhung mih cam thay mach cua ban lam rat tot
|
![]() |
![]() |
![]() |
#14 |
Nhập môn đệ tử
Tham gia ngày: Sep 2009
Bài gửi: 1
: |
ban nao co mach mo phong den giao thong bang proteus gui cho minh vi minh dang lam den giao thong bang pic 16f877 vua moi hoc nen thay kho wa
|
![]() |
![]() |
![]() |
#15 |
Nhập môn đệ tử
|
bạn dclick vào con pic trên mạch protus, chỉnh lại tần số cho nó là 20M hoặc 10M bạn se thấy khác liền. Lúc mô phỏng protus thì bạn nên để ý tần số thạch anh trong chương trình khai báo, tần số con thạch anh trong mạch và tần số trong con pic, mình đã thử làm rồi. do nó chỉ là chương trình mô phỏng nên có lúc nó chạy đúng nhưng mạch thực tế chạy ko đúng(nhất là phần hiển thị LCD đó). Nếu có điều kiện bạn làm test boar là tốt nhất sử dụng chế độ nạp ICSP cho pic cho tiện chỉnh sữa nạp chương trình test pic luôn
|
![]() |
![]() |
![]() |
|
|