在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

linux驅動開發_文件系統本地掛載

DS小龍哥-嵌入式技術 ? 2022-09-17 15:52 ? 次閱讀

【摘要】 介紹Linux開發根文件系統掛載、NFS文件系統配置,UBOOT環境變量配置,完成文件系統啟動。

數碼相冊功能:

1.?支持兩種格式圖片顯示: bmp、jpg

區分兩種圖片格式,通過后綴名稱區分。

2.?支持觸摸屏、按鍵方式翻頁(支持前后翻頁)

建立雙向鏈表,調用讀取目錄的函數(opendir),將目錄下所有符合要求的圖片加入到鏈表里。

3.?支持三軸加速度計,實現姿態感應。根據三軸加速度的姿態,調整圖片的顯示方向。

4.?支持圖片的自適應: 居中顯示,超大尺寸的圖片需要自動縮小到屏幕能夠顯示的大小。

5.?居中顯示。

6.?數碼相冊需要有狀態欄: 當前系統的時間信息,當前圖片的名稱、數量。

任務1: 產品發布(本地掛載)

1.?在紅帽子系統上將根文件系統進行壓縮打包。(PC機上操作)

[root@wbyq work]# tar cvf rootfs.tar rootfs/*

pYYBAGMlOaKANPlHAACUo7y2ANE955.png

2.?將打包之后的壓縮文件,移動到rootfs目錄下,方便在開發板上進行訪問(PC機上操作)

[root@wbyq work]# mv rootfs.tar rootfs/

3.?將SD卡上內核、UBOOT等一些代碼拷貝到EMMC里面,(接下來就可以通過EMMC啟動)

講解MMC命令:

開發板: 從SD卡啟動的

mmc read addr blk# cnt

mmc write addr blk# cnt

mmc read 0 0x40000000 1 5

mmc write 1 0x40000000 1 5

??一次性將SD卡上所有需要的數據拷貝到EMMC里: BL1BL2 UBOOT.bin 簽名文件 內核

movi r f 0 40008000;emmc open 1;movi w z f 1 40008000;emmc close 1;

movi r b 0 40008000;emmc open 1;movi w z b 1 40008000;emmc close 1;

movi r u 0 40008000;emmc open 1;movi w z u 1 40008000;emmc close 1;

movi r t 0 40008000;emmc open 1;movi w z t 1 40008000;emmc close 1;

movi r k 0 40008000;movi w k 1 40008000;

命令執行成功之后,將SD卡拔出,開發板開關撥到EMMC啟動,復位開發板,重新進入到UBOOT命令行。

4.?對EMMC進行分區 (UBOOT命令行里執行)

TINY4412 # fdisk -c 0 2000 1000 1000

TINY4412 # fdisk -p 0

partion # size(MB) block start # block count partition_Id

1 3301 8359120 6761931 0x0C

2 2004 134343 4104925 0x83

3 1005 4239268 2059926 0x83

4 1005 6299194 2059926 0x83

5.?對分區進入格式化,安裝文件系統(UBOOT命令行里執行)

TINY4412 # ext3format mmc 0:1

TINY4412 # ext3format mmc 0:2

TINY4412 # ext3format mmc 0:3

TINY4412 # ext3format mmc 0:4

將設備0(EMMC設備)的第2個分區格式化陳EXT3文件系統格式。

6.?設置UBOOT環境變量,讓內核使用網絡方式掛載根文件系統(NFS)。(UBOOT命令行里執行)

TINY4412 # set bootargs root=/dev/nfs nfsroot=192.168.10.11:/work/rootfs ip=192.168.10.123:192.168.10.11:192.168.10.1:255.255.255.0::eth0:off init=/linuxrc console=ttySAC0,115200 lcd=s702

TINY4412 # save //保存環境變量

Saving Environment to SMDK bootable device...

Done

TINY4412 # reset //重啟開發板,進行網絡文件系統掛載

7.?掛載EMMC的2號分區

將EMMC的第2個分區掛載到/mnt目錄下。

[root@tiny4412 ]#rm /dev/mmcblk* //將dev目錄下原來的mmc設備節點刪除掉

