linux C
control_tech
电子科学与技术专业, 2年单片机开发,2年嵌入式开发,熟悉ARM体系结构,熟悉linux下驱动程序开发和相关应用程序开发。
熟悉TCP/IP协议栈,linux下的网络编程。
在多款cpu下开发过产品,移植和编写过驱动,如pxa270,at9261,sigma8655,s3c2440, s3c2410,VT8430等
展开
-
gdb 常用调试命令应用讲解
本文共分四部分:一. 单步执行和跟踪函数调用二. 断点三. 观察点四. 段错误 程序中除了一目了然的Bug之外都需要一定的调试手段来分析到底错在哪。到目前为止我们的调试手段只有一种:根据程序执行时的出错现象假设错误原因,然后在代码中适当的位置插入printf,执行程序并分析打印结果,如果结果和预期的一样,就基本上证明了自己假设的错误原因,就可以动手修正Bug了,如果结果和预期的不一样,就原创 2010-02-01 18:06:00 · 1907 阅读 · 1 评论 -
sqlite 执行标准sql语法
<br />1. 执行sql语句<br /><br />int sqlite3_exec(sqlite3*, const char *sql, sqlite3_callback, void *, char **errmsg );<br />这就是执行一条 sql 语句的函数。<br />第1个参数不再说了,是前面open函数得到的指针。说了是关键数据结构。<br />第2个参数const char *sql 是一条 sql 语句,以/0结尾。<br />第3个参数sqlite3_cal转载 2011-02-23 11:46:00 · 519 阅读 · 0 评论 -
SM501显卡驱动的移植(linux.2.6.18)
<br />本文从三个方面说明一下SM501显卡驱动在2440+2.6.18环境下的移植:<br />1 硬件情况。<br />2 移植过程<br />3 驱动测试<br />一、硬件情况:<br />第一次接触到显卡编程,有点不太适应。SM501的Datasheet写的太简略,个人觉得有用的基本上就是两个方面:<br />1 内存映射模式。<br />2440与SM501连接模式为2440作为HOST有独立的SDRAM,SM501除了可以访问HOSTSDRAM外,还拥有8MB的本地内存转载 2010-06-23 18:00:00 · 582 阅读 · 0 评论 -
高手博客
chenzhufly.cublog.cn 打开链接 2007-12-19 09:18 刘洋打开链接 2008-09-13 23:19 章鱼的窝打开链接 2007-09-16 14:29 ly44770的博客打开链接 2007-09-13 21:12 NOR Flash - FLASH原创 2010-05-15 14:59:00 · 593 阅读 · 0 评论 -
加密存储芯片AT88SC1616的原理和应用技术
摘要:从加密存储芯片AT88SC1616内部结构出发,详细介绍该芯片的功能、特点和基本工作原理;给出通用的硬件接口电路和软件编程实现;讨论AT88SC1616在单处机与嵌入式系统中的应用。 关键词:加密存储芯片 AT88SC1616 I2C总线 嵌入式系统随着嵌入式产品性能的日益提高,嵌入式系统在消费类电子、汽车、工业控制和通信等行业迅速普及;但由于嵌入式系统开发成本高、研发周期长,使得关转载 2010-05-14 18:39:00 · 1214 阅读 · 1 评论 -
采用AT88SC系列芯片进行系统加密的原理
简述:机顶盒系统中存在个性化的加密芯片,该加密芯片与CPU进行交互认证,从而控制机顶盒的软件流程,实现系统的防拷贝。该加密芯片内部配置数据基本无法获取,与CPU间通信采用密文方式。安全性较好。机顶盒主程序在启动或运行过程中可以随时唤醒加密认证任务。完成机顶盒产品中芯片(ID)的确认。加密认证任务通过发送一个认证指令,查找加密芯片的存在。下面将利用本加密芯片进行产品加密的最安全模式的原理原创 2010-05-14 09:15:00 · 4098 阅读 · 4 评论 -
linux下 s3c2440 lcd驱动移植详解
1. LCD工作的硬件需求: 要使一块LCD正常的显示文字或图像,不仅需要LCD驱动器,而且还需要相应的LCD控制器。在通常情况下,生产厂商把LCD驱动器会以COF/COG的形式与LCD玻璃基板制作在一起,而LCD控制器则是由外部的电路来实现,现在很多的MCU内部都集成了LCD控制器,如S3C2410/2440等。通过LCD控制器就可以产生LCD驱动器所需要的控制信号来控制STN/TFT屏了。 2. S3C2440内部LCD控制器结构图:我们根据数据手册来描述一下这个集成在S3C2440内部的LCD控制原创 2010-06-30 18:50:00 · 4204 阅读 · 1 评论 -
IS_ERR()宏是什么意思
IS_ERR()有一些妙处。内核中的函数常常返回指针,问题是如果出错,也希望能够通过返回的指针体现出来。所幸的是,内核返回的指针一般是指向页面的边界(4K边界),即ptr & 0xfff == 0这样ptr的值不可能落在(0xfffff000,0xffffffff)之间,而一般内核的出错代码也是一个小负数,在-1000到0之间,转变成unsigned long,正好在(0xfffff000,原创 2010-04-16 12:38:00 · 813 阅读 · 0 评论 -
GNU 长选项命令解析--getopt_long()
Linux系统下,需要大量的命令行选项,如果自己手动解析他们的话实在是有违软件复用的思想,不过还好,GNU C library留给我们一个解析命令行的接口(X/Open规范),好好使用它可以使你的程序改观不少。使用getopt_long()需要引入头文件#include 现在我们使用一个例子来说明它的使用。一个应用程序需要如下的短选项和长选项。 短选项原创 2010-03-28 11:21:00 · 404 阅读 · 0 评论 -
8250 driver
一:前言 前一段时间自己实践了一下8250 芯片串口驱动的编写。今天就在此基础上分析一下 linux kernel 自带的串口驱动。毕竟只有对比专业的驱动代码才能更好的进步 , 同以往一样,基于 linux kernel2.6.25. 相应驱动代码位于: linux- 2.6.25/drivers/serial/8250.c 。 二:8250 串口驱动初始化 相应的初始化函数为 se原创 2010-03-23 18:23:00 · 954 阅读 · 0 评论 -
在linux下用rsh实现两个节点的无密码互通
由于要做并行计算,现在要把机器配置成两台无密码可以互相访问。现在来说说具体配置rsh的流程。机器配置:64位机,4核,X86服务器主机,装centos 4.8 64位操作系统。网络互通采用infiniband网卡通信。 1、检查有无安装rsh-server包[root@node1 ~]# rpm -qa rsh-server若没有安装,则可以通过下面的命令来安装。2、 安原创 2010-03-23 20:32:00 · 1646 阅读 · 0 评论 -
台式机上安装双系统(winXP+CentOS),从硬盘安装
安装操作系统,由于笔记本上的DVD光驱坏了,u盘作启动盘也启动不了。决定用一下从硬盘安装一下操作系统。 开始: 1 下载CentOS的安装盘,下载了CentOS-4.5.iso 2 进入windows,将CentOS的映像文件放入D盘(FAT32分区)根目录,并解压出两个文件(isolinux目录下的vmlinuz和 initrd.img),放在上述分区的根目录中备用(因原创 2010-03-12 01:30:00 · 1245 阅读 · 0 评论