iCore4 Demo V1.0程序说明

一、概要

本资料包含5个文件夹:

1、“arm”里是iCore4上arm的程序包,开发环境为KEIL5.17;

2、“fpga”里是iCore4上FPGA的程序包,开发环境为QuartusII13.1;

3、“相关软件”里包含putty终端软件和UDP调试软件;

4、“屏幕截图”为工作时的截图;

5、“驱动”为板载usb转uart的驱动程序,本实验之前需要安装到计算机。

二、测试准备工作

为了运行测试程序,需要做一些准备工作。

1、  通过网线把iCore4与电脑相连,用于测试以太网功能;电脑ip设置为192.168.0.1网段;

2、  把FPGA配置跳线置于PS模式;

3、  电源供电跳线选择为USB UART模式;

4、  通过micro usb转U盘线缆,连接一个U盘到iCore4上,u盘必须为fat32文件系统;也可以把fpga工程下的sram.rbf文件拷贝到u盘里,这样就可以通过u盘配置fpga了;

5、  连接一个TF卡到iCore4卡座上,TF卡必须为fat32或者fat文件系统,然后把fpga工程下的sram.rbf文件拷贝到TF卡里,这样就可以通过TF配置fpga了;

6、  通过micro usb线缆把USB UART端口与计算机相连,并安装好“驱动”目录里的驱动文件,使得板载的USB转UART可以正常工作。

三、开始测试

通过micro usb线把iCore4的USB UART接口与计算机连接好后,计算机会识别到一个串口号。通过putty.exe软件把此串口打开(端口号需要在“设备管理器”里查看),波特率配置为115200,然后键入test并按回车进行测试。测试图片如图所示。

四、测试内容解析

1、电源:紫色字体显示为[POWER  ]为电源测试,可得到iCore1S的5V供电、核心板电流、板载3.3V/1.2V/2.5/的电压,测试成功后会显示[OK];

2、RTC实时时钟:会读出RTC时间和日期,若时间在走则说明功能正确,这里要注意的是时间还不准的(因为没有设定);

3、SDRAM:SDRAM分三次测试,分别向其写入0x5555,0xAAAA及0x0000~0xFFFF,

将32M SDRAM分成32block进行读取校验,校验成功的显示绿色,错误的显示红色。全部校验成功,测试通过。

4、TF卡测试:此测试分为两部分,第一步首先探测TF卡信息并显示,第二步为读写实验,程序会在TF卡上建立一个10k大小的文件,写入并读取校验,测试结果也会显示出来;

5、U盘测试:与TF卡测试类似,若U盘测试成功,则程序会在U盘上建立一个10K大小的文件,写入并读取校验,然后显示测试结果。

6、FPGA  PS配置:程序会尝试通过TF或者U盘里读取sam.rbf文件,并配置FPGA,若TF卡里有此程序,则会配置成功;sram.rbf是通过quartusii软件转换过来的,此文件在fpga文件夹内;

7、总线和SRAM测试:此功能通过stm32 fsmc读写挂载在fpga上的两片sram,测试方法和SDRAM类似,每片sram大小为512K字节,读取校验时分两片校验,校验成功显示绿色,失败显示红色,全部校验成功,测试通过。

8、以太网初始化:确保网线连接,超过超时时间网线未连接初始化会失败,初始成功后,可进行以太网测试。

9、按键测试:在>>提示符下,按下按键会显示按键按下信息;

10、LED测试:ARM和FPGA LED均会三色循环显示;

 五、网络接口测试

  首先设置电脑IP为192.168.0.1,子网掩码255.255.255.0,默认网关192.168.0.1如下图。

  网络接口需要安装自带的UDP测试工具,安装好后“新建连接”,选择UDP协议,并把IP设置成192.168.0.10,目标端口设置为30000,本机端口为30001。点击创建,点击连接,即可通过软件发送数据到iCore4,iCore4接收到数据后会原封不动发向计算机。如图,

六、代码包下载地址

链接:http://pan.baidu.com/s/1qXRGGWk 密码:u8oo

 七、预定链接

