TMS320F2837x開發例程使用手冊(3)
基于裸機單核開發Demo例程演示
所有工程均位于光盤"Demo\DSP_F2837xS\NonOS\Application"文件夾內。
本章節講述在不使用操作系統的情況下,基于創龍TL2837x-EasyEVM開發板的例程演示。具體連接CCS時芯片選型根據實際情況而定。
LED——GPIO輸出LED流水燈
本例程的作用是實現GPIO輸出功能。底板的4個LED:LED1、LED2、LED3、LED4和核心板的2個LED:LED1、LED2都做流水燈。
按照工程導入步驟加載LED.out文件,然后點擊程序運行
按鈕可以看到相應的現象。
KEY_LED——GPIO輸入按鍵中斷(查詢方式)
本例程的作用是實現GPIO輸入功能,使用查詢方式檢測KEY1,KEY2和KEY3。
按照工程導入步驟加載KEY_LED.out文件,然后點擊程序運行按鈕。
演示現象:
KEY1控制LED1的亮滅,KEY2控制LED2的亮滅,KEY3控制LED3的亮滅。
圖 57
KEY_LED_FLASH——檢測按鍵控制LED實驗(FLASH程序固化)
本例程使用查詢方式檢測KEY1,KEY2和KEY3。
按照工程導入步驟加載KEY_LED_FLASH.out文件,然后點擊程序運行按鈕。程序會自動固化到FLASH中,以便測試FLASH啟動是否正常。
演示現象:
KEY1控制LED1的亮滅,KEY2控制LED2的亮滅,KEY3控制LED3的亮滅。
DC_MOT——直流電機測試
本例程的作用是通過PWM驅動直流電機,通過按鍵調節電機速度和方向,KEY1加速,KEY2減速。
按照工程導入步驟加載DC_MOT.out文件,然后點擊程序運行按鈕。
演示現象:
板上白色接線端子J3連接直流電機,通過KEY1、KEY2調節電機速度。
STEP_MOT——步進電機測試
本例程依次控制GPIO150~GPIO147分別輸出高電平,步進電機逆時針轉動。可以根據需要在程序中修改管腳輸出電平的高低以達到旋轉不同方向。
按照工程導入步驟加載STEP_MOT.out文件,然后點擊程序運行按鈕。
演示現象:
板上白色接線端子J4連接步進電機,程序運行后可以看到步進電機逆時針轉動。
RELAY——繼電器測試
本例程的作用是通過GPIO控制繼電器的閉合與斷開,每隔1s通斷1次。
按照工程導入步驟加載RELAY.out文件,然后點擊程序運行按鈕。
演示現象:
運行程序后GPIO會反復控制繼電器的閉合與斷開,LED5相應的發生亮與滅。
SRAM——SRAM存儲器測試
本例程的作用是先向sram寫入0x5555,讀回并校驗數據;再寫入0xaaaa,讀回并校驗數據;寫入遞增數據,讀回并校驗數據。測試結果通過串口A打印。
按照工程導入步驟加載SRAM.out文件,然后點擊程序運行按鈕。
演示現象:
運行程序后可在串口調試工具看到打印信息,如圖所示:
圖 58
NOR_FLASH——NOR FLASH存儲器測試
本例程是NOR FLASH存儲器讀寫測試,向FLASH寫入100個字節再讀回來,校驗數據是否正確,測試結果通過串口A打印。
按照工程導入步驟加載NOR_FLASH.out文件,然后點擊程序運行按鈕。
演示現象:
運行程序后可在串口調試工具看到打印信息,如圖所示:
圖 59
EEPROM——EEPROM存儲器測試
本例程是通過IIC向EEPROM的0x0~0xf地址寫入0x0~0xf數據,讀回并校驗數據,測試結果通過串口A打印。
按照工程導入步驟加載EEPROM.out文件,然后點擊程序運行按鈕。
演示現象:
運行程序后可在串口調試工具看到打印信息,如圖所示:
圖 60
PWM_BUZZER——蜂鳴器測試
本例程的作用是通過PWM驅動蜂鳴器發聲,通過按鍵可以調節PWM占空比,KEY1占空比增加,KEY2占空比減小。
按照工程導入步驟加載PWM_BUZZER.out文件,然后點擊程序運行按鈕。
演示現象:
蜂鳴器發聲,按下KEY1聲音頻率升高,按下KEY2聲音頻率降低。
圖 61
SCIA——串口A測試(USB轉UARTA)
使用Micro USB線連接開發板接線端子CON2和PC機,打開串口調試助手,設置波特率為115200,DSP通過串口A接收到字符后,會通過串口A打印出來。
按照工程導入步驟加載SCIA.out文件,然后點擊程序運行按鈕。
演示現象:
運行程序后可在串口調試工具看到打印輸入的字符信息,如圖所示:
圖 62
SCIB——串口B測試(RS232轉UARTB)
使用USB轉串口模塊連接開發板接線端子CON3和PC機,上位機設置串口波特率為115200,DSP通過串口B接收到字符后,會通過串口B打印出來,請注意一次只能發送一個字符且不能有回車換行,否則會導致串口死機需要斷電重啟。
按照工程導入步驟加載SCIB.out文件,然后點擊程序運行按鈕。
演示現象:
運行程序后可在串口調試工具看到打印輸入的字符信息,如圖所示:
圖 63
REMOTE——紅外遙控遙控解碼實驗
本例程本程序演示紅外遙控解碼實驗,解碼成功得到的地址和數據,并通過串口A打印輸出,LED1作為指示,亮時表明正在解碼,滅時表明未在解碼。
按照工程導入步驟加載REMOTE.out文件,然后點擊程序運行按鈕。
演示現象:
運行程序后可在串口調試工具看到按下不同的按鍵串口會打印輸出與該按鍵相對應的編碼,如圖所示:
圖 64
ADC_SOC——ADC周期觸發采樣實驗
本例程會一直采集通道ADCINA0~ADCINA5,ADCINB0~ADCINB5,ADCIN14,ADCIN15,ADCINC2~ADCINC5,ADCIND0~ADCIND5的AD數據,并且通過串口A打印。電壓值計算公式:輸入模擬電壓=采樣值*3/4095。
按照工程導入步驟加載ADC_SOC.out文件,然后點擊程序運行按鈕。
演示現象:
運行程序后可在串口調試工具看到AD數據,如圖所示:
圖 65
ADC_SOC_DIFF——16bit差分輸入模式周期觸發采樣實驗
本例程把ADCA的所有通道配置為差分輸入模式,它會一直采集通道ADCINA0-ADCINA1,ADCINA2-ADCINA3,ADCINA4-ADCINA5的AD數據,
按照工程導入步驟加載ADC_SOC.out文件,然后點擊程序運行按鈕。
演示現象:
運行程序后,可在串口調試工具看到數據,如下圖所示:
圖 66
實際的電壓值請在CCS窗口中查看Adca_V的值。如下圖所示:
圖 67
電壓值計算公式:輸入模擬電壓=(采樣值*2/65536-1)*3.0計算方法見“TMS320F2837xS Delfino Microcontrollers Technical Reference Manual”文檔第1184頁。
DAC——DAC輸出電壓實驗
本例程使DACA(底板J5 A0)輸出電壓,默認值為1.5V,通過KEY1可以增加輸出電壓,通過KEY2可以減小輸出電壓。
按照工程導入步驟加載DAC.out文件,然后點擊程序運行按鈕。
演示現象:
用萬用表測量DACA(底板J5 A0)的輸出電壓。
DAC_SIN——DAC輸出正弦波實驗
本例程使DACA (底板J5 A0) 輸出正弦波,通過片上DAC輸出正弦波。
按照工程導入步驟加載DAC_SIN.out文件,然后點擊程序運行
按鈕。
演示現象:
運行程序后,可在串口調試工具看到數據,如下圖所示:
圖 68
用示波器觀察波形如下圖所示:
圖 69
EQEP_FREQCAL——頻率測量
本例程使用EPWM產生輸出信號,利用EQEP的計數單元和捕獲單元進行頻率測量,分別采用了計數法和測周法計算輸入信號的頻率。測量的頻率值會在串口打印輸出。實驗時請用杜邦線連接J6-PIN1與J7-PIN1。
按照工程導入步驟加載EQEP_FREQCAL.out文件,然后點擊程序運行按鈕。
演示現象:
運行程序后,可在串口調試工具看到數據,如下圖所示:
圖 70
通過按鍵可以改變EPWM輸出信號的頻率,按KEY1時頻率增加,按KEY2時頻率減小。
EQEP_POS_SPEED——速度測量
本例程使用EPWM產生正交輸出信號,利用EQEP的計數單元和捕獲單元進行速度測量,分別采用了計數法和測周法計算輸入信號的頻率轉換為電機的速度。測量的速度值會在串口打印輸出。實驗時請用杜邦線連接J6-PIN1與J7-PIN1以及J6-PIN3與J7-PIN3。
按照工程導入步驟加載EQEP_POS_SPEED.out文件,然后點擊程序運行按鈕。
演示現象:
運行程序后,可在串口調試工具看到數據,如下圖所示:
圖 71
通過按鍵可以改變EPWM輸出信號的頻率,按KEY1時頻率增加,按KEY2時頻率減小。這里我們假設電機一轉輸出500個脈沖,如果EPWM產生正交輸出信號頻率為5K,則電機的轉速為5000/500=10轉/秒=600轉/分鐘
CPU_TIMER——CPU定時器實驗
本例程通過配置定時器產生中斷時間,在中斷函數中控制核心板的LED1。
按照工程導入步驟加載CPU_TIMER.out文件,然后點擊程序運行按鈕。
演示現象:
LED1循環點亮和熄滅。串口打印信息如下圖所示:
圖 72
SPI_LOOPBACK——SPI回環測試實驗
本例程測試SPI,使用的回環模式,在芯片內部已經將主-從機連接,外部不需要硬件連接。通過收發數據,然后進行校驗,根據檢驗結果,串口會打印出相關的提示信息(測試成功或者失敗)。
按照工程導入步驟加載SPI_LOOPBACK.out文件,然后點擊程序運行按鈕。
演示現象:
運行程序后,可在串口調試工具看到數據,如下圖所示:
圖 73
SPI_LOOPBACK_DMA——SPI回環實驗(DMA方式)
本例程測試SPI,使用的回環模式,在芯片內部已經將主-從機連接,外部不需要硬件連接。通過收發數據,然后進行校驗,根據檢驗結果,串口會打印出相關的提示信息(測試成功或者失敗)。
按照工程導入步驟加載SPI_LOOPBACK_DMA.out文件,然后點擊程序運行按鈕。
演示現象:
運行程序后,可在串口調試工具看到數據,如下圖所示:
圖 74
CLA_ADC——CLA_ADC實驗
本例程會通過CLA控制ADC模塊一直采集通道ADCINA0~ADCINA5,ADCINB0~ADCINB5,ADCIN14,ADCIN15,ADCINC2~ADCINC5,ADCIND0~ADCIND5的AD數據,電壓值計算公式:輸入模擬電壓=采樣值*3/4095。
SOC6將轉換ADCIN14引腳的輸入,SOC7將轉換ADCIN15引腳的輸入,把ADCIN14、ADCIN15結果存入了AdccResult[0]、AdccResult[1]。
按照工程導入步驟加載CLA_ADC.out文件,然后點擊程序運行
按鈕。
演示現象:
在CCS窗口中觀察計算得到的實際電壓值Adca_V,Adcb_V,Adcc_V,Adcd_V,如下圖所示:
圖 75
CLA_SQRT——CLA開方運算實驗
本例程演示利用CLA核進行開方運算。
按照工程導入步驟加載CLA_SQRT.out文件,然后點擊程序運行
按鈕。
演示現象:
運行程序后,可在串口調試工具看到數據,如下圖所示:
圖 76
ECAP_APWM——ECAP_APWM實驗
本例程功能為配置ECAP為APMW模式,在GPIO5管腳可以查看到PWM波形。
按照工程導入步驟加載ECAP_APWM.out文件,然后點擊程序運行
按鈕。
演示現象:
使用示波器觀察波形如下圖所示:
圖 77
ECAP_CAPTURE_PWM——ECAP_CAPTURE_PWM實驗
注意:實驗時必須連接EPWM31/GPIO145和EPWM3A/GPIO149引腳,即用杜邦線連接J6-PIN1與J6-PIN5。使用示波器觀察ePWM3A輸出的波形時,也必須保持J6-PIN1與J6-PIN5的連接。
本例程演示ECAP捕獲PWM輸入,eCAP1使用EPWM31/GPIO145管腳,工作在雙邊沿捕獲模式,捕獲ePWM3A的輸出,在捕獲中斷中會改變ePWM3A的頻率。請在CCS窗口中觀察ECap1IntCount和ECap1PassCount變量。
按照工程導入步驟加載ECAP_CAPTURE_PWM.out文件,然后點擊程序運行
按鈕。
演示現象:
如下圖所示:
圖 78
實驗中可使用示波器觀察ePWM3A輸出的波形,如下圖所示:
圖 79
ImageReverse——圖像取反
本例程的作用是,實現圖片的黑白顏色調換。
使用Micro USB線連接開發板接線端子CON2和PC機,打開串口調試助手,設置波特率為115200。
按照工程導入步驟加載ImageReverse.out文件,然后點擊程序運行
按鈕。
演示現象:
運行程序后,可在串口調試工具看到打印輸入的字符信息,如圖所示:
圖 80
點擊"Tools->Image Analyzer",如下圖所示:
圖 81
在Console旁邊彈出的Image窗口中右擊鼠標,在彈出的菜單欄中選擇"Import Properties",如下圖所示:
圖 82
選擇in.txt配置文件,位于ImageReverse工程Image目錄下,如下圖所示:
圖 83
選擇后顯示原圖片,如下圖所示:
圖 84
在Properties屬性可看到in.txt文件的設置參數,如下圖所示:
圖 85
新建一個Image窗口查看轉換后的圖片效果,點擊"Tools->Image Analyzer",如下圖所示:
圖 86
在Console旁邊彈出的Image窗口中右擊鼠標,在彈出的菜單欄中選擇"Import Properties",如下圖所示:
圖 87
選擇out.txt配置文件,位于ImageReverse工程Image目錄下,如下圖所示:
圖 88
選擇后顯示轉換后的圖片,如下圖所示:
圖 89
在Properties屬性可看到out.txt文件的設置參數,如下圖所示:
圖 90
WATCHDOG——WATCHDOG看門狗實驗
本例程演示了通過看門狗產生一個中斷時間,中斷事件每產生一次計WakeCount加一,用右鍵“Add Watch?Expression…”,可在變量窗口查看變量的數值。
按照工程導入步驟加載WATCHDOG.out文件,然后點擊程序運行
按鈕。
演示現象:
如下圖所示:
圖 91
Flash 單片機
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。