通信小白&N
码龄7年
关注
提问 私信
  • 博客:6,235
    社区:1
    6,236
    总访问量
  • 14
    原创
  • 123,758
    排名
  • 82
    粉丝
  • 0
    铁粉
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:四川省
  • 加入CSDN时间: 2018-01-27
博客简介:

qq_41683159的博客

查看详细资料
  • 原力等级
    当前等级
    1
    当前总分
    52
    当月
    0
个人成就
  • 获得80次点赞
  • 内容获得0次评论
  • 获得19次收藏
创作历程
  • 14篇
    2024年
成就勋章
TA的专栏
  • 滤波算法
  • linux
  • C语言
  • 信号处理
兴趣领域 设置
  • 嵌入式
    单片机嵌入式硬件
  • 硬件开发
    硬件工程驱动开发fpga开发dsp开发arm开发射频工程基带工程硬件架构pcb工艺
创作活动更多

2024 博客之星年度评选报名已开启

博主的专属年度盛宴,一年仅有一次!MAC mini、大疆无人机、华为手表等精美奖品等你来拿!

去参加
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

车辆行驶路径平滑方法 matlab版

【代码】车辆行驶路径平滑方法 matlab版。
原创
发布博客 2024.09.06 ·
508 阅读 ·
12 点赞 ·
0 评论 ·
0 收藏

指针的指针和指针数组

【代码】指针的指针和指针数组。
原创
发布博客 2024.09.04 ·
271 阅读 ·
3 点赞 ·
0 评论 ·
0 收藏

好一点的写法

【代码】好一点的写法。
原创
发布博客 2024.09.04 ·
128 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

SDK 和 framework的区别

API : 虽然英文的是application programming interface;实际上就是一个和另一个程序交互的口子,所以很多情况都可以说是API;不止是应用级或者是系统级才能这么说。SDK是一个更大的概念,因为他可以包括库、框架、文档、工具等;SDK就像一个软件包,也有相应的API;库(library) 库是封装好的代码,通过调用开放的API 来获取相应的功能。软件组件: 定义为自包含的,可编程的、可重用的,与语言无关的软件单元。framework:框架。提供了基础功能的软件产品。
原创
发布博客 2024.09.03 ·
347 阅读 ·
6 点赞 ·
0 评论 ·
0 收藏

内存之RAM/ROM/Flash/Cache

具备了可擦除性能, 断电不会丢失数据 同时可以快速的读取数据,FLASH 主要存储Boot loader以及操作系统 或者程序代码或者直接当U盘使用。Cache是在CPU中运行速度非常快,但是容量很小的一种存储器,一般容量不过M,最强悍的存储器。ROM 也有很多种类 , 种类都是可编程(PROM)和擦除((紫外线)EPROM)内存的五大分区:栈区Stack、 堆区Heap、 全局静态区、 常量区、 代码区。RW:可读可写变量,即存在ROM中,又在RAM中存储。ZI: 初始化为0的变量,存储在RAM中。
原创
发布博客 2024.09.03 ·
323 阅读 ·
6 点赞 ·
0 评论 ·
4 收藏

数组指针和指针数组

