心得4、做事先做人(转载)

做事先做人,这是自古不变的道理。如何做人,不仅体现了一个人的智慧,也体现了一个人的修养。一个人不管多聪明,多能干,背景条件有多好,如果不懂得做人,人品很差,那么,他的事业将会大受影响。 只有先做人才能做大事,这是古训,先人早就强调了“做人为先”的重要性。我们的先人_孔子,其思想可以说是中国力千年文化底蕴的沉淀,他告诉我们“子欲为事,先为人圣”“得才兼备,以德为首”“德若水之源,
阅读本文

嵌入式系统基础

参考:http://www.rt-thread.org/phpBB3/viewtopic.php?f=2&t=143嵌入式系统基础1、嵌入式系统的定义(1)定义:以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。(2)嵌入式系统发展的4个阶段:无操作系统阶段、简单操作系统阶段、实时操作系统阶段、面向Internet阶段。(3)知识
阅读本文

解决“运行arm-linux-gcc命令,提示No such file or directory”的问题

之前学习嵌入式没有做笔记,今天要出门一趟,带不了台式机,就新建了一个虚拟机,在安装交叉编译器的时候出了点儿小问题。首先,我解压了交叉编译器,然后添加了环境变量。方法一:修改/etc/bash.bashrc文件(此文件只对当前用户适用)sudo gedit /etc/bash.bashrc在最后加上 export PATH=$PATH:/opt/FriendlyARM/toolschain/4.4.
阅读本文

OpenCV结合V4l2实现人脸检测以及人脸识别

该Demo的基础是之前的OpenCV人脸检测以及V4l2摄像头驱动程序,在此基础上添加人脸识别功能,由于需要鉴别特定人脸,因此需要进行训练生成xml格式的级联分类器,然后加载此分类器即可实现特定人脸的识别。 说明 本Demo使用的是基于LBPH的FaceRecongnizer,思路为首先构造LBPHFaceRecognizer,然后进行训练并将训练结果保存以便下次使用,最后传入图像进行鉴别,
阅读本文

linux驱动:音频驱动(一)ALSA

