首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

求助关于ne64

求助关于ne64

我现在要用MC9S12NE64的EMAC进行数据的发送和接收的程序编写,但是不知道数据应该怎么进行发送和接收,资料中是说把数据要先送到发送缓冲区,但是不知道如何定义数据和如何将数据送入缓冲区。请问谁有做过类似的工作啊?有程序是最好的。先在这里谢过了!
飞思卡尔网站上有关于NE64的参考设计,可以到NE64的主页中查找。
海纳百川  有容乃大
我在网站上找了很久了,但是就是没有找到参考设计,你能否告诉我具体在什么地方啊?谢谢!
http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=MC9S12NE64GAME&fpsp=1&tab=Design_Tools_Tab
海纳百川  有容乃大
您好,我写的有一段程序实现的功能是把数据送入到发送缓存器,在ne64的BUFCFG寄存器中有发送缓冲区的起始地址和大小,可是我在向资料中显示的地址里写数据的时候写不进去。这个芯片中RAM的起始地址是2000。如果向2000以后的地址写数据时可以写进去的。这是怎么回事啊?谢谢
NE64的RAM在复位后的地址为0x0000~0x1FFF,你必须设置INITRM寄存器才能将它映射到0x2000开始的地址上去。具体操作请看NE64的数据手册。
海纳百川  有容乃大
不是吧,我现在用的RAM就是从2000开始的,而且前面基本上都是寄存器的地址从0000到03FF。这是在它的datasheet中所描述的。而且我定义了一个数组,调试的时候他就是直接把这个数组放在2000以后的。如果按照您说的话,他应该是放在2000之前才对的阿。这是为什么呢?有没有可能是因为是寄存器的级别比RAM的高,所以才写不进去的阿。在BUFCFG寄存器的描述中,缓存器的起始地址是从0000开始的,这让我很迷惑。
请看NE64数据手册《MC9S12NE64V1.pdf》的第50页。
海纳百川  有容乃大
版主你好,上面的问题我现在依然没有解决。我现在要向发送缓冲器中缓存数据,但是数据写不到指定的区域。只能写到2000以后的地址中,这是怎么回事啊?谢谢,真是麻烦您了!
我所说的定区域是指从2000以前的位置。
建议你做一个最简单的project,不做别的任何事情,只是设置缓冲区并置数。试试看。如果还不行,把这个project打包贴出来看看。
海纳百川  有容乃大
好的,我现在就是做的一个很简单的project,没有做什么事情,就是简单的把一帧数据发送出去。这是我第一次编程,不足之处请指正,谢谢!还有您帮我看看像我那样发送数据,可不可以阿。谢谢了。http://bbs.chinaecnet.com/uploadImages/process.rar
这个project试下来的现象是怎样的?
海纳百川  有容乃大
数组中的数据是放到203D-2078的位置,这个应该是他随机给它分配的地址吧。我的指针是指向0400的,但是0400那里没有数据写进去。如果是把指针指向2000后的任意的位置时可以写进去的。比如2100。还有就是开始传输的命令TCMD=0x01,没有任何的作用,在寄存器中也没有看到他所在寄存器的位置有变化。
在project的PE中的CPU的设置中他是把2000设置成RAM的。且size只有2000是可读可写的,是不是跟他有关系啊?所以在2000之前是不能写进去的阿。
返回列表