摘要: [|]是ARM汇编控制伪指令,就是IFELSEENDIF,简写成[|] "["相当于if"|"相当于else"]"相当于endif例如:[ {CONFIG} = 16THUMBCODE SETL {TRUE} CODE32|THUMBCODE SETL {FALSE} ] 阅读全文
posted @ 2013-04-13 10:53 ITtecman 阅读(418) 评论(0) 推荐(0) 编辑
摘要: (转)C++中extern “C”含义深层探索1.引言 C++语言的创建初衷是“a better C”,但是这并不意味着C++中类似C语言的全局变量和函数所采用的编译和连接方式与C语言完全相同。作为一种欲与C兼容的语言,C++保留了一部分过程式语言的特点(被世人称为“不彻底地面向对象”),因而它可以定义不属于任何类的全局变量和函数。但是,C++毕竟是一种面向对象的程序设计语言,为了支持函数的重载,C++对全局函数的处理方式与C有明显的不同。 2.从标准头文件说起 某企业曾经给出如下的一道面试题: 面试题 为什么标准头文件都有类似以下的结构? #ifndef __INCvxWorksh... 阅读全文
posted @ 2013-04-13 09:24 ITtecman 阅读(223) 评论(0) 推荐(0) 编辑
摘要: 《arm体系结构与编程》第九章 异常中断处理/9.2.2 从异常中断处理程序中返回SWI和未定义指令异常中断是由当前执行的指令自身产生的。当SWI和未定义指令异常中断产生时,程序计数器PC的值还未更新,它指向当前指令后面第2条指令(???)(对于ARM指令来说+8字节;对于Thumb指令来说+4字节的位置)。数据访问异常中断由当前执行的指令自身产生,当数据访问异常中断发生时,程序计数器pc的值已经更新,它指向当前指令后面第3条指令(???)(对于ARM指令,它指向当前指令地址加12字节的位置;对于Thumb指令,它指向当前指令地址加6字节的位置)。经多方查证得到如下可以解释上述疑问(???)的 阅读全文
posted @ 2013-04-12 17:56 ITtecman 阅读(745) 评论(0) 推荐(0) 编辑
摘要: 读状态命令可以实现读取设备内的状态寄存器,通过该命令可以获知写操作或擦除操作是否完成(判断第6位),以及是否成功完成(判断第0位)。不是特别理解。。。。。。 阅读全文
posted @ 2013-04-12 08:34 ITtecman 阅读(372) 评论(0) 推荐(0) 编辑
摘要: K9F2G08U0A的一页为(2K+64)字节(加号前面的2K表示的是main区容量,加号后面的64表示的是spare区容量),它的一块为64页,而整个设备包括了2048个块。这样算下来一共有2112M位容量,如果只算main区容量则有256M字节(即256M×8位)。要实现用8个IO口来要访问这么大的容量,K9F2G08U0A规定了用5个周期来实现。第一个周期访问的地址为A0~A7;第二个周期访问的地址为A8~A11,它作用在IO0~IO3上,而此时IO4~IO7必须为低电平;第三个周期访问的地址为A12~A19;第四个周期访问的地址为A20~A27;第五个周期访问的地址为A28, 阅读全文
posted @ 2013-04-12 08:22 ITtecman 阅读(205) 评论(0) 推荐(0) 编辑
摘要: 下图自S3C2440图1 CLE/ALE时序图图2 nWE和nRE时序图从S3C2440手册中我们可以得到(由图1可知): TACLS为CLE/ALE有效到nWE有效之间的持续时间; TWRPH0为nWE的有效持续时间; TWRPH1为nWE无效到CLE/ALE无效之间的持续时间。 这些时间都是以HCLK为单位的。通过查阅nandflash(如K9F2G08U0A)的数据手册,我们可以找到并计算与S3C2440相对应的时序:K9F2G08U0A中的Twp与TWRPH0相对应,Tclh与TWRPH1相对应, TACLS不一定与TCLS相对应,还有可能与TCLS-TWP相对应(跟具体的na... 阅读全文
posted @ 2013-04-11 18:30 ITtecman 阅读(413) 评论(0) 推荐(0) 编辑
摘要: vim file1 file2 file3:n 切换到文件2 (n=next):e# 或 :N切换回到刚才编辑的文件比如当前编辑文件为a,:n跳至b,再:n跳至c,:e#回到b,想回到a的话用:ea打开一个,vim 文件名然后在vi的命令输入状态下输入:sp 另外一个文件的路径及文件名如此就可以在一个窗口打开多个文件了。或者用 vi -o file1 file2 file3....用分割屏幕窗口方式同时打开多个文件。可以使用 ctrl + 两次按 w 或者ctrl + w 然后按上下键在上下窗口间切换。在这几个打开的文件,拷贝文件可以使用剪贴板:要拷贝一行到剪贴板中:"*yy或者&q 阅读全文
posted @ 2013-04-11 15:43 ITtecman 阅读(624) 评论(0) 推荐(0) 编辑
摘要: NAND Flash每一页大小为(512+16)字节(还有其他格式的NANDFlash,比如每页大小为(256+8)、(2048+64)等),其中的512字节就是一般存储数据的区域,16字节称为OOB(Out OfBand)区。通常在OOB区存放坏块标记、前面512字节的ECC较验码等。 阅读全文
posted @ 2013-04-11 11:07 ITtecman 阅读(1250) 评论(0) 推荐(0) 编辑
摘要: Looking up port of RPC 100003/2 on 192.168.1.17eth0: link up, 100Mbps, full-duplex, lpa 0x4DE1Root-NFS: Unable to get nfsd port number from server, using defaultLooking up port of RPC 100005/1 on 192.168.1.17Root-NFS: Unable to get mountd port number from server, using defaultRoot-NFS: Server return 阅读全文
posted @ 2013-04-10 13:13 ITtecman 阅读(1191) 评论(0) 推荐(0) 编辑
摘要: arm-linux-gdb: error while loading shared libraries: libexpat.so.1: cannot open shared object file: No such file or directory. 阅读全文
posted @ 2013-04-02 10:17 ITtecman 阅读(248) 评论(0) 推荐(0) 编辑