一、【基础知识】1、J2 《--HPR_OUT+HPL_OUT 《--  U13(TLV320AIC3104IRHBR)的HPROUT+HPLOUT2、驱动源码IPNC_RDK_V3.8.0.1/Source/ti_tools/ipnc_psp_arago/kernel/sound/soc/codecs/tlv320aic3x.c3、依赖于I2C驱动4、声卡驱动框架:ALSA(Advanced L
阅读本文

OpenCV人脸检测Demo程序

我现在的角色只是一个软件开发人员,所以暂时不深究算法问题,我的目的只有一个:以最快的方式完成项目框架搭建,从而进行进度评估。 说明 进行人脸鉴别(不关心是谁的脸)从代码量上来讲可以说非常少,我不再作具体说明,源码的注释已经足够详细,这里我使用的CascadeClassifier,大体分为三步: 加载级联分类器,一般以xml格式的文件存在,一般都是以大量的数据进行训练从而得到该文件,这里我们
阅读本文

学习笔记之Centos6的启动流程。

由于centos7和6相比做出了很大的改观。首先就是启动加载器不同了。centos6采用 GRUB Legacy,而7采用GRUB2.差异还包括Centos7为了支持大数据环境而使用xfs文件系统。默认数据库为了迎合未来市场而采用mariadb而不是mysql。最重要的是centos7还采用了systemd初始进程而不是init了后面还会讲7的启动 一.centos6的启动流程由于我
阅读本文

驱动07.USB驱动程序

1 了解USB识别的过程eg:在Windows系统下的一个现象:把手机的USB设备接到PC  1. 右下角弹出“发现android phone“  2. 跳出一个对话框,提示你安装驱动程序问1. 既然还没有“驱动程序“,为何能知道是“android phone“答1. windows里已经有了USB的总线驱动程序,接入USB设备后,是“总线驱动程序“知道你是“android phone“
阅读本文

驱动09.nand flash

1 nand flash的操作目的:读地址A的数据,把数据B写到地址A。问1. 原理图上NAND FLASH和S3C2440之间只有数据线,怎么传输地址?答1.在DATA0~DATA7上既传输数据,又传输地址,当ALE为高电平时传输的是地址。问2. 从NAND FLASH芯片手册可知,要操作NAND FLASH需要先发出命令     怎么传入命令?答2.在DATA0~DATA7上既传输数据,又传输
阅读本文

驱动08.块设备驱动程序

1 块设备的概述  linux支持的两种重要的设备类型分别是字符设备和块设备,块设备可以随机地以固定大小的块传送数据。与字符设备相比,块设备有以下几个特殊之处:  (1)块设备可以从数据的任何位置进行访问  (2)块数据总是以固定长度进行传输,即便请求的这是一个字节  (3)对块设备的访问有大量的缓存。当进行读时,如果已经缓存了,就直接使用缓存中的数据,而不再读设备,对于写也通过缓存来进行延迟处理
阅读本文

Windows Server 2016- Windows Server 2016 上 HYPER-V 中的新增功能

升级的虚拟机版本。与连接待机兼容 (新)在使用始终 On/Always 连接 (AOAC) 电源模型,该模型的计算机上安装 HYPER-V 角色时 连接待机 电源状态现已可用。离散式设备分配 (新)此功能允许你授予虚拟机对某些 PCIe 硬件设备的直接和独占访问权限。 以这种方式使用设备将绕过 Hyper-V 虚拟化堆栈,使访问更迅速。 受支持的硬件的详细信息,请参阅“离散设备分配“中 HYPER
阅读本文

Linux驱动之配置内核

Linux在嵌入式系统中大受欢迎的一个重要因素就是开源,开源的特性决定了Linux内核可以根据个人的需求进行裁剪,裁剪内核就是根据你的硬件资源,将一些不需要的驱动裁剪掉,再把一些原本没有的驱动添加到内核,那么配置好的内核就适用于你特定的硬件平台。配置内核时,make zImage   make menuconfig,还有  .config    Kconfig  Makefile文件,以讯为iTo
阅读本文

I2C设备驱动的编写(一)

I2C总线是有Philips公司开发的,它是一种比较简单的总线,接线简单:只有两根线数据线(SCL)和时钟线(SDA),控制简单。所以一些封装较小的器件多使用I2C总线,常见的使用I2C总线的设备有EEPROM、rtc及一些传感器。这里我们介绍下基于linux的I2C设备驱动的编写。 I2C设备驱动的编写有多种方式: 一种是直接操作CPU的I2C控制器,正对于某一个设备写一个字符驱动,这种
阅读本文

PADS在画好的电路图上修改元件的封装

在画好的电路图上修改元件的封装现在有一个电路图PCB,其中的一个元件的中间接地焊盘引脚要接地,但是原理图上却是没有的,现在造成必须要在ECO模式下增加地和这个焊盘的走线,这样我觉得很不好,比如,我现在要改变布局,而这些ECO的线都将要被修改一遍,这很麻烦,所以现在想在原理图上增加一个管脚,layout图如下:现在我已经在原理图上增加了一个管脚9:PCB封装如下: 但是现在发现不管我怎么生成PCB都
阅读本文

NVIDIA Jetson TX1(5)

4.0     管脚定义TX1有多种用途的管脚(MPIO),每个MPIO能配置作为GPIO,也可能分配为特殊用处的I/O控制器。虽然每个MPIO有多达5个功能(GPIO功能和多达4个SFIO功能),一个特定的MPIO在某一时刻只能被分配一个任务,每个脚的功能是固定为一个SFIO或作为一个GPIO,差分MPIO脚能共享一个类似结构,但是这些不同变种使得板子上元件最少化(比如电平偏移芯片和上拉电阻)。
阅读本文

at91 看门狗

看 门狗的驱动一般来说比较简单,只要做寄存器的设置实现开启、关闭、喂狗功能。本项目中我们使用的是at91sam9g45处理器,带有看门狗定时器。这个 看门狗的驱动却比较复杂,应用层想用它的话,将涉及到boot引导设置,uboot配置及驱动,改写驱动程序。下面将逐步说明。1、boot引导(bootstrap-v1.14)由于该看门狗的MR寄存器只能写一次(Only a processor reset
阅读本文

嵌入式Linux-LCD显示多行文字

显示文字这里我用了freetype库。以左上角显示两行文字:#include <sys/types.h> #include <sys/stat.h> #include <sys/mman.h> #include <linux/fb.h> #include <stdio.h> #include <fcntl.h> #include <unistd.h> #include <string.h> #in
阅读本文

imx6 usb bluetooth的连接与文件传输

开发平台:imx6dl 开发环境:yocto poky1.7(linux kernel 3.14.28) 参考文档:fsl-6dl-source/sources/meta-fsl-bsp-release/imx/meta-fsl-bluez/readme-bluez.txt(源码提供的文档说明)+网上资料博客 内核配置: <*>Networking support ----> <*
阅读本文

fork函数的小误区

对于fork这个函数相信大家都不陌生。我们知道他会创建一个子进程,返回两个值,也有fork会返回两次这么个说法。那今天在这里我们就来整理一下对这个函数的认识。对于fork会返回两次这个说法我不知道大家都是怎么理解的,“返回一次然后又返回了一次”,在刚接触这个函数的时候有许多同学都是这样认为的。那在这里呢我们就来对这个说法进行一下剖析。首先我们知道,在进程内调用fork之后,如果调用成功会怎样啊?没
阅读本文