AS3933 寄存器初始化配置

void AS3933_Init(void) 			//配置AS3393相应的寄存器
{AS3933_COMM(0xc0);          //清除wake upDelay_MS(30);				//延时30mswrite_byte(0x11, 0x0a); 	//设置通道1的谐振电容 180P//0x11=17; R17通道1的谐振电容配置Delay_MS(10);				//延时10ms  等待设置完毕write_byte(0x10, 0x41);		//将通道1的谐振信号输出到DAT脚//0x10=16; R16 在DAT脚上显示LF1P的谐振频率Delay_MS(30);				//30ms write_byte(0x12, 0x1f); 	//设置通道2的谐振电容 130P//0x12=18; R18通道2的谐振电容配置Delay_MS(10);				//延时10ms 等待设置完毕write_byte(0x10, 0x42);		//将通道2的谐振信号输出到DAT脚Delay_MS(30);				//30mswrite_byte(0x13, 0x1f); 	//设置通道3的谐振电容 130P//0x13=19; R19通道3的谐振电容配置Delay_MS(10);				//延时10ms 等待设置完毕write_byte(0x10, 0x44); 	//将通道3的谐振信号输出到DAT脚Delay_MS(30);				//30ms write_byte(0x10, 0x00);	 	//write_byte(0x00, 0xEE);		// R0 寄存器设置: 32位 pattern, ON/OFF 模式,开启  scan mode ,通道 1,2,3全部开启//Masks data on DAT pin before wake-up (DAT_MASK = 0 ¡ú data not masked; DAT_MASK = 1 ¡ú data masked) write_byte(0x01, 0x3A);		//R1寄存器设置:双向使能AGC(上-下),使能天线阻尼器,使能曼彻斯特编码,Correlator势能,AS3933_RC();				//内部晶振校验AS3933_RC();write_byte(0x02, 0x20);		//R2寄存器设置:接收频率23-150Khz, 降低数据限幅器的绝对阀值write_byte(0X04, 0XB0);		//R4寄存器设置:ON/OFF模式下OFF时长4ms,天线阻尼电阻27k,无增益衰减。write_byte(0x05, 0x3A);		//R5寄存器配置:第二个唤醒前导码 0x3Awrite_byte(0x06, 0xC3);		//R5寄存器配置:第一个唤醒前导码 0xC3write_byte(0x07, 0x2B);		//R7寄存器配置:超时设置50ms,波特率12write_byte(0x08, 0x00);		//R8寄存器配置:唤醒频率95-150KhzAS3933_COMM(0xc0);
}

AS3933_COMM(0xc0);   //  清除wake up, 清除唤醒使能

 

寄存器配置:

寄存器0—寄存器19, 共20个配置寄存器,对 模式,天线通道及编码等等参数进行配置:

R0 寄存器:Pattren 32/16bit模式配置;数据掩码配置;ON/OFF模式配置;Scan模式选择;天线通道使能

AS3933 寄存器配置-编程知识网

                      1:  扩展32bit模式

                      1:数据掩码 , data masked

                      1: ON/OFF模式 使能  (需配置R4寄存器)

                       0: Scan模式 禁止

                      111:  通道1,2,3使能。

R1寄存器:   数据切片使能配置;AGC仅作用第一载波;AGC双向使能;天线阻尼器使能;曼彻斯特译码器使能;双唤醒模式配置;载波唤醒模式配置;内部RC振荡器使能配置

AS3933 寄存器配置-编程知识网

R2寄存器:  数据切片绝对阀值衰减; 3dB放大增益提高;时钟频率显示在CL_DAT上;唤醒公差

AS3933 寄存器配置-编程知识网

 

R3寄存器: 数据电平触发;数据边沿触发;数据计时切片;包络检测时间AS3933 寄存器配置-编程知识网

R4寄存器: OFF时长,天线阻尼及增益衰减配置

AS3933 寄存器配置-编程知识网

                       ON/OFF模式下 , OFF时长配置:  10 :4ms

 

                         天线阻尼电阻:  11 :27KΩ

                           AS3933 寄存器配置-编程知识网

                      增益衰减:  0000 : 无增益衰减

                              AS3933 寄存器配置-编程知识网

