DSP學習筆記----GPIO學習及實驗(附程式)
阿新 • • 發佈:2018-12-17
一. GPIO暫存器
TMS320VC5509A有八個GPIO引腳. 它的配置暫存器有兩個:
GPIO方向暫存器IODIR 和 GPIO資料暫存器IODATA
- GPIO方向暫存器(IODIR):
位 | 欄位 | 說明 |
15~8 | Rsvd | 保留 |
7~0 | IOxDIR |
IOx方向控制位。 0:IOx配置為輸入 1:IOx配置為輸出 |
- GPIO資料暫存器(IODATA):
位 | 欄位 | 說明 |
15~8 | Rsvd | 保留 |
7~0 | IOxDATA |
IOx邏輯狀態位 0:IOx引腳為低電平 1:IOx引腳為高電平 |
- 標頭檔案:
#include"csl_gpio.h"
#include"csl.h"
#include"csl_pll.h"
- GPIO_RSET()
GPIO_RSET()方法用來配置GPIO的暫存器,第一個引數是配置的暫存器,第二個引數是寫入暫存器的值。
e.g.
GPIO_RSET(IODIR,0xFF); //GPIO方向配置為輸出(1)
GPIO_RSET(IODATA,0xFF); //GPIO八個腳全輸出高電平
二.程式:
#include"csl_gpio.h" #include"csl.h" #include"csl_pll.h" void delay() { int ii,jj,kk=0; for ( ii=0;ii<1000;ii++ ) { for ( jj=0;jj<2048;jj++ ) { kk++; } } } PLL_Config myConfig ={ 0, 1, 24, 1 }; void main() { CSL_init(); PLL_config(&myConfig); // GPIO_RSET(IODIR,0xFF); //GPIO方向配置為輸出(1) while(1) //閃爍---這裡接的是蜂鳴器啦 { GPIO_RSET(IODATA,0x00); delay(); GPIO_RSET(IODATA,0x80); delay(); } }