新手上路
- 积分
- 30
- 金钱
- 30
- 注册时间
- 2020-11-25
- 在线时间
- 4 小时
|
本帖最后由 hellotxdpj 于 2021-8-6 15:52 编辑
前言:上次观看达尔闻直播,有幸得奖了,正是I.MX6ULL EMMC款开发板,今天心血来潮特意来写第一个程序,要用起来不能辜负原子哥,达尔闻,zzk的辛勤付出
按着教程一步步安装好开发环境,由于本人虚拟机跑不动,遂把VS Code 安装在Windows下,然后通过SSH访问虚拟机Ubuntu,这是看zzk视频时弹幕有个老哥说的,行就这么干
以下是记录遇到的问题和尝试解决的办法
1. 查看SD卡是哪个盘符,可以直接根据容量大下,判断是哪个盘符
$ sudo fdisk -l
Disk /dev/sdc: 1.9 GiB, 2013265920 bytes, 3932160 sector
Device Boot Start End Sectors Size Id Type
/dev/sdc1 2048 3932159 3930112 1.9G e W95 FAT16 (LBA)
可知是 /dev/sdc : 1.9 GiB这个盘符,Tips: e W95 FAT16 格式是windows下默认格式化后的格式
2. 烧写SD卡
$ ./imxdownload leds.bin /dev/sdc
SD卡插到开发板点灯,咦!!!居然不亮,难道代码有问题不可能啊,就几行代码。查看反汇编也没有什么猫腻,于是烧写出厂裸机led.bin也是不亮,初步怀疑是拨码开关的问题(这板子不至于这么坑吧,虽然是白嫖的)其次怀疑是SD卡的问题,暂时没有万用表测量拨码开关是否导通,那就尝试先win下用SDFormatter格式化SD卡,几方折腾也是不行,没办法就尝试在linux下删除SD卡分区,重分区试试看
3. 在linux下SD卡分区
3.1 先卸载sdc1否则后面删除分区时不让保存
$ sudo umount /dev/sdc1
3.2 使用fdisk命令重新分区
$ sudo fdisk /dev/sdc
Command (m for help): m //输入m查看帮助
Command (m for help): d //输入d删除分区
Selected partition 1 //是否删除分区1,因为我们只有一个sdc1分区,直接回车确定
Partition 1 has been deleted. //分区1已经删除
Command (m for help): n //输入n创建新分区
Partition type
p primary (0 primary, 0 extended, 4 free)
e extended (container for logical partitions)
Select (default p): p //输入p创建主分区
Partition number (1-4, default 1): //是否创建1个分区,回车确定
First sector (2048-3932159, default 2048): //从2048开始分,回车确定
Last sector, +sectors or +size{K,M,G,T,P} (2048-3932159, default 3932159): //从3932159结束,回车确定
Created a new partition 1 of type 'e W95' and of size 1.9 GiB. //分区成功
3.3 修改分区格式类型
Command (m for help): t //输入t
Selected partition 1
Partition type (type L to list all types): L //输入 L 查看所有分区内型 83 号才是我们需要的类型
0 Empty 24 NEC DOS 81 Minix / old Lin bf Solaris
1 FAT12 27 Hidden NTFS Win 82 Linux swap / So c1 DRDOS/sec (FAT-
2 XENIX root 39 Plan 9 83 Linux c4 DRDOS/sec (FAT- //第83是linux格式
Partition type (type L to list all types): 83 //输入83回车
Changed type of partition 'e W95' to 'Linux'. //由 W95 FAT 16 更改为linux格式
Command (m for help): p //输入p查看一下是否分区成功
Device Boot Start End Sectors Size Id Type
/dev/sdc1 2048 3932159 3930112 1.9G 83 Linux //1个sdc1成功,1.9G 83 Linux格式
Command (m for help): w //输入w保存分区
The partition table has been altered.
Calling ioctl() to re-read partition table.
Syncing disks.
4. 重新识别一下SD卡
$ sudo partprobe
$ sudo fdisk -l //查看默认盘符
Disk /dev/sdc: 1.9 GiB, 2013265920 bytes, 3932160 sectors
Device Boot Start End Sectors Size Id Type
/dev/sdc1 2048 3932159 3930112 1.9G 83 Linux //分区重新识别
5. 再次烧写裸机leds.bin看,就能点亮第一个汇编代码led灯了
$ ./imxdownload leds.bin /dev/sdc
完美!撒花哈哈^_^!
总结:原来是SD卡的问题,错怪了6U开发板,对不起,在这里记录一下这个小小的坑,希望后面一帆风顺,加油ヾ(◍°∇°◍)ノ゙。
|
|