1. 程式人生 > >DSP除錯心得

DSP除錯心得

1、

(1)、報錯如下:

-------------------------  tam2012112701.pjt - Debug  -------------------------

[Linking...] "C:\CCStudio_v3.3\C2000\cgtools\bin\cl2000" [email protected]"Debug.lkf"

<Linking>

>> 28335_RAM_lnk.cmd:   error: system error, can't open file '/.obj' for input:

                               No such file or directory

>> Compilation failure

Build Complete,

  2 Errors, 0 Warnings, 0 Remarks.

(2)、解決方法

是修改了CMD檔案,看來它的確不能動,我只是做了一些註釋,網上說CMD裡面不能用" // "註釋。

2、

(1)、報錯

"tam2012112801.c", line 59: warning: last line of file ends without a newline

(2)、解決

最後一行後多加幾個回車鍵,不要不游標放在最後一行。

3、Include Search Path 

C:\CCStudio_v3.3\MyProjects\DSP2833x_common\include;C:\CCStudio_v3.3\MyProjects\DSP2833x_headers\include

4、

注意新增rts2800_fpu32.lib和GlobalVariableDefs.c\

5、

那應該找到原因了,ADC_cal這個函式是預設在ROM裡的, 看下面的CMD:
   /* Allocate ADC_cal function (pre-programmed by factory into TI reserved memory) */
   .adc_cal     : load = ADC_CAL,   PAGE = 0, TYPE = NOLOAD

6、

"DSP2833x_PieVect.c", line 20: error: identifier "PIE_RESERVED" is undefined

"DSP2833x_PieVect.c", line 36: error: identifier "INT13_ISR" is undefined

"DSP2833x_PieVect.c", line 37: error: identifier "INT14_ISR" is undefined

原因是我沒有加DSP281x_DefaultIsr.h所以不行的。

7、

返回的資料只有一個,而且亂碼。

解決:ScicRegs.SCICCR.bit.LOOPBKENA=1;

8、

   error: symbol _InitGpio is defined multiple times:

            C:\\CCStudio_v3.3\\MyProjects\\tam2013010901\\Debug\\DSP2833x_Gpio.obj and C:\\CCStudio_v3.3\\MyProjects\\tam2013010901\\Debug\\tam2013010901.obj

解決:刪除DSP2833x_Gpio.c

9、

undefined                        first referenced

 symbol                              in file

---------                        ----------------

_XINT7_ISR                       C:\\CCStudio_v3.3\\MyProjects\\tam2013010901\\Debug\\DSP2833x_PieVect.obj

_ECAN1INTA_ISR                   C:\\CCStudio_v3.3\\MyProjects\\tam2013010901\\Debug\\DSP2833x_PieVect.obj

_USER10_ISR                      

解決:新增原始檔DSP2833x_DefaultIsr.c

10、變數修飾符

static:

修飾變數,函式。作用域:變數僅僅在本檔案可見,函式在本檔案可以被呼叫。static在函式內部定義的話,分配在堆中,數值儲存在data段,而不是在棧中,而且只賦值一次。 

extern:

修飾變數,函式。修飾變數時候,變數的宣告在外面,修飾函式的時候,如果函式已經宣告,則作用不是很大。 

const:

修飾變數,函式。修飾變數時候,不能被重複賦值,只能放在只讀段中。修飾函式時候,表明函式的返回值必須為常數。

volatile:

volatile最初的意思是表示汽油容易揮發,在c中的作用大概有兩點(1)表示變數是易失的,易變的。(2)強制訪存操作,防止編譯器去優化,告訴編譯器每次必須去記憶體中取值,而不是從暫存器或者快取。

11、注意   GpioCtrlRegs.GPBDIR.all = 0xFFFFFFFF;      // GPIO32-GPIO63 are inputs 

暫存器GPBDIR是32位的,需要8個字母配置。

GPI的Ctrl暫存器都需要EALLOW和EDIS保護。

相關推薦

DSP除錯心得

1、 (1)、報錯如下: -------------------------  tam2012112701.pjt - Debug  ------------------------- [Linking...] "C:\CCStudio_v3.3\C2000\cgt

shell指令碼除錯心得

1 將指令碼產生的結果檔案和臨時檔案放入自己的資料夾下,不要放在原來的地方,好一起檢視 2 在除錯的時候,可以吧臨時檔案的刪除命令註釋掉,檢視臨時檔案具體的生成形式 3 在除錯的不明白的地方 用echo $var 4 用日誌txt,儲存echo的記錄和錯誤記錄 sh /xusywap.s

STM32F103C8t6和MCP2515CAN除錯心得

前言     由於STM32微控制器自帶CAN控制器,所以STM32和MCP2515 CAN控制器聯合使用的場景不多。正好一個特殊的需求使用了MCP2515和STM32,在這裡說一下硬體連結需要注意的地方。 1.硬體     主控晶片STM32F1

js斷點除錯心得總結

js斷點除錯心得 1.斷點除錯是啥?難不難? 進入工作中,才知道了斷點除錯是多麼的重要,作為一名程式設計師,必須要學會熟練使用除錯工具,斷點除錯就是經常用到的,斷點除錯其實並不是多麼複雜的一件事,簡單的理解無外呼就是開啟瀏覽器,開啟sources找到js檔案,在行號上點一下罷了

STM32 低功耗 除錯心得

