当前位置: 首页 > news >正文

【FPGA+DSP系列】——(1)CCS创建工程+LED点亮

【FPGA+DSP系列】——CCS创建工程+LED点亮

  • 前言
  • 一、创建新工程
  • 二、编写代码
  • 总结

前言

本项目用到的DSP芯片为TMS320F28335,CCS12.4版本,仿真器V3。初次学习DSP开发,主要学习CCS软件的使用以及复习以前丢到的c语言知识,尤其是指针/结构体等等。

一、创建新工程

准备东西:这个是ti提供的一些库文件,方便后续进行开发使用。
在这里插入图片描述
第一步创建工程,需要提前在某个盘中新建一个文件夹,负责保存CCS的项目工程。然后就是NEW CCS PROJECT
在这里插入图片描述
第二步:配置相关参数,主要就是芯片 仿真器
在这里插入图片描述
这是创建完的基本工程长这个样子。
在这里插入图片描述
第三步,在这个工程的下面创建3个文件夹,分别是Library存放库文件, APP存放外设文件,USER存放主函数main
在这里插入图片描述
第四步导入需要的文件,把下面提到的文件都要复制到你新工程的Library里去。
第一个是仿真器下载的文件(28335_RAM_lnk),这个文件是不把代码下进flash,掉电就消失,如果要固化程序的话,需要使用另一个F28355这个cmd文件。

在这里插入图片描述
第二个常用的文件是数学函数相关的,用第一个一般就够用了。
在这里插入图片描述
第三个是把common里面soure里面的所有文件复制过去,后面肯定会报错,到时候再说删哪些文件。!!!
在这里插入图片描述
第四个是headers里面的source文件
在这里插入图片描述
第五步删除文件,把这个自动生成的cmd文件删除了。
在这里插入图片描述
第六步是把这个library文件放到和LED工程一个级别的目录下,然后添加路径。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
复制文件夹的路径
在这里插入图片描述
添加完后的样子
在这里插入图片描述
第七步添加主函数
在这里插入图片描述

/** main.c**  Created on: 2025年9月26日*      Author: DELL*/#include "DSP2833x_Device.h"
#include "DSP2833x_Examples.h"void main()
{}

加入代码编译,看报不报错
把这些报错的.c文件都删了,这些都是刚才放到library文件里面的
在这里插入图片描述
把这里面都删了就行了。

二、编写代码

/** main.c**  Created on: 2025年9月26日*      Author: DELL*/#include "DSP2833x_Device.h"
#include "DSP2833x_Examples.h"void main()
{InitSysCtrl();EALLOW;SysCtrlRegs.PCLKCR3.bit.GPIOINENCLK=1;GpioCtrlRegs.GPBPUD.bit.GPIO48=0;           //关闭上拉GpioCtrlRegs.GPBDIR.bit.GPIO48=1;                      //输出模式GpioCtrlRegs.GPBMUX2.bit.GPIO48=0;          //作为普通GPIO模式EDIS;while(1){GpioDataRegs.GPBTOGGLE.bit.GPIO48=1;DELAY_US(50*10000);}}

加进去编译没问题。
下载进去就行。
在这里插入图片描述
LED引脚看自己的引脚图,然后这个引脚需要对应寄存器,需要看一下手册。

在这里插入图片描述
这边下载正常,将代码改为led.h led.c的格式

首先是声明文件

/** led.h**  Created on: 2025年9月26日*      Author: DELL*/#ifndef APPS_LED_LED_H_
#define APPS_LED_LED_H_#include "DSP2833x_Device.h" // DSP2833x 头文件
#include "DSP2833x_Examples.h" // DSP2833x 例子相关头文件
#define LED1_BLINK (GpioDataRegs.GPBTOGGLE.bit.GPIO48=1)void LED_init(void);
void LED_BLINK(void);#endif /* APPS_LED_LED_H_ */

其次是.c文件

/** led.c**  Created on: 2025年9月26日*      Author: DELL*/
#include "led.h" // DSP2833x 头文件void LED_init(void)
{EALLOW;SysCtrlRegs.PCLKCR3.bit.GPIOINENCLK=1;GpioCtrlRegs.GPBPUD.bit.GPIO48=0;           //关闭上拉GpioCtrlRegs.GPBDIR.bit.GPIO48=1;                      //输出模式GpioCtrlRegs.GPBMUX2.bit.GPIO48=0;          //作为普通GPIO模式EDIS;
}void LED_BLINK(void)
{LED1_BLINK;DELAY_US(50*10000);
}

最后是主函数文件

/** main.c**  Created on: 2025年9月26日*      Author: DELL*/#include "DSP2833x_Device.h"
#include "DSP2833x_Examples.h"
#include "led.h" // DSP2833x 头文件
void main()
{InitSysCtrl();LED_init();while(1){LED_BLINK();}}

总结

ccs不装在c盘也可以,用户名是中文也能解决,不过需要增加新账户,每次还得切换账户,最好的方案就是重装系统,不过我目前还是选择新建账户吧,用户名切记用英文,真的伤呀!
还有就是dsp这边只有寄存器编程么,没有像arm那种封装好的库函数么?

http://www.dtcms.com/a/410152.html

相关文章:

  • Windows 作为 Ansible 节点的完整部署流程(含 Docker 部署 Ansible)
  • 今日面试之快问快答:Redis篇
  • 微论-神经网络的亲情密码,权重矩阵的家庭关系论
  • 建个个人网站一年多少钱凡科网网页版登录入口
  • html论坛网站模板小企业网站建设公司
  • 邮件服务器软件哪个好?2025邮件服务器软件推荐
  • langchain-基于agent架构的开发
  • vector深度求索(下)模拟篇
  • 服务器密码错误被锁定如何解决?
  • 远程软件横评:UU远程、ToDesk、向日葵
  • 金仓数据库替代MongoDB:电子证照系统国产化改造实战
  • 关于XLang语言的第三轮答疑
  • 地图网站开发企业网站模板素材
  • Nginx生产环境编译配置升级回退新增模块全解析
  • wordpress 企业站开发wordpress主题配置文件
  • OpenAI携手SAP与微软:推动德国公共部门主权云AI落地
  • NVIDIA Dynamo深度解析:如何优雅地解决LLM推理中的KV缓存瓶颈
  • 三星首款XR头显亮相高通骁龙峰会,微美全息多场景覆盖巩固VR/AR竞争力
  • Redis03-缓存知识点
  • 5网站开发项目经理接到网站开发怎么开展
  • 云原生周刊:K8s 故障排查秘籍
  • D017 vue+django+neo4j音乐知识图谱推荐可视化分析系统|带管理员角色+爬虫
  • 设计模式(C++)详解——迭代器模式(1)
  • 怎么知道网站有没有做301重定向建立网站商城建议
  • 仁寿建设局网站青岛专业网站排名推广
  • Notepad++ 本地提权漏洞|复现|分析
  • HCIP-IoT 真题详解(章节D),嵌入式基础与南向开发 /Part1
  • JavaEE初阶3.0
  • 【网络协议】IoT 设备入网认证机制
  • 微信小程序学习(二)