• slider image 442
  • slider image 492
  • slider image 493
  • slider image 494
  • slider image 495
  • slider image 496
  • slider image 491
:::

論壇索引


Board index » All Posts (cct1210)




Re: 舊版本C30可編譯,新版本的C30編譯不會過問題求教?
資深會員
資深會員


附上程式主檔test.c
個人使用MPLAB8.4, C30 V3.22
當device選dsPIC30f6010a,可編譯,選dsPIC30f4011,則就會出現編譯錯誤.

Attach file:


Link only for registered users

發表於: 2010/1/11 15:43
頂部


Re: 舊版本C30可編譯,新版本的C30編譯不會過問題求教?
資深會員
資深會員


請看以下程式,主要是從C30的docs\periph_lib\dsPIC30F_dsPIC33F_PIC24H_UART_Help.htm抄下來的

#include<p30fxxxx.h>
#include<uart.h>
/* Received data is stored in array Buf */
char Buf[80];
char * Receiveddata = Buf;
/* This is UART1 transmit ISR */
void __attribute__((__interrupt__)) _U1TXInterrupt(void)
{
IFS0bits.U1TXIF = 0;
}
/* This is UART1 receive ISR */
void __attribute__((__interrupt__)) _U1RXInterrupt(void)
{
IFS0bits.U1RXIF = 0;
/* Read the receive buffer till atleast one or more character can be read */
while( DataRdyUART1())
{
( *( Receiveddata)++) = ReadUART1();
}
}
int main(void)
{
/* Data to be transmitted using UART communication module */
char Txdata[] = "Microchip";
/* Holds the value of baud register */
unsigned int baudvalue;
/* Holds the value of uart config reg */
unsigned int U1MODEvalue;
/* Holds the information regarding uart
TX & RX interrupt modes */
unsigned int U1STAvalue;
/* Turn off UART1module */
CloseUART1();
/* Configure uart1 receive and transmit interrupt */
ConfigIntUART1(UART_RX_INT_EN & UART_RX_INT_PR6 &
UART_TX_INT_DIS & UART_TX_INT_PR2);
/* Configure UART1 module to transmit 8 bit data with one stopbit. Also Enable loopback mode */
baudvalue = 5;
U1MODEvalue = UART_EN & UART_IDLE_CON &
UART_DIS_WAKE & UART_EN_LOOPBACK &
UART_EN_ABAUD & UART_NO_PAR_8BIT &
UART_1STOPBIT;
U1STAvalue = UART_INT_TX_BUF_EMPTY &
UART_TX_PIN_NORMAL &
UART_TX_ENABLE & UART_INT_RX_3_4_FUL &
UART_ADR_DETECT_DIS &
UART_RX_OVERRUN_CLEAR;
OpenUART1(U1MODEvalue, U1STAvalue, baudvalue);
/* Load transmit buffer and transmit the same till null character is encountered */
putsUART1 ((unsigned int *)Txdata);
/* Wait for transmission to complete */
while(BusyUART1());
/* Read all the data remaining in receive buffer which are unread */
while(DataRdyUART1())
{
(*( Receiveddata)++) = ReadUART1() ;
}
/* Turn off UART1 module */
CloseUART1();
return 0;
}

若在MPLAB的Select devices選dsPIC30F6010A則可以編譯通過,若選擇dsPIC30F4011編譯則出現error: 'UART_TX_PIN_NORMAL' undeclared (first use in this function)
,所以跟是不是使用"USE_AND_OR" 一點關係也沒有,覺得有點風馬牛不相及.
個人有點困惑,從出現的訊息"UART_TX_PIN_NORMAL' undeclared,應該是此定義(應該是使用#define 所定義),在dsPIC30F4011的head檔被刪掉了(什麼原因就不得而知???,因為在V3.02C還在,V3.20B不見了),而在dsPIC30F6010A內還保留著,想起來有點可怕,都沒說原因就不見了,我以前的很多程式,不明不白地就不能動了.
希望有人可解答我的問題,是不是我那裡搞錯了,真希望我錯了,這樣我才能安心.

發表於: 2010/1/9 0:47
頂部


Re: 舊版本C30可編譯,新版本的C30編譯不會過問題求教?
資深會員
資深會員


剛剛個人選同系列的另一顆dsPIC30f6010a編譯,居然通過編譯,真是奇怪,只是本人無dsPIC30f6010a晶片可供燒錄驗證,手上只有dsPIC30f4011而己,之前舊版本確定可編譯及燒錄.

發表於: 2010/1/7 22:21
頂部


舊版本C30可編譯,新版本的C30編譯不會過問題求教?
資深會員
資深會員


個人本來一直使用C30的V3.02版本,而程式編譯及燒錄及執行都正常,最近更新至V3.20B版本,結果原程式就不能通過編譯,出問題在呼叫UART的週邊函式:

#include<p30f4011.h>
#include<uart.h>
........
int main(void)
{

.......................

baudvalue = 5;
U1MODEvalue = UART_EN & UART_IDLE_CON &
UART_DIS_WAKE & UART_EN_LOOPBACK &
UART_EN_ABAUD & UART_NO_PAR_8BIT &
UART_1STOPBIT;
U1STAvalue = UART_INT_TX_BUF_EMPTY &
UART_TX_PIN_NORMAL &
UART_TX_ENABLE & UART_INT_RX_3_4_FUL &
UART_ADR_DETECT_DIS &
UART_RX_OVERRUN_CLEAR;
OpenUART1(U1MODEvalue, U1STAvalue, baudvalue);
..............
}

