标签:
Minicom是一款Linux版的串口管理软件,在PC端接收和发送串口数据
安装,配置和测试minicom:
第一步:检测当前系统是否支持USB转接口
#lsmod | grep usbserial
第二步: 安装minicom
#apt-get install minicom
第三步:配置minicom
#minicom -s
第四步:测试minicom
#minicom
烧写android系统
先使用eboot擦除nandflash
烧写步骤:
第一步:准备sd卡,插入读卡器连接PC
第二步:向sd卡写入mmc.bin和zImage-sd.bin
第三步:拨动开关,拨动好了打开开发板
第四步:开始从sd卡烧写android
第五步:校准屏幕
配置有线网络
# ifconfig eth0 192.168.17.150 netmask 255.255.255.0 up
# route add default gw 192.168.17.254 dev eth0
编写一个基本的Linux驱动的一般步骤:
第一步:建立Linux驱动骨架(装载和卸载Linux驱动)
驱动初始化:module_init
驱动退出:module_exit
第二步:注册和注销设备文件
建立设备文件:函数misc_register()
移除设备文件:函数misc_deregister()
第三步:指定与驱动相关的信息
第四步:指定回调函数
一个驱动程序不一定要指定所有的回调函数,回调函数会通过相关机制进行注册,例如:与设备文件相关的回调函数会通过misc_register函数进行注册。
第五步:编写业务逻辑
具体的业务逻辑与驱动的功能有关。业务逻辑可能由多个函数、多个文件甚至是多个Linux驱动模块组成。
第六步:编写Makefile文件
Linux内核源代码的编译规则是通过Makefile文件定义的。编写一个新的Linux驱动程序必须有一个Makefile文件
第七步:编译Linux驱动程序
第八步:安装和卸载Linux驱动
如果将Linux驱动编译进内核,只要Linux使用该内核,驱动程序自动装载,
如果Linux驱动程序以模块单独存在,需要使用insmod或modprobe命令装载Linux驱动模块,使用rmmod命令卸载Linux驱动模块。
创建一个设备文件:
1.使用cdev_init函数初始化cdev
2.指定设备号
设备号有两种指定方法:a.直接在代码中指定 b.动态分配(alloc_chrdev_region函数)
3.使用cdev_add函数将字符设备添加到内核中的字符设备数组中
4.使用class_create宏创建stuct calss
5.使用device_create函数创建设备文件
代码重用:1,静态重用 :将要重用的代码放在其他的文件中,如果要使用某些功能,include 相应的头文件即可
2,动态重用:一个Linux驱动可以使用另外一个Linux驱动中的资源
卸载由于异常情况而导致的Linux驱动模块无法卸载的情况:
1.初始化函数崩溃:将当前的Linux驱动模块的引用计数器清零即可
2.卸载函数被阻塞:将原来的卸载函数替换成一个空的卸载函数即可
蜂鸣器也称为PWM(脉冲宽度调制),基本原理是通过脉冲来控制蜂鸣器的打开和停止
一个完整的Linux驱动主要由内部处理和硬件交互两部分组成,其中内部处理只要指Linux驱动的装载卸载、与设备文件相关的动作处理。与硬件交互主要是指通过iowrite32、ioread32等函数与硬件中的寄存器进行数据交互。
http://www.cnblogs.com/875825a/
标签:
原文地址:http://www.cnblogs.com/875825a/p/5560983.html