这是第二次写类似的文章了,忽略一些细节,更多内容可以参考:TMS320F280049C 学习笔记2 搭建完全可移植的CCS9.3工程 文件在C:tiC2000Ware_DigitalPower_SDK_3_00_00_00c2000waredevice_supportf2837xsheaderscmd 需要将其复制到工程文件夹 大部分可参考之前的博文,有一个多出来的文件重复定义了一些关键函数,目前把这个在编译中除外了 令LaunchPad的红色Led闪烁的程序
参考资料位于C:tiC2000Ware_DigitalPower_SDK_3_00_00_00c2000waredevice_supportf2837xsdocs 的《F2837xS_FRM_EX_UG.pdf》
1. 工程文件复制
CCS新建空白工程
官方文件拷贝
库文件整理
添加F2837xS_Headers_nonBIOS.cmd
其他修改
还有一点是预定义不同:
预定义_DUAL_HEADERS之后就可以同时使用库函数编程和寄存器编程了。测试代码
#include "F28x_Project.h" #include "device.h" #include "math.h" void main(void) { // 初始化时钟和外设 Initialize device clock and peripherals Device_init(); // 库函数编程初始化 // InitSysCtrl(); // 寄存器编程初始化,与上一行等效 /*//库函数版配置 // 初始化GPIO并设置为推挽输出 Initialize GPIO and configure the GPIO pin as a push-pull output Device_initGPIO(); GPIO_setPadConfig(DEVICE_GPIO_PIN_LED1, GPIO_PIN_TYPE_STD); // Push-pull output or floating input GPIO_setDirectionMode(DEVICE_GPIO_PIN_LED1, GPIO_DIR_MODE_OUT); */ InitGpio(); //寄存器指令配置 GPIO_SetupPinMux(DEVICE_GPIO_PIN_LED1, GPIO_MUX_CPU1, 0); GPIO_SetupPinOptions(DEVICE_GPIO_PIN_LED1, GPIO_OUTPUT, GPIO_PUSHPULL); // 初始化PIE并清空PIE寄存器,关闭CPU中断 // Initialize PIE and clear PIE registers. Disables CPU interrupts. Interrupt_initModule(); // 初始化PIE向量表 // Initialize the PIE vector table with pointers to the shell Interrupt // Service Routines (ISR). Interrupt_initVectorTable(); // Enable Global Interrupt (INTM) and realtime interrupt (DBGM) EINT; ERTM; float a=cos((float)3.1415926/4); // FPU32 float b=__sin((float)(3.14/4)); // TMU for(;;) { // Turn on LED // 硬件电路设计是GPIO输出低电平时LED亮 GPIO_writePin(DEVICE_GPIO_PIN_LED1, 0); // 延迟0.5s Delay for a bit. DEVICE_DELAY_US(500000); // Turn off LED GPIO_writePin(DEVICE_GPIO_PIN_LED1, 1); // Delay for a bit. DEVICE_DELAY_US(500000); } }
本网页所有视频内容由 imoviebox边看边下-网页视频下载, iurlBox网页地址收藏管理器 下载并得到。
ImovieBox网页视频下载器 下载地址: ImovieBox网页视频下载器-最新版本下载
本文章由: imapbox邮箱云存储,邮箱网盘,ImageBox 图片批量下载器,网页图片批量下载专家,网页图片批量下载器,获取到文章图片,imoviebox网页视频批量下载器,下载视频内容,为您提供.
阅读和此文章类似的: 全球云计算