【DSP学习】【从零开始新建工程点亮LED】【28377S】

这篇博客介绍了如何从零开始使用Code Composer Studio(CCS)建立DSP工程并点亮LED。步骤包括新建项目、添加头文件和源文件、设置项目属性、查阅芯片技术手册理解PIN复用,并编写main函数。强调了软件版本更新、文件目录全英文、以及控制SUITE的使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

注意1: 官网下载:Code Composer Studio  ,我用的 Version: 9.3.0.00012 (应该是越新越好)

注意2:所有软件文件、工程文件均放在【纯英文/数字】目录下

注意3:官网下载:controlSUITE(如果出现打开空白,删除安装目录下的\ti\controlSUITE\eclipse\workspace\.metadata  中,.metadata 文件夹)

 

 

LED点灯步骤:

步骤1.新建空白的CCSproject

b112653057d94273ad49333306e83483.png

4c544667fd0947a29135734df1716bf5.png

步骤2:添加【头文件(xx.c)】、【源文件(xx.h)】、【cmd文件(xx.cmd)】

文件来源:controlSUITE

步骤2.1:在工程中新建文件夹,用于放置各类文件。

右键选择你的工程

490c24ca93fa429e8094e09cefc692fb.png

2c476eff28b8459fba4077aa638f7333.png

 

步骤2.2:打开【C:\ti\controlSUITE\device_support\F2837xS\v210】(具体看个人安装位置),把【头文件(xx.h)】放进【F2837xS_headers文件夹】,把【源文件(xx.c)】放进【F2837xS_common文件夹】,把cmd文件放进工程主目录

头文件位置1:C:\ti\controlSUITE\device_support\F2837xS\v210\F2837xS_headers\include,文件夹所有

头文件位置2:C:\ti\controlSUITE\device_support\F2837xS\v210\F2837xS_common\include,文件夹所有

源文件位置1:C:\ti\controlSUITE\device_support\F2837xS\v210\F2837xS_common\source,文件夹所有

源文件位置2:C:\ti\controlSUITE\device_support\F2837xS\v210\F2837xS_headers\source,文件夹所有

cmd文件位置1:C:\ti\controlSUITE\device_support\F2837xS\v210\F2837xS_headers\cmd,文件夹中的F2837xS_Headers_nonBIOS.cmd

 

步骤3:设置【properties】

3945f52569e8429ba2546f30ad7ac121.png

步骤3.1:【properties】中添加【头文件】

b6815907e2484ad2b57f49387252dbe1.png

步骤3.2:尝试build,如有报错则百度

0073245759b44d5dafbfc604cca7534a.png


步骤4:电路图 与 芯片技术手册(TMS320F2837xS Microcontrollers Technical Reference Manual )中的PIN复用表

如图所示,LED1由69号PIN控制,即33号GPIO。可在PIN复用表中找到该PIN具备哪些功能,如何启用某个功能,(或者把GPxMUX寄存器设置为相应的值,)

8f5a665cd58b44db9b85eb273993ed40.png

上图为—电路图

68e30ed9810f4ef59481ab18c419aafd.png

上图为—芯片技术手册—PIN复用表

 

步骤5:编写main

#include "F28x_Project.h"
#include "F2837xS_device.h"
#include "math.h"

