- 博客(122)
- 资源 (4)
- 收藏
- 关注
原创 PID Control
D 当前的偏差,与过去的偏差变化率,变化太快,会带来过冲问题,所以可以增加系数,调节过冲问题。I 随着时间的积累,离目标会越来越近,那么根据积累的偏差,偏差越大,加速可以更大。P 按照设定目标,与当前状态的偏差,指定一个系数,目的是快速达到目标。
2024-05-27 10:51:42 203
原创 大数求和问题实现
2.实现几个子函数,一个用于从低位到高位,逐渐相加,有进位就往前加一个;1. 将a, b 作为字符串输入,并且对短的进行0填充,填充之后等长;1. 输入数据 a, b 分别是很长的整数,求和,输出a+b的结果;3.在每个累加结束后,看最后一位有没有进位的需求,进位;
2024-03-30 10:36:08 150
原创 数组合并小程序
这里一个一个插入是有效率问题的,为了程序简单,没有处理,如果有一批插入元素都在范围内,可以整体插入,但是实现条件会更多。3. 一个函数专门用于查找可以插入的位置,对于重复的数据,查找到的未知有可能是重复的,那么要跳过;1. 如果比插入的数组大,那么往后插入,如果继续有大的,就移动位置插入;4. 一个函数专门用于插入动作,插入方法就是先整体移动位置,然后插入;2. 遍历完所有要插入的元素;
2024-03-28 22:00:58 591
原创 快速排序的关键点
2. 从高往低找比基准准小的,所以条件是只要比自己大或者等于,就跳过,然后找到之后,进行交换,这里注意前提条件是从高到低,与从低到高都是维持,低<高。3. 从低往高找比基准大的,所以条件是只要是比自己小或者等于的,就跳过,然后找到之后,进行交换。4. 最后返回low的位置,作为进一步划分的前后端。这里有一个停止条件就是,low必须小于high。寻找基准位置前的区域进行划分。寻找基准位置后的区域进行划分。
2024-03-28 14:28:40 134
原创 addr2line&readelf&objdump
测试程序:zhoukangli@ubuntu:~/Documents$ cat hello.c#include#includeint main(){ int x=0; printf("hello\n"); int countk=0; char *p=NULL; *p=0x01; printf("countk=%d\n", countk);return 0;}gc
2016-11-28 23:17:39 952
原创 /proc/N/maps 信息是如何生成的?
以进程1为例,查看proc长什么样子?127|shell@tiny4412:/proc/1 # ls -l dr-xr-xr-x root root 2014-01-01 12:07 attr-r-------- root root 0 2014-01-01 12:07 auxv-r--r--r-- root
2016-11-27 12:53:22 3413
原创 Android openplatform 编译系统粗略学习笔记
框架: make -à调用Openplatform/MakefileMakefile 包括 细节: Main.mak 文件:àinclude config.makàinclude sysconfig_version.mak 1. 通过git获取平台(platform
2014-09-23 21:44:46 1233
原创 linux 字符设备驱动的验证程序(openplatform/android/externl/chr_dev/)
为了验证前面编写的字符设备编写是否正确,编写一个
2014-09-22 23:37:43 1344
原创 Andoird service 实例程序调试过程[driver->hal->jni->service->app] (总结篇)
经过一个月的Android学习
2014-09-22 21:36:58 937
转载 misc设备驱动模型及实例解析
1、misc设备驱动模型 本节我们来看一下misc设备驱动模型的有关内容,首先是看看它的设备结构体,定义在include/linux/miscdevice.h中:[cpp] view plaincopystruct miscdevice { int minor; //次设
2014-08-11 15:14:51 684
转载 linux MISC 驱动模型分析
linux MISC 驱动模型分析 阅读led驱动程序的代码的时候,没有发现ldd3中提到的各种字符设备注册函数,而是发现了一个misc_register函数,这说明led设备是作为杂项设备出现在内核中的,在内核中,misc杂项设备驱动接口是对一些字符设备的简单封装,他们共享一个主设备号,有不同的次设备号,共享一个open调用,其他的操作函数在打开后运用linux驱动程序的
2014-08-11 15:11:52 610
转载 platform设备驱动
1.platform总线、设备与驱动在Linux 2.6的设备驱动模型中,关心总线、设备和驱动这3个实体,总线将设备和驱动绑定。在系统每注册一个设备的时候,会寻找与之匹配的驱动;相反的,在系统每注册一个驱动的时候,会寻找与之匹配的设备,而匹配由总线完成。一个现实的Linux设备和驱动通常都需要挂接在一种总线上,对于本身依附于PCI、USB、I2 C、SPI等的设备而言,这自然不是问
2014-08-11 14:57:24 547
转载 Linux中的platform
总线设备驱动模型主要包含总线、设备、驱动三个部分,总线可以是一条真实存在的总线,例如USB、I2C等典型的设备。但是对于一些设备(内部的设备)可能没有现成的总线。Linux 2.6内核中引入了总线设备驱动模型。总线设备驱动模型与之前的三类驱动(字符、块设备、网络设备)没有必然的联系。设备只是搭载到了总线中。在linux内核中假设存在一条虚拟总线,称之为platform总线。platform总线相比
2014-08-11 14:55:50 727
转载 多核多线程开发时如何防止false sharing (from intel)
https://software.intel.com/en-us/articles/avoiding-and-identifying-false-sharing-among-threads/
2014-07-19 10:53:20 684
翻译 gcc 中typeof的用法
Another way to refer to the type of an expression is with typeof. The syntax of using ofthis keyword looks like sizeof, but the construct acts semantically like a type name definedwith typedef.T
2014-07-19 09:58:18 1107
原创 linux 驱动中的makefile体系
obj-y:把由foo.c 或者 foo.s 文件编译得到foo.o 并连接进内核.obj-m: 则表示该文件作为模块编译.除了y、m以外的obj-x 形式的目标都不会被编译。除了obj-形式的目标以外,还有lib-y library 库、hostprogs-y 主机程序。hello-objs := file1.o file2.o ...... 多文件时,用这种形式
2014-04-21 22:38:02 560
原创 最近的一些感想
第一次出差,感觉就是客户最急迫的事情就是解决他们的现场问题,经过QA的多次测试来发现其中可能存在的隐患,并解决他们,为量产做好准备。然后就是如果有经过测试的rom.bin最好保存一份,以免在更新软件之后测试出问题,不知道什么原因,然后又无法恢复到以前的测试版本,出差需要带一些笔,纸之类的东西,记录一些现场的问题。如果关于信号方面的,偶尔能够连接,偶尔不能够连接,其问题很有可能是硬件的问题,嵌入
2013-12-30 00:05:46 725 1
原创 思考
学习别人的东西,而不自己思考,没有自己的主见,那么永远都是别人的想法,多读书,多思考,多写文章,将自己的想法表达出来,而非将别人的思想填充在自己的脑海之中,最终却失去了方向。
2013-12-29 15:22:44 667
原创 换工作之后的一些问题
记录一下,此刻的心情,从第一家公司换到现在的公司,感觉到了事实就是每个公司都有他的好与坏,跳多了也不能够静下来做事,学习一些东西,而且感觉有一些迷失,从学校出来,偶尔有些迷失方向,不知道工作是为了什么,没有学校里面的激情,没有原来那么有激情,没有成天都去学习,没有学习的良好习惯。而且感觉很多东西不会,迷失的时候喜欢玩游戏之类的消磨时间,但是还是有点后悔,不希望三年了之后还没有比较好的提升,希望能够
2013-12-22 23:50:14 778
原创 谦虚,学习,看世界
来了深圳一个多月了,感觉工作氛围还是很不错,看到了同事们有很多优点,谦虚,无尽的激情... 前一段时间有点迷茫,工作之余都玩游戏去了,确实是无聊,后来改了,人对自己的要求应该高一点,天外有天,人外有人, 对自己要求高一点,自己的水平也就相应的提升了。世界很大,谦虚是必须的,牛人太多了,只有默默努力了,多看看书,看看世界,看看自己跟别人的差距,加油。
2013-12-01 17:51:30 556
原创 项目中漏掉了的东西,以及不足总结
1)最大的失误有两个少了两个输入,右摇窗没有输入。太粗心了。2)放大器的两端接错了,这个最开始对原理不清楚导致的,没有下细分析。3)板子的二极管,方向没有标,芯片引脚的尺寸应该比手册中的大一点。4)天线没有画。5)板子的布局方式有问题,太长了。6)LM258 应该改为节能模式7)CAN通信芯片,应该加上sleepmode电路。个人弱点: 太粗心、揽下的事情太多了
2013-09-30 18:16:00 1100
原创 很多纠结的问题不就结了
(1) 到底现实点好,还是单纯点好,这个问题偶尔很纠结,后面看过一个老师的视频讲解之后,不纠结了,如果人太现实了,那么生活也就没有了乐趣,所以单纯点还是有好处的,比较幸福。如果一个人太单纯了,不现实点,那么连基本的生活都不能够保证,那么问题就来了。(2)现实与理想的问题,如果自己觉得自己就这个样子,那么什么都无法改变了。如果你认为不是这个样子的,那么你至少有了更多的路,如果你认为不是这个样子的
2013-09-17 22:41:10 580
原创 编写51汇编中断程序遇到的问题
调试了一天,写了一个程序,本来51有两个外部中断INT0, INT1. 虽然程序很简单,但是始终只有一个INT1产生了中断,调试了一天无果,感觉是不是碰到了脑子有问题了,在今天早上解决了,对单片机不是很了解,对汇编语言编写还不够了解,没有懂得底层的东西,没有注意他的一些限制条件。半壶水叮当响,以为自己水平应该还可以了,还是没有考虑到,但是在今天早上想到了,以前写程序的时候都是用c写的,对单片机的地
2013-09-17 22:30:07 1527
原创 stc11f16xe 单片机汇编语言编写遇到的一些问题
编写代码差不多编写了一个月左右了,有点没用,编写了1800行左右的程序,编得比较痛苦,经常出现逻辑出错,位出错。总的来说问题主要出现在编写过程中命名不规范,重复,而且可读性比较差,主要是可读性比较差,引起了太多的问题,调着就头大,而且主要是在调试的过程中,没有分成一个模块一个模块的调试,写一段程序,然后下载到板子上去,而且周围环境比较差,同事就在那里各种聊天,我承认我心中谩骂了好多遍,可不可以安静
2013-09-16 18:48:51 1790
原创 最近工作的一些感想以及个人弱点
最初在学校的时候,对所谓的公司,想象中的公司,效率高,像家一样,大家态度很好,而且环境还不错,工作起来应该很快乐。-----想象的太美好了 几个月的工作之后发现,正好相反,工作效率低,有点冷漠,态度不好,而且环境不好。------现实中的太残酷 几个月的工作之后,发现了自己的很多弱点,1)做人做事太认真,做人做事要求太高了,对于效率低的会议以及其他活动相当反感,感觉实在浪费时间,
2013-08-22 23:21:50 1043
原创 CAN项目---遇到的问题
在本次项目运行过程中,遇到了很多问题,分析一下,本次遇到的问题。1.关于板子: 1)在投板之前,其实已经将PCB板和原理图对比了一下的,但是由于沟通不到位,导致最后还是出现了许多问题。其中第一个问题,主要是设计原理图的人和画板子的人不是一个,而且在相互沟 通的过程中,并未形成对应的文件,再设计过程中相互沟通还不够,而且最好在沟通之后,能够形成文件,并且让相互之间进行确认,就应该不会出现这样
2013-08-22 22:51:37 922
原创 PCB投板时候遇到的问题
1.样品和批量制板的问题,一般的PCB生产厂商都不是很愿意接收样品生产,而且生产周期从7~10天变得更长,差不多就要10~15天左右。2.在投递板子的时候,需要向pcb生产厂商提供自己的要求,要求有哪些呢,第一次做,不懂。 1)板子的铜箔厚度。 2)板子的是否需要连板,而且连板的尺寸,以及方向都必须比较注意。 3)板子是否需要印刷字符。 4) 板子是否需要工艺槽,以及工
2013-07-25 23:41:27 2710
原创 发光二极管配合单片机使用经验
普通发光二极管的正向饱和压降1.6~2.1v, 正向工作电流为5~20mA1)考虑一个问题工作电流一般是取中间值,Iwork= (Imin+Imax) / 2,取其值的原因是,为了防止电源电压波动,波动在允许范围内,都是可以正常工作的。2)考虑接的限流电阻 R = (Vcc-V)/Iwork, 其中V为正向饱和压降。3)考虑单片机能够承受的灌电流,以及拉电流。如果单片机口作为驱
2013-07-19 20:59:26 748
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人