編譯錯誤訊息為
error: 'UART_TX_PIN_NORMAL' undeclared (first use in this function)
個人覺得很訝異,在舊版本並沒有此問題,怎麼新版本會error?

發表於: 2010/1/7 22:07
頂部


Re: dsPIC30f4011的PGC/PGD與SDI1/SDO1共用問題如何解決?
資深會員
資深會員


參照:

Ryang 寫道:
主要是在在燒錄時怕你的 SPI 有輸出會拉住 PGC/PGD 的電位,所以建議串個電阻以消除輸出打架的現象。串個 1K ohm 看看,有串有保佑這樣才不會在燒錄時被干擾。


真是感謝Ryang的提示,我在PGC那支腳串了1K ohm,成功燒錄,而且週邊SPI測試亦成功無誤.

發表於: 2009/12/23 19:58
頂部


Re: mTouch範例compiler問題
資深會員
資深會員


參照:

iamqq 寫道:
用Hi-Tech C V9.60PL2及V9.65PL1 版本既可Build successful!


確認使用V9.65PL1可行,謝謝!
不過令我納悶的是怎麼新版反而不能Build.

發表於: 2009/12/22 19:59
頂部


Re: mTouch範例compiler問題
資深會員
資深會員


有那位高手可解答?謝謝!

發表於: 2009/12/21 21:57
頂部


Re: dsPIC30f4011的PGC/PGD與SDI1/SDO1共用問題如何解決?
資深會員
資深會員


參照:

Ryang 寫道:
dsPIC30F4011 只有一組燒錄腳 PGC/PGD,所以要使用SPI 時就有些限制,不過這些都只會發生在燒錄時,如果要除錯是可以選用其它的組別 (Configuration Bits 設定)。
如在燒錄時外界的 SPI 會干擾 PGC/PGD 的話可以用段開的方式或採用串電阻的方式做隔離一下。


請問要串多大的電阻?是否PGC/PGD都要串?

發表於: 2009/12/9 17:33
頂部


dsPIC30f4011的PGC/PGD與SDI1/SDO1共用問題如何解決?
資深會員
資深會員


請教各位:
dsPIC30f4011的PGC/PGD與SDI1/SDO1腳位共用,我在使用外部的SPI界面時,會干擾到燒錄線,有什麼方法可解決?是否一定要燒錄時斷開SPI界面?燒好後再接,我覺得很麻煩呢.

發表於: 2009/12/8 21:12
頂部


mTouch範例compiler問題
資深會員
資深會員


由2009嵌入式論壇所附的光碟中兩個範例程式
mTouch\Workshop_v1a\Democode-v1a\F727_demo及
mTouch\Workshop_v1b\Democode-v1b\F727_demo
使用MPLAB 8.40及HI-TECH C Compiler for PIC10/12/16 MCUs (Lite Mode) V9.70編譯出現如下訊息
Error [1356] C:\mTouch\Workshop_v1a\Democode-v1a\F727_demo\main727.c; 318. fixup overflow referencing psect cstackBANK1 (0xC3) into 1 byte at 0xCCA/0x2 -> 0x665 (F727.obj 203/0x34)
Error [1356] C:\mTouch\Workshop_v1a\Democode-v1a\F727_demo\main727.c; 318. fixup overflow referencing psect cstackBANK1 (0xC4) into 1 byte at 0xCCE/0x2 -> 0x667 (F727.obj 203/0x38)
Error [1356] C:\mTouch\Workshop_v1a\Democode-v1a\F727_demo\main727.c; 318. fixup overflow referencing psect cstackBANK1 (0xC3) into 1 byte at 0xCD0/0x2 -> 0x668 (F727.obj 203/0x3A)
.........
上述一直找不出問題,有否高手可告訴我?

發表於: 2009/11/27 21:52

Edited by cct1210 on 2009年11月27日 22:42:05
頂部



« 1 ... 23 24 25 (26) 27 28 29 ... 33 »



:::

Microchip連結

https://www.facebook.com/microchiptechnologytaiwan/
http://www.microchip.com.tw/modules/tad_uploader/index.php?of_cat_sn=13
https://mu.microchip.com/page/tmu
http://elearning.microchip.com.tw/modules/tad_link/index.php?cate_sn=1
https://page.microchip.com/APAC-PrefCenters-TW.html
http://www.microchip.com/
http://www.microchip.com/treelink
http://www.microchipdirect.com/
http://www.microchip.com.cn/newcommunity/index.php?m=Video&a=index&id=103
http://www.microchip.com.tw/modules/tad_uploader/index.php?of_cat_sn=2
http://www.microchip.com.tw/Data_CD/eLearning/index.html
http://www.microchip.com.tw/RTC/RTC_DVD/
https://www.microchip.com/development-tools/
https://www.youtube.com/user/MicrochipTechnology
[ more... ]

教育訓練中心

!開發工具購買
辦法說明 [業界客戶] [教育單位]
----------------------------------
!校園樣品申請
辦法說明 [教師資格] [學生資格]
----------------------------------