![]() |
|
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 |
![]() |
#9 |
Nhập môn đệ tử
Tham gia ngày: Jun 2008
Bài gửi: 9
: |
giải thích code cho dsPIC
Đây là đoạn code để PIC nhận dữ liệu từ máy tính (từ VB truyền xuống)
Code:
float Kps=0; float Kis=0; float Kds=0; unsigned char InData[] void getvalue() { char hs_vel[4]; // vận tốc là số có 4 chữ số int len_vel; char hs_kp[8]; // hệ số Kp là số có 8 chữ số int len_kp; char hs_ki[8]; // 8 chữ số int len_ki; char hs_kd[8]; // 8 chữ số int len_kd; unsigned char InData[28]; // tổng cộng chuỗi có 28 chữ số int i; for (i=0;i<28;i++) InData[i]=getc(); for (len_vel=0;len_vel<4;len_vel++) { hs_vel[len_vel]=InData[len_vel]; //putc(hs_vel[len_vel]); } for (len_kp=0;len_kp<8;len_kp++) { hs_kp[len_kp]=InData[len_kp+4]; //putc(hs_kp[len_kp]); } for (len_ki=0;len_ki<8;len_ki++) { hs_ki[len_ki]=InData[len_ki+12]; //putc(hs_ki[len_ki]); } for (len_kd=0;len_kd<8;len_kd++) { hs_kd[len_kd]=InData[len_kd+20]; //putc(hs_kd[len_kd]); } DesiredSpeed = atol(hs_vel); //vận tốc yêu cầu Kps = atof(hs_kp); Kis = atof(hs_ki); Kds = atof(hs_kd); } Nhưng khi biên dịch chương trình bị lỗi sau: c:\program files\microchip\mplab c30\bin\bin\pic30-coff-ld.exe Error: A heap is required, but has not been specified ClosedLoopSenBLDC.o(.text+0xbe): In function `main': C:\Documents and Settings\NVTRI_HCMUT\Desktop\ClosedLoop\ClosedLoop SenBLDC.c:131: undefined reference to `getvaule' Link step failed. // lỗi link step này là gi vậy BUILD FAILED: Sat Jan 03 12:48:58 2009 Mong anh Nam và mọi người giúp đỡ. thay đổi nội dung bởi: namqn, 03-01-2009 lúc 01:14 AM. |
![]() |
![]() |
Ðiều Chỉnh | |
Xếp Bài | |
|
|