[root@tiny4412 ]#mdev -s //重新生成設備節點

[root@tiny4412 ]#ls /dev/mmcblk0* -l //查看生成之后的EMMC設備節點

brw-rw---- 1 root root 179, 0 Dec 10 2018 /dev/mmcblk0

brw-rw---- 1 root root 179, 8 Dec 10 2018 /dev/mmcblk0boot0

brw-rw---- 1 root root 179, 16 Dec 10 2018 /dev/mmcblk0boot1

brw-rw---- 1 root root 179, 1 Dec 10 2018 /dev/mmcblk0p1

brw-rw---- 1 root root 179, 2 Dec 10 2018 /dev/mmcblk0p2

brw-rw---- 1 root root 179, 3 Dec 10 2018 /dev/mmcblk0p3

brw-rw---- 1 root root 179, 4 Dec 10 2018 /dev/mmcblk0p4

[root@tiny4412 ]#mount /dev/mmcblk0p2 /mnt/ //將EMMC的第2個分區掛載到/mnt目錄下

[ 19.635000] EXT2-fs (mmcblk0p2): warning: mounting ext3 filesystem as ext2

[ 19.635000] EXT2-fs (mmcblk0p2): warning: checktime reached, running e2fsck is recommended

[root@tiny4412 ]#cd /mnt/

[root@tiny4412 mnt]#ls //查看掛載目錄

lost+found

8.?將之前打包的文件系統壓縮包解壓到掛載目錄下

[root@tiny4412 mnt]#pwd

/mnt

[root@tiny4412 mnt]#ls

lost+found

[root@tiny4412 mnt]#tar xvf /rootfs.tar //將之前打包的rootfs文件壓縮包解壓到/mnt目錄下

[root@tiny4412 mnt]#mv rootfs/* ./ //將解壓出來的rootfs目錄下所有文件,移動到/mnt頂層目錄下

[root@tiny4412 mnt]#ls //移出來之后目錄下的文件

bin etc linuxrc proc sys var

code home lost+found rootfs tmp work

dev lib mnt sbin usr

[root@tiny4412 mnt]#cd / //回到根目錄下

[root@tiny4412 ]#umount /mnt/ //取消目錄掛載

9.?重啟開發板,進入到UBOOT命令行,重新設置環境變量為本地掛載

TINY4412 # set bootargs root=/dev/mmcblk0p2 rootfstype=ext3 init=/linuxrc console=ttySAC0,115200 lcd=s702 coherent_pool=2M //設置環境變量

TINY4412 # save //重啟開發板

Saving Environment to SMDK bootable device...

done

TINY4412 # reset //復位開發板

正常沒有問題的情況下,開發板文件已經掛載成功。

poYBAGMlOaKAKVLDAAEsk4iffvo210.png

10.? 開發板文件系統與PC通信的方法

(1)?可以通過SD卡、U盤等方式給開發板拷貝文件。

(2)?可以通過NFS文件系統進行遠程掛載: 將NFS文件服務器的目錄掛載到本地。

??開發板NFS網絡文件系統掛載

1.?修改PC機上NFS文件系統共享的目錄

[root@wbyq /]# mkdir /code //在根目錄下創建一個code目錄

[root@wbyq /]# gedit /etc/exports //打開NFS服務器配置文件

pYYBAGMlOaKAbhBKAAC4f-azORc770.png

2.?重啟NFS服務器 (運行之前編寫好的腳本文件)

poYBAGMlOaKADtVyAAHBUtRIPbA827.png

3.?設置開發板上的網卡IP地址 (開發板終端上進行操作)

[root@tiny4412 ]#ifconfig eth0 192.168.10.123

4.?掛載NFS服務器共享的目錄(開發板終端上進行操作)

[root@tiny4412 ]#mount -t nfs -o nolock 192.168.10.11:/code /mnt/

5.?為了方便后續使用,可以編寫一個腳本。

[root@tiny4412 ]#ifconfig eth0 192.168.10.123

[root@tiny4412 ]#echo "ifconfig eth0 192.168.10.123" >nfs_start.sh

