433MHz模块stm8、cc1101
时间:11-19
来源:互联网
点击:
- CC1101_WriteReg(CC1101_REG_SYNC1,0xD3);//同步词汇,高字节
- CC1101_WriteReg(CC1101_REG_SYNC0,0x91);//同步词汇,低字节
- CC1101_WriteReg(CC1101_REG_PKTLEN,CC1101_DATA_LEN);//数据包长度,255
- CC1101_WriteReg(CC1101_REG_PKTCTRL1,0x04);//数据包自动控制
- CC1101_WriteReg(CC1101_REG_PKTCTRL0,0x04);//数据包自动控制
- CC1101_WriteReg(CC1101_REG_ADDR,0x00);//设备地址
- CC1101_WriteReg(CC1101_REG_CHANNR,0x00);//信道
- CC1101_WriteReg(CC1101_REG_FSCTRL1,0x06);//频率合成器控制,高字节
- CC1101_WriteReg(CC1101_REG_FSCTRL0,0x00);//频率合成器控制,低字节
- CC1101_WriteReg(CC1101_REG_FREQ2,0x10);//频率控制词汇,高字节
- CC1101_WriteReg(CC1101_REG_FREQ1,0xb1);//频率控制词汇,中间字节
- CC1101_WriteReg(CC1101_REG_FREQ0,0x3b);//频率控制词汇,低字节
- //2.4KBPS
- CC1101_WriteReg(CC1101_REG_MDMCFG4,0xF6);//调制器配置
- CC1101_WriteReg(CC1101_REG_MDMCFG3,0x83);//调制器配置
- CC1101_WriteReg(CC1101_REG_MDMCFG2,0x13);//调制器配置
- CC1101_WriteReg(CC1101_REG_MDMCFG1,0x22);//调制器配置
- CC1101_WriteReg(CC1101_REG_MDMCFG0,0xf8);//调制器配置
- CC1101_WriteReg(CC1101_REG_DEVIATN,0x15);//调制器背离设置
- CC1101_WriteReg(CC1101_REG_MCSM2,0x07);//主通信控制状态机配置
- CC1101_WriteReg(CC1101_REG_MCSM1,0x30);//主通信控制状态机配置
- CC1101_WriteReg(CC1101_REG_MCSM0,0x18);//主通信控制状态机配置
- CC1101_WriteReg(CC1101_REG_FOCCFG,0x16);//频率偏移补偿配置
- CC1101_WriteReg(CC1101_REG_BSCFG,0x6c);//位同步配置
- CC1101_WriteReg(CC1101_REG_AGCTRL2,0x03);//AGC控制
- CC1101_WriteReg(CC1101_REG_AGCTRL1,0x40);//AGC控制
- CC1101_WriteReg(CC1101_REG_AGCTRL0,0x91);//AGC控制
- CC1101_WriteReg(CC1101_REG_WOREVT1,0x87);//高字节时间0暂停
- CC1101_WriteReg(CC1101_REG_WOREVT0,0x6b);//低字节时间0暂停
- CC1101_WriteReg(CC1101_REG_WORCTRL,0xfb);//电磁波激活控制
- CC1101_WriteReg(CC1101_REG_FREND1,0x56);//前末端RX配置
- CC1101_WriteReg(CC1101_REG_FREND0,0x10);//前末端TX配置
- CC1101_WriteReg(CC1101_REG_FSCAL3,0xe9);//频率合成器校准
- CC1101_WriteReg(CC1101_REG_FSCAL2,0x2a);//频率合成器校准
- CC1101_WriteReg(CC1101_REG_FSCAL1,0x00);//频率合成器校准
- CC1101_WriteReg(CC1101_REG_FSCAL0,0x1f);//频率合成器校准
- CC1101_WriteReg(CC1101_REG_RCCTRL1,0x41);//RC振荡器配置
- CC1101_WriteReg(CC1101_REG_RCCTRL0,0x00);//RC振荡器配置
- CC1101_WriteReg(CC1101_REG_FSTEST,0x59);//频率合成器校准控制
- //10DB
- //CC1101_WriteReg(CC1101_REG_PATABLE0,0xc0);
- //CC1101_WriteReg(CC1101_REG_PATABLE1,0xc0);
- /*CC1101_WriteReg(CC1101_REG_PATABLE2,0xc0);
- CC1101_WriteReg(CC1101_REG_PATABLE3,0xc0);
- CC1101_WriteReg(CC1101_REG_PATABLE4,0xc0);
- CC1101_WriteReg(CC1101_REG_PATABLE5,0xc0);
- CC1101_WriteReg(CC1101_REG_PATABLE6,0xc0);
- CC1101_WriteReg(CC1101_REG_PATABLE7,0xc0);*/
- Delay_MS(10);
- }
- /*
- *函数:voidCC1101_WriteTxFIFO(u8*pBuff,u8len)
- *功能:写入数据到发送缓冲区
- *参数:pBuff:需要写入的数据缓冲区指针,len:需要写入的数据长度
- *返回:无
- *依赖:底层宏定义
- *作者:cp1300@139.com
- *时间:2014-01-01
- *最后修改时间:2014-01-01
- *说明:写入数据到发送FIFO
- */
- voidCC1101_WriteTxFIFO(u8*pBuff,u8len)
- {
- u16i;
- CC1101_CS_L();
- CC1101_ReadWriteByte(BURST_WRITE_FIFO);
- for(i=0;i
- {
- CC1101_ReadWriteByte(pBuff[i]);
- }
- CC1101_CS_H();
- }
- /*
- *函数:voidCC1101_ReadRxFIFO(u8*pBuff,u8len)
- *功能:读取接收缓冲区
- *参数:pBuff:需要读取的数据缓冲区指针,len:需要读取的数据长度
- *返回:无
- *依赖:底层宏定义
- *作者:cp1300@139.com
- *时间:2014-01-01
- *最后修改时间:2014-01-01
- *说明:从接收FIFO读取数据
- */
- voidCC1101_ReadRxFIFO(u8*pBuff,u8len)
- {
- u16i;
- CC1101_CS_L();
- CC1101_ReadWriteByte(BURST_READ_FIFO);
- for(i=0;i
- {
- pBuff[i]=CC1101_ReadWriteByte(0xff);
- }
- CC1101_CS_H();
- }
- //发送数据,将缓冲区数据全部发送出去
- //一次最多64B,因为受到FIFO限制
- voidCC1101_RfDataSend(u8*pBuff,u8len)
- {
- CC1101_Command(CC1101_CMD_SIDLE);//退出当前模式
- CC1101_Command(CC1101_CMD_SFTX);//清空发送缓冲区
- CC1101_WriteTxFIFO(pBuff,len);//写入数据到发送缓冲区
- CC1101_Command(CC1101_CMD_STX);//开始发送数据
433MHzstm8cc110 相关文章:
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)
