算法
文章平均质量分 58
jdh99
电子工程师 邮箱:jdh821@163.com
展开
-
C语言协程库async
文章目录C语言协程库async介绍开源特点依赖API注意测试用例C语言协程库async本文博客链接:http://blog.csdn.net/jdh99,作者:jdh,转载请注明.介绍基于protothreads开发的C语言协程库。关于protothreads可参考文章:利用Protothread实现实时多任务系统开源github项目地址gitee项目地址特点极小的系统占用,适合单片机等资源有限的场所支持单次运行任务和周期运行任务任务运行在协程之上,不用加锁,数据不会冲突依赖原创 2021-04-15 07:30:42 · 1753 阅读 · 1 评论 -
基于Lamport面包店算法实现的无等待互斥锁
文章目录基于Lamport面包店算法实现的无等待互斥锁nowaitlock介绍开源API测试用例源码nowaitlock.hnowaitlock.c基于Lamport面包店算法实现的无等待互斥锁本文博客链接:http://blog.csdn.net/jdh99,作者:jdh,转载请注明.nowaitlock介绍基于Lamport面包店算法实现的无等待互斥锁。可用于没有提供锁的系统,比如无RTOS的单片机中。开源github上的项目地址gitee上的项目地址API// Copyrigh原创 2021-04-14 08:18:47 · 780 阅读 · 0 评论 -
C语言实现升级版标准FIFO
文章目录C语言实现升级版标准FIFO介绍开源API测试源码tzfifo.htzfifo.cC语言实现升级版标准FIFO本文博客链接:http://blog.csdn.net/jdh99,作者:jdh,转载请注明.介绍tzfifo是标准fifo,可以存储任意类型的数据。类型是满了不能写入。tzfifo依赖内存管理包tzmalloc,使用cip可以安装依赖的包:cip:C/C++包管理工具开源github上的项目地址gitee上的项目地址API// TZFifoCreate 创建fifo原创 2021-04-12 04:54:22 · 1556 阅读 · 1 评论 -
C语言MD5计算库
C语言MD5计算库介绍查表法计算crc 16。模型是CRC-16/MODBUS,多项式是8005。开源github上的项目地址gitee上的项目地址API// MD5 len#define MD5_LEN 16// MD5Calc calc md5// out is md5 result.Notice out array size is greater than 16void MD5Calc(uint8_t* data, int len, uint8_t* out);测试测原创 2021-04-11 11:14:44 · 2066 阅读 · 0 评论 -
嵌入式系统内存管理包:tzmalloc
嵌入式系统内存管理包:tzmalloc概述本文博客链接:http://blog.csdn.net/jdh99,作者:jdh,转载请注明.在嵌入式领域并没有好用的内存管理框架,一般是直接使用malloc进行内存分配。当内存泄漏时没有好的办法定位到问题,容易造成稳定性问题。所以一般不建议在单片机中使用malloc,就是出于这方面考虑。本文介绍的tzmalloc是适合于嵌入式领域的内存管理包,可以追踪到每个模块的内存使用,内存使用次数等等。如果有内存泄漏问题,可以很方便的定位到出问题的模块。bgetb原创 2020-08-07 18:01:59 · 1063 阅读 · 0 评论 -
C语言实现升级版标准双向链表TZList
目录C语言实现升级版标准双向链表TZList概述链表操作创建链表创建节点节点数据结构创建操作删除节点遍历链表源码tzlist.htzlist.c测试文件test_tzlist.cC语言实现升级版标准双向链表TZList概述文章《C语言实现标准双向链表》中实现了双向标准双向链表,本文设计了升级版本的标准双向链表TZList,更加好用。链表操作链表的所有操作都进行了封装,使用起来更安全,不容易内存泄漏。创建链表intptr_t list = TZListCreateList(gMid);创建链原创 2020-07-21 21:14:08 · 534 阅读 · 0 评论 -
Android编程:观察者模式设计
Android编程:观察者模式设计入本文博客链接:http://blog.csdn.net/jdh99,作者:jdh,转载请注明.环境:主机:WIN8开发环境:Eclipse说明:1.打开sd卡中的xml文件,如果不存在,这新建一个,并写入默认配置2.读取xml文件3.Config_Info.java为配置信息数据结构4.IF_Config.java为配置类的存取接口,其他类可以通过此接口直接原创 2014-12-09 13:32:35 · 3177 阅读 · 1 评论 -
单片机中应用观察者模式
单片机中应用观察者模式本文博客链接:http://blog.csdn.net/jdh99,作者:jdh,转载请注明.环境:主机:WIN8开发环境:MDK5.13mcu: stm32f103RB说明:之前在java中应用观察者模式,现将此模式的思想应用在单片机程序设计中Android编程:观察者模式设计:http://blog.csdn.net/jdh99/article/details/418原创 2015-01-07 11:27:19 · 3838 阅读 · 5 评论 -
用C语言实现最小二乘法算法
用C语言实现最小二乘法算法本文博客链接:http://blog.csdn.net/jdh99,作者:jdh,转载请注明. 环境:主机:WIN8开发环境:MINGW说明:参考维基百科最小二乘法资料:测试文中战列舰例子:用战列舰的长度预测宽度简单线性模型 y = b0 + b1t 的例子[编辑]随机选定10艘战舰,并分析它们的长度与宽度,寻找它们长度与宽度之间的关系。由下面的描点图可以直观地看出,原创 2015-03-09 23:53:56 · 26360 阅读 · 2 评论 -
C语言实现标准FIFO
C语言实现标准FIFO本文博客链接:http://blog.csdn.net/jdh99,作者:jdh,转载请注明.说明:本文在C语言中实现了标准FIFO,可以存储任意类型的数据。FIFO返回给应用模块的是一个int类型的索引值,本质是一个指针。通过这层封装,可以简化提供给应用模块的接口。注意:此FIFO为满时不能写入的类型,如果需要的是满时自动覆盖,请自行修改。...原创 2018-11-06 16:30:53 · 18657 阅读 · 12 评论 -
脉冲滤波算法
脉冲滤波算法本文博客链接:http://blog.csdn.net/jdh99,作者:jdh,转载请注明.说明:有一些传感器采集的数据基本准确,但有偶发性的错误。本文设计的脉冲滤波算法可以过滤掉这些脉冲干扰。算法原理:建一个数组保存数据,每个数据都有一个有效性标志。有新数据时,跟前一个有效数据比较差值,小于阈值则有效,大于阈值则无效。如果无效数据过多,则算法失效,认为所有...原创 2019-03-04 14:11:19 · 4251 阅读 · 1 评论 -
C语言实现标准双向链表
C语言实现标准双向链表本文博客链接:http://blog.csdn.net/jdh99,作者:jdh,转载请注明.说明本文使用C语言实现了双向链表,可以存储任意类型的数据。指针类型使用了标准库中类型intptr_t,可以兼容32位和64位系统。链表涉及到指针操作,操作不当易导致内存泄漏。本文虽做了一定程度的封装,但应用到项目中,还是要阅读源码理解后再安全的使用。源码list.h/*...原创 2019-08-14 23:04:13 · 616 阅读 · 0 评论 -
qt中采用G.729A进行网络语音通话实验程序
qt中采用G.729A进行网络语音通话实验程序本文博客链接:http://blog.csdn.net/jdh99,作者:jdh,转载请注明.环境:主机:WIN8开发环境:Qt5 3.1.2说明:G.729是电话带宽的语音信号编码的标准,G.729A是它的简化版本。本程序采样频率为8KHz,量化位数为16位,则码率为128kbps。G.729A压缩比率为1/16,则压缩后的码率为8kbps。本测原创 2014-09-24 17:09:26 · 6482 阅读 · 3 评论 -
qt中采用宽带speex进行网络语音通话实验程序
qt中采用宽带speex进行网络语音通话实验程序本文博客链接:http://blog.csdn.net/jdh99,作者:jdh,转载请注明.环境:主机:WIN8开发环境:Qt5 3.1.2speex版本:1.0.5说明:本程序采样频率为8KHz,量化位数为16位,则码率为128kbps。speex采用窄带压缩,质量10,压缩比率为62/320,则压缩后的码率为24.8kbps。本测试程序实现原创 2014-09-24 17:33:41 · 4075 阅读 · 5 评论 -
qt中采用窄带speex进行网络语音通话实验程序
qt中采用窄带speex进行网络语音通话实验程序本文博客链接:http://blog.csdn.net/jdh99,作者:jdh,转载请注明.环境:主机:WIN8开发环境:Qt5 3.1.2speex版本:说明:G.729是电话带宽的语音信号编码的标准,G.729A是它的简化版本。本程序采样频率为8KHz,量化位数为16位,则码率为128kbps。G.729A压缩比率为1/16,则压缩后的码率原创 2014-09-24 17:28:48 · 4512 阅读 · 4 评论 -
在C中实现矩阵运算
本文博客链接:http://blog.csdn.net/jdh99,作者:jdh,转载请注明.环境:主机:XP开发环境:mingw功能:在C++中实现矩阵运算说明:将这篇文章(http://blog.csdn.net/jdh99/article/details/7360091)中在C++下实原创 2012-03-28 14:01:52 · 15288 阅读 · 3 评论 -
在C++中实现矩阵运算
在C++中实现矩阵运算本文博客链接:http://blog.csdn.net/jdh99,作者:jdh,转载请注明.参考链接:http://sc.dhu.edu.cn/weblearning/math/jisuanfangfa/matlabpg/pg6.htm环境:主机:XP开发环境:mingw原创 2012-03-16 11:21:58 · 54965 阅读 · 12 评论 -
仿GPS的4星定位程序
仿GPS的4星定位程序本文博客链接:http://blog.csdn.net/jdh99,作者:jdh,转载请注明.环境:主机:WIN7开发环境:Qt功能:给4点坐标,以及与未知点的距离,求出未知点坐标.说明:现在在做一个原理类似GPS的定位系统.所以需要解一原创 2012-03-13 17:39:15 · 5343 阅读 · 11 评论 -
空间3点投影定位算法
空间3点投影定位算法 本文博客链接:http://blog.csdn.net/jdh99,作者:jdh,转载请注明.环境: 主机:WIN7开发环境:Qt 说明:>(http://blog.csdn.net/jdh99/article/details/7349771)提供了空间4点定位1点的算法.原创 2012-06-05 14:39:43 · 8971 阅读 · 6 评论 -
在C#中实现矩阵运算
在C#中实现矩阵运算本文博客链接:http://blog.csdn.net/jdh99,作者:jdh,转载请注明.环境:主机:XP开发环境:VS2008功能:在C#中实现矩阵运算源代码:using System;using System.Collections.Generic;using System.原创 2012-08-21 10:32:55 · 17781 阅读 · 2 评论 -
(转)基于用户投票的排名算法(一):Delicious和Hacker News
原链接:http://www.ruanyifeng.com/blog/2012/02/ranking_algorithm_hacker_news.html作者: 阮一峰日期: 2012年2月24日互联网的出现,意味着"信息大爆炸"。用户担心的,不再是信息太少,而是信息太多。如何从大量信息之中,快速有效地找出最重要的内容,成了互联网的一大核心问题。转载 2012-10-11 09:22:50 · 1744 阅读 · 0 评论 -
(转)基于用户投票的排名算法(二):Reddit
原链接:http://www.ruanyifeng.com/blog/2012/03/ranking_algorithm_reddit.html作者: 阮一峰日期: 2012年3月 7日(不好意思,这个系列中断了近两周,我会尽快在这几天,把后面几篇写完。)上一次,我介绍了Hacker News的排名算法。它的特点是用户只能投赞成票,但是很转载 2012-10-12 11:21:12 · 1738 阅读 · 0 评论 -
IEEE1588学习笔记
IEEE1588学习笔记本文博客链接:http://blog.csdn.net/jdh99,作者:jdh,转载请注明.IEEE1588是利于网络对时实现整个网络时间同步的标准,对时精度按说明可以达到亚us级.原理:IEEE1588标准认为网络传输时延是一定的,所以利用两次对时即可知道这个传输时延,然后就可以校准时间.示意图:先进行一次传输得到t1原创 2013-04-26 10:03:27 · 3129 阅读 · 0 评论 -
单片机中大数据量处理:哈希表与跳表
单片机中大数据量处理:哈希表与跳表本文博客链接:http://blog.csdn.net/jdh99,作者:jdh,转载请注明.说明:需要对500个点的数据进行查询,增加,删除操作.500个点不需要顺序排列.思路:用数组+单链表构造哈希表进行处理.比如建一个100个大小的数组.每个数组可以带单链表如果所示,将每一个ID对100进行取余,存原创 2013-01-08 18:13:11 · 5979 阅读 · 0 评论 -
哈希表算法实现
哈希表算法实现本文博客链接:http://blog.csdn.net/jdh99,作者:jdh,转载请注明.环境:主机:WINXP开发环境:MINGW说明:本程序建立的哈希表示意图:哈希函数为对哈希表长取余源代码:/**********************************************原创 2013-01-10 16:53:05 · 39085 阅读 · 13 评论 -
单片机上使用TEA加密通信
单片机上使用TEA加密通信本文博客链接:http://blog.csdn.net/jdh99,作者:jdh,转载请注明.环境:主机:WIN7开发环境:MDK4.72单片机:STM32说明:在项目中单片机会与服务器进行网络通讯.需要对通讯加密,我选择了TEA加密算法.源码:tea.h/**********************************************************原创 2014-08-20 14:43:35 · 11219 阅读 · 6 评论 -
初探神经网络:QT下建立BP网络模型
初探神经网络:QT下建立BP网络模型本文博客链接:http://blog.csdn.net/jdh99,作者:jdh,转载请注明.环境:主机:WIN7开发环境:Qt实现功能:建立了细胞类以及BP网络类.BP神经网络为3层结构:输入层,隐藏层,输出层.说明:1.细胞模型2.BP网络模型原创 2012-03-07 17:06:45 · 5488 阅读 · 2 评论