在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 1921|回复: 2

求助!!串行数据中前导和地址判别问题

[复制链接]
发表于 2007-9-15 17:06:54 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
小弟要用FPGA做一个模块, 大体功能: 在单片机与射频芯片之间要加一块FPGA, 要实现把射频芯片收到的数据包做处理, 数据包里面的格式为:  同步码(16进制的数AAAAAA,一共6个A)+前导(D391)+目的地址(1个字节)+DATA(10个字节), 数据是按位传输的,2400BIT/S, 要先实现同步,再判断前导第一个字节,正确的话判断前导第二个字节,正确的话再判断目的地址,正确的话把剩下的全部数据接收, 然后再按位传给单片机. 怎么做?希望哪位大哥能指点一二,QQ:25493213
ps:单片机与射频芯片是以SPI模式传递数据。除了数据传输线外,还有个数据随路时钟。现在单片机按这个时钟信号来中断处理数据。

[ 本帖最后由 lxd729 于 2007-9-15 17:09 编辑 ]
发表于 2007-9-16 00:02:25 | 显示全部楼层

使用状态机很容易实现

不知道FPGA到底和你的系统怎么接,是处于射频芯片和单片机之间吗?如果是的话,那么就应该是射频芯片传递数据给FPGA,FPGA又和单片机交互,为什么又说“单片机与射频芯片是以SPI模式传递数据。除了数据传输线外,还有个数据随路时钟。现在单片机按这个时钟信号来中断处理数据”呢(这样我以为就是射频芯片直接与单片机相连)?如果仅仅是FPGA做包处理的话,按你的描述,只要使用状态机加计数器就可以描述,可以分为:空闲状态、检测同步码状态、检查前导码状态、检测地址码状态以及接收数据状态,由于是串行接收数据,因此在每个状态中都必须有计数器计数接收的bit,这样单接收的bit数等于该状态对应的bit数目时就判断接收数据是否正确并进行相应处理,时钟可使用射频芯片提供的随路时钟。
 楼主| 发表于 2007-9-16 09:13:43 | 显示全部楼层

高人大哥,先谢谢了,

你说的对啊,就是这么个意思,现在是单片机直接以SPI模式与射频芯片连接处理数据包,但单片机需要不停的中断来处理,工作负荷很大,所以要把中断处理数据包的工作用一块FPGA来做,你能加我QQ吗?谢谢啦,刚开始做,动不了手啊.我QQ:25493213,不用验证.
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条


小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-12-23 16:10 , Processed in 0.067537 second(s), 9 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表