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 29-08-2013, 02:06 PM   #1
truongqt
Đệ tử 2 túi
 
truongqt's Avatar
 
Tham gia ngày: Apr 2007
Nơi Cư Ngụ: Quảng Trị - Đà Nẵng
Bài gửi: 43
:
PWM trong PIC16F877A, thay đổi duty.

Code PWM không thể thay đổi duty được nếu viết thế này:
Code:
setup_timer_2(T2_div_by_16,200,1); 
set_pwm1_duty(a);
hoặc
Code:
set_pwm1_duty(a);
Nhưng nếu viết thế này thì OK:
Code:
set_pwm1_duty(a);
setup_timer_2(T2_div_by_16,200,1);
Tức là sau mỗi lần thay đổi duty, ta phải có dòng lệnh
Code:
setup_timer_2(T2_div_by_16,200,1);
Hoặc là dòng setup_timer_2(T2_div_by_16,200,1); phải được đưa vào sau dòng set_pwm1_duty(a);
------------------------------
Trong khi đó, mình xem hầu hết trên các bài viết trong diễn đàn, thì chỉ cần câu lệnh
Code:
set_pwm1_duty(a);
là đã có thể thay đổi duty của PWM! Chính vì thế đã làm mình mất mấy ngày vọc mà không chạy được. Sau đó mình thêm dòng setup_timer_2(T2_div_by_16,200,1); ngay sau mỗi lần thay đổi duty thì mới OK. Vậy thì sẽ khó khăn cho những người học khác, khi mà họ cũng áp dụng theo đúng câu lệnh này mà PWM nó không chạy.
Ai có thể giải thích giùm mình được không?
Mình gửi kèm code và mô phỏng (code CCS-PIC, mô phỏng Protues7.5)
File Kèm Theo
File Type: rar PIC-PWM.rar (12.4 KB, 68 lần tải)
__________________
Trường.
http://vn.myblog.yahoo.com/nguyenvantruongqt
truongqt 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à 01:32 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