返回列表 发帖

[站长原创] 跟我学嵌入式基础知识篇 -如何在sd卡上执行hello程序

[站长原创] 跟我学嵌入式基础知识篇 -如何在sd卡上执行hello程序

如何在sd卡上执行hello程序

嵌入式开发联盟www.mcuos.com

Osboy站长原创

QQ:82475491

Mcuos.com@gmail.com

(一)如何在板子上使用sd卡


需要板子启动linux内核到文件系统正常运行,这个时候插入sd卡。看你的串口的打印信息,会提示你是sd,vendor,容量等信息。

然后执行命令步骤:

1)cd /proc, 然后ls查看proc目录有何文件,如果此目录为空,请输入:mount -t proc proc /proc,然后再进入到/proc目录,直到看到好多文件名为止。

2)cd /proc, cat partitions,一般都会显示如下类似信息:



这里要注意的事情就是,上面显示的mmcblk的sd卡文件节点我们还没有建立,所以需要先在PC机上的rootfs目录下建立:

1)cd filesystem/rootfs/dev

2) mkdir block

3) cd block

4) sudo mknod mmcblk0 b 179 0

sudo mknod mmcblk0p1 b 179 1

关于这里的设备文件节点的建立问题,可以参考:

http://mcuos.com/thread-8279-1-1.html

这边的帖子,这个是我给丁杰修改作业的时候给他矫正过的问题。里面说了建立设备节点的理由,可以学习下。


5)重新编译:make

6)重新将zImage下载到板子上


3)cd /proc, cat filesystems,查看目前的板子上跑的linux支持了那些文件系统,类似于:



请确保你的板子支持vfat文件系统。
       4)mount sd到你的板子的文件系统上
mount -t vfat /dev/block/mmcblk0p1 /usr
如果一切正常的话,就看看,现在的/usr目录就可以看到你sd卡上的内容啦。把hello程序放到sd上的话,你cd /usr然后运行:./hello.注意这边一定要在sd卡的当前目录下执行,所以请输入“./” 在hello之前。

5)输入mount命令查看当前有多少设备mount到你的板子的系统上。

应该能看到你刚刚mount的sd卡的mount信息:


/dev/block/mmcblk0p1 on /usr type vfat (rw,relatime,fmask=0022,dmask=0022,codepage=cp936,iocharset=utf8,shortname=mixed,errors=remount-ro)


(二)总结
这个实验貌似简单,但是其实其中蕴含着知识很多,如何将一个外设存储设备mount到你的板子的某个目录上来?这个可是制作yaffs,jffs2的跟文件系统的必备知识哦,还有如何查看proc下面的分区信息,如何查询,当前的linux支持哪些文件系统?这些必备的基础知识,你都了解了么?

附件: 您需要登录才可以下载或查看附件。没有帐号?本站只开放邀请码注册,QQ:82475491,索要邀请码
分享到: QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友

写一点我自己的理解吧,有不对的地方还请大家指正!
我觉得如果仅仅为了做这个实验的话,可以不必到PC机上建立节点重新编译,直接在开发板上建立节点就可以挂载SD卡。但是如果到PC机上建立节点,然后重新编译下载,就不用每次挂载SD卡之前都去建立文件节点,这样的话以后要使用SD卡就比较方便。

TOP

回复 1# osboy
我是直接在板子上mknod的

cd filesystem/rootfs/dev

mkdir block

cd block

sudo mknod mmcblk0 b 179 0

sudo mknod mmcblk0p1 b 179 1



# mount

rootfs on / type rootfs (rw)

/dev/root on / type yaffs (rw)

proc on /proc type proc (rw)

tmpfs on /tmp type tmpfs (rw)

sysfs on /sys type sysfs (rw)

tmpfs on /dev type tmpfs (rw)

devpts on /dev/pts type devpts (rw)

/dev/block/mmcblk0p1 on /usr type vfat (rw,fmask=0022,dmask=0022,codepage=cp936,iocharset=cp936)

   也能正常使用

TOP

返回列表
网页右侧QQ悬浮滚动在线客服
网页右侧QQ悬浮滚动在线客服