ccsc語言
❶ 急求!急求!ccs3.3的c語言編程
那C文件是在ccs那個框框寫,還是先在vc++6.0中寫好再添加?如果沒有或者無法安裝vc++6.0呢?謝謝謝謝!
❷ 關於CCS3.3的C語言編程問題
CCS3.3默認就是嵌套的時候不會自動分行么?
我沒有用過CCS3.3 好像是DSP編程用的
但是有一個解決辦法是你用source insight來作為編輯器
CCS3.3隻用來編譯和燒寫程序
因為作為編輯器來說
source insight還是不錯的
嵌套的時候能實現自動分行
❸ 在ccs4中怎麼讓匯編和c語言同時顯示
編譯完成無錯之後,選擇file->load program,
選擇左側帶綠色箭頭調試按鈕即可
❹ 如何在CCS中建立自己的C語言函數庫文件
你說的函數庫是指什麼,如果是靜態動態庫的話,你使用ide都有相關的建立向導。
❺ 對DSP而言,CCS用C語言編程和匯編編程,二者的效率相差多少
我用的是28XX系列的,不知道經驗對你有沒有用,因為不同系列的晶元多少有些差別。
TI提供的庫已經相當可以了,兼顧易用與效率。我當時做過這樣的測試
1. 用IQMATH實現
2. 直接C語言實現
3. C語言優化實現
4. 原生匯編實現
IQMATH的運行周期在1000左右,比方案3快幾十個周期,比方案4慢幾個周期,方案2是10000多個周期。
另外,因為只是單獨測的演算法,匯編之所以快是快在寄存器的使用上,操作數可以直接入寄存器,但是考慮到程序其他部分是用C語言編寫的話,把操作棧的時間也加上,並不比方案1快。畢竟我對TI的匯編吃的也不透。
在編寫上,無疑是方案1提供了最接近C語言風格的實現,幾乎不用考慮ISA方面的問題。
另外對於執行效率,我覺得主要考慮三點:
1.分支的使用
CCS對C語言的優化我沒做過太多比對。其實單從反匯編的結果看,我接觸過的嵌入式開發環境的編譯器都能做出很好的優化。但是幾乎每個編譯器都會在邏輯的優化上有欠缺——它只能對一些顯而易見的判斷條件進行優化,而在寫程序的過程中,我們經常出於易讀性的考慮,或者穩定性的考慮,或者其他的考慮加入幾乎不會發生的分支,這樣的分支判斷會消耗一定比率的代碼段執行效率,視乎代碼段內有用功能的長度而定,越長這個比率越小,越短這個比率越高。
2.一般操作,就是各種賦值操作
在一般的操作上,編譯器的優化已經很令人滿意了,基本上可以作為編寫匯編的範本。我覺得所謂效率能達到90%就是針對這個部分說的。
3.特殊操作,比如對整塊內存的操作,或者是浮點運算上。
在一些特殊的操作上,就要看是否有現成的庫,或者看硬體是否支持。比如對整塊內存操作就別用循環一個位元組一個位元組的搬了。
以上三點都能考慮到的話,相信執行效率方面已經沒有太大的提升空間了。
另外如果你的代碼發生在初始化部分,也就是只在系統運行開始的時候運行一次,那麼優化不優化其實沒有太大的必要,除非你對系統初始化的時間有嚴格的要求。但是如果你的代碼是作為任務要被反復運行的,那就有優化的必要了。
在CCS里有代碼消耗時鍾周期的統計,如果你覺得某段代碼效率低下的話,可以先分段進行消耗時鍾周期的計算,這樣優化比較有針對性。
❻ 請問DSP的CCS開發平台使用的編程語言是C語言還是C++
主要是C,可以匯編同用
❼ 求ccs工程(c語言)使用f2812模擬輸出頻率50Hz幅值可調的正弦波
使用Code Composer Studio Version: 6.1.1.00022,建立TMS320F2812工程。
1 /*
2 * main.c
3 */
4 #include <stdio.h>
5
6 int main(void) {
7 printf("Hello DSP!\r\n");
8 return 0;
9 }
添加了printf函數想測試一下,然後編譯出錯。
1 #10099-D</a> program will not fit into available memory. placement with alignment/blocking fails for section ".text" size 0x1be0 page 0. Available memory ranges: 2812_RAM_lnk.cmd /2812Test line 86 C/C++ Problem
查閱資料,應該調整-stack和-heap的大小,並且工程庫文件必須選擇rts2800_ml.lib而不是rts2800.lib。不過我修改-stack和-heap如下圖,無效。
更改工程庫文件為rts2800_ml.lib也無效,最後在Project-Properties-Build-Advanced Options-Library Function Assumptions下,Level of printf/scanf support required(--printf_support)選擇minimal,如下圖。編譯通過。