总结2

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了总结2相关的知识,希望对你有一定的参考价值。

 

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的主要内容,如果未能解决你的问题,请参考以下文章

Java基础总结--IO总结2

MySQL知识总结

每日总结#2

mysql/mariadb知识点总结 之 事务总结

总结系列2021年终总结

2016.2.19 学习总结