摘要:
此篇文章在2022年11月18日被记录 最近需要混音算法,上网查阅了四种常用的混音算法,用python运行来做测试,测试完成的语音数据放在结尾可以下载 混音算法一:加权平均 这种方法很简单,直接将两个PCM样本相加,为了防止溢出再除以二,但是这种方式会导致声音细节丢失声音会变小,并且混入通道数越多, 阅读全文
posted @ 2024-12-10 16:07
shumei52
阅读(575)
评论(0)
推荐(0)
摘要:
此篇文章在2022年10月24日被记录 Makefile简单实用 1、GCC使用 当我们只有一个C文件时,可以用gcc编译直接生成文件,例如写一个main.c #include <stdio.h> int main() { printf("this is main.c\r\n"); return 0 阅读全文
posted @ 2024-12-10 16:03
shumei52
阅读(21)
评论(0)
推荐(0)
摘要:
此篇文章在2022年10月21日被记录 Markdown标题 在文本下方使用多个 表示标题 例如: 这是一级标题 演示: 这是一级标题 在文本下方使用多个 表示小一些的标题 例如: 这是二级标题 演示: 这是二级标题 使用 # 号可表示 1-6 级标题,一级标题对应一个 # 号,二级标题对应两个 # 阅读全文
posted @ 2024-12-10 15:56
shumei52
阅读(35)
评论(0)
推荐(0)
摘要:
此篇文章在2022年10月28日被记录 Numpy矩阵基本运算 1、python矩阵操作 引入库: import numpy as np 创建一个二维矩阵: >>>a = np.mat([[1, 2, 3], [4, 5, 6]]) 打印a矩阵: >>>a matrix([[1, 2, 3], [4 阅读全文
posted @ 2024-12-10 15:54
shumei52
阅读(60)
评论(0)
推荐(0)
摘要:
此篇文章在2022年10月21日被记录 Numpy简单应用 创建一个一维数组 a = np.array([0, 1, 2, 3, 4]) b = np.array((0, 1, 2, 3, 4)) c = np.arange(5) d = np.linspace(0, 2*np.pi, 5) pri 阅读全文
posted @ 2024-12-10 15:51
shumei52
阅读(19)
评论(0)
推荐(0)
摘要:
此篇文章在2022年10月9日被记录 在linux主机上搭建一套远程监控系统 矿板有风险,入坑需谨慎 最近在同事的推荐下在咸鱼入手了一套RK3399的开发板,卖家说是广告机的拆机设备,实际上嘛懂得都懂,这是不知道哪个币又崩盘了 但是该说不说,这个板子本身就是开发板,配置2+16,并且配套资料资料还是 阅读全文
此篇文章在2022年10月9日被记录 在linux主机上搭建一套远程监控系统 矿板有风险,入坑需谨慎 最近在同事的推荐下在咸鱼入手了一套RK3399的开发板,卖家说是广告机的拆机设备,实际上嘛懂得都懂,这是不知道哪个币又崩盘了 但是该说不说,这个板子本身就是开发板,配置2+16,并且配套资料资料还是 阅读全文
posted @ 2024-12-10 15:47
shumei52
阅读(77)
评论(0)
推荐(0)
摘要:
此篇文章在2022年9月22日被记录 ADPCM是一种很简单实现的音频编码方式,真正的PCM相当占用内存,这对网络和内存的压力是相当大的,因此通常需要压缩编码,ADPCM是一种可以运行在单片机上的编码方式,原理如下: 由于声音信号具有波形上的连续性,因此相邻两个采样值大小也非常接近,记录单个采样值通 阅读全文
此篇文章在2022年9月22日被记录 ADPCM是一种很简单实现的音频编码方式,真正的PCM相当占用内存,这对网络和内存的压力是相当大的,因此通常需要压缩编码,ADPCM是一种可以运行在单片机上的编码方式,原理如下: 由于声音信号具有波形上的连续性,因此相邻两个采样值大小也非常接近,记录单个采样值通 阅读全文
posted @ 2024-12-10 15:31
shumei52
阅读(615)
评论(0)
推荐(0)
摘要:
此篇文章在2022年8月29日被记录 ESP32-CAM上传图像数据到Python上位机 预防踩坑放在前面:目前安信可官方版的CAM模块已经停售,库存货比较贵,市面上的都是仿制的,质量良莠不齐,给开发带来了很多困扰,经过实际测试,发现山寨货主要有以下几个坑: 1、发热严重,不加散热片长时间运行几乎到 阅读全文
此篇文章在2022年8月29日被记录 ESP32-CAM上传图像数据到Python上位机 预防踩坑放在前面:目前安信可官方版的CAM模块已经停售,库存货比较贵,市面上的都是仿制的,质量良莠不齐,给开发带来了很多困扰,经过实际测试,发现山寨货主要有以下几个坑: 1、发热严重,不加散热片长时间运行几乎到 阅读全文
posted @ 2024-12-10 15:19
shumei52
阅读(379)
评论(1)
推荐(0)
摘要:
此篇文章在2022年8月14日被记录 使用MQTT做一个公网对讲机 上一篇博客中,使用ESP32与ESP-NOW协议做了一个短距离对讲机(链接),发布了一个视频在B站 评论区中,很多B友希望可以实现无限距离对讲,这样的话需要服务器转发,刚开始我想使用python写一个TCP或者UDP的转发功能,但是 阅读全文
posted @ 2024-12-10 15:15
shumei52
阅读(877)
评论(0)
推荐(0)
摘要:
最近需要使用到OPUS压缩音频,OPUS是一个开源音频编码方案,多种芯片支持OPUS编码,WINDOWS10上也自动支持,这是他的一些特性 比特率从 6 kb/s 到 510 kb/s 采样率从 8 kHz(窄带)到 48 kHz(全频) 音频每帧时长从 2.5 ms 到 60 ms 同时支持恒定比 阅读全文
最近需要使用到OPUS压缩音频,OPUS是一个开源音频编码方案,多种芯片支持OPUS编码,WINDOWS10上也自动支持,这是他的一些特性 比特率从 6 kb/s 到 510 kb/s 采样率从 8 kHz(窄带)到 48 kHz(全频) 音频每帧时长从 2.5 ms 到 60 ms 同时支持恒定比 阅读全文
posted @ 2024-12-10 15:10
shumei52
阅读(1119)
评论(0)
推荐(0)
摘要:
此篇文章在2022年8月5日被记录 最近突发奇想,制作一个数字式的音频通信系统,顺便学习一下I2S与ESP-NOW协议 刚开始查阅资料,发现油管上的已经有人做过了,但是使用的C++,并用了数据流的处理流程,比较晦涩难懂,代码量也很大,属于是炫技的作品,我这篇文章使用C重新写一遍,并且代码量大大降低, 阅读全文
此篇文章在2022年8月5日被记录 最近突发奇想,制作一个数字式的音频通信系统,顺便学习一下I2S与ESP-NOW协议 刚开始查阅资料,发现油管上的已经有人做过了,但是使用的C++,并用了数据流的处理流程,比较晦涩难懂,代码量也很大,属于是炫技的作品,我这篇文章使用C重新写一遍,并且代码量大大降低, 阅读全文
posted @ 2024-12-10 15:05
shumei52
阅读(1521)
评论(0)
推荐(0)
摘要:
此篇文章在2022年8月1日被记录 最近在做一个验证性的东西,使用无线完成语音通信 首先需要大概了解一下音频信号,音频信号主要有以下几个概念点: 采样率:一秒钟采集多少个音频信号,常见的有8K、16K、44.1K等,采样率越高,声音的细节都越好。 数据深度:数据的深度,一个数据有多少位,常见的有8b 阅读全文
此篇文章在2022年8月1日被记录 最近在做一个验证性的东西,使用无线完成语音通信 首先需要大概了解一下音频信号,音频信号主要有以下几个概念点: 采样率:一秒钟采集多少个音频信号,常见的有8K、16K、44.1K等,采样率越高,声音的细节都越好。 数据深度:数据的深度,一个数据有多少位,常见的有8b 阅读全文
posted @ 2024-12-10 15:00
shumei52
阅读(459)
评论(0)
推荐(1)
摘要:
此篇文章在2022年7月21日被记录 在嵌入式工作中,在某些情况下查看单片机打印输出不是很方便,比如狭小的空间,室外测试等情况,为此,利用LVGL的各个控件,设计了一个便携式的串口助手。 lvgl移植使用也很简单,只需要配置对应的显示接口和输入接口,一般来讲,使用在屏幕上开窗的方式,比画点的方式帧速 阅读全文
此篇文章在2022年7月21日被记录 在嵌入式工作中,在某些情况下查看单片机打印输出不是很方便,比如狭小的空间,室外测试等情况,为此,利用LVGL的各个控件,设计了一个便携式的串口助手。 lvgl移植使用也很简单,只需要配置对应的显示接口和输入接口,一般来讲,使用在屏幕上开窗的方式,比画点的方式帧速 阅读全文
posted @ 2024-12-10 14:56
shumei52
阅读(280)
评论(0)
推荐(0)
摘要:
此篇文章在2022年7月1日被记录 一个好用的对讲机首先包含的基本功能:对讲发送、对讲接受、频率设置、音量设置、低功耗功能。 高级功能:尾音抑制、哑音功能、免按键通话、宽窄带切换、遇忙禁发、参数配置 最开始我认为所有的音频信号需要经过单片机处理,可能涉及到信号采集、解码编码、模拟发送等功能,现在看来 阅读全文
posted @ 2024-12-10 14:52
shumei52
阅读(215)
评论(0)
推荐(0)
摘要:
此篇文章在2022年5月19日被记录 上文说了STM32L4的几种低功耗模式,将其应用起来作为一个低功耗的延时方案。 为什么使用低功耗定时器,在追求长时间续航时,单片机有时需要切换到低功耗模式或者停止模式下,在这种模式下,系统主时钟关闭,有一些依赖于系统主时钟的应用程序,可能会发生出现某些奇怪的情况 阅读全文
此篇文章在2022年5月19日被记录 上文说了STM32L4的几种低功耗模式,将其应用起来作为一个低功耗的延时方案。 为什么使用低功耗定时器,在追求长时间续航时,单片机有时需要切换到低功耗模式或者停止模式下,在这种模式下,系统主时钟关闭,有一些依赖于系统主时钟的应用程序,可能会发生出现某些奇怪的情况 阅读全文
posted @ 2024-12-10 14:45
shumei52
阅读(320)
评论(0)
推荐(0)
摘要:
此篇文章在2022年5月19日被记录 STM32低功耗介绍: STM32L4系列单片机总共有9中低功耗模式: 1、Sleep mode:CPU时钟关闭,IO口保持与运行状态相同的状态。可由wake事件,NVIC,SysTick,外部中断等,无唤醒时间,唤醒后执行唤醒源中断回调函数(和标准库中断服务函 阅读全文
此篇文章在2022年5月19日被记录 STM32低功耗介绍: STM32L4系列单片机总共有9中低功耗模式: 1、Sleep mode:CPU时钟关闭,IO口保持与运行状态相同的状态。可由wake事件,NVIC,SysTick,外部中断等,无唤醒时间,唤醒后执行唤醒源中断回调函数(和标准库中断服务函 阅读全文
posted @ 2024-12-10 14:39
shumei52
阅读(111)
评论(0)
推荐(0)
摘要:
此篇文章在2022年5月17日被记录 在单片机中显示动画是一件很浪费资源的事情,在那个小小的flash中存入一大坨数据是相当费力地,因此就进度条动画而言,有一种相当简单的实现方式,就是重复移动整个图片然后遮住某个部分,例如这个样子: 动图中可以看到在被遮住后,达到了动画的效果 实现该功能并且封装成函 阅读全文
此篇文章在2022年5月17日被记录 在单片机中显示动画是一件很浪费资源的事情,在那个小小的flash中存入一大坨数据是相当费力地,因此就进度条动画而言,有一种相当简单的实现方式,就是重复移动整个图片然后遮住某个部分,例如这个样子: 动图中可以看到在被遮住后,达到了动画的效果 实现该功能并且封装成函 阅读全文
posted @ 2024-12-10 14:35
shumei52
阅读(272)
评论(0)
推荐(0)
摘要:
此篇文章在2022年4月22日被记录,两年半后,再次回头看卡尔曼,还是不理解,令人唏嘘 卡尔曼滤波是一种优秀的滤波方式,在很多方面都有使用到,比如四旋翼飞行器中的IMU滤波,超声波数据滤波,ADC数据采集滤波。 最近在网上看了看,发现想从原理上理解卡尔曼滤波还是有些费劲的,虽然源代码就那么几行。先跑 阅读全文
此篇文章在2022年4月22日被记录,两年半后,再次回头看卡尔曼,还是不理解,令人唏嘘 卡尔曼滤波是一种优秀的滤波方式,在很多方面都有使用到,比如四旋翼飞行器中的IMU滤波,超声波数据滤波,ADC数据采集滤波。 最近在网上看了看,发现想从原理上理解卡尔曼滤波还是有些费劲的,虽然源代码就那么几行。先跑 阅读全文
posted @ 2024-12-10 14:30
shumei52
阅读(84)
评论(0)
推荐(0)

浙公网安备 33010602011771号