PIC Vietnam

Go Back   PIC Vietnam > Microchip PIC > Cơ bản về vi điều khiển và PIC

Tài trợ cho PIC Vietnam
Trang chủ Đăng Kí Hỏi/Ðáp Thành Viên Lịch Bài Trong Ngày Vi điều khiển

Cơ bản về vi điều khiển và PIC Những bài hướng dẫn cơ bản nhất để làm quen với vi điều khiển PIC

 
 
Ðiều Chỉnh Xếp Bài
Prev Previous Post   Next Post Next
Old 04-06-2012, 10:12 PM   #2
JackSanji
Đệ tử 1 túi
 
Tham gia ngày: Feb 2012
Bài gửi: 13
:
Talking

Trích:
Nguyên văn bởi JackSanji View Post
Chào các anh chị. Em đang làm bài tập lớn đề tài điều khiển quạt, có chút thắc mắc muốn nhờ mọi người giúp đỡ đó là :
em muốn điều khiển động cơ phụ thuộc vào nhiệt độ t đọc đc từ LM35.nhiêt độ hiển thị trên led 7 đoạn, và thời gian thực hiển thị trên LCD. Nếu t>40 thì bắt đầu quay, tốc độ tăng dần khi nhiệt độ tăng và động cơ đạt tốc độ max khi t>=60 độ.

Code:
t=(float)read_adc();              //update nhiet do
      t=t*100/204;
      if((t>0)&&(t<40)) {duty=0;};
     if((t>=60)&&(t<=99)) {duty=624;};
      if((t>=40)&&(t<60)) {duty=((t-40)*15+312);};
vấn đề của em là khi mô phỏng bằng proteus thì khi tăng lm35 lên >=60 độ thì mạch ok, còn khi dưới 60 độ thì thời gian thực trên LCD chạy không đúng nữa, có khi phải đến 3 hay 4s thì mới nhảy đc lên 1s. em nghĩ cái này có thể xung đột với thời gian update từ DS1307 lên LCD, nhưng chưa biết lỗi ở đâu.
em gửi sơ đồ mô phỏng Proteus để mọi người xem giúp e với ạ.
thanks mọi người nhiều!
đã giải quyết đc vấn đề.
__________________
Tất cả vì tương lai con em chúng ta!
JackSanji vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
 


Quyền Sử Dụng Ở Diễn Ðàn
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is Mở
Smilies đang Mở
[IMG] đang Mở
HTML đang Tắt

Chuyển đến


Múi giờ GMT. Hiện tại là 03:06 PM.


Được sáng lập bởi Đoàn Hiệp
Powered by vBulletin®
Page copy protected against web site content infringement by Copyscape
Copyright © PIC Vietnam