tag 标签: si4432

相关博文
  • 热度 36
    2015-9-23 22:44
    3434 次阅读|
    14 个评论
           智能家居这个项目的灵感和缘分因为好有一次几年了,自己都忘了,我的印象中只记得那会在西安,去和老同学见面,但是因为手上有这个智能家居的开关无线系统项目,所以在去西安的路上都是带着这板子的,到了朋友家里,没事的时候还在看代码。当时和自己合作的一哥们说让我看看那波形的浮动以及噪声对整个系统的影响大不大,然后就一个劲的忽悠他,其实在西安那会我没有示波器,只是简单的看代码。直到离开西安回到长沙才用上示波器查找纹波的原因。          先简单介绍下这个东西,大家都见过插座吧,也见过带触摸的插座吧。但是你未必就见过集成了LED、无线模块、触摸模块、控制模块、红外模块的插座吧,这个东西就是希望集成这些模块安装在墙壁上面的插座。然后既可以通过触摸以及红外来感应外界信号,也能通过WLAN来控制他的状态,终极形态是集成在智能手机以及其他终端来控制。          在这个项目里面主要负责研发部分,很小的一个部分,只是为了调通无线模块的速率以及波特率还有他的稳定性,不仅要能够通信而且要求在固定时间里面能够传输的数据量。无线模块参考过很多芯片,最终在ADI和SI4432里面选择了,本来考虑过NRF903的,种种原因没有使用他,最终还是调试的4432.。处理器用的NXP的。               总电源是市电,通过开关电源转化为无线模块供电的电源。当然纹波是有的,就是怀疑纹波会不会干扰无线的收发性能。           触摸芯片用的WTC6508。具体图如下。       下面讲下最主要的核心SI4432.Si4432是一款低于1GHz高性能射频收发器。其主要针对工业、科研和医疗(ISM)以及短距离无线通信设备(SRD)。SI4432输出功率可达+20dBm,接收灵敏度达到-121dBm,可提供对数据包处理、数据缓冲FIFO、接收信号强度指示(RSSI)、空闲信道评估(CCA)、唤醒定时器、低电压检测、温度传感器、8位AD转换器和通用输入/输出口等功能的硬件支持。如下是他的结构图。           大体设计的原理图可以参照如下,功率可达20DBM.           整个项目看起来简单,但是实际运行在家居的时候会遇到很多麻烦,当然其他部分我管的比较少。在调试代码的阶段,看了好多段时序是真的。             用的NXP的处理器,软件KEIL4,调试器JLINKV8.           虽然那段时间有其他事情要忙,但是也没忘了要花时间看波形。很经典的三总线时序。具体的寄存器可以参考下面的PDF.很多时候能读也能写,但是就是看不到收发的效果,调试有的时候就是这么回事,让你很蛋疼。                 触摸的开关很好看,无线的模块也有其他的技术支持。当时我的搭档和我说,这个以后做好了市场会很大,当然至于其他方面例如销售以及互联网的销售我除了懂的微商淘宝还有其他地方做宣传之外至于很多外交的事情我是不懂的。               有好几个月为了这个东西在实验室加班到好晚,也许心态就不一样,不为价钱只为兴趣。或者自己对他的兴趣也很浓厚。所以对他的很多资料都在网上翻了个遍。上面那个板子的大小就是墙壁上面插座的大小,然后把它镶进去,就成了智能插座了。至于后面很多驱动程序和其他终端连接没有理会太多。              PS: 当然这个创意他是成功的或者说也是失败的,因为它一直处于研发阶段,从未在市场上应用过。于自己而言或者除了技术的本事更多的是一个产品要运营的好技术使远远不够的,当然技术很重要。于是我明白,当今时代特别是在互联网横行的社会要想在智能硬件上面取胜,一定要有市场并且能够推广下去,虽然自己从事研发的工作但是要想掌握一个产品的运营必去去市场走一回。重要的事情说三遍,市场上的很多流程以及如何推广产品绝对值得我们去探索。一个人的路,必须是多方面的知识作为支撑。因为:我们正年轻!
  • 热度 8
    2015-7-16 17:29
    1457 次阅读|
    0 个评论
    ZQ-CC2500PA模块可适用于多种无线通讯应用,如超低功耗无线收发器、无线传感网络、家庭和楼宇自动化、高级抄表架构(AMI)、无线计量、无线报警和安全系统等。
  • 热度 21
    2012-12-29 21:43
    4123 次阅读|
    3 个评论
      Silicon Labs EZRadioPRO系列ISM频段无线芯片SI4432, 可工作在240-960MHZ频段范围内。最大输出功率可以达到+20DBm。外围可加入功率放大电路,以提高发送功率。 Si4432主要有关闭模式,挂机模式,发射模式和接收模式组成。关闭状态下可以降低功耗,各模式切换必须先进入挂起状态再切换。其中的挂机模式,给SPI寄存器地址07h赋予不同的值,又分为五种不同的子模式。待机模式,睡眠模式,传感器模式,预备模式,调谐模式。上电复位后,或者芯片由掉电状态退出后将默认进入预备模式。 Si4432数据传输方式主要有三种,FIFO模式,直接模式,和PN9模式。在 FIFO Mode 下,使用片内的先入先出堆栈区来发送和接收数据。对 FIFO 的操作是通过SPI 对 07H 寄存器的连续读或者写进行的。在FIFO Mode下,Si4432自动退出发送或者接收状态,当相关的中断信号产生,并且自动处理字头和CRC校验码。在接收数据时, 自动把字头和CRC校验码移去。在发送数据时,自动加上字头和CRC校验码。在直接收发模式下,Si4432如传统的射频收发器一样工作。PN9模式,在这种模式下的Tx数据是内部产生使用伪随机( PN9序列)位发生器。这种模式的目的是用作测试模式不断观察调制频谱,而不必负载/提供数据。 配置Si4432 模块是通过SPI 方式进行的,可配置为FIFO 方式和直接方式, 推荐Si4432 工作于 FIFO 收发模式,这种工作模式下,系统的程序编制会更加简单,并且稳定性也会更高.不过网上评论说,这种模式没有直接模式传输的距离远。其中配置Si4432 主要包括载波频率、调制方式、数据发送速率、CRC 校验、前导码、 同步字、数据头、地址等,具体可参考 Si4432(IA4432) RegisterSettings_RevV-v16 寄存器配置工具进行。 至于si4432是否带远程无线唤醒,看了半天手册也没找到。不过,网上的一位网友说:“以前产品用的是CC1100,确实出现近距离通信不正常的问题,空旷地带150M(FSK,9.6k/s,433M,WOR休眠侦听通信方式),距离不够;然后改用CC1101+PA,但是瞬间发射电流300mA,由于我们是电池供电,功耗太大了。 后来通过商家介绍用SI4432,前几天简单测试了下通信距离330M(433M,40K/S,GFSK),可能更远的距离还行,就没测试了,下个星期再做详细测试。 对于现在的使用情况,个人觉得他们各有优点。CC1101的特点具有自动无线侦听,可以实现电磁波唤醒功能,但是通信距离不够;而SI4432通信距离不错,且内部自带PA,可以达到+18dB,发射电流在60mA左右。但不具备无线唤醒这样的功能,只能依*自身的定时器,配合单片机来实现电磁波唤醒功能,这样一来对MCU的稳定性要求就相当高。” Si4432的寄存器操作: Si4432共有128个寄存器(O一127),它们控制芯片的工作和记录芯片的状态。可通过SPI对它们进行访问。SPI的it顺序是可配置的,其缺省配置(MSB在前)与MCU的顺序相同。命令格式为2字节结构:读/写标志(1 bit,0—读,l一写),寄存器地址(7 bit)+待写数据(对于读操作,该值也必须有,只是可为任意值)。每次可以读写1/多(burst)个字节,它们是由时钟信号决定的,在读写一个字节后,如果时钟继续有效,那么,地址将会自动加1,接下来的操作将是对下一个寄存器的读写。通过Silicon Labs提供的WDS(Wirelessevelopment Suit)可访问这些寄存器并可生成相应的初始化代码。只能在空闲状态下对寄存器进行初始化,否则,可能会出现意外的结果。为了提高传输信号的质量,增大发射距离,保证数据的可*传输,系统使能数据白化、曼彻斯特Manchester)编码、CRC校验和采用GFSK调制。 状态机: 在完成不同的功能时,芯片所处的状态是不同的。这些状态在满足一定的条件时可实现相互转移。状态机如图: 关闭(shutdown)和空闲(idle)状态称为低功耗状态,而idle又可细分为5个不同的子状态,它们在低功耗下完成各种与无线数据收发无关的操作。发送(Tx)和接收(RX)状态称为激活状态,它们完成无线数据的收发。除了关闭状态外(只能通过MCU的I/O脚来设置),其余状态都可以通过SPI接El进行设置和读取。可通过寄存器07h实现状态的切换,这种切换表现在两个方面:1)当设置其中的某一位时,状态立即发生切换;2)在完成收发任务后,决定返回到idle状态的哪一个子状态(在本系统中为休眠状态,即设置enwt=1)。可通过02h寄存器获取当前的状态。芯片的常态为idle,为了保证不漏收数据,可利用唤醒定时器来定时唤醒芯片进入融状态(此时要设置08h寄存器中的enldm位为l,并设置定时常数寄存器14h和19h中的值),在确认没有数据/收完数据后再返回到原来的idle子状态。 用普通51单片机 IO 口模拟SPI: SPI读操作函数: unsigned char SPI_Read(void) { unsigned char i,rxdata; rxdata = 0x00; for (i = 0;i 8;i++) { rxdata = rxdata1; RF4432_SCLK=0; if (RF4432_SDO==1) //读取最高位,保存至最末尾,通过左移位完成整个字节 { rxdata |= 0x01; } delay_10us(2); RF4432_SCLK=1; delay_10us(2); } return rxdata; } SPI写操作函数: void SPI_Write(unsigned char txdata) { unsigned char i; for (i = 0;i 8;i++) { RF4432_SCLK=0; if ((txdata0x80)==0x80) //总是发送最高位 { RF4432_SDI=1; } else { RF4432_SDI=0; } txdata = txdata1; delay_10us(2); RF4432_SCLK=1; delay_10us(2); } } RF4432 寄存器读操作函数: unsigned char RF4432_ReadReg(unsigned char addr) { unsigned char value; RF4432_SEL=0; SPI_Write(addr|RR); value = SPI_Read(); RF4432_SEL=1; return value; } RF4432 寄存器写操作函数: void RF4432_WriteReg(unsigned char addr, unsigned char value) { RF4432_SEL=0; SPI_Write(addr|WR); SPI_Write(value); RF4432_SEL=1; } SI4432寄存器定义: #define DEVICE_TYPE 0x00 #define DEVICE_VERSION 0x01 //版本号 …… 参考附件。   RF4432 射频芯片初始化函数,RF4432 设置接收模式函数, RF4432 数据包接收函数, RF4432 数据包发送函数等。参考文档:si4432模块使用手册.pdf。这些附件我整理了一个压缩包http://www.51hei.com/f/452de.rar 大家可以去下载. 网上搜到的程序代码以及官方提供的代码大都是基于Silicon Labs的c8051f单片机的,虽然都是51核的,但编程环境以及运行速度都是不一样的,不能直接拿来在普通51上运行,得稍作修改。目前完成了基于普通51单片机的三份代码修改。一份是官方的,一份是买模块时送的,一份是网上找来的。网上还有一份基于pic单片机的源码,但看了后感觉跟官方的差不多,没去修改。修改后在51开发板上可以运行了。但是其中一个模块不能工作,没法看到效果。具体能否接收还不确定。因此,也就停留在了这个地方。可以通过串口观察到一些信息,比如初始化完成后产生低电平的NIRQ中断,以及发送完成后也产生低电平的NIRQ中断,程序 片段 RF4432_Init() {         …… while ( RF4432_IRQ== 1); //等待软复位完成,当软复位完成后有中断发生 ……. } UART_Send_Str("RF芯片si4432初始化完毕....\n");//串口发送调试信息 正常初始化完毕后通过串口会看到语句“RF芯片si4432初始化完毕....”,否则停留在while ( RF4432_IRQ== 1); 看不到串口输出的信息。但只有一个模块发送,一个模块接收,观察到接收模块收到了数据才能证明调试是没问题的。 附件:四份修改的程序。51的可以用keil直接打开。430的用IAR打开。分别在文件夹RFtest51_1,51test4432_1,RFtest430,430test4432。 官方的程序源码,买模块送的程序源码。 Si4432编程指南.pdf 修改过的可以用keil软件打开的官方程序代码。在文件夹51_si4432官方, 51_si4432官方_1。
  • 热度 26
    2012-8-31 14:18
    2199 次阅读|
    0 个评论
    RFM69与Si4432_A7108性能比较 概述:     深圳市惠贻华普电子最新推出RFM69/RFM69H无线射频模块,本文就我司生产的RFM69/RFM69H模块与Si4432及A7108在各种性能上做一个简单比较。     RFM69/69H是一款低功耗高性能的无线收发模块,其工作在433/868/915MHz ISM的频点,支持窄带与宽带通讯模式,模块符合FCC和ETSI的认证要求。     模块提供了SPI通讯接口,可通过MCU由软件对模块进行参数设置。     如果您对我们的方案感兴趣,请联系我,电话:0755-82973805-859,QQ:332857102 RFM69/69H的特点 RFM69输出功率: +13dBm,可调范围从 -18dBm到+13dBm,以1dBm为一个步进 RFM69H输出功率: +20dBm,可调范围从 -18dBm到+20dBm,以1dBm为一个步进 接收灵敏度:-120dBm @FSK 1.2kbps 接收功耗:16mA,休眠电流:0.1uA FSK调制模式下支持最大数据传输速率300Kbps 调制方式包括FSK/GFSK/MSK/GMSK/OOK 同步字识别接收方式 动态RSSI侦测范围115db以上 支持CRC效验和AES-128加密模式,66字节数据缓冲区 集成温度传感器 RFM69/69H的主要技术指标 方案组成: FSK/GFSK/MSK/GMSK/OOK调制解调方式,抗干扰能力强 315/433/868/915MHZ ISM频段,使用无需申请频点 2.4V~3.6V 工作电压 -20度~60度工作温度 最大输出功率:RFM69为13dBm, RFM69H为20dBm,输出功率可调 接收灵敏度:-120dBm @ FSK 1.2kbps ,-114dBm @ FSK 4.8kbps , -105dBm @ FSK 38.4kbps ,-112 dBm @ OOK 4.8kbps 发射电流,RFM69 45 mA @ +13 dBm;RFM69H 130 mA @ +20 dBm 接收工作电流:16mA 低功耗睡眠模式电流:0.1uA SPI通讯接口 工作频率可设置,允许多个模块频分复用,互不干扰 通讯速率:FSK 1.2Kbps ~ 300kbps ; OOK 1.2kbps-32kbps,可通过软件配置 生产免调试,使用简单,容易开发 符合ETSI EN 和FCC 相关标准要求 RFM69/69H主要应用领域 自动仪器仪表 无线传感器产品 智能家居与建筑 无线报警与安全 工业监测与控制 M-BUS远程抄表系统(RFM69/69H) RF69/69H与Si4432、A7108特性对比  
相关资源