PIC Vietnam

Go Back   PIC Vietnam > Microchip PIC > Các ngôn ngữ lập trình khác (CCS C, HT 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

Trả lời
 
Ðiều Chỉnh Xếp Bài
Old 17-03-2010, 11:19 AM   #1
jimmylin1986
Nhập môn đệ tử
 
Tham gia ngày: Mar 2010
Bài gửi: 2
:
Unhappy Giúp mình vấn đề Điều chế PWM

Mình đang gặp vấn đề trong việc điều chế PWM cua Pic6f877a. Mình muốn dùng 2 chân điều chế PWM của Pic để điều khiển động cơ DC.mình viết code bằng CCS,nhưng khi mô phỏng trong Protus thì 2 chân CCP cua Pic không xuất ra xung gì cả.Nó luôn xuất ra mức 0.Mạch mô phỏng đơn giản lắm,chỉ là kiểm tra xem nó có xuất xung hay không thôi.Các bác Pro giúp mình với. Mình đang cần gấp lắm
jimmylin1986 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 13-04-2010, 01:30 AM   #2
haruoi
Đệ tử 2 túi
 
haruoi's Avatar
 
Tham gia ngày: Apr 2010
Bài gửi: 29
:
Có pro nào biết thì giúp bạn cái nhỉ! E cũng đang muốn tìm hiểu cái này.
haruoi vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 13-05-2010, 06:14 PM   #3
baquyen
Đệ tử 2 túi
 
baquyen's Avatar
 
Tham gia ngày: May 2007
Bài gửi: 31
:
16f877a à, trên picvietnam nhiều lắm mà,
CT của mình với 16f887 tương tự 16f877a.
http://www.picvietnam.com/forum/showthread.php?t=6344

thay đổi nội dung bởi: baquyen, 07-06-2010 lúc 10:36 AM.
baquyen vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 06-06-2010, 10:04 PM   #4
manhhung_cdt08
Đệ tử 1 túi
 
manhhung_cdt08's Avatar
 
Tham gia ngày: Aug 2009
Bài gửi: 11
:
#include<16f877a.h>
#fuses hs,NOWDT,PUT
#use delay(clock=20000000)

main()
{
setup_timer_2(T2_DIV_BY_16,239,1);
setup_ccp1(CCP_PWM);
setup_ccp2(CCP_PWM);
set_pwm1_duty(64);
set_pwm2_duty(900);
while(1) {}
}
manhhung_cdt08 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 09-06-2010, 07:36 AM   #5
tranchung000
Nhập môn đệ tử
 
Tham gia ngày: Feb 2010
Bài gửi: 1
:
có nguồn ở đây nè bạn. Bạn tìm đến file dktocdodc.rar .Hi vọng giúp được bạn.
http://www.picvietnam.com/forum/showthread.php?t=3021
tranchung000 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 11-06-2010, 11:38 AM   #6
HAI1817
Đệ tử 5 túi
 
HAI1817's Avatar
 
Tham gia ngày: Feb 2010
Bài gửi: 94
:
Question điều khiển động cơ dc bằng pwm có encoder tìm ở đâu

các anh chị chỉ em với
HAI1817 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 11-06-2010, 11:47 AM   #7
HAI1817
Đệ tử 5 túi
 
HAI1817's Avatar
 
Tham gia ngày: Feb 2010
Bài gửi: 94
:
có encoder hồi về phải làm sao

code đây sửa lại như thế nào
File Kèm Theo
File Type: rar test_pwm.rar (49.5 KB, 100 lần tải)
HAI1817 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 11-06-2010, 04:28 PM   #8
baquyen
Đệ tử 2 túi
 
baquyen's Avatar
 
Tham gia ngày: May 2007
Bài gửi: 31
:
Thì dùng ngắt ngoài bình thường, ý bạn là sao nhỉ, ko hiểu
baquyen vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 11-06-2010, 05:13 PM   #9
HAI1817
Đệ tử 5 túi
 
HAI1817's Avatar
 
Tham gia ngày: Feb 2010
Bài gửi: 94
:
em chư rành mấy mong anh chỉ dùm
có nghĩa là dùng một encoder khoảng 200 xung để phản hồi tốc độ.nếu em dùng ngắt thì nó ngắt liên tục.ngắt đó mình đưa vào đâu để ổn định được tốc độ
HAI1817 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 11-06-2010, 06:05 PM   #10
baquyen
Đệ tử 2 túi
 
baquyen's Avatar
 
Tham gia ngày: May 2007
Bài gửi: 31
:
Dù ngắt liên tục thì nó cũng chỉ mất thời gian rất ngắn, bạn dùng ngắt đó + ngắt timer để tính tốc độ (cái này có cả đống bài trên picvietnam viết và code sẵn rồi), vấn đề là bạn đưa vào một tốc độ cần đạt được (tốc độ đặt), code của bạn sẽ so sánh với tốc độ bạn đọc được từ encoder để điều chỉnh. Mình đang làm điều khiển góc quay , giờ viểt báo cáo gấp để nộp cho khoa, sắp hết hạn rồi, mấy bài về cái này nhiều lắm, bạn tự tìm trong diễn đàn có hết

Đọc encoder nè: http://www.picvietnam.com/forum/showthread.php?t=1646
Cái này nữa nè: http://www.picvietnam.com/forum/show...?t=2296&page=7
Cái này thì hơi mệt chút: http://www.picvietnam.com/forum/show...?t=485&page=25

thay đổi nội dung bởi: baquyen, 11-06-2010 lúc 06:28 PM.
baquyen vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 11-06-2010, 08:17 PM   #11
HAI1817
Đệ tử 5 túi
 
HAI1817's Avatar
 
Tham gia ngày: Feb 2010
Bài gửi: 94
:
cảm ơn anh nhiều
HAI1817 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 12-06-2010, 06:05 PM   #12
manhdktd
Đệ tử 3 túi
 
manhdktd's Avatar
 
Tham gia ngày: Jun 2010
Bài gửi: 57
:
Trích:
Nguyên văn bởi manhhung_cdt08 View Post
#include<16f877a.h>
#fuses hs,NOWDT,PUT
#use delay(clock=20000000)

main()
{
setup_timer_2(T2_DIV_BY_16,239,1);
setup_ccp1(CCP_PWM);
setup_ccp2(CCP_PWM);
set_pwm1_duty(64);
set_pwm2_duty(900);
while(1) {}
}
bác xem lại cái giá trị đặt trong pwm2 nhé.giá trị mình đặt phải nhỏ hơn giá trị trong thanh ghi PR2
manhdktd vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 12-06-2010, 08:31 PM   #13
trangkutehd
Nhập môn đệ tử
 
Tham gia ngày: May 2010
Bài gửi: 7
:
Trích:
Nguyên văn bởi manhdktd View Post
bác xem lại cái giá trị đặt trong pwm2 nhé.giá trị mình đặt phải nhỏ hơn giá trị trong thanh ghi PR2
sao mình thử mãi không được nhỉ (



___________________________________
Cập nhật liên tục Lich thi dau world cup 2010 , Tin tuc, Tin tuc trong ngay ,Thoi trang & HOT Game , Nhac.Click ngay để Nghe nhac.
trangkutehd vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 13-06-2010, 07:03 AM   #14
manhdktd
Đệ tử 3 túi
 
manhdktd's Avatar
 
Tham gia ngày: Jun 2010
Bài gửi: 57
:
Trích:
Nguyên văn bởi trangkutehd View Post
sao mình thử mãi không được nhỉ (



___________________________________
Cập nhật liên tục Lich thi dau world cup 2010 , Tin tuc, Tin tuc trong ngay ,Thoi trang & HOT Game , Nhac.Click ngay để Nghe nhac.
cậu không được chỗ nào?có thể nói cụ thể được không?
manhdktd vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 06-10-2010, 12:21 PM   #15
robotpic
Đệ tử 4 túi
 
Tham gia ngày: Jun 2010
Bài gửi: 79
:
bạn cùng thach anh 20000000 hz bạn phải sửa setup_timer2 lại đi; bạn chọn bộ chia 16 thi gia trị nhận được là 124
cach tinh nè bạn
//setup_timer_2(mode,period,postscale)

// * PWM Register Values
// * Oscillator Frequency Fosc = 20000000
// * Clock Frequency Fclk = 5000000
// TOSC=1/20000000=5000000
// * PWM Freq = 10000 HZ
// * Prescaler Value = 4
// * PR2 = 124
//10000=[(PR2+1).4.TOSC.(TMR2 PRESCALE)]

// * Maximum duty value = 500
robotpic 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à 10:46 AM.


Đượ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