自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

反思与改变

播种一种思想,收获一种行为;播种一种行为,收获一种习惯;播种一种习惯,收获一种品格;播种一种品格,收获一种命运;

  • 博客(183)
  • 收藏
  • 关注

转载 Linux网络编程经典参考书

首先要说讲述计算机网络和TCP/IP的书很多。 先要学习网络知识才谈得上编程讲述计算机网络的最经典的当属Andrew S.Tanenbaum的《计算机网络》第五版,这本书难易适中。《计算机网络(第5版)》是国内外使用最广泛、最权威的计算机网络经典教材。目前已经是第五版,本书作者80年代就开发出MINIX,是一个用于操作系统教学的类UNIX(的小型操作系统。而

2014-05-21 14:14:10 1064

转载 《tiny6410裸机程序》第六章:myled通过usb下载至nandflash不能运行

====================================================================================================================================一、前期准备1.开发板必须在SD卡启动模式!2.安装usb下载驱动,安装rs232 to usb驱动。3

2014-05-12 14:20:08 842

转载 第十一章:S3C6410地址空间

====================================================================================================================================一、S3C6410地址空间整体说明  S3C6410基于32位的ARM11内核(ARM是按字节(每一个字节都有地址)寻址

2014-05-12 14:11:49 1154

转载 S3C6410启动模式介绍

目前的ARM处理器都支持多种启动模式,S3C6410和以前的Samsung的ARM处理器一样,通过外部管脚OM[4:0]的拉高拉低来决定是从哪个存储设备上启动。我认为S3C6410的User Manual并没有说的很清楚,所以我在最开始使用的时候,也对其启动模式有一些误解,下面就我个人的理解,介绍一下S3C6410的启动。 先读一下S3C6410 User Manual的第3章 Syste

2014-05-12 14:00:33 705

转载 《micro2440开发》第七章:micro2440从NAND FLASH启动原理分析

=====================================================================================接上:《micro2440开发》第一章:S3C2440A地址空间ARM是不能直接从NAND FLASH启动的,这包括两层意思:  其一、ARM刚启动时不能直接获得NAND FLASH上存储的程序;因为对NA

2014-05-12 11:47:59 623

转载 tiny6410裸机实验第6章--------------NAND(初始化原理)

【说明】             在地5章我们初始化了DDR并且进行了代码的重定位,但是注意!我们前面的重定位其实是假的,我们只过是把代码从片内内存复制到DDR中!因为我们的NAND 还没有初始化,而完整的程序在NAND FLASH中,所以我们当时没办法将完整程序复制到内存中,之所以进行了重定位是为了理解重定位的过程而已!这一章我们就来初始化NAND FLASH并且真正的实现从NAND F

2014-05-12 11:21:37 707

转载 tiny6410裸机实验第5章--------------DDR初始化等(代码)

【说明】              根据上一节介绍的原理,很容易写出DDR的初始化代码,这节附上代码,包括代码重定位,以及初始化DDR。 【初始化DDR】                common.h...包含了一些通用宏定义                 [cpp] view plaincopy#ifnd

2014-05-11 17:19:12 1131

转载 tiny6410裸机实验第5章--------------DDR(初始化原理)

【说明】                前面我们介绍了地址相关的一些概念以及地址无关码的概念,我们知道了,当程序超过了8KB的时候,我们得把程序复制到DDR中运行,但是,DDR要使用是要先初始化的。6410带有DRAM控制器,它在初始化之后可以让我们对DDR的访问变得十分方便。。。这里我们要初始化2个东西,也就是DRAM控制器,以及DDR本身。在这之前,大家如果对于DDR参数不太熟悉,可以

2014-05-11 17:17:17 2226

转载 tiny6410裸机实验第5章--------------DDR(代码重定位)

【说明】              前面我们说过,NAND启动的时候,6410会把NAND中前4页每页2KB(而不是前8KB,这里很多人理解错)复制到片内内存中,从物理地址0开始运行,那我们就有个问题了,如果我们的程序超过8KB怎么办?显然超过8KB的部分不会复制进片内内存,那超过8KB的部分在哪运行呢?这就是这节的要介绍的,代码重定位。【DDR】       

2014-05-11 16:58:14 883

转载 DDR(链接脚本),lds文件浅析

【说明】             前面我们对链接的过程没有进行控制,我们在makefile中直接指定链接地址从0开始,这是因为6410如果是nand启动会把nand 前4页,每页2KB复制到片内内存中,片内内存地址从0开始,这里0指的是物理地址,所以我们的链接地址就会等于物理地址,程序就可以在片内内存正常运行,这一节我们学习一下利用所谓的链接脚本对链接进行控制,其实即使是默认的链接过程也是

2014-05-11 16:41:01 846

转载 tiny6410裸机实验第5章--------------DDR(物理地址,链接地址,虚拟地址,地址无关码)

【说明】             在后面的学习中,我们将遇到链接地址概念以及一种称为链接脚本的文本文件,那么什么是链接地址呢,他和我们的物理地址又有什么关系呢。             其实链接的技术细节十分复杂,我的另一系列博文中有关于链接的学习笔记,大家可以看看,那是对《程序员的自我修养》这本书的笔记,也推荐大家看这本书。 【物理地址】         

2014-05-11 16:31:24 827

转载 tiny6410裸机实验第4章--------------UART(原理分析)

【说明】               UART(Universal Asynchronous Receiver/Transmitter)就是串口通讯,全称“异步接收发送器”,我们前面已经提到,我们利用secureCRT来显示开发板发送过来的串口数据,这一节我们就来看看,在开发板上到底是怎么控制串口的,也就是说,如果我们要自己写程序从开发板发送或者接收数据,要怎么做。 【协议

2014-05-10 11:28:01 697

转载 【裸机开发笔记】6410的系统时钟设置(下)---几个常用函数的C源码。

//common.h

2014-05-06 21:43:41 673

转载 【裸机开发笔记】6410的系统时钟设置(中)---相关寄存器介绍

上篇中已经详细分析了6410时钟系统的结构,现在就介绍下几个与时钟设置相关的寄存器。 1.APLL_LOCK、MPLL_LOCK、EPLL_LOCK   这三个寄存器的低十六位分别表示APLL、MPLL、EPLL这三个锁相环"锁相"所需的时间(周期数),当锁相环的输入或设置改变后,只有经历这么多个周期数后,才让锁相环有输出,这里一般保

2014-05-06 21:41:04 576

转载 【裸机开发笔记】6410的系统时钟设置(上)---6410时钟控制逻辑框架分

本文主要介绍6410内核和AHB、APB总线的时钟设置。 6410的时钟逻辑结构还是比较清晰的,配置起来并不难(曾让笔者极度抓狂的是Freescale Kinetis系列的片子,系统时钟配置起来很麻烦,有好多种时钟模式)。下面先来看一下6410的时钟构成。这里可以看到,6410的时钟控制逻辑主要产生三个重要的CLK,分别是ARMCLK(内核用),HCLK(A

2014-05-06 21:39:19 648

转载 Ubuntu 下使用Eclipse编译、调试嵌入式程序的方法(下)

/************************************************转载请注明出处:风之书:http://xubing.cnblogs.com************************************************/这篇文章将分成3部分:第一步:安装arm-linux-gcc第二步:安装、配置Ec

2014-04-07 23:05:09 719

转载 Ubuntu 下使用Eclipse编译、调试嵌入式程序的方法(中)

/************************************************转载请注明出处:风之书:http://xubing.cnblogs.com************************************************/这篇文章将分成3部分:第一步:安装arm-linux-gcc第二步:安装、配置Ec

2014-04-07 23:02:59 977

转载 Ubuntu下使用Eclipse编译、调试嵌入式程序的方法(上)

/************************************************转载请注明出处:风之书:http://xubing.cnblogs.com************************************************/这篇文章将分成3部分:第一步:安装arm-linux-gcc第二步:安装、配置Ec

2014-04-07 23:01:00 1164

转载 DNW使用和常见问题

在使用2410开发板进行开发过程中,DNW是一个经常使用到的工具,这个工具可以实现上传下载文件,烧写文件,运行映像等功能。用户在第一次使用时往往因为不熟悉一些操作的细节,从而出现一些问题。下面把这些问题归纳一下:DNW可以通过USB口把文件下载到板子上,但是第一次使用时,必须在PC机上安装和2410 USB HOST进行通讯的USB驱动,该驱动文件位于光盘的“USB驱动”文件夹内,驱动文件名为se

2014-04-07 22:24:26 635

转载 BIOS、BootLoader、uboot对比

BIOS、BootLoader、uboot对比biosBIOS是英文"Basic Input Output System"的缩略语,直译过来后中文名称就是"基本输入输出系统"。其实,它是一组固化到计算机内主板上一个ROM芯片上的程序,它保存着计算机最重要的基本输入输出的程序、系统设置信息、开机后自检程序和系统自启动程序。 其主要功能是为计算机提供最底层的、最直接的硬

2014-04-07 22:11:53 745

转载 Arm 2440——Nand flash启动模式详解(LED程序为例)

Arm 2440——Nand flash启动模式详解(LED程序为例)断断续续的研究arm也有2个月了,现在才感觉理解了arm在Nand flash模式下的启动过程,现在来这里记录下来以表达我无比喜悦的心情。闲话少说,趁着还没有忘记学习过程中的感受,直接进入正题。大家都知道,arm在Nand flash启动模式下启动时系统会将Nand flash中的前4KB代码拷贝到S

2014-04-07 21:35:19 774

转载 Linux下arm裸机开发环境搭建与实例

折腾了很长时间,总算是弄明白怎么在linux编译运行arm裸机程序了。编译运行arm裸机程序可以考虑用arm工具链搭建编译环境,由minicom和dnw来下载程序,至于调试,还没有去耐心研究,着急来这里先备份一下,免得时间久了,忘记怎么回事。首先是arm工具链,arm工具链的编译我就不写了,一方面很麻烦,另一方面是这方面的资料网上已经有很多了,我就不在这里多言浪费大家时间了。我这里有自己编

2014-04-07 20:38:55 813

转载 unix域套接字

管道由于只能实现具有亲缘进程的进程间通信,使用受到了很大的限制,命名管道解决了这一问题。但是,无论是管道还是命名管道,都只能实现单向通信(在只创建一个管道的情况下)。使用套接字除了可以实现网络间不同主机间的通信外,还可以实现同一主机的不同进程间的通信,且建立的通信是双向的通信。这里所指的使用套接字实现进程间通信,是由将通信域指定为PF_UNIX来实现的。该函数的形式如下:int socke

2014-04-06 20:29:53 529

转载 用vi在linux下查看16进制文件的方法

在vi的命令状态下 ::%!xxd ——将当前文本转换为16进制格式。:%!od ——将当前文本转换为16进制格式。:%!xxd -c 12——将当前文本转换为16进制格式,并每行显示12个字节。:%!xxd -r ——将当前文件转换回文本格式。xxd工具: xxd creates a hex dump of a given file or

2014-04-06 16:48:12 1005

转载 Unix domain socket 的一些小结

1. unix域的数据报服务是否可靠        man unix 手册即可看到,unix domain socket 的数据报既不会丢失也不会乱序 (据我所知,在linux下的确是这样)。不过最新版本的内核,仍然又提供了一个保证次序的类型 “ kernel 2.6.4 SOCK_SEQPACKET ”。2. STREAM 和 DGRAM 的主要区别    

2014-04-06 11:06:55 1009

转载 (转)Linux网络编程之sockaddr与sockaddr_in,sockaddr_un结构体详细讲解

sockaddrstruct sockaddr {unsigned  short  sa_family;     /* address family, AF_xxx */char  sa_data[14];                 /* 14 bytes of protocol address */};sa_family是地址家族,一般都是“AF_xxx”的

2014-04-06 10:16:33 616

转载 pthread_exit函数

pthread_exit函数    原型:void  pthread_exit(void  *retval)    用法:#include      功能:使用函数pthread_exit退出线程,这是线程的主动行为;由于一个进程中的多个线程是共享数据段的,因此通常在线程退出之后,退出线程所占用的资源并不会随着线程的终止而得到释放,但是可以用pthread_join()函数

2013-10-27 22:53:02 1611

转载 pdu解析之三

转载地址:http://blog.csdn.net/qgj1655/article/details/3523060一般短信(短于140字节的 报文内容不是05 06的)0891683108806105F0040D91683177081166F10008802150015114230C54CEFF0C53C865E0804A4E86⑴08—短信息中心地址长度。指91 68 31 08 8

2013-08-08 10:33:11 871

转载 在linux嵌入式开发板上开机自动运行用户应用程序

开机后自动运行用户的应用程序或启动系统服务的命令保存在开发板根文件系统的/usr/etc/rc.local文件中。有的开发板开机后自动运行图形界面程序,需要按住ctrl+c让开发板进入到linux的SHELL提示符界面。其实可通过注释掉rc.local文件中调用图形界面的命令,增加运行用户应用程序的命令,达到开机自动运行用户应用程序的目的。 下面以我做的实验为例,描述具体的实现步骤

2013-07-01 17:04:31 1111

转载 嵌入式Linux系统下应用程序自启动问题

这两天为了让液晶屏在开机时可以自动启动界面,我研究了下Linux下应用程序子启动问题。Linux系统启动时,内核启动完毕,会执行init程序,启动新进程和退出时重新启动其它进程。别的系统我不太清楚,只知道我的系统里,init工作是在/etc/init.d/rcS文件里,直接添加语句就可以了。rcS会调用/usr/etc/rc.local,所以也可以把应用程序启动的语句加到这里,毕竟

2013-07-01 15:38:27 3386

转载 pdu 7bit 编码

1,SMS PDU format网上介绍以及验证 pdu编码及解码http://www.smartposition.nl/resources/sms_pdu.html2,7bit编码的原理PDU模式收发短信可以使用3种编码:7-bit、8-bit和UCS2编码。7-bit编码用于发送普通的ASCII字符,8-bit编码通常用于发送数据消息,UCS2编码用于发送U

2013-06-30 14:06:51 4639

转载 PDU解析之二

PDU是大多数手机短信通讯的核心,仅有少数手机只支持Text模式(例如笔者的MOTO C330)。PDU模式比起Text模式可以提供能为强大的功能,但其编码较Text模式困难。无论哪种模式,我们都可以通过AT指令控制终端实现短信的发送、接收、删除等管理。下面主要介绍PDU的构成及编码解码。PDU的构成PDU是由一串由“0-9”及“A-F”组成。表面上看起来就是一组16进制的数所组成

2013-06-27 15:51:39 1172

转载 PDU解析

A.收到PDU                SMS-DELIVER (Mobile Terminated) 收到DELIVER-PDU格式SCAPDU TYPEOA  PID    DCS       SCTS    UDL     UD      服务中心号码

2013-06-27 15:50:22 1755

转载 ubuntu13.04 chrome谷歌浏览器不能安装

Google搜了一下libudev0下载地址,地址如下::i386: http://launchpadlibrarian.net/132294322/libudev0_175-0ubuntu19_i386.debamd64: http://launchpadlibrarian.net/132294155/libudev0_175-0ubuntu19_amd64.deb根

2013-05-18 14:05:22 1468

转载 source insight快捷键及使用技巧

source insight快捷键及使用技巧 退出程序                             : Alt+F4重画屏幕                             : Ctrl+Alt+Space完成语法                             : Ctrl+E复制一行

2013-04-10 22:57:25 534

转载 真正的程序员

什么才是真正的程序员 程序员跟其他的职业一样,有的看上去像,有的混水摸鱼。那么什么样才能算是真下的程序员呢?个人认为应该具备以下条件:1、             有良好的逻辑思维程序设计是一个复杂的智力活动,要考虑到方方面面的细节;先做什么,后做什么,要预防什么。优秀的程序都有很强的逻辑性。2、             有良好的数学基础计算机是基于数学原理建造出来的;

2012-12-08 20:50:26 503

转载 android viewstub

在开发应用程序的时候,经常会遇到这样的情况,会在运行时动态根据条件来决定显示哪个View或某个布局。那么最通常的想法就是把可能用到的View都写在上面,先把它们的可见性都设为View.GONE,然后在代码中动态的更改它的可见性。这样的做法的优点是逻辑简单而且控制起来比较灵活。但是它的缺点就是,耗费资源。虽然把View的初始可见View.GONE但是在Inflate布局的时候View仍然会被Infl

2012-12-08 20:45:43 523

转载 android MMS源码分析

从软件的功能角度来讲,Mms分为对话列表,消息列表,短信编辑,彩信编辑,短信显示,彩信显示和配置。从实现的角度来看,它分为GUI展示层,发送/接收,彩信解析,彩信附件,信息数据等,这些分类对应着源码中的各种包。源码导航Mms的源码的位置在于android/packages/apps/Mms其中Mms/src/com/android/mms里面都是Mms相关的代码,而Mms/sr

2012-12-08 20:44:24 2714 1

转载 BREW Applet框架

目录(?)[+]BREW Applet框架The Framework of BREW Applet 田海立2006-5-6 本文首先通过一个简单的Applet介绍BREW环境下Applet的运行环境,然后分析如何在一个Module中实现多个Applet的方法,以及BREW中分布在不同的Module中的各个Applet之间的启动交互关系。  摘要1 BRE

2012-11-24 15:20:00 587

原创 uart(一)

一、UART原理及UART部件使用方法1、UART原理通用异步收发器UART,用来传输串行数据:        发送数据时,CPU将并行数据写入UART,UART按照一定格式在TxD线上串行发出;        接收数据时,UART检测到RxD线上的信号,将串行收集放到缓冲区中,CPU即可读取UART获得的这些数据。UART最精简的连线只有3根电线,TxD用于发送,RxD用于接

2012-11-15 15:07:39 1300

空空如也

空空如也

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

TA关注的人

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