matrix表示取出第一行, 类似于数组的名字(一维数组的名字就是地址);如果要知道里面的值 *(*matrix + 1)取出第一个元素?那么数组指针的初始化为:int (*p)[4] = matrix/&matrix[0]/&matrix;数组指针:声明(*p)[N];matrix表示第一行的地址,也表示为&matrix[0]例如:以下是一个matrix矩阵;声明一个数组指针(*p)[4];声明: 类型 *p[N] 类似于{*p0 *p1 …指针数组:是一个数组,每个数组里面都存着一个值。
原创
发布博客 2024.09.03 ·
209 阅读 ·
3 点赞 ·
0 评论 ·
0 收藏

const 关键字

表示指针的地址不能修改, 指针对应的内容可以修改。表示指针指向的内容无法修改。
原创
发布博客 2024.09.03 ·
283 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

extern和static

修饰局部变量时,1.可以保留上次的值,具有记忆功能。2. 只在局部函数被调用的时候初始化一次,后面不再初始化,3.如果没有显示初始化,会被程序自动初始化为0. 3.在全局数据区分配内存。修饰全局变量时:表示这个变量的作用域仅仅在这个文件,即使extern外部也找不到。extern的用法: 在相关的.c里面定义参数, 在.h里面extern出去。其他文件可以定义相同名字的函数名 不会发声冲突。Static 是使用时分用在局部 还是 全局。static和extern是一对;
原创
发布博客 2024.09.03 ·
207 阅读 ·
2 点赞 ·
0 评论 ·
0 收藏

C语言:联合体Union

适用场景: 一般在有相似结构协议的时候可以节省空间。不管后面多少,地址都指向第一个。
原创
发布博客 2024.09.03 ·
140 阅读 ·
3 点赞 ·
0 评论 ·
0 收藏

函数指针与回调函数

函数指针:声明 int (*fun)() 或者int* (*func)()。()的优先级比*的高,如果不加括号便是指针函数。表示返回的值是一个指针。因此先解释一下函数指针,
原创
发布博客 2024.09.03 ·
464 阅读 ·
14 点赞 ·
0 评论 ·
0 收藏

C语言的编译过程和静态库的生成

提供静态库比如不想把源代码不暴露给外部,减少运行时的依赖,避免代码重用等。预处理:展开头文件/宏替换/去掉注释/条件编译 后缀为.i。step1:实现函数,通过写makefile生成库.step2:使用makefile语言 实现lib。例子:将加法减法函数封成math库,并且调用。链接: 生成可执行文件.out 或者 exe。编译:检查语法,生成汇编 .s。step3:执行main.exe。step2:编译生成可执行文件。汇编:汇编转换为机器码 .o。add.c和add.h实现。
原创
发布博客 2024.08.27 ·
603 阅读 ·
17 点赞 ·
0 评论 ·
4 收藏

音调控制-bass,mid,treble的理解与滤波器的实现

bass 主要是增强低音段,通常覆盖的频段20-300Hz,低音段听上去给的一种浑厚感觉。Mid主要调整中音段,频段300Hz- 4KHz.这个频段主要包含了人声的频段。在音频处理中,"bass"(低音)、"mid"(中音)和"treble"(高音)一般是根据一定的偏好预设好的一些音调控制。根据表达式可以得出,Q越小,带宽越宽,Q越大,带宽越小。Gain:增益,是指滤波器在通带内对信号的放大或衰减程度。例如:苹果的耳机音频,就有相关的设置,只是换了格说法。f0:滤波器工作的频率中心点,即中心频率。
原创
发布博客 2024.08.23 ·
936 阅读 ·
6 点赞 ·
0 评论 ·
3 收藏

音频dBFs的理解和计算

假设采样点是int16表示的, 位深也是16. 取值范围为:-2^15 ~ 2^15 - 1;所以 满量程的最大值便是2^15 -1 对应着图中的1这个值;这个说法也没有问题,实际上他们信号度量单位不一样,这种一般是dBSPL(声压级)为单位,是以压强级别衡量的。dBFS: dB full scale. 满量程表示数字域的最大值。A是当前信号值的幅度值(amplitude),Max是所处理信号的最大(峰值)幅度值.左边的纵坐标值是-1~1的区间,这是位深归一化的结果.一般我们使用开源软件打开一段音频。
原创
发布博客 2024.08.20 ·
780 阅读 ·
4 点赞 ·
0 评论 ·
4 收藏

TDM音频传输协议通用知识解释

采样率:一般大于等于2*fm(最大信号频率);进一步理解,假设Fs是48KHz,如果用专业看音频的工具打开,那么能看见fm = 48/2KHz及一下的频段。位深:就是每个采样点(sample) 用多少bit表示;常见的16/24/32bit 即int16,int24,int32.bclk与采样率是正比的关系。一般bclk = 采样率(fs) * 声道数(channel)*位深。slot:每个音频信号被分配到一个固定的slot中,slot组成帧。bclk:bit clock /TDM的时钟频率。
原创
发布博客 2024.08.20 ·
1026 阅读 ·
2 点赞 ·
0 评论 ·
3 收藏