R5寄存器:唤醒模式第2字节

AS3933 寄存器配置-编程知识网

 

R6寄存器:  唤醒模式第1字节

AS3933 寄存器配置-编程知识网

 

R7寄存器: 超时时间及比特率配置

AS3933 寄存器配置-编程知识网

       超时时间设置: 001   : 50ms

                        AS3933 寄存器配置-编程知识网

     比特率:01011 :12

                 AS3933 寄存器配置-编程知识网

                  AS3933 寄存器配置-编程知识网

 

R8寄存器:   唤醒配置

AS3933 寄存器配置-编程知识网

             唤醒频率  000: 95-150 Khz

        AS3933 寄存器配置-编程知识网

R10,R11,R12  通道1,2,3信号强度:

   AS3933 寄存器配置-编程知识网

R13寄存器: 虚假唤醒注册

     AS3933 寄存器配置-编程知识网

R14寄存器:  RC校准成功,RC校准失败; RC校准设置

         AS3933 寄存器配置-编程知识网

R15寄存器: LC振荡器工作,  LC振荡器未工作

            AS3933 寄存器配置-编程知识网

R16寄存器时钟发生器输出信号显示在CL_DAT引脚上;将rc振荡器设置为最小频率;将rc振荡器设置为最大频率;在DAT引脚上显示LF3P的谐振频率;在DAT引脚上显示LF2P的谐振频率;在DAT引脚上显示LF1P的谐振频率

AS3933 寄存器配置-编程知识网

0x41=01000001:       将RC振荡器设置为最小频率,在DAT引脚上显示LF1P的谐振频率.

 

R17,R18,R19: 通道1,2,3的谐振电容配置。

    AS3933 寄存器配置-编程知识网

      AS3933 寄存器配置-编程知识网

 

write_byte(0x11, 0x0a);    将R17,通道1的谐振电容设置为180pf

write_byte(0x12, 0x1f);     R18, 通道2的谐振电容设置为130pf

 

 

唤醒协议:

工作模式流程图:

AS3933 寄存器配置-编程知识网

 

1,唤醒协议,没有模式检测(仅频率检测)

配置方式:R1<1> = 0   ,AS3933在检测到载波后,在检测到RSSI后直接从监听模式进入数据接收模式。

 

 

AS3933 寄存器配置-编程知识网

Carrier Burst为125KHz载波信号,长度最少16Tclk + 16Tcarr:

    AS3933 寄存器配置-编程知识网

2,唤醒协议:启用模式检测

配置方式:R1<1> = 1   ,AS3933在检测到载波后,在解决RSSI后直接从监听模式进入数据接收模式。

AS3933 寄存器配置-编程知识网

初始载波突发必须长于550μs,并且可以持续最大16位。如果使用ON/OFF模式(R1<5> = 1),则最大载波脉冲串持续时间的最小值限制为10ms。如果载波突发太长,则内部唤醒将被设置回低,并且错误唤醒计数器(R13<7:0>)将递增1。

载波突发之后必须是前同步码(0101)和存储在寄存器R5<7:0>和R6<7:0>中的唤醒模式。前导码必须具有至少4比特,并且前导码持续时间与模式一起不应该长于40比特。如果唤醒模式正确,则WAKE引脚上的信号设置为高电平,数据传输可以开始。要将芯片设置回监听模式,可以使用直接命令clear_false以及超时选项(R7 <7:5>)。
 

 

唤醒帧

AS3933的唤醒机制有两种,一种是接收载波信号+正文数据,然后产生唤醒信号.另一种是接收载波信号+前导+模式+正文.在接收完模式之后即产生唤醒信号.本文采用第二种机制.

 

 

 

SDI写数据指令:

SDI:Serial Data input for writing registers, data to transmit and/or writing addresses to select readable register

 

写指令格式:

AS3933 寄存器配置-编程知识网

 

 

参考:https://blog.csdn.net/jdh99/article/details/8677187

https://blog.csdn.net/nicole088/article/details/85951386