嵌入式软件开发
文章平均质量分 59
baodunqiao
这个作者很懒,什么都没留下…
展开
-
SPI协议简介
SPI,是英语Serial Peripheralinterface的缩写,顾名思义就是串行外围设备接口。SPI,是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线,节约了芯片的管脚,同时为PCB的布局上节省空间,提供方便,正是出于这种简单易用的特性,现在越来越多的芯片集成了这种通信协议,比如P89LPC900. SPI,是一种高速的,全双工,同步的通转载 2009-04-20 18:26:00 · 1409 阅读 · 1 评论 -
异步通知
要弄明白这个问题,我们得从最基本的原理开始。我们知道,驱动程序运行在内核空间中,应用程序运行在用户空间中,两者是不能直接通信的。但在实际应用中,在设备已经准备好的时候,我们希望通知用户程序设备已经ok,用户程序可以读取了,这样应用程序就不需要一直查询该设备的状态,从而节约了资源,这就是异步通知。好,那下一个问题就来了,这个过程如何实现呢?简单,两方面的工作。一 驱动方面:转载 2009-12-07 17:09:00 · 822 阅读 · 0 评论 -
Linux内核随机数产生器的设计与实现
随 机数在许多领域都有重要应用,如Monte Carlo模拟、密码学和网络安全。随机数的质量直接关系到网络安全系统的可靠性和安全性,关系到 Monte Carlo模拟结果的可信度。自从计算机诞生起,寻求用计算机产生高质量的随机数序列的研究就一直是个长期受到关注的课题。Linux内核从 1.3.30版本开始实现了一个高强度的随机数发生器,本文根据Linux 2.6.10内核的源代码,详细分析该随转载 2009-09-02 10:05:00 · 2391 阅读 · 0 评论 -
NAS简介
nas是network attached storage 的简称,中文称为网络附加存储。在nas存储结构中,存储系统不再通过i/0总线附属某个特定的服务器或客户机,而是直接通过网络接口与网络直接连接,由用户通过网络访问。 nas实际上是一个带有瘦服务器(thinserver)的存储设备,其作用类似于一个专用的文件服务器。这种专用存储服务器不同于传统的通用服务器,转载 2009-06-11 15:09:00 · 2082 阅读 · 0 评论 -
Linux信号列表
原文出处:http://blog.chinaunix.net/u2/66039/showart.php?id=1851289我们运行如下命令,可看到Linux支持的信号列表:~$ kill -l1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL5) SIGTRAP 6) SIGABRT 7) SIGBUS 8) SIGFPE9) SIGKI转载 2009-06-06 14:01:00 · 565 阅读 · 0 评论 -
嵌入式CPU 架构之战
本人: 之前在Marvell 接触过一点XScale 现在正式工作接触的是TI的Davinci。科大瀚海星云上的这篇文章写的还是不错的。 原文如下:多年前对嵌入式SoC的体系结构认真学习了一番,后来发现业内几种架构定局之后,也就没什么创新东东了,于是索然无味,不再关心.没想到这么多年过去了,这几种架构的战争还是依然如故,没有个结局.什么架构呢?一种是纯粹的速度型处转载 2009-06-04 17:09:00 · 1737 阅读 · 1 评论 -
RS485通信应用层开发心得
RS485和RS232都是常用的串口通信,前端设备与控制中心除了通过网络通信进行交互以外,串口通信也成为了一种选择。RS485的可靠传输距离远,接线简单成为了相对于RS232的最大优势。 首先,简单的看了一下485驱动层代码,采用的是轮询方式获取数据,具体实现没看。轮询应用特点是传输数据量一次不是很大,但是次数很频繁。而中断方式的应用特点是一次传输的数据量很大,但是次数不是原创 2009-05-26 13:33:00 · 5640 阅读 · 2 评论 -
连续内存块分配
在GNU系统中,malloc或realloc返回的内存块地址都是8的倍数(如果是64位系统,则为16的倍数)。如果你需要更大的粒度,请使用memalign或valloc。这些函数在头文件“stdlib.h”中声明。 在GNU库中,可以使用函数free释放memalign和valloc返回的内存块。但无法在BSD系统中使用,而且BSD系统中并未提供释放这样的内存块的途径。 函数:转载 2009-05-22 10:07:00 · 1313 阅读 · 0 评论 -
VxWork 百科 及 taskSpawn
VxWorks操作系统是美国WindRiver公司于1983年设计开发的一种嵌入式实时操作系统(RTOS),是嵌入式开发环境的关键组成部分。良好的持续发展能力、高性能的内核以及友好的用户开发环境,在嵌入式实时操作系统领域占据一席之地。它以其良好的可靠性和卓越的实时性被广泛地应用在通信、军事、航空、航天等高精尖技术及实时性要求极高的领域中,如卫星通讯、军事演习、弹道制导、飞机导航等。在美国的转载 2009-05-12 09:33:00 · 8180 阅读 · 2 评论 -
看门狗的介绍
看到看门狗的设计与我们做的球队的最外部定时器原理和作用十分相似,最近看到很多的嵌入式底层的原理和球队当时的想法不谋而合。由此,我们球队的设计思路是正确的!应该坚定不移的走下去! 另答辩时姚老师建议我的异常处理的跳转方式改成决策后跳转,当时没想很多基本认可了他的想法。现在看来在要求高实时性情况下,不可能在线决策的,必须无条件跳转! 在由单片机构成的微型计算机系统中,转载 2009-05-12 09:09:00 · 1374 阅读 · 0 评论 -
Davinci挂载VM-FC8下NFS文件系统 过程总结
忙了一整天加一晚上 在刘工和曾工的帮助下 终于成功在目标板上挂载NFS文件系统了 其中一些认识体会总结如下: 关于u-boot 配置好交叉编译环境后make uImage 没有mkconfig 发现还需要配置u-boot 于是下载uboot编译对应的davinci evm版本(make davinci evm) 将命令export到PATH里面去 然后再编译内核 ,成功!原创 2009-05-06 19:09:00 · 1350 阅读 · 0 评论 -
V4L2应用程序框架
V4L2较V4L有较大的改动,并已成为2.6的标准接口,函盖video/dvb/FM...,多数驱动都在向V4l2迁移。更好地了解V4L2先从应用入手,然后再深入到内核中结合物理设备/接口的规范实现相应的驱动。本文先就V4L2在视频捕捉或camera方面的应用框架。V4L2采用流水线的方式,操作更简单直观,基本遵循打开视频设备、设置格式、处理数据、关闭设备,更多的具体操作通过ioctl函数转载 2009-04-24 11:31:00 · 1882 阅读 · 1 评论 -
揭开Linux的Swap之谜
Swap,即交换区,除了安装Linux的时候,有多少人关心过它呢?其实,Swap的调整对Linux服务器,特别是Web服务器的性能至关重要。通过调整Swap,有时可以越过系统性能瓶颈,节省系统升级费用。 Swap的原理是一个较复杂的问题,需要大量的篇幅来说明。在这里只作简单的介绍,在以后的文章中将和大家详细讨论Swap实现的细节。 众所周知,现代操作系统都实现了“虚拟内存”这一转载 2009-04-24 09:14:00 · 489 阅读 · 0 评论 -
SPI,UART,I2C 各自特点 区别的一些理解
区别:SPI:高速同步串行口。3~4线接口,收发独立、可同步进行 UART:通用异步串行口。按照标准波特率完成双向通讯,速度慢 I2C:一种串行传输方式,三线制,网上可找到其通信协议和用法的 3根线实现数据双向传输 串行外围接口 Serial peripheral interface UART:通用异步收发器 UART是用于控制计算机与串行设备的芯片。有一点要注意的是,它提供了RS-232C数据终转载 2009-04-22 11:41:00 · 1765 阅读 · 1 评论 -
SPI协议简介2
SPI协议简介一 SPI协议概括SPI,是英语Serial Peripheralinterface的缩写,顾名思义就是串行外围设备接口。是Motorola首先在其MC68HCXX系列处理器上定义的。SPI接口主要应用在EEPROM,FLASH,实时时钟,AD转换器,还有数字信号处理器和数字信号解码器之间。SPI,是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四根转载 2009-04-20 18:33:00 · 1024 阅读 · 0 评论 -
SPI协议的简单实例说明
SPI是一个环形总线结构,由ss(cs)、sck、sdi、sdo构成,其时序其实很简单,主要是在sck的控制下,两个双向移位寄存器进行数据交换。 假设下面的8位寄存器装的是待发送的数据10101010,上升沿发送、下降沿接收、高位先发送。 那么第一个上升沿来的时候数据将会是sdo=1;寄存器=0101010x。下降沿到来的时候,sdi上的电平将所存到寄存器中去,那么这转载 2009-04-20 18:27:00 · 901 阅读 · 0 评论 -
Chrome 源码剖析
<br /><br />原著:duguguiyu。<br />整理:July。<br />时间:二零一一年四月二日。<br />出处:http://blog.csdn.net/v_JULY_v。<br />说明:此Chrome源码剖析很大一部分编辑整理自此博客:http://flyvenus.net/。我对写原创文章的作者向来是以最大的尊重的。近期想好好研究和学习下Chrome源码,正巧看到了此duguguiyu兄台的源码剖析,处于学习的目的,就不客气的根据他的博客整理了此文。若有诸多冒犯之处,还望海涵。<转载 2011-04-07 16:09:00 · 896 阅读 · 0 评论