PIC Vietnam

Go Back   PIC Vietnam > Microchip PIC > Chương trình dịch & các công cụ mô phỏng

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

Chương trình dịch & các công cụ mô phỏng Khu vực này chỉ có thành viên diễn đàn mới được vào

 
 
Ðiều Chỉnh Xếp Bài
Prev Previous Post   Next Post Next
Old 02-05-2019, 01:34 PM   #1
VietNguyen93
Nhập môn đệ tử
 
Tham gia ngày: May 2019
Bài gửi: 1
:
Question _Q15 fixed point dấu chấm tĩnh

Chào các bạn, mình mới chuyển qua lập trình dspic, cụ thể là con dspic33EP512MU810.
Mình đang muốn điều khiển PFC cho bộ boost với tầng số đóng cắt là 100KHz. giải thuật điều khiển của mình chạy ở 50KHz với 2 vòng PID. Như vậy chương tình mình có 20us để tính toán toàn bộ. mình cấu hình dspic ở Fcy=70Mhz nên một cycle là 14.28ns
Vấn đề của mình là floating point thì dspic tính rất lâu nên mình chuyển qua fixed point vì nghỉ nó cũng giống int nhưng mình thấy nó vẫn khá lâu. kết quả mình đo cụ thể như sau:

integer:
+ 28ns
* 28ns
/ 250ns

Floating point (float)
+ 2.5us
* 2.5us
/ 6.2us

fixed point (Q15) libq.h
+ _Q16add 300ns
* _Q16mac 1.2us
/ _Q16div 8us

như vậy với phép cộng và phép nhân, _Q16 tính toán có nhanh hơn được một chút nhưng vẫn rất chậm. Mình nghe nói là dspic hổ trợ dsp có thể thực hiện phép nhân trong 1 cycle. nhưng mà mình không biết làm sao để thực hiện được.
Xin các tiền bối đi trước giúp đỡ mình nhé. mình xin cảm ơn nhiều
VietNguyen93 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
 

Ðiều Chỉnh
Xếp Bà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à 03:13 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