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

基于TMS320X281X/F28335的DSP入门到精通01_如何开始DSP的学习与开发

本部分开始基于《手把手教你学DSP—基于TMS320X281X》,《手把手教你DSP基于MS320F28335 》、《TMS320X281x DSP原理及C程序开发》,另外结合B站视频进行DSP嵌入式的学习。
《手把手教你学DSP—基于TMS320X281X》介绍的相对更为基础和详细,《手把手教你DSP基于TMS320F28335 》则是对前者的升级,一般掌握了TMS320X281X对于TMS320F28335也不会有大的问题。
后面的介绍也是以《手把手教你学DSP—基于TMS320X281X》作为主线进行的介绍,对于从其他地方补充的,会另外进行说明。

文章目录

  • 1. 初学者在学习DSP之前需要掌握的
  • 2. 如何选择DSP
  • 3. TI DSP 具体型号的含义
  • 4. DSP开发所需要准备的工具以及开发平台的搭建
    • 4.1 所需要准备的工具
    • 4.2 开发平台的搭建
      • 4.2.1 CCS软件安装
      • 4.2.2 安装仿真器
      • 4.2.3 识别成功之后进行CCS软件的配置
      • 4.2.4 目标板的连接

1. 初学者在学习DSP之前需要掌握的

无论学习哪一款微处理器,无关乎两个部分:一个是硬件,一个是软件。

  • 硬件部分,最好有过MCU或者ARM之类相关微处理器的开发经验,因为硬件上,各个处理器之间是有许多共同点的,设计时处理的方法很多是一样的。当然,如果之前没有接触过硬件知识也不要紧,可以以DSP为起点,慢慢进行积累。
  • 软件部分,需要会C或者C十十,这是必需的,如果没有这个作为基础的话,那DSP开发真的就无从下手了,因为编程的时候总是要用到C语言。当然如果会汇编那自然就更好了。
  • 除了上面两方面的技能之外,如果在信号处理理论方面有一些基础,例如知道时域与频域、s域、z域的变换,知道FFT、各种数字滤波器的知识,那就是锦上添花了。不过,话也说回来,就算现在什么都没学过,什么基础都没有,也是可以从头开始学习的,所以只要能静下心来学习,想要好好学的话,还是没有问题的。

2. 如何选择DSP

首要考虑以下几点:

  • 处理器速度
  • 功耗
  • 存储空间大小:程序和数据的存储空间
  • 片内资源:定时器个数、IO口个数、DMA通道数、终端数

DSP的主要供应商:TI(50%市场份额)、ADI、摩托罗拉、Zilog,TI使用更为广泛

TI公司DSP产品:

  • C2000:数字控制、运动控制
  • C5000:低功耗、手持设备、无线终端应用领域
  • C6000:宽带网络、数字图像处理,只提供BGA封装及多层PCB
  • 达芬奇:安全监控领域
  • OMAP:DSP+ARM核心,双核处理器,集成ARM命令和控制功能结合DSP低功耗实时处理能力,比较适合用在移动上网设备和多媒体家电中
  • Piccolo:控制领域,成本低,可以与单片机竞争

现在使用相对比较多的芯片有定点芯片TMS320F2407、TMS320F2812、TMS320F2808和点芯TMS0F85,其TMS320F2812使用最为广泛,本书也将主要探讨TMS320F2812芯片开发的方方面面。

3. TI DSP 具体型号的含义

在这里插入图片描述

4. DSP开发所需要准备的工具以及开发平台的搭建

4.1 所需要准备的工具