【iCore4 双核心板】DEMO V1.0 测试程序发布的更多相关文章

  1. 【iCore1S 双核心板】DEMO V1.0 测试程序发布

    iCore1S Demo V1.0程序说明 一.概要 本资料包含5个文件夹: 1.“ARM”里是iCore1S上ARM的程序包,开发环境为KEIL5.17: 2.“FPGA”里是iCore1S上FPG ...

  2. 【iCore3 双核心板】DEMO 1.0 测试程序发布

    iCore3 Demo V1.0 程序说明 一.概要 本资料包包含5个文件夹: 1.“arm”里是 icore3上 arm的程序包,开发环境为 KEIL 5.17: 2.“fpga”里是 icore3 ...

  3. 【iCore4 双核心板_uC/OS-II】例程十一:内存管理

    一.实验说明: 应用程序在运行中为了某种特殊需要,经常需要临时获得一些内存空间.而作为比较完善的操作系统uC/OS-II,也具有动态分配内存的能力. uC/OS-II对内存进行两级管理:把连续内存分成 ...

  4. 【iCore4 双核心板_uC/OS-II】例程十:信号量集

    一.实验说明: 在实际应用中,任务常常需要与多个事件同步,即要根据多个信号量组合作用的结果来决定任务的运行方式.UCOSII为了实现多个信号量组合的功能定义了一种特殊的数据结构——信号量集. 二.实验 ...

  5. 【iCore4 双核心板_uC/OS-II】例程九:消息队列

    一.实验说明: 前面介绍通过信息传递可以进行任务间的交流,信息也可以直接发送给一个任务,在uC/OS-II中每一个任务在它们内部都有一个消息队列,也即任务消息队列,用户可以直接给一个任务发送消息,不需 ...

  6. 【iCore4 双核心板_uC/OS-II】例程八:消息邮箱

    一.实验说明: 消息邮箱是uC/OS-II中的另一种通信机制,可以使一个任务或者中断服务子程序向另一个任务发送一个指针型的变量.通常该指针指向一个包含了“消息”的特定数据结构.   二.实验截图:   ...

  7. 【iCore4 双核心板_uC/OS-II】例程七:互斥信号量

    一.实验说明: 在介绍互斥信号量前,我们先简单地描述一下什么是优先级反转.使用实时内核心,优先级反转问题是实时系统中出现得最多的问题.假设任务H优先级高于任务M,任务M优先级高于任务L.任务H和任务M ...

  8. 【iCore4 双核心板_uC/OS-II】例程六:信号量——任务同步

    一.实验说明: 信号量是一个多任务内核提出的一个协议机构,上一个实验中我们介绍了信号量访问共享资源 的功能,其实信号量最初是用来控制访问共享资源的,它还可以用来同步一个中断服务函数和一个任 务,或者同 ...

  9. 【iCore4 双核心板_uC/OS-II】例程五:信号量——共享资源

    一.实验说明: 信号量是操作系统中的一类事件,是实现任务间通信的一个中间环节.当系统中的多个任务 在运行时,经常需要互相无冲突地访问同一个资源,或者需要互相支持的依赖,甚至有时还要互 相加以必要的限制 ...

随机推荐

  1. java注解的概念理解

    1. 注解(标注)概念:从字面意思理解是对被标注的对象(类,接口,枚举,注解类,方法,参数)的一个标记,有这个标记有什么用呢?就像学习中“划重点”的方式一样,被标记的对象肯定是特殊需要特别关照的对象, ...

  2. XHR对象

    一.XMLHttpRequest对象 var xhr = new XMLHttpRequest(), i = 0; for(var key in xhr){ if(xhr.hasOwnProperty ...

  3. 线程安全地获取插入mysql的条目的id

    在往mysql中插入条目时有时会希望能得到该插入条目的id,一种方式是再执行一个select语句条件为max(id)来获取,但这种形式在并发环境里并不是线程安全的,因为在你完成插入到再执行一个sele ...

  4. POJ.3648.Wedding(2-SAT)

    题目链接 题意看这吧..https://www.cnblogs.com/wenruo/p/5885948.html \(Solution\) 每对夫妇只能有一个坐在新娘这一边,这正符合2-SAT初始状 ...

  5. [CF521D]Shop

    [CF521D]Shop 题目大意: 你有一个长度为\(k(k\le10^5)\)的数列\(A_{1\sim k}\),有\(n(n\le10^5)\)种操作,操作包含以下\(3\)种: 将\(A_x ...

  6. angular.js--------demo1

    <!doctype html><html ng-app> <head> <meta charset="utf-8"> </he ...

  7. PHP Zend Email验证函数MailVal()函数的使用

    PHP Email验证 <?php /************************************************************************ *此功能检 ...

  8. Android的onLayout、layout方法讲解

    onLayout方法是ViewGroup中子View的布局方法,用于放置子View的位置.放置子View很简单,只需在重写onLayout方法,然后获取子View的实例,调用子View的layout方 ...

  9. 体验jQuery和AngularJS的不同点以及AngularJS的迷人之处

    本篇通过jQuery和Angular两种方式来实现同一个实例,从而体验两者的不同点以及AngularJS的迷人之处. 首先当然需要引用jquery.js和angular.js文件. ■ 使用jQuer ...

  10. zeromq学习笔记1——centos下安装 zeromq-4.1.2

    1.前言 MQ(message queue)是消息队列的简称,可在多个线程.内核和主机盒之间弹性伸缩.ZMQ的明确目标是“成为标准网络协议栈的一部分,之后进入Linux内核”.现在还未看到它们的成功. ...