- 博客(8)
- 资源 (3)
- 问答 (1)
- 收藏
- 关注
原创 简单理解“堆排序”
某公司《技术笔试心得》中算法与数据结构部分,有这样一道题: 数据表中有1000000个元素,找出其中最大的10个元素,采用什么算法比较好? 堆排序?希尔排序?快速排序?直接选择排序? 答案是“堆排序”。 什么是堆排序?本文就是在学习堆排序中的思考总结。1.什么是堆?需要个人上网多看几篇文章,这里推荐几个还不错的文章: 图解堆排序 百万数据排序:优化的选择排序(堆排序) 常...
2018-09-03 19:46:05
1138
原创 基于v4l2通过Map方式读取摄像头的理解
在Linux下,基于v4l2通过Map映射方式使用USB摄像头,流程有点复杂,刚开始每次看都仿佛看懂了,过一段时间就会蒙圈,直到我发现一个很好的比喻……这里简要介绍一下思路。关键字:Linux,v4l2,Map,USB摄像头,比喻理解0. 你有一台生产机器1. 为这台机器申请库房(VIDIOC_REQBUFS)2. 给库房起名字(VIDIOC_QUERYBUF)3. 建立映射(...
2018-06-02 16:06:40
603
原创 多线程与互斥锁
疑问:据说,多线程程序中,为了保证线程的顺序执行,可以使用互斥锁。我有一个疑问,假如想达到线程顺序执行的目标,为什么不直接使用单线程呢?多线程+互斥锁,就是进入某一个线程,锁起来,不让其他线程执行;等该线程执行完毕,解锁之后才可以执行其他线程。这和单线程有区别吗?还有,多线程是如何保证线程按顺序执行呢?假如某个线程中,并不是一进程序就加锁,而是加锁前有一段程序,那么多线程之间,那个先执行还不好说。比
2017-12-30 12:43:51
572
原创 解决MATLAB绘图延迟问题的一种方法
问题描述 在GUI中接收串口数据,并绘制实时的曲线; 但是发送数据变化后,刚开始能在曲线上体现出来,几秒钟过去就出现卡顿延迟;越往后越卡。 关键词: MATLAB、GUI、画图、实时曲线、延迟、解决方法问题分析和方法尝试 开始曲线变化流畅,越往后延迟越大,说明往后MATLAB储存数据太多导致的; 尝试每次画少一些点,是否可以解决问题; 结果开始显示时
2017-10-05 20:50:55
19086
1
原创 单片机通过如何发送字符串?
关于printf的知识很零碎,感觉成体系的总结有点麻烦,这里就用列出的方法。printf 与 fputc、putchar…的关系 无论是51还是ARM,都可以在标准输入输出头文件“iostd.h”中找到printf函数; printf函数可以方便的选择输出的内容,包括字符串,甚至是汉字形式的字符串; 当使用printf函数输出字符串的时候,肯定是一个字节一个字节的输出,而f
2017-09-25 17:05:15
18360
3
原创 STM32通过中断方式实现USART1通信
1.前言 这个例程花了我好几天的时间,涉及到的内容比较多,走了很多弯路,一定要总结一下! 首先说明,我的开发板不是比较流行的正点原子家的,而是普中的STM32F1,原子家的开发板太贵了。到目前为止,我还没有发现我的开发板出现硬件上的问题,就是客服很不给力,关于仿真器配置的一个小问题就解决不了。好在网上资料比较丰富,慢慢也能解决自己遇到的一些问题。 思路和程序网上大家列举的都一
2017-08-30 22:35:02
16249
3
原创 STM32F103:什么时候需要复用IO(AFIO)?
文章来源: 刚接触STM32F103,在尝试编写“按键中断”和“PWM呼吸灯”程序的时候,发现例程都用到了管脚复用AFIO://打开管脚复用AFIORCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO,ENABLE); 写到“232USART串口通信”程序时,当我非常自信的写下上面这句代码后,发现例程里面却没有这句话,很让人摸不着头脑……查了很多资料,加上
2017-08-24 23:33:23
41590
35
原创 不同数值微分方法的精度讨论
验证数值微分的精度来源 在进行姿态解算的时候,有一个环节是“通过角度求角速率”,用到离散点求微分的知识,也就是“数值微分”。有人说离散点直接差分就好了,但对于对精度有一定要求的时候,直接差分可以胜任吗?验证方法 身边恰好有一本《工程数学基础教程》(天津大学出版社,P316),上面介绍的数值微分方法,包括插值型求导公式、两点数值微分公式和三点数值微分公式。插值型求导方法需要事先知道所有的插值点
2017-06-20 15:32:54
9533
1
为什么要配置STM32的外设时钟?
2017-07-12
TA创建的收藏夹 TA关注的收藏夹
TA关注的人