韦东山嵌入式Linux学习笔记-3-上手玩开发板

本笔记默认你已经初步掌握了stm32单片机的知识。

任何开发板的最小系统;


除此之外,还可能有电源LED,用户LED,复位RST按键等.

使用EOP通过JTAG口烧写板子

安装EOP驱动

插上开发板,安装Easy-OPenJtag的驱动,去开发板资料->烧写工具->裸机->eop&op->eop_op调试工具目录下手动搜索安装驱动.

如果没办法安装, 你需要百度搜索"windows 10 禁用驱动强制签名".

然后安装01.OpenOCD with GUI setup.exe,在Windows中的CMD命令行敲入oflash来验证是否安装成功,如果没有找到,则需要手动将oflash.exe所在路径添加到PATH环境变量;

这样就可以烧写所有的.bin程序:

烧写到哪里呢?

u-boot.bin 可以烧写到NAND/NOR FLASH;
其他裸板程序如led.bin必须烧写到NAND FLASH;

板子上有一个开关,可以实现启动位置的切换;

烧写裸板程序leds.bin查看流水灯

在windows 10的CMD命令行中,输入以下:

  • oflash leds.binleds.bin烧写到板子上;
  • 0选择OpenJTAG;
  • 1选择S3C2440;
  • 0选择Nand Flash Prog;
  • 0确定烧写Nand Flash;
  • 0烧写到Nand Flash的第0个块(对应的Nand Flash地址为0);
  • 烧写完成后,把开关切换到Nand启动,把EOP线拔掉,按红色按钮断电后重新上电.

烧写裸板程序lcd_3.5_4.3.bin查看LCD程序

在windows 10的CMD命令行中,输入以下:

  • oflash lcd_3.5_4.3.binlcd_3.5_4.3.bin烧写到板子上;
  • 0选择OpenJTAG;
  • 1选择S3C2440;
  • 0选择Nand Flash Prog;
  • 0确定烧写Nand Flash;
  • 0烧写到Nand Flash的第0个块(对应的Nand Flash地址为0);
  • 烧写完成后,接上串口线,把开关切换到Nand启动,把EOP线拔掉,按红色按钮断电后重新上电.
  • 打开串口软件MobaXterm, 打开Prolific对应的串口,按空格开始测试程序;

烧写裸板程序uboot.bin查看LCD程序

在windows 10的CMD命令行中,输入以下:

  • oflash uboot.binuboot.bin烧写到板子上;
  • 0选择OpenJTAG;
  • 1选择S3C2440;
  • 0选择Nor Flash Prog;
  • 0确定烧写Nor Flash;
  • 0烧写到Nor Flash的第0个块(对应的Nor Flash地址为0);
  • 烧写完成后,接上串口线,把开关切换到Nor启动,把EOP线拔掉,按红色按钮断电后重新上电.
  • 打开串口软件MobaXterm, 打开Prolific对应的串口,按空格开始测试uboot命令;

使用uboot通过USB下载烧写较大的bin文件

  1. 使用uboot烧写Nor Flash:
    • 板子接上EOP, EOP连接电脑;
    • 开发板上电;
    • 打开CMD, 运行oflash u-boot.bin以烧写u-boot.bin,选择烧写Nor Flash;
  2. 烧写bin文件到Nand Flash:
    • 断电,设置Nor启动,连接串口,打开串口软件;
    • 板子上电后马上在串口软件中敲空格,进入Uboot,防止在倒计时结束后进入Linux系统;
    • 将板子上的USB device端口和PC连接,然后找到烧写工具->uboot 内核 文件系统->dnw->windows版,双击zadig-2.e.exe,选择SEC S3C2410X Test B/D,然后选择安装libusb-win32(v1.2.6.0),点击Install Driver.
    • 在串口工具中,输入n,选择Download u-boot to Nand Flash;
    • 在上面的目录中,双击运行dnw_100ask.exe,点击USB Port->transmit,选择leds.bin;
  3. 断电,使用Nand启动,重新上电,板子开始运行裸板bin文件

恢复出厂系统

  1. Linux启动时: BootLoader->启动Linux内核->启动APP.
  2. 要重新烧写出厂系统,需要:
    • 烧写u-boot到Nand Flash或Nor Flash:使用op/eop烧写,烧写完成后使用Nand/Nor启动;
    • 烧写Kernel到NandFlash:u-boot的串口菜单按k选择Download Linux kernel uImage, 使用dnw.exe烧写bin->linux->uImage->uImage_4.3文件;
    • 烧写根文件系统:u-boot的串口菜单按y选择Download root_yaffs image, 使用dnw.exe烧写bin->文件系统->fs_qtopia.yaffs2文件;
    • (可选)删除params,以使用默认的params: 先按q退出u-boot的串口菜单(按menu可重新进入),输入mtd查看分区,输入nand erase params擦除分区,重新上电;
    • (可选)如果板子上的linux系统点击不准确,在串口工具里执行rm /etc/pointercal删除指针文件,然后执行reboot重启Linux嵌入式系统.

使用网络对开发板进行烧写

配置网络,确保开发板上(串口工具)可以ping通PC和虚拟机

  • 确定开发PC使用哪个网卡(A)来连接开发板以太网端口;
  • VMWare选择网卡(A)作为桥接网卡;
  • 设置三者的IP处于同一网段: Windows 网卡A的IP; VMWare里Ubuntu的IP; 开发板的u-boot的IP: 在串口工具里print打印当前ipaddr信息; set ipaddr 196.128.1.***,save即可;开发板的Linux的IP设置方法,

出厂的u-boot可能没有默认打开网络连接功能,需要烧写网络功能默认打开的u-boot,查看uboot是否打开了网络功能需要在串口工具里看到U-Boot 1.1.x enable Ethernet alltime...字样.

烧写

  • set serverip [PC's IP],save;
  • 打开资料里的tftpd32.exe,选择服务器,即PC的ip;选择要烧写的bin所在的目录;
  • tftp 30000000 uImage下载uImage以烧写kernel.
posted @ 2019-11-27 10:04  云远·笨小孩  阅读(408)  评论(0编辑  收藏  举报