void main(void)
{
	memcpy(&RamfuncsRunStart, &RamfuncsLoadStart, (size_t)&RamfuncsLoadSize);
	//该指令为解决调用DELAY_US()函数会进入死循环中断的BUG;

       InitSysCtrl();//初始化控制系统。
       //1)关闭看门狗。2)初始化PLL,确定系统主时钟。3)初始化外设时钟。

        DINT;//汇编指令:关闭中断

        InitPieCtrl();//初始化pie控制寄存器

        EALLOW;//汇编指令:受保护的寄存器可写入

        IER = 0x0000;//关闭CPU中断并清除所有CPU中断信号
        IFR = 0x0000;

        EDIS;//汇编指令:受保护的寄存器禁止写入

        InitPieVectTable();//初始化PIE

        InitGpio();  //初始化GPIO

        //以下寄存器配置
        GPIO_SetupPinMux(33, GPIO_MUX_CPU1, 0);
//启用【第一个CPU】的【33号GPIO】的【第一个功能】
        GPIO_SetupPinMux(34, GPIO_MUX_CPU1, 0);//

        GPIO_SetupPinOptions(33, GPIO_OUTPUT, GPIO_OPENDRAIN);
//把【GPIO33】设置为【输出模式】+【开漏模式】
        GPIO_SetupPinOptions(34, GPIO_OUTPUT, GPIO_PUSHPULL);
//把【GPIO34】设置为【输出模式】+【推挽模式】

/*
#define GPIO_PUSHPULL      0                                  推挽模式
#define GPIO_PULLUP        (1 << 0)						    上拉模式
#define GPIO_INVERT        (1 << 1)							翻转模式
#define GPIO_OPENDRAIN     (1 << 2)						开漏模式
#define GPIO_PULLUP|GPIO_ASYNC					上拉模式(不要让输入悬空)和异步模式
*/

    for(;;)
    {
        DELAY_US(500000);//延时
        GPIO_WritePin(33, 1);//输出高电平,灭
        GPIO_WritePin(34, 1);//
        DELAY_US(500000);//延时
        GPIO_WritePin(33, 0);//输出低电平,亮
        GPIO_WritePin(34, 0);//
    }


}

 

 

 

TI公司现在主推四大系列DSP 1)C5000 系列(定点、低功耗) :C54X,C54XX,C55X 相比其它系列的主要特点是低 功耗,所以最适合个人与便携式上网以及无线通信应用,如手机、PDA、GPS 等应用。 处理速度在80MIPS--400MIPS之间。C54XX和C55XX 一般只具有McBSP同步串口、 HPI并行接口、定时器、DMA等外设。值得注意的是C55XX提供了EMIF外部存储 器扩展接口,可以直接使用SDRAM,而C54XX则不能直接使用。两个系列的数字IO 都只有两条。 2)C2000系列(定点、控制器) :C20X,F20X,F24X,F24XX ,C28x该系芯片具有大量 外设资源,如:A/D、定时器、各种串口(同步和异步) ,WATCHDOG、CAN总线/PWM发 生器、数字IO脚等。是针对控制应用最佳化的DSP,在TI所有的DSP中,只有 C2000有FLASH,也只有该系列有异步串口可以和PC的UART相连。 3)C6000系列:C62XX,C67XX,C64X 该系列以高性能著称,最适合宽带网络和数字 影像应用。32bit,其中:C62XX和C64X是定点系列,C67XX 是浮点系列。该系列提供 EMIF扩展存储器接口。该系列只提供BGA封 装,只能制作多层PCB。且功耗较 大。同为浮点系列的 C3X 中的 VC33 现在虽非主流产品,但也仍在广泛使用,但 其速度较低,最高在 150MIPS。 4)OMAP系列:OMAP处理器集成ARM的命令及控制功能,另外还提供DSP的低功 耗实时信号处理能力,最适合移动上网设备和多媒体家电。 其他系列的DSP曾经有过风光,但现在都非TI主推产品了,除了C3X系列外,其他 基本处于淘汰阶段,如:C3X的浮点系列:C30,C31,C32C2X和C5X系列:C20, C25,C50每个系列的DSP都有其主要应用领域. 2、设计中如何得到技术参考资料以及如何得到相关源码 原则是碰到问题就去www.ti.com 1) 在TI网站的搜索中用keyword搜索资料, 主要要注意的就是ApplicationNotes, userguides 比如不知道怎样进行VC5402的McBSP编程,搜McBSP和VC5402 如果不知道如 何设计VC5402和TLV320AIC23的接口以及编程,搜TLV320AIC23和VC5402; 这 样可以搜到一堆的资料,这些资料一般均有PDF文档说明和相应的源程序包提供, download后做少许改动即可
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值