DSP的开发离不开软件工具和硬件工具,如下图所示,软件需要TI公司提供的CCS软件,硬件则需要仿真器和目标板。
在这里插入图片描述

  • CCS最新已经出到了4.0,由于CCS4.0与以往采用的开发平台不一样,所以CCS4.0使用的还是比较少,更多的还是CCS3.3,后期也是以CCS3.3来进行讲解的。
  • 硬件主要包括仿真器和DSP开发板。
    在这里插入图片描述
    仿真器的作用就是链接了CCS软件和DSP芯片,起到了协议转换、数据传输等作用,就像一个桥梁一样,DSP开发时的调试、下载、烧写等操作都是需要通过仿真器来完成的。
    在这里插入图片描述
    《TMS320X281x DSP原理及C程序开发》中提到:
    TI公司提供的DSP系统集成与调试的工具主要包括:
  • 软件仿真器(Simulator);
  • DSK开发套件;
  • 评估板(EVM);
  • 硬件仿真器(主要包括XDS510和XDS560);
  • 集成开发环境(Code Composer Studio)

在确定DSP系统的基本结构和信号处理算法后,使用软件仿真器可以在没有目标系统的情况下,完成DSP软件的设计和调试,并在Simulator模式下仿真验证算法的准确性。Simulator使用编译器、链接器等工具产生目标代码,采用主机文件的形式为仿真器模拟硬件系统提供的数据。此外,在Simulator 模式下,用户也可以设置断点及跟踪模式,调试跟踪程序的执行结果。

DSK开发套件和评估板是TI公司的第三方提供的一种简单的系统评估平台,DSK和EVM除了提供基本的硬件平台外,还提供完整的代码生成工具和调试工具。用户可以使用DSK或EVM完成需要设计系统的硬件性能、软件算法的评估,为确定系统的软/硬件方案提供可靠的依据。

硬件仿真器是功能强大的全速仿真器,用以完成系统的集成与调试。每个DSP器件都提供边界扫描接口(JTAG),通过XDS510或XDS560检测器件内部的寄存器、状态机以及引脚的状态,从而实现对DSP状态的监控。不过XDS510或XDS560硬件仿真器只是一个硬件平台,必须配合主机开发环境(CodeComposerStudio)才能很好地实现系统的集成与调试工作。

在没有目标板的情况下,可以考虑使用软件仿真器来进行软件的开发调试。

4.2 开发平台的搭建

  • 仿真器:HDSP-XDS510 USB2.0
  • 目标板:基于 TI公司的 DSP TMS320F2812的标准化开发平台,例如HELLODSP的HDSP-Basic 2812
  • 软件:CCS软件

4.2.1 CCS软件安装

在win10中下载安装CCS3.3,请参考CCS_3.3.83.20的安装步骤和CCS v3.3在win10电脑上的详细安装步骤,关于在win10下如何安装,TI也有介绍:Using CCS 3.3 with Windows 10,自行下载的话需要注册账号,有需要的话我可以进行安装包的分享。

安装到最后提示如下:
在这里插入图片描述
后来按照点击确定之后按照网上的教程安装了ActivePerl-5.8.8.822-MSWin32-x86-280952,配置好之后就会报以下错误:
在这里插入图片描述

4.2.2 安装仿真器

在 Windows 环境下安装 Code Composer Studio3.1软件后,在桌面上会出现 Setup 和应用程序的两个快捷按钮。SetupCCStudiov3.3应用程序主要用来配置所需要开发的处理器类型、硬件设备的选择情况等, 根据仿真器厂家说明来按照对应的仿真器,大致过程如下:安装驱动;设置计算器识别仿真器;在设备管理器中查看仿真器是否识别安装成功

4.2.3 识别成功之后进行CCS软件的配置

对CCS3.3进行相关的配置操作,为CCS3.3选择需要开发的DSP型号,以及选择支持这个DSP开发的配置文件、仿真器所需要使用的端口等,完成CCS、仿真器和DSP之间对接的配置工作。所有的这些操作都是在Setup Code Composer Studio v3.3软件中完成的。

4.2.4 目标板的连接

连接之后的连接图如下图
在这里插入图片描述
上电顺序:在系统没有加电的情况下将仿真器和HDSP-Super2812的JTAG口连接好;然后将+5V电源插到HDSP-Super2812的电源插座;接着把仿真器的USB口连接到计算机的 USB口上,仿真器红色的POWER灯亮;打开CCS3.3,单击 Debug菜单,然后单击 Con-nect,仿真器绿色的TARGET灯亮,说明CCS3.3已经和DSP通过仿真器链接成功。

