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. 函数 y=x^x的分析

    关于函数 y=xx的分析: 由图像得,y在负无穷大到0图像处处不连续,故y的定义域为(0,正无穷大): 故该函数不就是y=e^(lnxx)吗? 1.定义域:我们变形一下,y=e^(xlnx),显然是0 ...

  2. 不会python?那就换一种姿势爬虫!Java爬虫技术总结

    -本博客为原创内容,转载需注明本人- 前几天有个师妹将要毕业,需要准备毕业论文,但是论文调研需要数据资料,上知网一查,十几万条数据!指导老师让她手动copy收集,十几万的数据手动copy要浪费多少时间 ...

  3. Spring框架学习04——复杂类型的属性注入

    代码示例如下: 创建BeanClass实体类 public class BeanClass { private String[] arrs;//数组类型 private List<String& ...

  4. luogu P2934 [USACO09JAN]安全出行Safe Travel

    题目链接 luogu P2934 [USACO09JAN]安全出行Safe Travel 题解 对于不在最短路树上的边(x, y) 1 | | t / \ / \ x-----y 考虑这样一种形态的图 ...

  5. BZOJ.1901.Dynamic Rankings(线段树套平衡树 Splay)

    题目链接or Here 题意:n个数,有两个操作:1.修改某个数为v:2.询问一段区间第k小的数 如果没有修改,则可以用线段树,每个节点P[a,b]存储大小为b-a+1的数组,代表其中的数 同时,这个 ...

  6. bzoj 4084 双旋转字符串

    给两个集合A,B,找满足要求的(a,b)的对数,可以计算对于a,哪些b成立. 还有就是字符串hash的使用,感觉平时用字符串hash太少了. /**************************** ...

  7. Codeforces 989E A Trance of Nightfall 矩阵快速幂+DP

    题意:二维平面上右一点集$S$,共$n$个元素,开始位于平面上任意点$P$,$P$不一定属于$S$,每次操作为选一条至少包含$S$中两个元素和当前位置$P$的直线,每条直线选取概率相同,同一直线上每个 ...

  8. only_full_group_by的注意事项

    only_full_group_by的注意事项 使用这个就是使用和oracle一样的group 规则, select的列都要在group中,或者本身是聚合列(SUM,AVG,MAX,MIN) 才行

  9. 静态代理、JDK动态代理和CGLib动态代理之前的区别

    昨天看了一天的代理方面的知识,刚开始看的时候没看出什么花头来,感觉不实用.一大堆的东西,还不如直接new出来,然后调用方法.后来仔细研究了一下AOP(面向切面)的思想,才发现代理的用处实在太大了.现在 ...

  10. 大数据实践:ODI 和 Twitter (二)

    大数据实践:ODI和Twitter(二) 在前面的文章中,我们已经使用flume将数据从twitter抓取到Hive中,现在我们来看看ODI(Oracle Data Integrator)如何在HIV ...