小标
2018-05-29
来源 :
阅读 6713
评论 0
摘要:在Flash基础入门中,本文主要演示zynq 7000下对Qspi 的读写操作,以及读取8字节唯一ID, 可以用于简单加密。希望对大家学习Flash基础入门有所帮助。
在Flash基础入门中,本文主要演示zynq 7000下对Qspi 的读写操作,以及读取8字节唯一ID, 可以用于简单加密。希望对大家学习Flash基础入门有所帮助。
我在使用altera 的时候,写了一篇读写flash 及其ID的文章。
在我转入zynq 7000的时候,自然也要有读写QSPI FLASH, 以及读取其ID。
本文分为四部分:硬件设计,软件设计,测试验证,期待
本文的前提条件是读者会helloworld 实验,也就是会zynq 7000的SDK开发过程,如果不会,那先去看我的zynq 7000下的helloworld 实验,或者开发板提供的helloworld 实验教程。
我实验平台是黑金的核心板AC7010, 其板上的QSPI芯片是W25Q256FV
工程下载链接://pan.baidu.com/s/1qYxAnFI 密码:p2c6
单一源代码下载链接 //pan.baidu.com/s/1dFcsf3F
1 硬件设计
硬件设计基本和helloworld 一样,不同的是要选择QSPI, 否则怎么做实验呢。还有工程名字取为qspi。
在zynq配置的peripheral I/O Pins 里选择Quad SPI Flash, 如图:

在zynq配置的MIO configuration 里选择Quad SPI Flash的每个脚为 fast, 如图:

出此以外,都和hello world 实验的硬件设计一样。
2: 软件设计
在SDK里 新建工程,取名为qspi_t , 在Next 里可以选择hello world 或者empty project。下载我提供的xqspips_flash_polled_example.c 文件, 放入.src ,就是hellowrld.c 的地方。 删除helloworld.c 。
为什么取这样一个名字呢? 这是Xilinx提供的样例程序,你可以在你的xilinx 目录下搜索到这个文件。我提供的程序是在其上修改得到的。
FlashWrite, FlashRead, FlashErase, FlashReadID 都是样例程序里包含的。我做的工作只是修改了main函数,还有仿照FlashReadID, 编写了一个FlashReadUID函数。
FlashWrite, 写Flash, 其参数是QSPI驱动指针, FLash写的起始地址, 写入字节数, 写命令
FlashRead, 读Flash, 其参数是QSPI驱动指针, FLash读的起始地址, 读取字节数, 读命令
FlashWrite, 擦出Flash, 其参数是QSPI驱动指针, FLash擦除起始地址, 擦除字节数。
写命令其实只有一个WRITE_CMD, 但读命令有4个选择:READ_CMD, FAST_READ_CMD, DUAL_READ_CMD, QUAD_READ_CMD
FlashReadID 就是读取JEDEC ID
FlashReadUID 是我仿照上面函数写的, 我查看了W25Q256FV的手册,读取唯一ID的cmd 是0x4B, 我不确定其他芯片是否一样,你需要自己查看。
主程序的流程是:基本初始化,获取Flash 的驱动指针,给WriteBuffer 数组赋值,就是打算 写什么东西进去,调用2个id 读取, 擦除,读取,显示内容,写入, 读取,显示内容,调用2个id 读取并显示。
3:程序运行
以下是程序运行在串口监视终端上的显示内容

4 期待
按资料介绍,唯一id 每个芯片都是不一样的,可不可以把你 的id 告诉我,看看是不是都不一样。
如果这样的话,我们就可以用这个id 加密,就是用一个算法,比如des,des3,得到一个结果,而这个结果只有知道算法的人才知道。把这个结果填入一个地方,那就是程序员认可了。这样如果简单复制程序,那就不行的,防止盗版。
其实xilinx 也有一套加密的算法,估计他那更科学。我还没有学会,知道了和大家分享。
告诉我id 的方法可以是留言,大家都可以看到,或者qq 等其他方式。
本文由职坐标整理并发布,希望对同学们有所帮助。了解更多详情请关注职坐标常用软件Flash频道!
喜欢 | 0
不喜欢 | 0
您输入的评论内容中包含违禁敏感词
我知道了

请输入正确的手机号码
请输入正确的验证码
您今天的短信下发次数太多了,明天再试试吧!
我们会在第一时间安排职业规划师联系您!
您也可以联系我们的职业规划师咨询:
版权所有 职坐标-一站式AI+学习就业服务平台 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
沪公网安备 31011502005948号