CMT2300A-FPGA控制程序

又来翻译C的程序了,哈哈
首先来看一下芯片
CMT2300A是一款数字模拟一体化收发机产品。该产品采用26MHz的晶体提供PLL的参考频率和数字时钟,同时支持OOK和(G)FSK的调制解调模式,并支持Direct和Packet两种数据处理模式。
芯片提供了SPI通讯口,外部的MCU/FPGA可以通过访问寄存器的方式来对芯片的各种功能进行配置,控制主控状态机,并访问FIFO。

SPI 接口时序
芯片是通过4-线的SPI 口与外部进行通信的。低有效的CSB是用于访问寄存器的片选信号。低有效的FCSB
是用于访问FIFO 的片选信号。两者不能同时设为低。SCL 是串口时钟,最快速度可以到5MHz。无论对于芯
片本身,还是外部的MCU,都是在SCLK 的下降沿送出数据,在上升沿采集数据。SDIO 是一个双向的脚,用
于输入和输出数据。地址和数据部分都是从MSB 开始传送。
这些信息都可以在《AN142-CMT2300A 快速上手指南_CN_V0.9.pdf》找到资料包CMT2300A中文文档
配合stm32实例程序CMT2300A-stm32例程服用效果更佳。

需要注意的几个点
1、频偏设置需要大于10K,太小的频偏需要更高质量的晶振;
2、软件上的模拟开关(ENABLE_ANTENNA_SWITCH CMT2300A_EnableantenaSwitch(1/0))和硬件上gpio1、gpio2和txant、rxant的连接关系;
3、天线和所选频率是否匹配;
4、收发数据的操作时间间隔,因为是半双工的,计算收发时间的时候记得算上前导和同步码

关于跳频:
按照正常配置流程前面的存储器配置完成后go_sleep生效配置寄存器,然后进入go_standby,再清中断后重新配置0x18、0x19、0x1A、0x1B、0x1C、0x1D、0x1E、0x1F、0x3D、0x3E、0x3F、0x40、0x41、0x42、0x43、0x44、0x27寄存器 后收发流程就可以以新的频率收发数据了。

其实整个控制的的过程就是按照顺序修改寄存器的过程 ,所以把一部分(0x00-0x5F)初始化的寄存器参数存在了ram中方便调用,你要想一个个的写过去其实也是没问题的。
关于这么多寄存器具体都是那些值对应哪些频率和相关射频参数你需要参阅《AN149-CMT2300A 射频参数配置指南_CN_V0.9.pdf》根据RFPDK软件上配置的参数导出后的数据来确定,配置软件RFPDK可以找供应商或者去官网下载。

资源中分为跳频和未跳频版本,跳频就是每次收发完成后可以指定下一次收发的频点设置,不跳频就一直用一个频点收发。

CMT230A-fpga控制程序

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值