TA的每日心情 | 怒 2019-11-20 15:22 |
|---|
签到天数: 2 天 [LV.1]初来乍到
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
$ W1 b Q; I# Z 现在把simple_gpio目录挂到虚拟机里,然后在terminal中make,得到设备驱动模块文件
+ @* G/ `( F! A5 F& i
9 b1 Z6 |8 p# s: a
. d3 H* ]+ E& F5 Z3 H# K
/ \; e% d E0 I# ~( q% ?1 {
3 R7 J$ F+ C- b/ X% s+ K4 s q3 ]7 g
. l& _ y" w) J6 C' @0 y1 ^) S
然后在terminal中编译simple_led.c文件
- z% l5 y! N, f/ m/ l+ N' b! Z7 D/ ?$ W o, ~! o
or32-linux-gcc -o simple_led simple_led.c
$ e2 ?- s3 ?) i% s( D
. q3 T4 _3 `, M7 o1 A! j, Z
; A( C* {( u. @8 T3 o2 \: C2 q& Y: |5 F. `+ [$ N9 k
5 H D! \8 ?7 Z( t+ V. c0 @! q 最后需要的是两个文件,simple_gpio_driver.ko,simple_led。& `; c0 Y7 h4 R( I# O3 r
& X( U1 R+ U9 _* k. q; u
; S1 m- V$ b* J5 F* ?5 _
提取出来,然后在SecureCRT中输入lrz3 s2 k1 E$ j8 o2 J. v4 c; ^
& s; Q, n. e/ C
L& ]4 q& d/ F- H" f {8 a
p' M# n6 G5 W" A5 v9 X
2 z7 D$ v! `$ k; S o2 U 将这两个文件添加到发送列表中,然后确定发送,
, V' J9 t0 s! e% F
! l9 t2 v2 J/ i
; H$ C/ \- H! Q; i
. M% u6 ~2 y/ v1 ]
4 o8 u6 K) s. \5 r5 Q; W; ^' O3 l5 S 然后更改simple_led的文件属性
1 g& _; c$ O% r2 ]) i0 A
# F0 L( C6 t0 V7 D1 A B& Y6 m
5 o- f. X3 D; C
p: |3 r0 j) ~# E
% m) v* V: W B9 J1 M 然后就可以加载module和运行测试代码7 ?9 p+ R1 Y# _
7 x7 p- M6 ?$ t$ h" m- k" Z! f
# K0 P' _8 F2 @1 D- |3 V! ?2 f1 W# H9 i/ a( S+ { I& {6 x3 v
! g0 E2 B/ j4 m: X 如果顺利的话,在加载模块的同时板子的上LEDs会同时light up。
# s" _7 f! g$ o4 _3 y
& A) G; h4 F3 b' L, c* |% X1 Q3 S1 f
对应加载模块后的内核信息8 G& p- x- y) K
6 _/ q% ?4 k# L8 n0 Y
* C S. R/ j0 } x
3 h+ n+ k6 f7 c" B4 ]7 O0 H7 `, h& c( P
( }# \: ~1 ^. I0 s1 E# H4 L! H
用modinfo命令可以看到在编写字符驱动时的模块信息4 O( F. M" F6 ?
" i1 z2 }" O* J3 P( K2 R7 }
2 U. [1 G: u- {+ U) v* R) J! m- B
然后运行测试代码
( H: \4 W4 D- D4 _. @" S+ U+ q
+ {2 w/ ]$ y) h% n9 I6 Q- ^- W+ D
2 B: t! M y) B+ O1 U7 U
4 g7 s F+ h; M8 W! [
! K' @8 O1 B* J$ ] a2 {5 S g% b
0 g7 x! T' P$ E. { 在运行simple_led后,板子上LED 不断light up or down,同时在控制台上到有相应的提示信息输出。
, o5 J6 ~: e# f3 y# L( K" P0 J2 K
0 t2 N0 n" [5 V$ s# |2 y' a0 ^, K W/ ~% x: [' C5 B
到此,关于GPIO Controller的字符设备驱动就介绍到这里,如果目前想在驱动方面打发打发时间的话就可以啃相关的学习书籍······所以说目前我在公司就是这样打发时间的了~谁叫公司就养我在这又不给活我干咧~加油吧~; ^ V8 p4 L- D- k4 H
|
|