![]() |
|
Tài trợ cho PIC Vietnam |
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 |
![]() |
#31 | |
Trưởng lão PIC bang
|
Trích:
Thân,
__________________
Biển học mênh mông, sức người có hạn. Đang gặp vấn đề cần được giúp đỡ? Hãy dành ra vài phút đọc luồng sau: http://www.picvietnam.com/forum/showthread.php?t=1263 |
|
![]() |
![]() |
![]() |
#32 |
Đệ tử 2 túi
Tham gia ngày: Sep 2008
Nơi Cư Ngụ: Tp. HCM
Bài gửi: 38
: |
C30 Student Edition có cần license không?
Sau khi em xài dược một thời gian (1-2 tháng gì đó ko nhớ rõ) thì hôm nay biên dịch chương trình trong C30 nó luôn báo lỗi sau:
Code:
Microchip MPLAB C30 License Manager Version v3_20 (Build Date Aug 24 2009). Copyright (c) 2008 Microchip Technology Inc. All rights reserved. The MPLAB C30 license has expired. Options have been disabled due to expired license Visit http://www.microchip.com/ to purchase a new key. Em đã tải và cài phiên bản Student mà? Không biết phải làm sao? Có ai biết chỉ em giúp? Không lẽ phải tải về cài lại? |
![]() |
![]() |
![]() |
#33 | ||
Trưởng lão PIC bang
|
Trích:
Trích:
__________________
Biển học mênh mông, sức người có hạn. Đang gặp vấn đề cần được giúp đỡ? Hãy dành ra vài phút đọc luồng sau: http://www.picvietnam.com/forum/showthread.php?t=1263 |
||
![]() |
![]() |
![]() |
#34 |
Đệ tử 2 túi
Tham gia ngày: Sep 2008
Nơi Cư Ngụ: Tp. HCM
Bài gửi: 38
: |
Cám ơn anh, em hiểu rồi, mặc dù báo vậy nhưng vẫn biên dịch được, do em bị lỗi chỗ nào đó (em cũng ko rõ) nên mới bị như vậy, em thử làm một project khác thì đã biên dịch được.
|
![]() |
![]() |
![]() |
#35 |
Đệ tử 4 túi
Tham gia ngày: Mar 2009
Bài gửi: 64
: |
Thư viện MDD (microchip solution) thấy hỗ trợ dòng dsPIC33F, nhưng em tìm mãi mà chẳng thấy chỗ cấu hình giao tiếp phần cứng SPI cho dsPIC33F. Không biết có ai viết giao tiếp thẻ nhớ với dsPIC33F cho em hỏi với.?
Với phần SPI, khi đọc dữ liệu về qua SPI, thì thằng clock của SPI có tự động phát không, hay phải write dummy data vào. Có nghĩa là em muốn đợi response của thằng thẻ nhớ thì chỉ đợi hay phải write dữ liệu giả vào để có clk |
![]() |
![]() |
![]() |
#36 |
Đệ tử 2 túi
Tham gia ngày: Sep 2008
Nơi Cư Ngụ: Tp. HCM
Bài gửi: 38
: |
lỗi "makes pointer from integer without a cast" là lỗi gì?
Em viết hàm như sau:
Code:
float Euclidean_distance(fractional x[13], fractional y[13]) { float d; unsigned int l; d=0; for (l=0;l<13;l++) { d+=(x[l]-y[l])*(x[l]-y[l]); } d=sqrt(d); return d; } d= Euclidean_distance(a[13],b[13]) chẳng hạn thì báo 2 warning là: "passing argument 1 of 'Euclidean_distance' makes pointer from integer without a cast" và "passing argument 2 of 'Euclidean_distance' makes pointer from integer without a cast". Chương trình vẫn biên dịch được, nhưng khi đến đoạn gọi hàm đó thì bị reset. Ai có kinh nghiệm xin chỉ giúp em được ko? |
![]() |
![]() |
![]() |
#37 | |
...Damned...
Tham gia ngày: Apr 2006
Nơi Cư Ngụ: Hồ Chí Minh
Bài gửi: 522
: |
Trích:
Code:
float Euclidean_distance(fractional x[13], fractional y[13]) Code:
d= Euclidean_distance(a[13],b[13]) Bạn phải gọi đúng như sau: Code:
d= Euclidean_distance(a, b) |
|
![]() |
![]() |
![]() |
#38 |
Đệ tử 2 túi
Tham gia ngày: Sep 2008
Nơi Cư Ngụ: Tp. HCM
Bài gửi: 38
: |
Cám ơn anh, nhưng khi em sửa lại là
d = Euclidean_distance(a, b) thì nó warning như sau: "passing argument 2 of 'Euclidean_distance' discards qualifiers from pointer target type". Em xin nói rõ hơn, mảng a[13] của em là một mảng giá trị thay đổi, lưu giá trị tính toán được trong chương trình, còn mảng b[13] là một mảng hằng số em khai báo trong ROM. Anh có ý kiến gì ko? |
![]() |
![]() |
![]() |
#39 | |
...Damned...
Tham gia ngày: Apr 2006
Nơi Cư Ngụ: Hồ Chí Minh
Bài gửi: 522
: |
Trích:
1 - Với chỉ 13 phần tử bạn hoàn toàn có thể chuyển b[13] về RAM thay vì ROM. 2 - sửa lại khai báo Code:
float Euclidean_distance(fractional x[13], const fractional y[13]) |
|
![]() |
![]() |
![]() |
#40 |
Đệ tử 2 túi
Tham gia ngày: Sep 2008
Nơi Cư Ngụ: Tp. HCM
Bài gửi: 38
: |
Cho em hỏi thêm cách tính độ dài của dữ liệu là hằng số ghi trong ROM của dspic
ví dụ em khai báo như sau: Code:
const unsigned char __attribute__ ((space(psv), address (0x0200))) chuoi1[]="Bao Duy 40500441\0"; const fractional __attribute__ ((space(psv), address (0x0400))) toi1[13]={4890, 2102, 569, 947, 618, 733, 546, 634, 455, 552, 386, 471, 302}; |
![]() |
![]() |
![]() |
#41 | |
Trưởng lão PIC bang
|
Trích:
Thân,
__________________
Biển học mênh mông, sức người có hạn. Đang gặp vấn đề cần được giúp đỡ? Hãy dành ra vài phút đọc luồng sau: http://www.picvietnam.com/forum/showthread.php?t=1263 |
|
![]() |
![]() |
![]() |
#42 |
Nhập môn đệ tử
Tham gia ngày: Nov 2010
Bài gửi: 3
: |
Các bác Pro làm ơn cho em hỏi, việc add các file *.h, *inc, *gld trong trình biên dịch có tác dụng gì không? có bắt buộc không?.
Vì em thấy không add thì vẫn biên dịch bình thường. Cụ thể là em dùng MPLAB 8.56 tích hợp C30 3.24, em chỉ lấy file ví dụ.c trong turial của bác NamNQ. Biên dịch bình thường. Mong các bác chỉ giúp. Em cảm ơn. |
![]() |
![]() |
![]() |
#43 |
Đệ tử 4 túi
Tham gia ngày: Nov 2008
Nơi Cư Ngụ: Hanoi, Vietnam
Bài gửi: 78
: |
Hi all,
Trong MPLAB C30 để sử dụng khai báo BYTE thì có cần add thêm thư viện nào không nhỉ? Sao mình khai báo BYTE i, j; mà toàn báo lỗi. ![]()
__________________
Mechatronics Department University of Engineering and Technology, VNUH. |
![]() |
![]() |
![]() |
#44 | |
Trưởng lão PIC bang
|
Trích:
Thân,
__________________
Biển học mênh mông, sức người có hạn. Đang gặp vấn đề cần được giúp đỡ? Hãy dành ra vài phút đọc luồng sau: http://www.picvietnam.com/forum/showthread.php?t=1263 |
|
![]() |
![]() |
![]() |
#45 |
Đệ tử 4 túi
Tham gia ngày: Nov 2008
Nơi Cư Ngụ: Hanoi, Vietnam
Bài gửi: 78
: |
Cảm ơn A Nam.
Có thể dùng cách của A, hoặc dùng typedef unsigned char BYTE
__________________
Mechatronics Department University of Engineering and Technology, VNUH. |
![]() |
![]() |