下电顺序:和上电时的顺序正好完全相反,单击Debug菜单,然后单击Disconnect,断开CCS3.3和DSP的链接,仿真器绿色的TARGET灯灭;然后关闭CCS3.3,接着将仿真器的USB口从计算机的USB口拔下,仿真器红色的POWER灯灭;再将HDSP-Super2812的+5 V电源拔出:最后可以将仿真器的JTAG口和HDSP-Super2812的JTAG口断开。

相关文章:

基于TMS320X281X/F28335的DSP入门到精通01_如何开始DSP的学习与开发

本部分开始基于《手把手教你学DSP—基于TMS320X281X》,《手把手教你DSP基于MS320F28335 》、《TMS320X281x DSP原理及C程序开发》,另外结合B站视频进行DSP嵌入式的学习。 《手把手教你学DSP—基于TMS320X281X》介绍的相对更为基础和详细,《手…...

Java爬虫获取1688 item_search_img接口详细解析

概述 1688作为中国领先的B2B电商平台,提供了丰富的API接口供开发者获取商品信息。item_search_img接口允许通过图片搜索商品,这对于需要基于图片进行商品查找的应用场景非常有用。本文将详细介绍如何使用Java爬虫技术获取1688的item_search_img接口数据…...

Java 连接 FTP 服务器全解析

Java 连接 FTP 服务器全解析 一、引言 在许多企业级应用和数据处理场景中,与 FTP 服务器进行交互是一项常见且重要的任务。Java 提供了强大的工具和库来实现与 FTP 服务器的连接、文件传输、目录操作等功能。本文将详细介绍如何使用 Java 连接 FTP 服务器&#xf…...

字节跳动C++面试题及参考答案(下)

说说B 树 b + 树 B 树: B 树是一种平衡的多路查找树,它的设计目的是为了减少磁盘 I/O 操作,适用于存储大量的数据并进行高效的查找、插入和删除操作。B 树的节点可以有多个子节点(通常称为多路),每个节点包含多个关键字,关键字之间是有序的。 B 树的结构特点包括:根节点…...

Rabbit MQ知识总结

1.什么是Rabbit MQ? Rabbit MQ是一个开源的消息代理软件,它实现了高级消息队列协议(AMQP); 基本概念 消息:消息是在应用程序之间传递的数据单元。可以是简单的文本信息,可以是复杂的对象。队列:队列是消息的容器&am…...

未来将要被淘汰的编程语言