MCU在進入STOP模式的時候,GPIO的狀態都是保持在進入低功耗模式之前的狀態,在最小系統中,MCU的GPIO都是懸空的,所以設定為何種狀態都不會影響到功耗。但當連線到外設後,外設的電平狀態和所連線的GPIO不一致的時候,就會產生電流。也就是所謂的漏電流!   解決辦法:將GPIO的對應GPI

除錯心得

主要記錄對做基於stm32F103自平衡小車除錯時候的一些深刻感悟(以後會繼續更新) 1.寫完MPU6050時,測資料資料顯示一次(或者一直為零)然後就不動了。 發現這個問題後,我先是除錯程式碼發現是dmp庫中的dmp_read_fifo(gyro, accel, quat, &se

AM437x AM335x gpio驅動除錯心得

#include <linux/init.h> #include <linux/module.h> #include <linux/leds.h> #include <linux/io.h> #include <linux/

PCIe除錯心得_DMA part1

1.PCIe的DMA介紹在PCIe中需要使用DMA的專案,一定要先看XAPP1052,裡面包含一個DMA的參考設計,對初學者有極大的幫助。 XAPP1052中包含FPGA原始碼和驅動程式原始碼,其中FPGA原始碼最主要的檔案為:1、《TX_ENGINE.v》:是產生TLP包的邏輯,包含讀TLP請求用於DMA

NODEMCU除錯心得6

關於網路協議 HTTP 按照約定,這次要講非常exciting的內容,網路協議Networking protocols。 這部分並不好寫,內容很龐雜,會分成若干部分。 網路協議我們在前面已經提及,TCP/IP協議就是最重要的網路協議。在AT指令和lua韌體

NODEMCU除錯心得2

關於LUA 和智慧雲平臺相似,nodemcu就是esp12的核心板加一個USB轉串列埠模組,晶片貌似比普通的USB轉TTL模組上的靠譜,電路板上用了比較貴的鉭電容,穩定性估計不錯。 雖然號稱是LUA專用平臺,但是你刷好韌體,用其它的SDK開發一點問題

【QT】除錯心得(1)

1、報錯“filed has incomplete type QIcon”。 前向宣告的類或結構體只能用來定義指標或引用。 例如: private: QIcon * m_iconStart; QIcon *m_iconStop; (*

使用Eclipse基於Maven的Spring MVC 除錯心得(二)--- Spring配置

3.Spring專案的web.xml配置 在Dynamic Web Project中,web.xml可謂是最重要的檔案之一,它的配置包括:1)請求地址(url-pattern)與處理類(servlet-class)之間通過servlet-name來進行的對映(servle

NODEMCU除錯心得7

關於網路協議 HTTP 2 上一節,我們用nodemcu伺服器向客戶端傳送nodemcu的記憶體資訊。這一節反過來,我們介紹如何用客戶端控制nodemcu。 先介紹一個簡單的例子,用客戶端控制nodemcu的GPIO4,實現nodemcu的藍色LED遠端開關

串列埠WiFi的除錯心得

WiFi模組的微控制器開發 一直以來都在開發微控制器,最近有智慧家居的案子需要開發用到WiFi模組,於是剛剛上手RAK411;經過半年時間的瞭解/學習,總結如下: 一、概念: 1)、Wi-Fi:大部分微控制器工程師的理解就是手機/筆記本上面和家裡路由器的這些東西叫WiFi,

關於伺服器端程式設計的程式除錯心得

對某些需要在編譯以後放到伺服器端或者叢集執行的程式,在沒有除錯工具的情況下,解決問題的方法主要是通過輸出語句(將info輸出到日誌中),分為以下步奏: 1、對問題的定位 將程式分為幾大邏輯,根據順序逐個大邏輯進行測試(不要放過任何一部分,不要認為某個部分一定不會出錯,往往出

SDL除錯心得(MFC SDL 視窗放大後 畫面卡死)

同一個視窗控制代碼在多次使用SDL_CreateWindowFrom和SDL_DestroyWindow以後,發現程式執行正常,但視訊顯示不出來的問題。 第一次將Hwnd傳遞給SDL_CreateWindowFrom,建立一個顯示視窗給SDL,隨後在不使用的時候,呼叫SDL_DestroyWindow

STM32f105 CAN除錯心得

stm32f105是stm32中的互聯型產品,在庫函式中用STM32F10X_CL的巨集定義。預設外部晶振是25M。 庫函式中關於STM32F10X_CL(105/107)的時鐘設定和f103的不一樣。區別就在於預設的25M晶振,分頻倍頻的過程也不一樣。 除錯CAN的時候一

usb-otg-除錯心得

相關文章 僅僅看了半天SPEC寫的筆記,有些亂,等除錯完畢再次整理,思路不是很成熟,推測成分較多,可能有不對的地方,歡迎拍磚交流指正。 1. 概要 OTG裝置使用插頭中的ID引腳來區分A/B Device,ID接地被稱作為A-Device,為連線時候的U

nrf24l01模組除錯心得

nrf24l01這個模組直接把我折騰了三天,最開始調通之後能夠實現收發。但問題是隻能實現一次通訊,而且每次通訊前必須按下接受模組的復位鍵 時間還不能太短,按完之後就可以接收一次資料,如果按下電源鍵重啟都不行,必須按復位。我在這個問題裡卡了兩天的時間,各種查資料,在網上 找大

Windows 程式除錯心得01

最近看了Everett N.McKay & Mike Woodring 的classical Debugging Windows Programs談談一些收穫,以共大家分享. sharing with everybody 1.試著處理可能在程式裡出錯的建構函式.