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

Trả lời
 
Ðiều Chỉnh Xếp Bài
Old 20-07-2012, 12:32 PM   #1
exellence
Nhập môn đệ tử
 
Tham gia ngày: Mar 2011
Bài gửi: 7
:
TẠO xung Vuông 50hz bằng PWM

em muỐn tạo xung vuông 50hz bằng pwm dùng pic16f877a. mà ko biết tạo kiểu gì tại cái timer2 có 8bit. các bác giúp em với
exellence vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 20-07-2012, 01:55 PM   #2
toancdt
Đệ tử 2 túi
 
toancdt's Avatar
 
Tham gia ngày: Apr 2011
Bài gửi: 31
:
Send a message via Yahoo to toancdt
Trích:
Nguyên văn bởi exellence View Post
em muỐn tạo xung vuông 50hz bằng pwm dùng pic16f877a. mà ko biết tạo kiểu gì tại cái timer2 có 8bit. các bác giúp em với
bạn muốn điều khiển rc servo hay gì mà tạo xung 50hz
toancdt vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 23-07-2012, 11:25 PM   #3
nhanh0112
Đệ tử 4 túi
 
Tham gia ngày: May 2007
Bài gửi: 81
:
Góp ý nhỏ một chút, hy vọng giúp đc bạn!
Trường hợp tạo với PWM với tần số (f) thấp. bạn có thể tái tạo từ một PWM tần số cao.
Ví dụ T của PWM bạn tạo ra là 1ms (tương ứng f=1kHz)
như vậy timer2 sẽ tạo ra ngắt sau mỗi 1ms
Trong ngắt timer2 ta sẽ tạo 1 biến đếm:
50Hz -> 20ms vậy cứ 10ms ta sẽ có 1 side
10 x 1ms=10ms
+ nếu <=10 thì set duty = 100% (high side)
+ nếu >10 thì set duty = 0% (low side)
+ nếu >20 thì =0

Một ví dụ điển hình là vậy, nếu bạn chọn tần số của PWM khác thì bạn chọn biến đếm cho phù hợp, sao cho tổng T(out)=T(PWM) x biến đếm.
Cá nhân tôi cảm thấy dùng cách này thì xung ra ổn định hơn so với việc dùng timer để đẩy 1 chân bất kỳ nào đó lên hay xuống (dù sao thì nó cũng là hard PWM) và tránh bị các tác vụ khác xen kẽ (với nhưng chương trình dài) làm xung bị sai số.
Đó là cách nghĩ của tui (cũng đã từng làm để điều chế RC mà), bạn có thể tham khảo.
nhanh0112 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 24-07-2012, 09:47 AM   #4
exellence
Nhập môn đệ tử
 
Tham gia ngày: Mar 2011
Bài gửi: 7
:
Trích:
Nguyên văn bởi toancdt View Post
bạn muốn điều khiển rc servo hay gì mà tạo xung 50hz
mình điều khiển RC servo loại SG90
exellence vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 31-07-2012, 07:13 AM   #5
toancdt
Đệ tử 2 túi
 
toancdt's Avatar
 
Tham gia ngày: Apr 2011
Bài gửi: 31
:
Send a message via Yahoo to toancdt
Trích:
Nguyên văn bởi exellence View Post
mình điều khiển RC servo loại SG90
điều khiển rc servo bạn dùng timer nào cũng được, không nhất thiết phải điều khiển bằng PWM, bạn cho một biến đếm trong chương trình ngắt timer và so sánh biến đếm đó để xuất xung theo tần số yêu cầu.
__________________
[email]toancdt09@gmail.com
toancdt vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Trả lời


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à 11:07 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