- 博客(28)
- 资源 (1)
- 收藏
- 关注
原创 CC1310 FH模式广播
Frequency Hopping 特征: 网络设备在不同频率间切换。基于DFE模式(direct frame exchange WI-SUN FAN spec v1.0),TI 15.4支持无缝隙频道切换。FH模式只有在SUB 1G频带才支持。FH支持两类设备 Sleepy End Dev:不自己切换频道,但是跟随collector。所有与此类设备的通信应使用短地址。 /*! Rx on when idle, false for sleepy device, true f...
2021-07-29 13:20:43
277
原创 模式识别笔记
1 PCA为什么按照方差(特征值)大小排列经过分析后的特征向量,并由此确定各向量重要性? 经过pca分析后,得到的一系列特征值就是经过重新组合后的各个向量的方差,选取方差大的作为综合指标因子,作为新的特征进行后续工作。方差越大,认为其蕴含的信息越多,这是因为我们认为真正的信息是相互之间有区别的。在统计上,如果一个序列的各个值之间差别很大,则方差也就越大。所以方差大的,可以带来更强的分辨力,也就...
2021-07-29 13:08:21
219
原创 usb麦以及GD32单片机的一些坑--usb microphone&exmc
项目中途换方案,st改成gd,407Ve片子。**usb mic**要实现usb microphone,于是音频codec+usb iso,上位机是linux。根据各个例程,初步实现都ok。问题来了:1ms发一次的声卡数据,还tm是44.1khz的,我去!后来又发现iis的dma数据填充和usb上位机的读取数据时钟源不一致,导致dma填充速度快过usb读取,有些数据还没传过去就被覆盖了!!然后播放的声音间歇性失真(试了满久才认定的),我再去!!!!怎么搞:(1)44.1k频率很讨厌,加上之.
2021-04-27 22:57:34
1683
原创 openwrt 局域网下组播实现--for 新手
按照网络搜索,很简单的,发送端尤其如此,设个组播地址,发送数据就好;接收端嘛,一样的设socket,绑定,然后加入组播,接收就好了。可是!多数例程都不告诉我,需要在路由表添加组播地址。于是,我先实现有线连接的两个机子之间的组播,由于本来用的libuv函数,资料太少,我先搞了个基于linux socket的程序,发送端说地址不可达,接收端说没有这个设备。。。o(╥﹏╥)o 搜索这些错误信息许久,才看到说添加路由表的事情,然后初级程序搞定,然后移到libuv实现,搞定。再然后,实现有线+ap+sta的组播:
2021-01-09 21:17:16
3919
1
原创 基于MediaTek_ApSoC_SDK_4320_20150414 编译mt7621 的uboot
初学者,最难的还是那些各种若隐若现的小细节。1 解压MediaTek_ApSoC_SDK_4320_20150414.tar.bz2tar -jxvf MediaTek_ApSoC_SDK_4320_20150414.tar.bz2得到两个目录:RT288x_SDK Uboot2 解压交叉编译工具:RT288x_SDK/toolchain/ mips-2012.03.tar.bz2 到linux 系统的/opt 文件夹下cd ./RT288x_SDK/toolchain/...
2021-01-07 11:19:14
2491
4
原创 mt7621 openwrt19.07 打开uart3
感谢网络各路大神的慷慨分享,不然无门可入!用于和STM片子通信的,单片机的uart很快搞好,openwrt的uart配置太绕,但是设备树(dts)似乎是linux老大推进的。弄呗。。默认情况,dev下有ttyS0-2,但只有ttyS0用于console。启动log看不到其他tty信息。 cat ttyS1会报错:read error: I/O error, 程序里open后发数据,tx3上看不到信号。 打开 uart3:target/linux/ramips/dts/mt7621.dtsi注释
2020-11-17 13:07:34
1408
2
原创 关于“Process xxx called USBDEVFS_CLEAR_HALT for active endpoint xx”
这本来是linux下的问题,由于在用户级的app里调用了驱动函数对usb设备进行了clear halt的操作,linux的开发者于是在log里打印出这个警告,用以提示程序员们:这样做可能有问题!具体请膜拜这个帖子:https://www.spinics.net/lists/linux-usb/msg102772.html于是,真的有问题了。我的设备实现了一个usb键盘接口,接在一个androi...
2019-10-09 15:55:33
1977
原创 学习点滴---如何处理no modules named 'keras'
初学就是这么困难,昨天搜这个问题,在stack overflow上都没找到合适的解决方法。我的环境是tensorflow+keras。试着pip install更新,多次尝试未果。后来明白了,我之前装keras的方式不对,应该在 activate tensorflow以后,再pip安装,这样就保证tensorflow激活后的环境中能导入keras了。按照这个方式,可以顺利跑起hello word级...
2018-04-04 17:36:31
4329
1
原创 使用Python和OpenCV处理图像报error:(-215)错误的改正
其实这个链接里有的:https://blog.csdn.net/sinat_39150454/article/details/74315806?locationNum=5&fps=1但是,效果还是不对,比如我的写法如下:im = cv2.imread('D:\image\no105.jpg',1)是绝对路径吧,仍然不对。于是我试了这个写法: im = cv2.imread('D:\\ima...
2018-04-01 17:06:05
17593
原创 matlab vs opencv 对图像仿射变换功能的效果对比
matlab 应该更加完善。相同的仿射矩阵,比如用一个30度的旋转矩阵,对同一图像做旋转出来,显示出来的图像效果如下:我只要实现旋转操作,显示的结果就是是完美的整幅图像。而python调用opencv的函数进行操作,还需要考虑一些参数,比如旋转中心,另外,在图像旋转后的尺寸上也要加入控制: M1 = cv2.getRotationMatrix2D((round(h/2),round(w/2)),3...
2018-04-01 12:29:41
698
原创 基于dtw的在线识别及其与通用模式识别的区别
做过基于dtw的模板匹配项目,其中用于dtw匹配的方向矢量的概念也是将平面分成若干份,计算采样曲线前后两点的相对方向特征的: 如图,平面按照顺时针方向均分成8个区间。假设手写字符c,则应是从右上开始画半圆,在手写过程中进行数据采样,得到右边的圆点序列。则从第2点开始,每点相对于前一点都可以按照左图的方式给每条线段进行方向矢量编码,从而得到在线书写的字符的方向矢量序列,可以用来作为dtw匹配的特征...
2018-03-15 21:01:37
561
原创 HOG基本思想及瞎想
HOG(histogram of oriented gradient) 是成名的特征描述方法,在检查行人的应用上收到很好的效果,所以学习一下。 图像的特征提取的一个基本前奏就是,先给分块,然后对每个分块进行处理。典型的hog的做法是将图像分成8*8像素的 cell,针对每个cell进行特征提取处理。首先是针对每个像素的x,y方向的梯度计算,也可说是一维卷积吧,x方向模板[-1 0 1...
2018-03-15 20:32:24
405
1
原创 vondrak滤波器
这个玩意一度让我欣喜若狂,因为在某些时候,它确实表现的非常好。其实搜搜网络,相关资料并不太多,不过也是个简单的东西。说起来,就是利用一堆历史数据,拟合一个多项式,然后拟合的过程中兼顾拟合度和平滑度,这个兼顾程度是由开发者来控制的。然后,根据最小二乘法,就可以算出一组权重系数coef。如果是利用k点(当前点和历史k-1点)进行拟合,则可以得到对当前点进行平滑处理的一组coef,然后当前点的滤...
2018-03-01 10:22:15
1545
原创 nrf51822应用经验杂烩
曾经认真的做过一段时间,虽然最后结果不咋地,但经验是真的。keil uvision5 不熟悉,选择 cotex-M professional的破解,编译不过,总说product not defined ,改cortex-M standard的破解lic,过了。 51822芯片换成rev3的版本,才能烧写softdevice 8.0,这是问了好久找了好久才发现的问题,这个版本的softd
2017-04-09 11:27:09
945
原创 Android实现一个apk连接两个ble设备
声明:代码基于网上某个小工程改的,如果涉及侵权,请联系本人,立马删除。曾经做过一个小玩意,尝试把两个ble单片机设备都连在一个apk上,同时通信。网上可以找到类似的,但我找到的代码不够完整,还是自己折腾出来的,希望能帮到有需要的人。思想简单,一个BluetoothGatt结构管理一个device,两个BluetoothGatt放在一个队列里:private ArrayList conn
2017-04-09 09:14:52
7099
6
原创 逆向iir滤波器的实现
这是一个新的算法,不同于最广泛应用的block process,还有iir尾部序列抵消(cancellation)的策略。
2017-04-04 14:53:25
2229
2
原创 实时零相位滤波的神话(2)
第二次寻找零相位滤波的历程。这里记录下来更多是为 了学习。不信邪的继续找,也许真有实时零相位滤波的方法呢。。。google搜索n久,发现了一篇光芒万丈的文章:来自IEEE的成员 SR powell &Paul M.Chau的《A Technique for Realizing Linear Phase IIR Filters》,我发现有好多文章都引用了这个文章。文章提出:a noncausal
2017-04-04 13:25:18
10413
9
原创 实时零相位滤波的神话(1)
做控制的人大概都梦想做到输出和输入信号保持完全同步,相移为0。如果能做到,那该多酷。MATLAB有个神奇的函数filtfilt,可以对数据做离线的滤波,实现零相移。原理就是先做一个方向的滤波,比如先forward 滤波,然后把滤波后的序列逆序,再用同一个滤波器做backward滤波,滤波得到的序列最后再逆序,得到最终结果。尝试了一下,滤波效果那真是赏心悦目。可惜,不能实现在线信号的实时零相移滤
2017-04-04 11:19:30
18168
3
原创 ADV212应用记录
和bf531一起,用于进行图像数据的压缩和回放。一开始用adv202,后来是212.adv212是个比较niub的片子,它能对图像进行jpeg2000压缩,生成jp2k图像。jpeg 2000比jpeg牛逼的多,不仅仅是支持静止图片的压缩,还支持视频流图像的压缩;jpeg2000采用小波变换来压缩,细节上比用离散余弦变换的的jpeg标准高的多得多;另外,由于集成了数字水印技术,经过压缩的数据是
2017-04-04 10:15:24
3355
5
原创 bf531/3 开发若干记录
bf531/3是我职业生涯碰到的第一个片子。当时我没嵌入式开发经验,从零开始,慢慢的熟悉直到解决了很多fae都搞不定的问题,呵呵,小小的成就感。当时玩这个的时候是首先去了adsp的技术社区,从时钟设置到内存分类,到flash读写,启动,搞通以后立马就不怵这个片子了,因为最小系统能跑起来了嘛。adsp的技术社区后来停止运转了,直接转到另一个什么地方去了,名字不记得,好像在中国也有某个技术社区。
2017-04-04 08:46:59
910
原创 开端
其实我已经工作十多年了。回首之际,突然觉得,好像我知道的东西很少啊,因为我只记得最近做的事情。。。可是,我明明走的很辛苦,我曾经整夜苦熬,曾经在芯片的fae人员宣布系统构造有问题的情况下把芯片调通了,曾经啃过好多篇IEEE文章。。。这些似乎都该被记住,起码,我要告诉自己,看其来高大上的东西,至少我曾经研究过一阵子。我做过什么:首先是dsp,基于adsp-bf531,的dvr,从电路构建到整
2017-04-04 08:45:03
307
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人