請教C30內一些函式在dsPIC30系列的用途?
|
||||
---|---|---|---|---|
新會員
|
請教關於C30中一些有關於prinf,fopen,get...等等類似的指令,是否可用於dsPIC30系列的MCU中,如果不可以,那主要適用於microchip哪一種產品中呢?
發表於: 2004/11/2 10:59
|
|||
|
請教關於C30v1.10與C30 v1.20.02.01 的問題?
|
||||
---|---|---|---|---|
新會員
|
我要請教的就是,原本購買一套c30 V1.10的compiler之前在寫dsPIC30F6014都沒什麼問題發生,但當改用到dsPIC30F2010時,在引用到ctype.h裡面的函式時, compiler的過程會有link error:region data is full的錯誤發生,這問題曾詢問過貴公司,而貴公司用c30 v1.2版的c compiler卻沒有相同的問題產生,所以我就到美國的microchip下載了C30 v1.20.02.01版來試用,在compiler dsPIC30F2010的部份也ok,但C30 v1.20.02.01有使用日期的限制,所以我想請問是不是原本的c30 V1.10有bug或是其它的問題,如果有的話,我要如何解決了.
謝謝
發表於: 2004/9/29 10:02
|
|||
|
Re: 請問關於dsPIC30f2010使用到ctype.h時出現的問題?
|
||||
---|---|---|---|---|
新會員
|
我的c30 是v1.10
我曾試著將p30f2010.gld裡面的data範圍從原來的512更改為8196後 data (a!xr) : ORIGIN = 0x800, LENGTH = 8196 在compiler一次你的測試程式,結果是ok的 還有就是project zip如何傳給您 謝謝 這是我的程式,當我不執行 TEMP_REG = tolower((int)TEMP_REG);這行程式時 compiler是ok的,但當加入此行程式後就會出現link error /****************************** 藉由dsPIC30F2010的UART模組, 接收資料並顯示在超級終端機 *******************************/ #include <p30f2010.h> #include <ctype.h> #define FCY 10000000 #define MILLISEC FCY/100000 void SYSTEM_initial(void); void RS232_initial(void); void DelayNmSec(unsigned int N); void REG_initial(void); char TEMP_REG; int main(void) { SYSTEM_initial(); while(1) { while(U1STAbits.URXDA) { TEMP_REG = (char) U1RXREG; TEMP_REG = tolower((int)TEMP_REG); PORTE = TEMP_REG; U1TXREG = (int)TEMP_REG; } } } //------------------------------------------------------------ void SYSTEM_initial(void) { RS232_initial(); REG_initial(); } //------------------------------------------------------------ void RS232_initial(void) { //U1BRG = ((FCY/16)/BAUD)-1; U1BRG = 10; U1MODE = 0x8000; U1STA = 0x0000; U1STAbits.UTXEN = 1; } //--------------------------------------------------------- void DelayNmSec(unsigned int N) { unsigned int i; while(N--) { for(i=0;i<MILLISEC;i++); } } //--------------------------------------------------------- void REG_initial(void) { TEMP_REG = 0; }
發表於: 2004/9/27 18:06
|
|||
|
Re: 請問關於dsPIC30f2010使用到ctype.h時出現的問題?
|
||||
---|---|---|---|---|
新會員
|
不好意思,在請問一下,當我在compiler你的程式還是會出現error ,而相關include的路徑也有設定,還是有問題,不知道是否我還有其它相關設定忽略了. 謝謝
Executing: "C:\MPLAB C30\pic30_tools\bin\pic30-gcc.exe" -Wl,"C:\pic30demo\dsPIC30F2010\test\test.o",--script="C:\MPLAB C30\pic30_tools\support\gld\p30f2010.gld",-L"C:\pic30_tools\lib",-o"test.cof" C:\MPLAB C30\pic30_tools\bin\pic30-ld.exe: Link Error: region data is full (test.cof section .data) C:\MPLAB C30\pic30_tools\bin\pic30-ld.exe: Link Error: region data is full (test.cof section .data)
發表於: 2004/9/27 16:25
|
|||
|
請問關於dsPIC30f2010使用到ctype.h時出現的問題?
|
||||
---|---|---|---|---|
新會員
|
當dsPIC30F2010使用到ctype.h中的函式時,例如:isdigit()或tolower()...等等函式,在compiler時,會出現Link error:region data is full的錯誤訊息,若把這些函式去掉不使用它,程式compiler就沒問題,所以想請問一下,是什麼樣的原因會造成錯誤的產生? 謝謝
發表於: 2004/9/27 15:14
|
|||
|
請問一下關於dsPIC30F2010的QEI?
|
||||
---|---|---|---|---|
新會員
|
請問一下關於dsPIC30F2010的QEI?
請問一下,目前正在做對encoder讀取計數值時遇到一些問題,就是當我對QEI做下列初始化的動作,當encoder在轉動時,為何讀取POSCNT暫存器所存的值(pos_value),始終都為0. POSCNT = 0; MAXCNT = 0x0FA0; DFLTCON = 0x0080; QEICON = 0x0700; ... while(1) { ... pos_value=POSCNT; ... }
發表於: 2004/8/24 20:23
|
|||
|