自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(7)
  • 资源 (16)
  • 收藏
  • 关注

原创 Crash:一个死锁引发Kernel PANIC的思考

软件开发过程中经常会遇到因驱动或内核引起的死机问题,我遇到的有hung_task和NULL point两种类型问题。通常的分析和解决这两类问题,都是通过查看kernel log的方式去解决,但是有时也会从kernel log中无法找到有用的线索,此时就可以借助crash工具分析此类型的问题了.这里借助在项目中遇到的问题记录下详细的分析过程.背景知识: 在借助cra...

2019-03-10 15:02:52 1837 1

原创 基于linux-4.18新建一个项目和如何给linux社区发送patch

我们在工作的过程中,通常会遇到新建项目的需要,比如项目经理提出我们需要基于linux-4.18的内核版本创建新项目A的需要,大部分做开发的人员可以会一头雾水了。下述步骤是在ubuntu16.04上执行的结果,其他linux系统类似.1. 建立远程git 仓库和本地git repo建立远程git仓库:cd /opt; sudo mkdir git_linux_dev.git; sudo ...

2019-02-17 14:43:09 993

原创 Linux常见的内存分析工具

    随着技术的日新月异,嵌入式软件产品也逐渐往更高端, 运行更流畅方向发展。正常我们目前的手机产品,常见的基本都是32G,16G,已经很难在看到1G的内存了。即使如此我们还是会面临内存不够用导致系统慢的结果。本文将列出几个我比较熟悉的内存分析的工具或者方法,读者不妨可以尝试使用以下。1. system monitor图像化界面在ubuntu左上角点击search your comput...

2019-02-01 01:27:37 10000

原创 一个简单的例子:native service binder通信

本小结描述native层进程间binder通信,包括client端和 Server端. 下面将根据一个具体的事例来介绍如何在native层使用binder. 自顶往下看,首先看到的就是Android.mk, 可以看到在使用binder之前,依赖系统的动态库LOCAL_PATH := $(call my-dir)include $(CLEAR_VARS)LOCAL_SHARED_LIBR...

2019-01-29 15:25:21 638 1

原创 gerrit上提交代码时出现Merge Conflict解决办法

    平时使用gerrit管理代码的公司,软件开发人员经常会发现如果提交的代码不及时+2或者merge,如果有其他开发人员先于你merge(你们都是基于同于代码base), 那么你的代码将无法入库,出现merge conflict.    本文将给出一种方法来解决这种问题:- git remote update;- git rev-parse xxx_branch |xargs gi...

2019-01-17 10:25:22 25377 4

原创 QEMU调试linux内核

经常会有学习linux的朋友在问学习linux是否一定要买发开版,答案是否定的,但如果你需要在产品级别的验证,买一块开发板做开发板还是非常有必要的。本文主要介绍使用QEMU来调试ARM linux内核,一台PC全部搞定,调试内核非常方便。当然也参考了网上的其他一些资料,这里主要基于的是ARM公司提供的开发板express,通过模拟的方法同样可以达到学习的目的。1. 准备工作在ubuntu16.04...

2018-05-26 22:38:13 5766

原创 module_init()加载设备驱动

 我们知道在写设备驱动的时候通常要为某个设备实现xxx_init函数,并将该函数传入module_init(xxx_init), 当kernel启动之后该设备驱动就可以被内核加载,这一章节将以倒叙的方式详细介绍了内核是如何加载module_init()函数,并最终调用到xxx_init函数的。       module_init()定义在include/linux/module.h中,#ifnde...

2018-05-21 14:38:44 4694

vim8配置成强大的IDE

使用本文件可以把vim配置成强大的IDE,但是必须使用VIM8.0以上的版本。首先将本文件内容copy到~/.vimrc里,如果没有该文件需要创建;其次git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim;第三,打开vim,输入:PluginInstall转载所有的控件; 第四编译YouCompleteMe, cd ~/.vim/bundle/YouCompleteMe, ./install.py --clang-completer, cp cp bundle/YouCompleteMe/third_party/ycmd/examples/.ycm_extra_conf.py ~/.vim即可

2019-03-03

Linux设备驱动开发详解:基于最新的Linux 4.0内核.pdf

Linux设备驱动开发详解:基于最新的Linux 4.0内核.odf

2017-08-26

USB读卡器存储、读取

在STM32外围扩充了一个插槽,可用于安装各种接口的外存设备,如SD卡,通过USB接口实现和PC机连接,实现SD卡和PC之间的数据交换,如存储、读取。

2014-11-19

51单片机最小系统PCB

是51单片机最小系统PCB,我已近打样了,可正确的,希望会对更多的人有帮助

2014-06-15

DS1302时钟带可调时间显示

具有按键可调实时时钟显示,断电时间保存,开机时间校准,通过51单片机控制在LCD1602上显示

2014-06-04

基于单片机万年历+温度+LCD12864 proteus仿真

本资料采用51单片机作为处理芯片,用DS18B20作为温度采集模块,51单片机采集的温度在LCD1602上显示,别且可以实现电子万年历的显示,时间具有可以、实时等功能。

2014-02-19

精通ANSYS(刘涛-清华大学出版社2002)

细致讲述了FLUENT软件的仿真步骤,对其中常用的算法,边界条件作了详细的解释。

2014-02-18

量程自动切换数字电压表

本文是基于AT89S51的电压测量电路,具有量程自动切换功能,且具有3位半显示功能,测量电压准确,包含完整的电路图和代码

2013-11-29

PT100测温电路

基于AT89S51单片机的PT100传感器的测温电路,具有完整的电路图,代码

2013-11-29

滑模变结构MATLAB程序

本资源配套刘金琨的《滑模变结构控制MATLAB仿真》,每章节程序都有

2013-07-19

拼音输入法STM32寄存器代码

可以用于在STM32里实现输入法的选择,简单易懂

2013-07-15

USB声卡STM32寄存器代码

供使用USB声卡的读者和工程技术人员参考

2013-07-15

下推试磁悬浮

关于磁悬浮设计开发的全套资料,此资料可以帮助对磁悬浮控制器感兴趣的朋友们,资料非常详细,本人已经做出产品了。

2013-05-18

基于ADSP2106X的高速数据采集与处理系统

基于ADSP2106X的高速数据采集与处理系统

2010-10-10

多传感器数据融合研究

毕业论文设计,多传感器数据融合研究,传感器,数据处理,自动化

2010-10-10

数电六路竞赛抢答器设计 简单的 六路竞赛抢答器设计

六路竞赛抢答器设计 六路竞赛抢答器设计 六路竞赛抢答器设计

2009-12-29

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除