TI公司为DSP64x+系列的DSP芯片提供了一系列常用的DSP运算库函数,这些库函数由于在硬件上的优化速度往往比直接用C甚至汇编语言编写效率更高。 库函数官方的解释说明:file:///D:/ccs/support_lib/dsp_lib/docs/doxygen/html/dsplib_html/modules.html 库函数使用注意事项:大部分函数对输入数组参数的大小有特殊要求(内部优化的
转载 10月前
104阅读
CMSIS-DSP是由ARM公司提供的一个信号处理算法库,所有使用ARM内核的单片机都可以调用相应的,当然也包括STM32。今天就来介绍一下CMSIS-DSP使用方法。CMSIS-DSP简介CMSIS-DSP的源码和lib文件可以在Keil安装目录下:Keil_v5\ARM\PACK\ARM\CMSIS\5.5.1\CMSIS\DSP找到,也可以在STM32CubeMX安装目录下:ST
转载 2022-10-17 11:16:06
4131阅读
引言  使用STM32Cube开发东西最怕的就是写的代码太多,为什么呢?因为不会写,我深有体会。SPI通讯是一种常用的常用的通讯方式,同步、串行。同步代表着实时性好,串行代表着接线少,很多的设备愿意采用这种方法,废话少说,关于SPI通讯的由来,基本的原理可以百度,我这里介绍用STM32F103ZET6和W25Q64开发SPI通讯。使用的工具SMT32F103的开发板,SPI连接了W25Q
EM旗语模块通过对旗语的计数完成任务的同步和相互作用。        通过SEM_pend()来等待旗语的到来,未到来前将此任务挂起。通过SEM_post发送旗语。 参考例程:semtest 该例程SEM配合QUE一起使用:定义一个队列,然后写任务和读任务轮流访问该队列。三个写任务的优先级相同,如果不调用任务切换函数(TS
  最近手上有个小项目,其中一个功能是要实现STM32与DSP的SPI通信。  从来没有进行过通信编程的我,着实心中有很多烦恼。  首先是对这个SPI的通信协议,协议的定义时序看了很多遍了,但就是不知道怎么用,由于手中资源有限,也无法让我自己去验证,只能在项目的基础上去摸索了。    其次,对于两块处理器芯片的SPI资源的调用方面。  STM32通用例程很多,在功能中又是工作在主模式上,所以实现起
# 如何实现Python的DSP ## 1. 整件事情的流程 下面是实现Python的DSP的流程表格: | 步骤 | 描述 | | ---- | ---- | | 1. 安装相关 | 安装numpy和scipy | | 2. 导入库 | 导入numpy和scipy | | 3. 创建信号 | 创建一个示例的信号 | | 4. 进行信号处理 | 使用DSP对信号进行处理 | |
原创 2024-06-29 06:39:09
85阅读
2016-06-28 10:31:24)嵌入式”这是个概念,准确的定义没有,各个书上都有各自的定义。但是主要思想是一样的,就是相比较PC机这种通用系统来说,嵌入式系统是个专用系统,结构精简,在硬件和软件上都只保留需要的部分,而将不需要的部分裁去。所以嵌入式系统一般都具有便携、低功耗、性能单一等特性。 然后,MCU、DSP、FPGA这些都属于嵌入式系统的范畴,是为了实现某一目的而使用的工具。 MC
转载 2024-01-15 10:29:50
67阅读
距离我的毕设答辩已经过去了一个月,我的毕设课题是对高速高精度ADC中的时钟整形电路进行设计与验证。时钟整形电路中比较核心的部分是时钟占空比校正电路。这个课题是校外合作项目其中一部分,暑期在接着做这个项目。这篇文章没有给出具体电路,主要是分享一下DCC方面的知识。一:占空比失真原理一个理想的时钟信号,我们期待它的占空比是50%。但是时钟信号在传输过程中,会由于驱动器结构或尺寸不对称,对时钟信号上升沿
深入了解DSP与ARM的区别与联系   这些天正准备找工作的事,对于一些理论上的,或者说表面上的知识需要梳理下,所以有空整理了这篇简陋的比较,权当从另一个侧面理解下这两款主流处理器的特点了吧! DSPDSP(digital singnal processor)是一种独特的微处理器,有自己的完整指令系统,是以数字信号来处理大量信息的器件。一个数字信号处理器在
转载 2024-05-17 12:44:56
72阅读
DSP的内部指令周期较高,外部晶振的主频不够,因此DSP大多数片内均有PLL。但每个系列不尽相同。 1)TMS320C2000系列: TMS320C20x:PLL可以÷2,×1,×2和×4,因此外部时钟可以为5MHz-40MHz。 TMS320F240:PLL可以÷2,×1,×1.5,×2,×2.5,×3,×4,×4.5,×5和×9,因此外部时钟可以为2.22MHz-40MHz。 TMS320F2
转载 2024-08-30 11:03:06
81阅读
概述 上一篇写了 STM32CubeMX 的串口的使用,而这篇来扒一扒,它是怎么进行封装的。可以学到的知识STM32CubeMX 是怎么用结构体封装串口如何用结构体直接访问寄存器stm32外设时钟是怎么看的stm32的内存长什么样子常量指针如何使用...一.串口实例 我们都知道,其实单片机最后其实都是对 串口相关的寄存器 进行操作,那么我们想扒一扒它的流程,必然要先知道串口相关的寄存器是哪些,因此
转载 2024-08-04 11:34:33
170阅读
一、汉字显示原理简介2、字库字库的生成,我们要用到一款软件,由易木雨软件工作室设计的点阵字库生成器 V3.8。该 软件可以在 WINDOWS 系统下生成任意点阵大小的 ASCII,GB2312(简体中文)、GBK(简体中 文)、BIG5(繁体中文)、HANGUL(韩文)、SJIS(日文)、Unicode 以及泰文,越南文、俄文、乌克 兰文,拉丁文,8859 系列等共二十几种编码的字库,不但支持生成
TMS320F2812处理器是TI 公司C2000系列处理器中的一款,主频可以达到150Mhz,我目前在项目中就是使用这款处理器。该处理器在电机控制等工业控制领域,有着大量的应用。TMS320C28x™ 控制器是 业界第一款 32 位基于 DSP 的控制器,具有板载快闪存储器和高达 150MIPS 的性能。它将微控制器 (MCU) 综合控制外设和简便易用与 TI 一流的 DSP 技术的处理能力与
# 使用DSP解码Android音频 ## 介绍 在Android开发中,如果想要使用DSP(Digital Signal Processor,数字信号处理器)来解码音频,我们可以通过一些和工具实现。本文将介绍使用DSP解码Android音频的整个流程,并提供相应的代码示例和注释。 ## 流程概述 在使用DSP解码Android音频的过程中,我们需要进行以下几个步骤: | 步骤 | 描述
原创 2023-10-01 05:27:52
139阅读
这个实验的功能演示 ESP32 定时器的使用方法。 这个实验的代码为工程“3_10_timer”目录。 3.10.1. 实验内容(1) 学习 LED 灯控制 (2) 学习 ESP32 定时器库函数使用方法 (3) 根据定时器控制红灯闪烁3.10.2. 硬件原理这个实验使用到的硬件是彩灯上的红灯,如何实现控制返回看 3.3.2 节即可。3.10.3. ESP32 定时器函数介绍定时器的使用流程就是定
转载 2024-02-08 15:23:50
572阅读
目录1、C8T6引脚图2、电路基础1、IO口静态特性:2、 上下拉电阻3、STM32官网:4、内核与存储器5、时钟、复位和电源管理6、低功耗和ADC7、DMA和IO端口8、调试模式和定时器9、看门狗和滴答定时器10、I2C和USART接口11、SPI、CAN、USB接口12、CRC校验和芯片ID13、最小系统电路14、如何烧录程序:15、舵机1、PWM16、中断17、步进电机 18、I2
文章目录一、STM32的通用定时器介绍二、输出比较产生PWM1、产生PWM的几种方式2、STM32的输出比较相关介绍3、输出比较产生PWM代码实现三、硬件PWM1、高级定时器的硬件PWM输出2、通用定时器的硬件PWM输出 阅读此文,可参考另一篇更为详细的PWM总结<蓝桥嵌入式之 PWM波输出相关总结>一、STM32的通用定时器介绍STM32F103ZE 拥有 TIM2、TIM3、TI
概述:        这里我们来了解一下何为PWM,PWM是Pulse Width Modulation 的缩写,中文意思就是脉冲宽度调制,简称脉宽调制。它是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术,其控制简单、灵活和动态响应好等优点而成为电力电子技术最广泛应用的控制方式。 使用PWM驱动舵机转动
TXD 发送数据 Transmit(tx) Data RXD 接受数据 Receive(rx) Data COM口 ( cluster communication port )即串行通讯端口,简称串口。微机上的串口通常是9针,也有25针的接口,最大速率115200bpsCOM口的9个针脚的作用1 载波检测(CD)2 接受数据(RXD)3 发出数据(TXD)4 数据终端准备好(D
64位win7下vs2008找不到directshow的strmbasd.lib 小破本上的xp系统不堪重负,准备过渡到win7,网上查了下,2009年的本,居然还支持64位系统,联想还是挺厚道的安装各种环境和软件是个考验人的事情,这次就遇到strmbasd.lib找不到的问题 点开dx90bsdk.exe安装dxsdk,系统咣当弹出来提示框
  • 1
  • 2
  • 3
  • 4
  • 5