没有合适的资源?快使用搜索试试~ 我知道了~
首页AN135 CMT2119-2219ASampleCodeIntro-CN
资源详情
资源评论
资源推荐
AN135
Rev 0.8 | Page 1/40
www.cmostek.com
1. 概要
本文的目的是对用外部 MCU 控制 CMT2119A 及 CMT2219A 的方法及示例代码进行简要说明。
2. 配置连接图
为了实现外部 MCU 控制 CMT2119A 及 CMT2219A,用户需要按照下图的方法用 MCU 的 IO 来
分别控制 CMT2119A 的 DATA 和 CLK 管脚和 CMT2219A 的 CSB, SCL 和 SDA 管脚,如图所示:
DATA
CLK IO1
IO2
CMT2119A MCU
图 1. CMT2119A 与 MCU 的连接图
SDA
SCL IO3
IO4
CMT2219A MCU
CSB IO2
FCSB IO1
IO5
IO6
IO7
IO8
GPO0
GPO1
GPO2
GPO3
图 2. CMT2219A 与 MCU 的连接图
Copyright © By CMOSTEK
AN135
CMT2119/2219A 示例代码说明
AN135
Rev 0.8 | Page 2/40
www.cmostek.com
3. CMT2119A 示例代码说明
3.1 2 线接口
2 线接口(Two-Wire Interface, 简称 TWI)包括时钟接口 CLK 和双向数据接口 DATA。一个完
整的 W/R 过程有 16 个时钟周期。前 8 个周期, DATA 是输入口;后 8 个周期,如果是写过程, DATA
是输入口;如果是读过程, DATA 是输出口。W/R 时序如下图。
CLK
DATA
W/R A51
A4 A2 A1A3 A0 D6 D5D7 D4 D2 D1D3 D0
X
X
图 3. TWI 时序图
注意:
1. 时钟应该运行在 1MHz 以下,上升沿发送数据,下降沿采样。
2. 前 8 个周期为读写控制和地址位 A[5:0]. 其中 W/R 为 1 的时候表示读,为 0 的时候表示写。
3. 写操作中 D[7:0]为待写入的数据,读操作中 D[7:0]为从芯片读出的数据。
4. DATA 同时被复用为数据发射的 DATA 脚。
5. TWI_RST (发送 32 个连续 0 和 0x8D00,总共 48 个时钟的数据,如下图所示)可用于复位 TWI
电路,以便在遇到未知错误的时候恢复串口功能。其中下图的命令适用于上升沿启动发射(默
认设置)。
CLK
32 clock cycles
…
…
16 clock cycles
DATA
0x8D000 0
图 4. TWI_RST 命令
6. SOFT_RST(发送 0xBD01, 总共 16 个时钟的数据,如下图所示)可用于复位除了 TWI 电路以
外的芯片其他所有电路,整个复位时间约需 1 ms。
DATA
CLK
16 clock cycles
0xBD01 (SOFT_RST)
…
0
图 5. SOFT_RST 命令
AN135
Rev 0.8 | Page 3/40
www.cmostek.com
7. 方便起见,本文用 TWI_RDREG 表示 TWI 读操作,用 TWI_WRREG 表示 TWI 写操作。
a) TWI_RDREG(XX, YY)为发送 8b’ 11xx xxxx 读出 yyyy yyyy,其中 xx xxxx 为待读地址,
范围 0x00 到 0x3F; yyyy yyyy 为读出值,范围为 0x00 到 0xFF。
b) TWI_WRREG(XX, ZZ)为发送 16’ 10xx xxxx zzzz zzzz,其中例如 xx xxxx 为待写地址,范
围 0x00 到 0x3F; zzzz zzzz 为待写值,范围为 0x00 到 0xFF。
c) 例如:
i. 从地址 0x01 读取数据表示为 TWI_RDREG(0x1, DAT), 其中 DAT 表示从地址 0x1
读出的数据。
ii. 对地址 0x2 写入数据 0xAA 表示为 TWI_WRREG(0x2, 0xAA)。
iii. SOFT_RST 可表示为 TWI_WRREG(0x3D, 0x01)。
8. DATA 是一个双向数据口,在读操作的后 8 个周期会被切换为输出口。为了避免潜在的电平冲
突,当 DATA 切换为输出口的时候,主控(Master)相应的驱动端口要及时切换为输入口。
3.2 CMT2119A 配置流程
用户按照以下流程对 CMT2119A 进行配置。
TWI_RST SOFT_RST TWI_WRREG(0x2, 0x78)
(1) - TWI_WRREG(0x2F, 0x80)
(2) - TWI_WRREG(0x35, 0xCA)
(3) - TWI_WRREG(0x36, 0xEB)
(4) - TWI_WRREG(0x37, 0x37)
(5) - TWI_WRREG(0x38, 0x82)
(1) - TWI_WRREG(0x12, 0x10)
(2) - TWI_WRREG(0x12, 0x00)
(3) - TWI_WRREG(0x24, 0x07)
(4) - TWI_WRREG(0x1D, 0x20)
(1) - TWI_WRREG(0x18, addr)
(2) - TWI_WRREG(0x19, low_data)
(3) - TWI_WRREG(0x1A, high_data)
(4) - TWI_WRREG(0x25, 0x1)
TWI_OFF TRANSMISSION TWI_WRREG( 0x2, 0x7F)
1 2 3
3 4 5
6
6 7 8
Step-1 Step-2 Step-3
Step-4 Step-5
Step-7 Step-8 Step-9
Step-6
图 6. 命令配置流程
注意:
1. 步骤 2 和步骤 3 之间的 1 ms 是用于完成芯片复位的必要时间。
2. 循环步骤 6 中,由于配置寄存器是 16 位宽的(如下图所示),所以需要将待写入寄存器(地址
为 addr 的寄存器)的值的高低 8 位(low_data 和 high_data)分别写到一个临时寄存器中,再
将这两个 8 为寄存器同时写到相关配置寄存器中。
3. 更改功率涉及到两个寄存器的改动,地址分别为 0x0D 和 0x10,这两个寄存器的值的获得可
以通过从 RFPDK 导出.exp 文件,然后将相应的变化的值按照上图的流程写入 CMT2119A中。
AN135
Rev 0.8 | Page 4/40
www.cmostek.com
以下图为例,用户可以将 13 dBm 的发射功率在线改成 10 dBm。
a) 从 RFPDK 中导出 13 dBm 的设置;
b) 从 RFPDK 中导出 10 dBm 的设置;
c) 比较两个设置文件,可以看到 0x0D 和 0x10 寄存器的内容不同;
d) 将 0x000E 写入地址为 0x0D 的寄存器;将 0x5FCE 写入地址为 0x10 的寄存器中。
图 7. CMT2119A 寄存器值得获取
AN135
Rev 0.8 | Page 5/40
www.cmostek.com
3.3 CMT2119A 示例程序
本节将给出一些控制 CMT2119A 的示例程序,例如如何改变频率,改变发射功率等。更多示例
程序见相关附件。
3.3.1 CMT2119A 基础操作程序
以下给出对 CMT2119A 进行基础操作的示例程序,如延时,通过 TWI 对芯片进行读写操作,对
TWI 复位,关闭 TWI,复位芯片等命令。
#include "REG_CONFIG.h"
#include "hal\\gpio_def.h"
#include "hal\\hal.h"
#define CMT2119A_WR_CMD (unsigned char )0x80
#define CMT2119A_RD_CMD (unsigned char )0xC0
void delay10Us(unsigned short d10UsCnt)
{
// delay 10us at Mcu Clock as 24M
unsigned char nTick; //5:3.7us; 10:6.2us; 20:9.2; 22:10us
while (d10UsCnt--)
{
nTick = 25;
while (nTick--)
;
}
}
void delay100Us(unsigned short d100UsCnt)
{
// delay 100us at Mcu Clock as 24M
unsigned short nTick; //
while (d100UsCnt--)
{
nTick = 188;
while (nTick--)
;
}
}
void delayMs(unsigned short dMs)
{
//delay 1MS at Mcu Clock as 24M
剩余39页未读,继续阅读
一把木剑
- 粉丝: 552
- 资源: 2
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- zigbee-cluster-library-specification
- JSBSim Reference Manual
- c++校园超市商品信息管理系统课程设计说明书(含源代码) (2).pdf
- 建筑供配电系统相关课件.pptx
- 企业管理规章制度及管理模式.doc
- vb打开摄像头.doc
- 云计算-可信计算中认证协议改进方案.pdf
- [详细完整版]单片机编程4.ppt
- c语言常用算法.pdf
- c++经典程序代码大全.pdf
- 单片机数字时钟资料.doc
- 11项目管理前沿1.0.pptx
- 基于ssm的“魅力”繁峙宣传网站的设计与实现论文.doc
- 智慧交通综合解决方案.pptx
- 建筑防潮设计-PowerPointPresentati.pptx
- SPC统计过程控制程序.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论1