PIC Vietnam

Go Back   PIC Vietnam > Microchip PIC > dsPIC - Bộ điều khiển tín hiệu số 16-bit

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

dsPIC - Bộ điều khiển tín hiệu số 16-bit Theo dự kiến của Microchip, vào khoảng năm 2011 dsPIC sẽ có doanh số lớn hơn PIC

 
 
Ðiều Chỉnh Xếp Bài
Prev Previous Post   Next Post Next
Old 02-01-2009, 12:44 PM   #5
nvtri
Nhập môn đệ tử
 
Tham gia ngày: Jun 2008
Bài gửi: 9
:
Giải thích code cho dsPIC

Cảm ơn anh Nam và mong anh tiếp tục đọc chủ đề của em
Cách tính giá trị timer3avg như sau:
Code:
 #define INDEX 1
 #define POLEPAIRS   5   // động cơ BLDC có 5 cặp cực
 unsigned int HallValue;
 unsigned int timer3value;
 unsigned int timer3avg;
 unsigned char polecount; // dùng để đếm số cặp cực
 
   if (HallValue == INDEX)  // has the same position been sensed?
      if (polecount++ == POLEPAIRS)   //has one mech rev elasped?
      {                        // yes then read timer 3
      timer3value = TMR3;
      TMR3 = 0;
      timer3avg = ((timer3avg + timer3value) >> 1);
      polecount = 1;
      }
Em khai báo chỉ số INDEX là 1 để chỉ vị trí đầu tiên của cảm biến Hall, lệnh if thứ hai là để xem động cơ quay được 1 vòng hay chưa (đếm đủ 5 cặp cực tương ứng cho 1 vòng). Sau đó đọc giá trị của Timer3. Tóm lại, đoạn code trên là đọc giá trị Timer3 sau mỗi lần động cơ quay được một vòng.
Trong đó, với module Timer3 em khởi tạo như sau:
Code:
void InitTMR3(void)
{
   T3CON = 0x0030;         // internal Tcy/256 clock
   TMR3 = 0;
   PR3 = 0xFFFF;
}
Tần số thực thi lệnh Fcy = 10 Mhz
Cho em hỏi thêm: Với cấu hình thanh ghi T3CON = 0x0030 thì thanh ghi TMR3 tăng lên một đơn vị sẽ tốn 256 chu kì lệnh?

thay đổi nội dung bởi: namqn, 02-01-2009 lúc 05:41 PM.
nvtri 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à 10:29 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