C2000 LAUNCHPAD 编程学习

C2000 LAUNCHPAD 编程学习
C2000 LAUNCHPAD 编程学习

C2000编程学习

Xuan 1GPIO初始化--采用结构体定义控制寄存器方式(易于操控个别位,代码效率高) #include"f2802x_common/include/gpio.h"//首先包含头文件

GPIO_Handle myGpio;//定义了一个指向GPIO寄存器的句柄,就是指针(居然这么写)

//接下是初始化这个句柄

//GPIO_BASE_ADDR是GPIO的首地址

//myGpio指向这个地址,以后控制GPIO就用这个句柄了

//怎么感觉是windows编程呢!!不懂

myGpio=GPIO_init((void*)GPIO_BASE_ADDR,sizeof(GPIO_Obj));

//然后设置端口模式

GPIO_setMode(myGpio,GPIO_Number_0,GPIO_0_Mode_GeneralPurpose);

//设置端口方向

GPIO_setDirection(myGpio,GPIO_Number_0,GPIO_Direction_Output);

//输出拉高

GPIO_setHigh(myGpio,GPIO_Number_0);

//输出拉低

GPIO_setLow(myGpio,GPIO_Number_0);//以上均为操作GPIO_Number_0 //这种编程的方法怎么有点像windows程序设计呢!

//把GPIO寄存器组看成一个object然后用句柄来指向它,以后只要使用这个//句柄就ok

//C:\ti\controlSUITE\development_kits\C2000_LaunchPad\f2802x_common\source //就是让GPIO结构体类型的指针指向器件GPIO的物理地址

GPIO_Handle GPIO_init(void*pMemory,const size_t numBytes)

{

GPIO_Handle gpioHandle;

if(numBytes

{

return((GPIO_Handle)NULL);

}//assign the handle

gpioHandle=(GPIO_Handle)pMemory;

return(gpioHandle);

}

第一次用TI的库函数感觉不错

熟悉内核工作过程后使用起来应该很方便

1.f2802x_headers文件夹下包含了在使用直接将寄存器访问模式时所需要提供的文件

寄存器直接访问

GpioCtrlRegs.GPAPUD.bit.GPIO0=0;

GpioCtrlRegs.GPAMUX1.bit.GPIO0=1;

2.f2802x_common文件夹为外设库访问模式提供的一些支持文件也就是API访问先定义,后使用原则

GPIO_Handle myGpio;

//定义myGpio=GPIO_init((void*)GPIO_BASE_ADDR,sizeof(GPIO_Obj));//初始化使用外设

GPIO_setPullUp(myGpio,GPIO_Number_0,GPIO_PullUp_Enable);

GPIO_setMode(myGpio,GPIO_Number_0,GPIO_0_Mode_EPWM1A);

相关主题
相关文档
最新文档