- 博客(20)
- 资源 (5)
- 收藏
- 关注
原创 nodejs的模块加载机制
模块简介在nodejs模块系统中,每个文件都可以看做单独的模块,模块通过向module.exports对象添加属性来导出,或者将module.exports指向新的对象或函数来导出。通常我们会向exports添加属性来导出,其实exports是指向module.exports的一个方便书写的变量,nodejs最后导出的是module.exports。模块通过向module.exports对象添加属...
2018-03-13 13:17:43 194
原创 STM32中断和异常
外部中断主要指由外设产生的(如IO口,UART),异常主要是由系统产生的(如NMI,SYCTICK),外部中断也属于异常的一种,以下统称为异常常用的操作异常的CMSIS函数,为了可移植性,建议使用这些函数操作异常。异常相关寄存器主要在NVIC和SCB中。这些函数在core_cm4.h中定义异常优先级分为抢占优先级和子优先级,高抢占优先级的异常(优先级数字较小
2016-03-20 23:34:37 7298
原创 Makefile知识点
本文摘录自《Managing Projects with GUN Make(3rd)》本文讨论的makefile命名如下目标:依赖 命令--.隐含规则:当在Makefile中没有找到显示规则时,则使用如下隐含规则1.依赖.c文件生成对应的.o%.o: %.c $(COMPILE.c) $(OUTPUT_OPTION) $
2015-08-15 11:51:17 439
原创 安装QEMU,虚拟mini2440开发板
1.下载QEMU,非官方版本,改版本支持mini2440,官方版本不支持http://repo.or.cz/w/qemu/mini2440.git2.安装需要的库sudo apt-get install zlib1g-dev libglib2.0-dev autoconf automake libtool libsdl1.2-dev3.解压第一步的压缩包,并进入文件夹执行以下命
2015-08-13 14:16:04 772
原创 linux进程间通信--概括
linux下进程间通信的几种主要手段简介:1管道(Pipe)及有名管道(named pipe):管道可用于具有亲缘关系进程间的通信,有名管道克服了管道没有名字的限制,因此,除具有管道所具有的功能外,它还允许无亲缘关系进程间的通信;信号(Signal):信号是比较复杂的通信方式,用于通知接受进程有某种事件发生,除了用于进程间通信外,进程还可以发送信号给进程本身;linux除了支持Unix早期
2014-04-12 10:06:45 663
原创 input子系统
Android、X windows等众多应用对于linux系统中键盘、鼠标、触摸屏等输入设备的支持都越来越倾向于标准的input输入子系统。
2014-04-11 17:59:32 666
原创 uboot启动参数 linux kernel启动参数 设置
bootdelay=3baudrate=115200ethaddr=00:12:34:56:78:9aipaddr=192.168.0.9 步骤1serverip=192.168.0.1 步骤2netmask=255.255.255.0rootpath=/home/zht/rfsys
2014-04-09 16:21:11 4782
原创 混杂设备驱动
混在shebie驱动是一些拥有着共同特性的简单字符设备驱动。内核抽象出这些特性而形成一些API(在文件drivers/char/misc.c中实现),以简化这些设备驱动程序的初始化。所有的misc设备被分配同一个主设备号MISC_MAJOR(10),但是每一个可以选择一个单独的次设备号。如果一个字符设备驱动要驱动多个设备,那么它就不应该用misc设备来实现。
2014-04-04 12:56:38 521
原创 platform总线
一个现实的Linux设备和驱动通常都需要挂接在一种总线上,对于本身依附于PCI、USB、I2 C、SPI等的设备而言,这自然不是问题,但是在嵌入式系统里面,SoC系统中集成的独立的外设控制器、挂接在SoC内存空间的外设等确不依附于此类总线。基于这一背景,Linux发明了一种虚拟的总线,称为platform总线,相应的设备称为platform_device,而驱动成为 platform_driver
2014-04-04 10:28:09 522
原创 MySQL中的C API
#include #include int main(int argc, char **argv){ MYSQL *conn; MYSQL_RES *result; MYSQL_ROW row; int num_fields; int i; conn = mysql_init(NULL); mysql_real_connect(conn, "localhost"
2014-03-31 17:00:20 628
原创 jpeg库移植,mjpg-streamer库移植
JPEG 是全彩色和灰度图像标准化的压缩方法。 libjpeg是一个完全用C语言编写的库。libjpeg 是一个完全用C语言编写的库,包含了被广泛使用的JPEG解码、JPEG编码和其他的JPEG功能的实现。这个库由独立JPEG工作组维护。libjpeg包含以下工具程序:cjpeg and djpeg,用于JPEG和一些其他流行图形文件格式之间的转换。rdjpgcom and wrj
2014-03-25 10:57:04 1360
原创 madplay移植
MAD简介MAD 是高质量的MPEG audio decoder,它支持 MPEG-1 和 低频率的MPEG-2拓展和MPEG 2.5,MAD不支持MPEG-2 多通道音频,也不支持AAC,支持MP3格式MAD 有如下特点:24-bit PCM 输出100% 非浮点(整型) 计算完全基于ISO/IEC标准基于GNU General Public License
2014-03-24 17:03:19 956
原创 tslib-1.4移植 qt-4.8.5移植
1.安装需要的工具sudo apt-get install automakesudo apt-get install autogensudo apt-get install autoconfsudo apt-get install libtool2.下载tslib1.4.tar.gz,并解压tar zxvf tslib1.4.tar.gz3.进入
2014-03-23 11:28:36 1601
原创 使用busybox构建根文件系统
简介所有的linux发行版在对根文件系统布局上都遵循FHS标准的建议规定。该标准规定了根目录下各个子目录的名称及其存放的内容:目录名 存放的内容/bin 必备的用户命令,例如ls、cp等/sbin 必备的系统管理员命令,例如ifconfig、reboot等/dev 设备文件,例如mtdblock0、tty1等/etc 系统配置文件,包括启动文件,例如inittab等
2014-03-22 19:01:28 1275
原创 kermit,tftp,nfs的配置
kermit1安装apt-get install ckermit2修改kermit的配置文件修改/etc/kermit/kermrc,添加如下条目:set line /dev/ttyUSB0set speed 115200set carrier-watch offset handshake noneset
2014-03-22 17:58:58 603
原创 vim ctag cscope设置
vimrc的存放位置:系统 vimrc 文件: "$VIM/vimrc"用户 vimrc 文件: "$HOME/.vimrc"用户 exrc 文件: "$HOME/.exrc"系统 gvimrc 文件: "$VIM/gvimrc"用户 gvimrc 文件: "$HOME/.gvimrc"系统菜单文件: "$VIMRUNTIME/menu.vim"$VIM 预设值:
2014-03-21 16:14:14 629
深入理解计算机系统(含答案和英文第二版)
2011-12-22
windows程序设计(第五版Charles Petzold)
2010-04-28
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人