COBOL - 这是一种非常古老的语言,主要用于大型企业系统和政府机构。随着老一代IT工作人员的退休,COBOL程序员变得越来越少。Fortran - 最初用于科学和工程计算,Fortran在特定领域仍然有其应用,但随着更现代的语言(如Py…...

GO环境安装和配置

安装go环境 wget https://go.dev/dl/go1.22.4.linux-amd64.tar.gz -P /usr/local或者去官网下载安装包 tar -xzf go1.23.4.linux-amd64.tar.gz sudo mv go /usr/local export GOROOT/usr/local/go export GOPATH$HOME/go export PATH$PATH:/usr/local/go/bin source ~/.bashr…...

面试题整理(四)

1.Max transition,leakage优化,hold time ,setup time violation修复的顺序是? 答:先把max transition修复掉,如果max transition有violation,意味着其超出了查找表范围之外,所以计算得到的delay都不是很准的。 其次是把setup修复了,因为setup相对来说,需要减少cell…...

mathtype中如何在公式和序号之间加点

1,右编号插入公式 2,打开样式面板(ctrlshiftalts) 3,选中MTDisplayEquation样式,右击修改 4,点击格式,弹出下拉列表,点击制表位 5,先选中34.67字符&#…...

【电源专题】电源芯片的PG(Power Good)管脚是什么?

在看电源芯片规格书时,你会发现有一些电源芯片有PG管脚。如下ti.com.cn/product/cn/tps56637?qgpn=tps56637规格书所示: 对应的描述是:Open Drain Power Good Indicator, it is asserted low if output voltage is out of PG threshold due to over-voltage, under…...

C/C++圣诞树

系列文章 序号直达链接1C/C爱心代码2C/C跳动的爱心3C/C李峋同款跳动的爱心代码4C/C满屏飘字表白代码5C/C大雪纷飞代码6C/C烟花代码7C/C黑客帝国同款字母雨8C/C樱花树代码9C/C奥特曼代码10C/C精美圣诞树11C/C俄罗斯方块12C/C贪吃蛇13C/C孤单又灿烂的神-鬼怪14C/C闪烁的爱心15C…...

牛客--求小球落地5次后所经历的路程和第5次反弹的高度,称砝码

求小球落地5次后所经历的路程和第5次反弹的高度 描述 假设有一个小球从 hh 米高度自由落下,我们不考虑真实的物理模型,而是简洁的假定,该小球每次落地后会反弹回原高度的一半;再落下,再反弹;……。 求小球…...

cad学习 day6

平面布置图 文字标注: 材料代码(视口外进行标注) 成品家具(移动家具)、定制家具、洁具、家电电器根据封面设计说明内容进行文字标注sc 缩放代码符号, 打印可以看的清楚 家具尺寸图 家具尺寸标注: 家具尺寸; 过道尺寸; 冰箱、洗衣机、马桶(预览尺寸)D 平面内尺寸置为当前, 视…...

Chrome 浏览器插件获取网页 iframe 中的 window 对象

Chrome 浏览器插件获取网页 iframe 中的 window 对象 前言 之前写了篇《Chrome 浏览器插件获取网页 window 对象》文章,是获取当前页面的 window 对象,但是有些页面是嵌入 iframe 的,特别是系统项目主域一样,那就也需要获取 ifr…...

免费线上签字小程序,开启便捷电子签名

虽如今数字化飞速发展的时代,但线上签名小程序的开发制作却并非易事。需要攻克诸多技术难题,例如确保签名的真实性与唯一性,防止签名被伪造或篡改。 要精准地捕捉用户手写签名的笔迹特征,无论是笔画的粗细、轻重,还是…...

IT运维的365天--021 服务器上的dns设置后不起作用

之前在内网搭建了一个和外网同域名的网站,开发同事今天告诉我,程序调试发现可能服务器不能正常访问自己内网的网站内容。于是,今天的故事开始了。 前面的文章在下面列出,当然不看也问题不大,今天的主题是:…...

深信服企业级数据备份与恢复系统(整机裸机恢复)

概述 深信服企业级数据备份与恢复系统可实现无需搭建目标环境,目标机可以是没有操作系统的物理主机或虚拟机,实现异构环境下的裸机恢复。 深信服企业级数据备份与恢复系统支持的多种连接恢复方式: 1. PXE连接恢复:PXE连接需要做…...

Tool之Excalidraw:Excalidraw(开源的虚拟手绘风格白板)的简介、安装和使用方法、艾米莉应用之详细攻略

Tool之Excalidraw:Excalidraw(开源的虚拟手绘风格白板)的简介、安装和使用方法、艾米莉应用之详细攻略 目录 Excalidraw 简介 1、Excalidraw 的主要特点: Excalidraw 安装和使用方法 1、Excalidraw的安装 T1、使用 npm 安装: T2、使用 …...

OPPO C++面试题及参考答案

五层协议每层包含的协议 在计算机网络的五层协议体系结构(自下而上为物理层、数据链路层、网络层、传输层和应用层)中,各层包含多种协议。 物理层主要负责在物理介质上传输原始的比特流,包括像 RJ - 45 接口标准等物理接口规范&am…...

Unity中LineRenderer使用MeshCollider方法参考

运行时,如果一个物体不添加Collider组件就没有办法被鼠标点击,LineRenderer由于其Mesh会随着摄像机朝向变化,如果要通过添加MeshCollider来使其能够与鼠标交互,就需要不断同步更新其MeshCollider网格。 代码参考如下: …...

新手必看:麦橘超然Flux离线图像生成控制台完整使用教程

新手必看:麦橘超然Flux离线图像生成控制台完整使用教程 1. 为什么选择麦橘超然Flux控制台 如果你正在寻找一个简单易用、性能优异的本地AI图像生成工具,麦橘超然Flux控制台可能是你的理想选择。这个基于DiffSynth-Studio构建的解决方案,集成…...

BGE-Large-Zh应用案例:HR简历-岗位JD语义匹配效率提升300%实测

BGE-Large-Zh应用案例:HR简历-岗位JD语义匹配效率提升300%实测 1. 引言:HR的简历筛选之痛 想象一下,你是一名HR,面前有500份简历,需要匹配到10个不同的岗位。传统的做法是什么?要么靠关键词搜索&#xff…...

FPGA DDR3硬件测试避坑指南:如何设计一个可靠的读写控制器并验证全地址空间

FPGA DDR3硬件测试避坑指南:如何设计一个可靠的读写控制器并验证全地址空间 当你在凌晨三点的实验室里盯着示波器上跳动的DDR3信号波形,突然发现某个地址区间出现零星的数据错误时,就会明白为什么全地址测试不是可选项而是必选项。这不是关于…...

Zynq UltraScale+ PL中断深度解析:从硬件连接到软件响应的完整链路

Zynq UltraScale PL中断深度解析:从硬件连接到软件响应的完整链路 在异构计算架构中,中断机制如同神经系统般连接着可编程逻辑(PL)与处理系统(PS)。当工程师需要实现微秒级实时响应或构建高可靠性系统时&am…...

MySQL 查询优化器执行逻辑分析

MySQL查询优化器作为数据库核心组件,其执行逻辑直接影响SQL性能。本文将深入分析其工作原理,帮助开发者理解查询背后的智能决策机制,为高效数据库设计提供理论支撑。查询解析与重写阶段优化器首先对SQL进行词法语法解析,生成语法树…...

3秒获取百度网盘提取码:智能工具如何提升资源获取效率300%

3秒获取百度网盘提取码:智能工具如何提升资源获取效率300% 【免费下载链接】baidupankey 项目地址: https://gitcode.com/gh_mirrors/ba/baidupankey 在信息爆炸的时代,百度网盘已成为资源分享的重要平台,但提取码的获取却常常成为效…...

STM32 UDS Bootloader完整方案:简化学习ISO15765与ISO14429协...

uds bootloader stm32 完整方案 iso15765 iso14429 简化学习难度 需要可以加好友。 下载42k速度在15秒左右 第二版上位机:模仿vector vflash 设计简洁高效,下载速度提高到11k byte/s。01-firmware :包含stm32 boot 软件 设备驱动 应用程序 02-上位机 &#xf…...

2、 Verilog 代码规范

分类 Verilog 教程高级篇 不经意间看到几年前自己写的 FGPA 设计,代码风格勉强说的过去,但是逻辑设计方面的安全隐患比比皆是。许多初学者编写 Verilog 代码,基本都是按照 C 语言的思维和风格去设计,造成了很多不规范的共性问题。…...

2026年最值得玩的狼人杀,经典版口碑拉满

2026年市面上的狼人杀APP琳琅满目,但真正值得长期玩、口碑好的寥寥无几,而狼人杀经典版就是其中的佼佼者!它是2016年底国内第一款狼人杀APP,红色logo、平面卡通画风,玩家俗称“红狼”“口袋狼人杀”,由假面…...

AI原生缓存架构生死线:当缓存失效导致LLM幻觉率上升22%,你还有3天重构窗口期

第一章:AI原生缓存架构的范式迁移与危机本质 2026奇点智能技术大会(https://ml-summit.org) 传统缓存系统建立在确定性访问模式与静态数据生命周期假设之上,而大语言模型推理、RAG实时检索、多模态流式生成等AI原生工作负载正持续冲击这一根基&#xf…...