码迷,mamicode.com
首页 > 其他好文 > 详细

总结2

时间:2016-06-05 17:07:45      阅读:160      评论:0      收藏:0      [点我收藏+]

标签:

 

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.binzImage-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驱动程序以模块单独存在,需要使用insmodmodprobe命令装载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驱动的装载卸载、与设备文件相关的动作处理。与硬件交互主要是指通过iowrite32ioread32等函数与硬件中的寄存器进行数据交互。

 

 

http://www.cnblogs.com/875825a/

 

 
 

总结2

标签:

原文地址:http://www.cnblogs.com/875825a/p/5560983.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!