[root@tiny4412 ]#echo "mount -t nfs -o nolock 192.168.10.11:/code /mnt" >>nfs_st

art.sh

[root@tiny4412 ]#cat nfs_start.sh //查看腳本文件里的內容

ifconfig eth0 192.168.10.123

mount -t nfs -o nolock 192.168.10.11:/code /mnt

[root@tiny4412 ]#chmod 777 nfs_start.sh //修改腳本權限

任務2: 360WIFI驅動(與相關的無線管理工具安裝)

購買的360WIFI: 2代。小度WIFI(百度)。 小米WIFI(小米)。

??學習無線WIFI驅動: 完整的WIFI驅動

1.?如何下載官網提供的驅動源碼,進行編譯、配置、安裝: ARM

2.?學習WIFI相關的無線管理工具。

3.?學習網卡自動分配IP地址,才可以訪問公網: 必須保證連接的熱點可以上網

uboot環境變量設置:

set bootargs root=/dev/nfs nfsroot=192.168.18.3:/work/rootfs ip=192.168.18.123:192.168.18.3:192.168.18.1:255.255.255.0::eth0:off init=/linuxrc console=ttySAC0,115200 lcd=s70 coherent_pool=2M
set bootargs noinitrd root=/dev/mmcblk0p3 rootfstype=ext3 console=ttySAC0,115200 init=/linuxrc ctp=2 lcd=S70 coherent_pool=2M
set bootargs noinitrd root=/dev/mmcblk0p2 rootfstype=ext3 console=ttySAC0,115200 init=/linuxrc ctp=2 lcd=S70 coherent_pool=2M
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 文件系統
    +關注

    關注

    0

    文章

    287

    瀏覽量

    19979
  • Uboot
    +關注

    關注

    4

    文章

    125

    瀏覽量

    28349
  • NFS
    NFS
    +關注

    關注

    1

    文章

    53

    瀏覽量

    26169
