摘要: 假设你的月收入只有2000元,你也可以过得很好。我帮你把钱分成五份。第一份600元,第二份400元,第三份300元,第四份200元,第五份500元。第一份,用来做生活费。这么少的生活费,每天只能够分到十几元。早餐一份煮米丝,一个鸡蛋,一杯豆浆。中餐一份快餐,一个水果。晚餐自己开个小灶,煮点饭,加俩菜,睡前一杯奶。这样一月的伙食大概是500-600。不过,如果你还年轻,身体暂时还没有太多问题,这样的食谱,够你数年内不会有健康问题。第二份,用来交朋友,扩大你的人际圈。这就宽裕了。你的电话费可以用掉100元。每个月可以请客两次,每次150元。请谁呢?记住,请比你有思想的人,比你更有钱的人,和你... 阅读全文
posted @ 2013-12-02 09:10 haotianling 阅读(102) 评论(0) 推荐(0) 编辑
摘要: 今天一直纠结于程序老是出问题,就是拿别人的源码直接编译还是出问题,现在终于明白,开发环境不同启动代码也不同,在网上下载个源码启动代码如下:.globl _start_start: ldr r0,=0x70000000 orr r0, r0, #0x13 mcr p15,0,r0,c15,c2,4 @256M(0x70000000-0x7fffffff) ldr r0, =0x7E004000mov r1, #0str r1, [r0]ldr sp, =8*1024mov r0, #9bl xxxxxhalt:b halt此源码我直接在RVDS开发环境下运行还是出错了,以前老是... 阅读全文
posted @ 2013-12-02 09:10 haotianling 阅读(220) 评论(0) 推荐(0) 编辑
摘要: contains invalid call from '~PRES8' function to 'REQ8' functionmainRVDS编译出现contains invalid callfrom '~PRES8' function to 'REQ8' function main解决办法:在汇编文件顶部加 preserve8 伪指令错误提示如下:Error : armlink:L6238:44BINIT.o(Init) containsinvalid call from ''~PRES8'' f 阅读全文
posted @ 2013-12-02 09:10 haotianling 阅读(193) 评论(0) 推荐(0) 编辑
摘要: 本文开始第一篇,启动代码的编写,注意,仅仅是启动代码,并不是bootloader,因为只有boot,没有loader。 第一要明确:CPU上电之后,会从某个固定地址执行指令。ARM结构的CPU从地址0x00000000开始执行指令,MIPS结构的CPU将会从0XBFC00000取第一条指令并执行。(注意,这个地址是CPU的统一编址,需要把存储器件ROM或者flash映射到这个地址上 第二要知道启动代码需要做那些事情: 1、异常向量表 2、禁看门狗,禁中断 3、设置系统时钟 4、初始化存储控制器 5、设置各个模式下的堆栈 6、跳转到C环境执行 第三,要... 阅读全文
posted @ 2013-12-02 09:10 haotianling 阅读(175) 评论(0) 推荐(0) 编辑
摘要: 2 下面来看看tiny6410关于LED的原理图如图(1)所示:图1 LED原理图3 LED实例,代码如下所示:(代码摘自\光盘4\实验代码\3-3-1\src\main.c)main.c[cpp]viewplaincopy#include"def.h"#include"gpio.h"#defineLED1_ON~(10;times--)for(i=0;irGPIOKCON0;uConValue&=~(0xffffrGPIOKCON0=uConValue;}voidLedRun(void){GPIO->rGPIOKDAT|=LEDALL_O 阅读全文
posted @ 2013-12-02 09:10 haotianling 阅读(442) 评论(0) 推荐(0) 编辑
摘要: 2月15日,“90后”独立开发者季逸超在其微博称,个人获得徐小平和红杉资本投资,成立了PeakLabs——以贝尔和施乐为目标的实验室。谁是季逸超?他现年20岁,曾单独一人做出猛犸浏览器、Rasgueado输入法等。其中猛犸浏览器从浏览器设计到美工、开发、测试、运营等工作,全部由他一人独立完成。2010年7月开始开发“猛犸1”时,他刚刚读完高二。如今已经更新到第四代,是iPhone上个人开发的浏览器里下载量最大的产品。在IT行业竞争最激烈的移动互联领域,这位黄皮肤、黑头发的大二中国少年,通过自己的个人努力,获得2011年数字世界博览会特别奖。梦想起航2010年12月的一天,iPhone粉丝... 阅读全文
posted @ 2013-12-02 09:10 haotianling 阅读(248) 评论(0) 推荐(0) 编辑
摘要: 我的博客今天0岁52天了,我领取了徽章.2012.09.10,我在新浪博客安家。2012.09.10,我写下了第一篇博文:《[转载]C51串口的SCON寄存器及工作方式》。至今,我的博客共获得38次访问。这些年,新浪博客伴我点点滴滴谱写生活! 阅读全文
posted @ 2013-12-02 09:10 haotianling 阅读(82) 评论(0) 推荐(0) 编辑
摘要: 命名管道(FIFO)基本概念命名管道和一般的管道基本相同,但也有一些显著的不同:命名管道是在文件系统中作为一个特殊的设备文件而存在的。不同祖先的进程之间可以通过管道共享数据。当共享管道的进程执行完所有的I/O操作以后,命名管道将继续保存在文件系统中以便以后使用。管道只能由相关进程使用,它们共同的祖先进程创建了管道。但是,通过FIFO,不相关的进程也能交换数据。命名管道创建和操作::#include#includeint mkfifo(const char *pathname,mode_t mode);返回:若成功则为0,若出错则为-1一旦已经用mkfifo创建了一个FIFO,就可用ope... 阅读全文
posted @ 2013-12-02 09:09 haotianling 阅读(258) 评论(0) 推荐(0) 编辑
摘要: open函数用来打开一个设备,他返回的是一个整型变量,如果这个值等于-1,说明打开文件出现错误,如果为大于0的值参考格式 if(fd=open("/dev/ttys0",O_RDWR | O_NOCTTY |O_NDELAY))<0 {printf("cannot open"};int open(const char *pathname, int oflag, …/*,mode_t mode * / ) ;打开的操作类型有如下几种 1) O_RDONLY只读打开 2) O_WRONLY只写打开 3) O_RDWR读、写打开 4) O_APPEND每 阅读全文
posted @ 2013-12-02 09:09 haotianling 阅读(13516) 评论(0) 推荐(2) 编辑
摘要: 管道是单向的字节流,它将某个进程的标准输出连接到另一个进程的标准输入。管道和有名管道是最早的进程间通信机制之一,管道可用于具有亲缘关系进程间的通信,有名管道克服了管道没有名字的限制,因此,除具有管道所具有的功能外,它还允许无亲缘关系进程间的通信。管道和有名管道的读写规则是在程序中应用它们的关键。管道相关的概念在linux中管道是通过指向同一个临时的VFS inode的两个file数据结构来实现的,此VFSinode指向内存中的同一个物理页面。这就隐藏了读写管道和读写普通文件的差别。管道是半双工的,数据只能向一个方向流动;需要双方通信时,需要建立起两个管道;只能用于父子进程或者兄弟进程之间... 阅读全文
posted @ 2013-12-02 09:09 haotianling 阅读(682) 评论(0) 推荐(0) 编辑