本帖最后由 mayiqun720 于 2016-9-20 16:16 编辑
MIZ701截止到8月10号左右只完成了hello world、memory test、dram test、lwip server几个例子。试用过程中,遇到了几个痛苦的问题,跟大家分享。
遇到的第一个问题:找不到ARM。上网搜了下,找到个用zedboard板子的,他是没插串口线。。。好吧,我怀疑是拨码开关(启动方式那里)有问题。因为家里装的是win10系统,vivado2016.1,按照视频说的断电,重启软件都弄不好。咋办?今天在公司解决了。确实和拨码开关有关系,把拨码开关拨到默认的反方向,可以识别了!是不是激动人心? 我去搜了一下解释:ZYNQ 7000启动模式由MIO[5-2]来决定,选择JTAG启动时,MIO[5-3]必须都是0,而MIO2,决定了JTAG 的Cacade和 Independent模式。 我们先说明如何启用JTAG,关于JTAG 的Cascade mode和Independent mode的区别,要知道ZYNQ 7000 有两个调试相关的端口,分别是DAP和TAP。 所以呢,TAP是属于PL端的;DAP是属于PS端的 我们开发板提供的JTAG端口是接在PL_JTAG这个端口上,如果你需要在这个端口上访问PS端的DAP,则必须使用Cascade mode。 经过试验,用sd卡启动模式,打印会乱码,但是可以识别到arm。默认的拨码开关,对应的启动模式啥也不是,大家注意。 2 遇到的第二个问题:vivado编译停滞 在办公电脑装了2016.1,不编译?可是愁死人。然后重装了一次,还是不行?咋整,换2015.4?还是不好使,无奈下,重装系统,终于搞定!谁能告诉我为啥不行?这种情况估计是系统组件收到破坏导致的,毕竟我装了很多专业软件,都是破解的,没钱买正版,也说不清楚为啥vivado出现这个问题。 3 遇到了诡异的,bit下进去了,流水灯跑不起来。后来经指点,sdk必须运行起来,pl才能工作!另外,板子上标的,丝印AD0对应原理图的LED_AD0,以此类推。估计是丝印放不开,简写了,这里注意一下。是因为Miz701 PL端没有时钟,需要PS工作起来才有时钟。 4. 1.流水灯跑起来了,串口不打印。经人指点,把sdk放arm缓存里面运行而非DDR,打印乱码,终于进了一步。我怀疑内存有问题,毕竟原理图后缀和可选列表里面的不对应,一个是MT41J256M16HA 125:E,一个是MT41J256M16 RE125。这是同一种内存颗粒吗?查阅镁光官网,发现除了电压不一样其他都一样,询问官方,解释是原理图内存颗粒不好买。 今天拿到了汤工给的测试工程,然后发现,ps的时钟是50M而非33.3M,看一下原理图33M没错啊,板子上焊接的确实是50M。建议以后收到板子先将实物和原理图对一下。 5. Memory test不跑了。汤工说,运行memory test换arm 1缓存试试,试了下果然可以。默认是在dram里面跑,为啥不行?Dram test同理,需要放在arm缓存里面跑。这也是小白郁闷的地方啊!这个估计和系统运行内存被破坏了有关系,开始段被占用。 6. 以太网测试,哎呀,跑不起?下载bit的时候网口灯亮了,下完,灭了?检查原理图,果然,PL部分需要搞个arm的phy reset。。。。。。开始我以为arm管脚接管了所有工作呢。分配后,果然可以了。。。
|