首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

arm驱动(4)

arm驱动(4)

网卡实验:
1.   write(pp_txtmd), write( pp_txlength)   read(pp_busst);   若顺序反, 无法写成功;
2.   收到的ping包有64字节, 最后4字节有可能是CRC校验码;
3.   可以将buf={ 0x11, 0x12 . . .}放入头文件, 程序引用, 作为数据发送;
4.   open若用RDONLY会无法写成功;

可查看cat /proc/ioports/    观察IO空间;
EINT8->0XF0000000+36

USB1.1, USB2.0/主, 从, OTG设备(5芯)
USB缺点:   不稳定, 线<=5m;
北桥一般挂接高速设备, 如memory等;
PCI设备启动时要获取:   中断号, IO空间, memory空间;

启动ip, . /app -qws   (qt界面程序)
给2410上拷贝文件:   scp来实现;
sybian   赛班;   arm-elf-gcc v2.95.3

一般错误返回-1, 成功返回0;
Qimage可先生图形/setitimer在uclinux中定时;
"hello" + 1==>"ello";
if(defined(x))可以为变量;   ifdef   x   只能是宏;
2.0/3.0输出结果不同于2/3, 前者是float数据;
dpkg -L   nfs-kernel-server   显示安装目录
通常服务器配置问题可以通过拷贝正确的配置文件解决;

编程中用些宏定义, 条件编译, 注释说明等;

驱动的一些例程:

#driver makefile

ifneq ($(KERNELRELEASE),)
# kbuild part of makefile
obj-m :=driver.o
else

KERNELSRC:=/home/username/linux-2.6.17.14
modules:
    make -C $(KERNELSRC) SUBDIRS=$(PWD) $@

clean:
    rm -f *.o *.ko *.mod.c *~

endif

/*      driver.c
* module example
*/

#include <linux/module.h>
#include <linux/kernel.h>
#include <linux/init.h>
#include <linux/slab.h>
#include <linux/console.h>
#include <linux/serial_core.h>

#include <asm/io.h>
#include <asm/irq.h>
#include <asm/hardware.h>
#include <asm/uaccess.h>
#include <asm/arch-s3c2410/regs-serial.h>
继承事业,薪火相传
返回列表