上一页 1 2 3 4 5 6 7 8 ··· 10 下一页
摘要: =,就是基本的赋值 :=,覆盖原来的值 +=,添加新值 ?=,如果没有赋值则赋值 阅读全文
posted @ 2013-10-14 19:55 黑夜的思索 阅读(222) 评论(0) 推荐(0)
摘要: 字符设备驱动框架结构体 下面来分析这段代码: struct cdev { struct kobject kobj; struct module *owner; const struct file_operations *ops; struct list_head list; dev_t dev; unsigned int count; }; 这实际上是通过C语言的结构体来模拟面向对象的封装特性... 阅读全文
posted @ 2013-10-13 16:00 黑夜的思索 阅读(215) 评论(0) 推荐(0)
摘要: 字符设备驱动 块设备驱动 网络设备驱动 驱动的开发基本上是遵循Linux提供的框架实现的,使用框架开发的主要目的是为了向上为应用层提供统一的用户接口,这样就可以实现将硬件透明的展示在开发人员的面前,实现不同设备同样接口,屏蔽实现,高内聚、低耦合。Linux内核的实现是面向对象思想的,所以我们可以将它看做这个框架就是一个父类,我们实现的代码不过是继承这个“框架父类”并实现从父类继承而来的方法,... 阅读全文
posted @ 2013-10-13 15:48 黑夜的思索 阅读(181) 评论(0) 推荐(0)
摘要: FRQ向量位于异常向量表的最末端,不需要跳转就可以直接执行后面跟随的异常处理程序;FRQ模式中私有寄存器数量最多,在进行异常处理时不需要对这些寄存器进行压栈保存。 阅读全文
posted @ 2013-10-12 20:32 黑夜的思索 阅读(427) 评论(0) 推荐(0)
摘要: 准备:1、英语-是工具2、电路原理图-补充“数电”的知识3、阅读内核代码的能力linux:vi+ctags+cscopewindows:source insight驱动开发的步骤I、编辑模块的组成:1、许可证的声明,许可证通常使用GPL协议,如果不声明许可证内核会产生“抱怨”信息,同时内核中的一些遵循GPL协议的功能函数将会无法使用,造成驱动功能受限。2、加载函数,初始化模块,在使用insmod加载驱动模块时自动调用,该函数必须声明为int init_module(void),insmod调用时会自动加载这个函数。3、卸载函数,恢复函数,在使用rmmod卸载驱动模块时会自动调用,函数必须声明为 阅读全文
posted @ 2013-10-11 21:10 黑夜的思索 阅读(350) 评论(0) 推荐(0)
摘要: 一、立即数寻址操作数由指令本身给出MOV r0,#0x0F //是所有寻址方式里面速度最快的,但是受到合法立即数的限制立即数要求以#和$开头十六进制,#后跟0x;十进制,#后直接加;八进制,#后跟0;二进制,#后跟0b什么是合法立即数?ARM中要求立即数是一个8位的常数循环左移偶数位得到的数值。也就是说只要是在0x00~0xFF中的一个数,或者是在这个区间中的一个数循环左移偶数位的数值,都是合法立即数。给大家一个快速判断方法:1、如果该数在0x00~0xFF之间,它是一个合法立即数;2、如果该数>0xFF,先把它换算成十进制数,如果能被4整除,它就是一个合法立即数,否则是一个非法立即数。 阅读全文
posted @ 2013-10-09 12:13 黑夜的思索 阅读(1214) 评论(0) 推荐(0)
摘要: 本文原文来自 Dan Shipper,由 如歌行板 和 茜仔 翻译投稿。 这些天,许多人向我询问该如何开始学习编程。我所能给出的答案就是:读书,尝试Code Academy,多在谷歌上检索,使用Stack Overflow。通常,与他们交谈的几周后我都会进行回访,看看最终谁开始步入正轨,谁已经放弃学习,这是一个很有趣的现象。 是什么将开始掌握编程的人和放弃学习编程的人区分来来的呢?在我看来,那... 阅读全文
posted @ 2013-05-07 09:08 黑夜的思索 阅读(148) 评论(0) 推荐(0)
摘要: GOTO 程序无条件跳转到指定的地址语法形式:GOTO m操作数:m为11位立即数指定的目标地址执行时间:2个指令周期执行过程:m→PC【10:0】PCLATH【4:3】→PC【12:11】状态标志影响:无说明:程序无条件立即强行跳转到目的地址处继续执行。目的地址由本指令内含的11位地址码和特殊寄存器PCLATH中的【4:3】一起构成完整的13位地址。指令范例:ORG 0x000 ;伪指令指定程序的起始地址GOTO Main ;程序跳转到标号指定的位置处继续执行MOVLW W寄存器赋立即数语法形式:MOVLW k操作数:k为8位立即数执行时间:一个指令周期执行过程:k→W状态标志影响:无说明: 阅读全文
posted @ 2013-04-25 11:07 黑夜的思索 阅读(1149) 评论(0) 推荐(0)
摘要: 立即数与控制操作指令 SLEEP 单片机进入低功耗休眠模式 语法形式:SLEEP 操作数:无 执行时间:一个指令周期 执行过程: 看门狗计数器清0 看门狗计数器的预分频器清0 STATUS寄存器的“TO”标志位置1 STATUS寄存器的“PD”标志位清0 状态标志影响:TO PD 说明:SLEEP指令可以让单片机停止所有的工作进入低功耗休眠模式,在休眠模式下芯片的功耗降至最低... 阅读全文
posted @ 2013-04-24 15:55 黑夜的思索 阅读(984) 评论(0) 推荐(0)
摘要: 提高工作效率,每天节省半小时 现在每个人都离不开计算机,无论是工作还是生活,为什么自己总是感觉时间比较紧张,计算机的操作步骤很烦杂,现在我决定将我知道的和使用过的一些技巧分享给大家,不要小看一些小的技巧,会大大提高工作的效率,高效的程序员应该能够摆脱鼠标的束缚,使用键盘来完成自己的各种操作,甚至使用脚本将自己的工作自动化。提前声明的是有些技巧并不是我原创的,是我从网上看到的,但是现在我又不知道原... 阅读全文
posted @ 2013-04-19 10:35 黑夜的思索 阅读(387) 评论(0) 推荐(0)
上一页 1 2 3 4 5 6 7 8 ··· 10 下一页