收藏 人收藏

    評論

    相關推薦

    防止根文件系統破壞,OverlayRootfs 讓你的設備更安全

    多個文件系統層合并成一個單一的視圖,在Linux系統中廣泛應用。使用OverlayRootfs的設備可以很輕松的實現:根文件系統寫保護、恢復出廠設置功能。根
    的頭像 發表于 01-08 16:33 ?251次閱讀
    防止根<b class='flag-5'>文件系統</b>破壞,OverlayRootfs 讓你的設備更安全

    Jtti:Linux中虛擬文件系統和容器化的關系

    Linux中,虛擬文件系統(VFS)和容器化技術之間有密切的關系。容器化是指通過使用容器來運行應用程序,而容器本質上是在宿主機上運行的獨立進程,它們通常共享宿主機的操作系統內核和部分文件系統
    的頭像 發表于 11-27 15:38 ?192次閱讀

    Linux文件系統掛載過程

    Linux文件系統(rootfs)是Linux系統中所有其他文件系統和目錄的起點,它是內核啟動時掛載
    的頭像 發表于 10-05 16:50 ?517次閱讀

    如何構建Linux文件系統

    構建Linux文件系統是一個涉及多個步驟和概念的過程,它對于Linux系統的啟動和運行至關重要。
    的頭像 發表于 10-05 16:47 ?352次閱讀

    rtthread支持nandflash掛載fatfs文件系統嗎?

    rtthread支持nandflash掛載fatfs文件系統
    發表于 09-27 09:45

    想提高開發效率,不要忘記文件系統

    ?同學們都知道,開發過程中文件系統的重要性,同樣的,4G-Cat.1模組的文件系統也非常重要,它通常與數據傳輸速度、存儲效率,以及數據安全性等有非常重要的關系,在應用開發中也非常重要。
    的頭像 發表于 09-21 08:18 ?301次閱讀
    想提高<b class='flag-5'>開發</b>效率,不要忘記<b class='flag-5'>文件系統</b>

    如何更改Linux文件系統終端顯示顏色

    自己制作的簡單 Linux 文件系統,你會發現終端顯示為黑白色,很不好看
    的頭像 發表于 08-12 17:29 ?708次閱讀
    如何更改<b class='flag-5'>Linux</b><b class='flag-5'>文件系統</b>終端顯示顏色

    如何修改buildroot和debian文件系統

    本文檔主要介紹在沒有編譯環境的情況下,如何修改buildroot和debian文件系統方法,如在buildroot文件系統中添加文件、修改目錄等文件操作,在debian
    的頭像 發表于 07-22 17:46 ?545次閱讀
    如何修改buildroot和debian<b class='flag-5'>文件系統</b>

    Linux高級文件系統管理詳解

    階的文件系統就得要學習,本章我們會介紹磁盤陣列 (RAID),及邏輯卷軸文件系統 (LVM),這些工具都可以幫助你管理與維護使用者可用的磁盤容量.
    的頭像 發表于 07-16 16:31 ?433次閱讀

    linux--sysfs文件系統

    sysfs文件系統 sysfs,全稱為System Filesystem,是一個由Linux內核實現的虛擬文件系統。它扮演著一個橋梁的角色,將內核中的設備和驅動程序信息以
    的頭像 發表于 07-08 11:37 ?1005次閱讀
    <b class='flag-5'>linux</b>--sysfs<b class='flag-5'>文件系統</b>

    Linux添加磁盤創建分區、掛載

    Linux添加磁盤創建分區、掛載
    發表于 04-20 17:49 ?557次閱讀
    <b class='flag-5'>Linux</b>添加磁盤創建分區、<b class='flag-5'>掛載</b>

    STM32F412使用SD卡,SDIO,FATFS系統,SD卡掛載文件系統失敗的原因?

    求助,STM32F412RET6 使用SD卡,使用SDIO接口,FATFS系統,SD卡掛載文件系統失敗。返回錯誤代碼3: 網上查到信息 \"FR_NOT_READY:物理驅動沒有工作
    發表于 04-11 07:15

    STM32H750 FATFS文件系統掛載USB驅動,USB驅動枚舉過程一直處于ready狀態是為什么?

    就是FATFS文件系統掛載USB驅動,讀寫U盤,我一直不成功USB驅動枚舉過程一直處于ready 狀態,文件系統
    發表于 03-27 06:52

    STM32L552VET6配置SDMMCH和文件系統,加載文件系統掛載存儲卡會返回FR_NOT_READY如何解決?

    STM32L552VET6配置SDMMCH和文件系統,不加載文件系統可以正常操作存儲卡,但是加載文件系統掛載存儲卡返回FR_NOT_READY,該如何解決。
    發表于 03-08 07:30

    Linux系統如何擴展文件系統

    當數據盤沒有創建分區,只在設備上創建了文件系統?;蛘吒袷交擞脖P,就直接mount上系統使用。
    的頭像 發表于 02-21 09:53 ?882次閱讀
    主站蜘蛛池模板: 国产黄色高清视频 | 成年视频xxxxx免费播放软件 | 女性一级全黄生活片在线播放 | 国产午夜免费一区二区三区 | 欧美日韩一区视频 | 中文字幕第8页 | 久久中文字幕一区二区 | 18视频免费网址在线观看 | 日本加勒比在线视频 | 天天操天天摸天天碰 | 99婷婷| 午夜性视频播放免费视频 | 四虎永久免费观看 | 久久福利影视 | 欧美专区一区二区三区 | 青草久草视频 | 久久99精品久久久久久牛牛影视 | 激情五月激情综合 | 97人人看| 日本aaaaa毛片在线视频 | 日韩中文字幕第一页 | 狠狠色噜噜狠狠狠狠狠色综合久久 | 女人牲交一级毛片 | 在线观看视频你懂得 | 日本特黄特色免费大片 | 深爱激情婷婷 | 456成人免费高清视频 | 亚洲福利视频一区 | 色老头成人免费综合视频 | 一区二区三区在线免费 | 亚洲三级小视频 | 亚洲伊人99综合网 | 日本高清免费一本视频在线观看 | 亚洲一级影院 | 亚洲欧美4444kkkk | 久久精品免费观看久久 | 色老头成人免费综合视频 | 99久久精品99999久久 | 欧亚色视频 | 手机看片1024在线 | 嫩草影院国产 |