CH09 开机自动烧录QSPI
版本信息:
版本
REV2018
时间
05/22/2018
XILINX ZYNQ LINUX篇
基于米联MZ7X系列
电子版自学资料
常州一二三电子科技有限公司
溧阳米联电子科技有限公司
版权所有
米联客学院04QQ群:516869816
米联客学院03QQ群:543731097(半满)
米联客学院02QQ群:86730608(满)
米联客学院01QQ群:34215299(满)
版本 |
时间 |
描述 |
Rev2018 |
2018-05-22 |
采用批处理文件,自动化管理,侧重基础和应用 |
感谢您使用米联客ZYNQ系列开发板,以及配套教程。本教程将对之前编写的《修炼秘籍》部分内容做出改进,并且增加新的课程内容。本教程不仅仅适合用于米联客开发板,而且可以用于其他的ZYNQ开发板。
软件版本:VIVADO2017.4(提供安装好环境的虚拟机)
版权声明:
本手册版权归常州一二三电子科技有限公司/溧阳米联电子科技有限公司所有,并保留一切权利,未经我司书面授权,擅自摘录或者修改本手册部分或者全部内容,我司有权追究其法律责任。
版主大神们都等着大家去提问--电子资源论坛 www.osrc.cn
扫描以下二维码注册论坛:www.osrc.cn
微信公众平台:电子资源论坛
目录
CH09 开机自动烧录QSPI
9.1 概述
我们经常要更新程序,比如更新QSPI的系统,或者更新应用程序。如果我们只要一张TF卡就能解决问题,这就非常方便了。笔者就是从这个需求出发,结合前面的章节内容,来实现这个课程的目标。
9.2 修改S60mount_emmc.sh文件
我们在第五课的时候学习了通过dd指令把TF卡的qspi_image.bin文件烧录到了QSPI FLASH。后来我们又学习了如何开机自动挂载EMMC,和开机自动运行hello world APP程序。所以这节课,我们只是要实现,开机自动挂载SD卡并且自动运行dd指令烧录QSPI。我们假设我们要更新的程序文件名为update_qspi.bin文件。修改后的S60mount_emmc.sh如下。
# # Start mount emmc.... #
case "$1" in start) echo "开始挂载EMMC,创建路径/mnt/emmc" mkdir -p /mnt/emmc mount -t ext2 /dev/mmcblk1p1 /mnt/emmc ret=$? if [ $ret -ne 0 ]; then echo "EMMC正在格式化..." echo -e "n \n p \n 1 \n \n \n w \n" | fdisk /dev/mmcblk1 mkfs.ext2 /dev/mmcblk1p1 mount -t ext2 /dev/mmcblk1p1 /mnt/emmc fi echo "EMMC挂载成功!"
echo "开始挂载tf,创建路径/tmp" mkdir -p /tmp mount /dev/mmcblk0p1 /tmp echo "开挂载成功!"
if [ -f "/tmp/update_qspi.bin" ]; then echo "start update qspi flash ..." dd if=/tmp/update_qspi.bin of=/dev/mtdblock0 echo "update qspi finished!" fi ;; stop) ;; *) echo "Usage: $0 {start|stop}" exit 1 esac
exit $? |
9.3 编译
执行
cd /mnt/workspace/osrc/scripts
Source settings64.sh
Cfg_rootfs.sh
Make_roofts.sh
以上执行完成后,就制作好了ramdisk了。
继续执行
make_qspi_image.sh
make_sdcard_image.sh
插入TF卡,执行
deploy_sdcard_image.sh
然后复制qpsi_image.bin文件到TF卡并且修改名字为update_image.sh
9.4测试结果
插入TF卡,接通USB-232串口到电脑,打开putty软件或者控制台串口,给开发板通电
把模式开关切换到QSPI模式,然后断电重启,可以看到系统从QSPI正确启动了。
CH09 开机自动烧录QSPI的更多相关文章
- 【设计经验】3、ISE中烧录QSPI Flash以及配置mcs文件的加载速度与传输位宽
一.软件与硬件平台 软件平台: 操作系统:Windows 7 64-bit 开发套件:ISE14.7 硬件平台: FPGA型号:XC6SLX45-CSG324 QSPI Flash型号:W25Q128 ...
- Linux开机自动登录(文本模式)
• Linux系统启动登录过程 以RedHat/CentOS为例,Linux系统Level3模式下从启动到登录的整个过程大致如下: 1> 加载BIOS信息:包含了CPU/显卡/内存/硬盘/网卡等 ...
- 在Linux上挂载Windows共享文件夹,如何开机自动挂载(mount)?
按照一般的思路,我们先将文件夹挂载上去,命令如下: mkdir /mnt/share_software mount //192.9.206.43/share_software /mnt/share_s ...
- /etc/fstab 参数详解及如何设置开机自动挂载
某些时候当Linux系统下划分了新的分区后,需要将这些分区设置为开机自动挂载,否则,Linux是无法使用新建的分区的. /etc/fstab 文件负责配置Linux开机时自动挂载的分区. Window ...
- C#.NET Form设置/取消开机自动运行,判断程序是否已经设置成开机自动启动(转载)
#region//开机自动运行 private void CB_Auto_CheckedChanged(object sender, EventArgs e) {//CB_ ...
- WPF 设置程序开机自动运行(+注册表项)
#region 设置程序开机自动运行(+注册表项) RegistryKey rgkRun = Registry.LocalMachine.OpenSubKey("SOFTWARE\\Micr ...
- Android---让你的APK程序开机自动运行(转)
转自: http://blog.sina.com.cn/s/blog_72f6e45701014l6t.html 有些时候,应用需要在开机时就自动运行,例如某个自动从网上更新内容的后台service. ...
- Linux如何开机自动运行自己的脚本
博客分类: LINUX 脚本LinuxCentOSWindowsBash 记录这个事情是上次完成之后,今天要新加一个文件夹,一时之间忘记以前怎么做了,因为有几种方法,起码我知道三种方法,这里 ...
- [转]Ubuntu 12.04开机自动挂载Windows分区
[转]Ubuntu 12.04开机自动挂载Windows分区 http://www.cnblogs.com/A-Song/archive/2013/02/27/2935255.html 系统版本:Ub ...
随机推荐
- Assignment4:闰年判断输入异常时的处理方法
一.问题描述 在输入界面输入年份,界面返回是否为闰年. 判断依据为:输入的数字可以被4整除但不可以被100整除 || 输入的数字可以被400整除 如果输入为数字以外的其他字符,会抛出异常.那么如何防止 ...
- 深度学习面试题26:GoogLeNet(Inception V2)
目录 第一层卷积换为分离卷积 一些层的卷积核的个数发生了变化 多个小卷积核代替大卷积核 一些最大值池化换为了平均值池化 完整代码 参考资料 第一层卷积换为分离卷积 net = slim.separab ...
- Spring IOC的缓存
1.将上一篇的测试代码修改如下 public class SpringTest { public static void main(String[] args) { ClassPathResource ...
- Social GAN: Socially Acceptable Trajectories with Generative Adversarial Networks
Social GAN: Socially Acceptable Trajectories with Generative Adversarial Networks 2019-06-01 09:52:4 ...
- 【Json】Json分词器
package com.hy; import java.io.BufferedReader; import java.io.FileInputStream; import java.io.FileNo ...
- https://zhuanlan.zhihu.com/p/32553477
科普:QUIC协议原理分析
- flutter中的网络请求和下拉刷新上拉加载,toast的案例
添加依赖 pull_to_refresh: ^1.5.6 dio: ^2.1.0 fluttertoast: ^3.0.1 DioUtil import 'package:dio/dio.dart'; ...
- RabbitMQ 入门教程(PHP版) 第一部分:Hello World
abbitMQ是一个消息代理.它的核心原理非常简单:接收和发送消息.你可以把它想像成一个邮局:你把信件放入邮箱,邮递员就会把信件投递到你的收件人处.在这个比喻中,RabbitMQ是一个邮箱.邮局.邮递 ...
- ubuntu 18.04使用sysbench测试MySQL性能
首先下载安装sysbench: sudo apt-get install sysbench -y 查看一下sysbench版本是多少: zifeiy@zifeiy-S1-Series:~$ sysbe ...
- SQL Delta实用案例介绍,很好的东西,帮了我不少忙
SQL Delta实用案例介绍 概述 本篇文章主要介绍SQL DELTA的简单使用.为了能够更加明了的说明其功能,本文将通过实际项目中的案例加以介绍. 主要容 SQL DELTA 简介 ...