STM32开发笔记83: SX1268驱动程序设计(芯片复位)

单片机型号:STM32L053R8T6


本系列开发日志,将详述SX1268驱动程序的整个设计过程,本篇介绍芯片复位驱动程序。

一、数据手册

1、NRESET是芯片第15引脚,低有效。

 2、通过15引脚NREST,可以达到完整的芯片复位。复位后,会执行标准的校准程序,先前的内容将丢失。复位最短时间为50us,给100us较为合适。

3、这张图是芯片各个模式的引脚的状态表,可以看到除复位模式外,其余模式NREST引脚的状态都为IN PU,其意思是输入上拉,其上拉值为50K。

STM32开发笔记83: SX1268驱动程序设计(芯片复位)_第1张图片

二、程序

1、由于其内部上来,我们可以给出低功耗的程序,不将单片机控制NREST的引脚设置为输出,而设置为analog引脚,程序如下:

class CSX1268_RESET:public CIO_Analog
{
public:
	CSX1268_RESET(void);
};

2、然后按analog直接初始化,程序如下:

CSX1268_RESET::CSX1268_RESET(void):CIO_Analog(SX1268_RESET_PORT, SX1268_RESET_PIN) {}

3、以下是其复位程序,有模拟模式改为输出模式,置低电平让其复位,复位时间设置为20ms,然后再置为模拟模式,由于其内部有上拉,所以不需考虑其高电平,这样达到了节省能耗的目的。

void CSX1268::SX126xReset(void)
{
	Target.Delayms(10);
	this->Reset.SetOutputDirection();
	this->Reset.Set_0();
	Target.Delayms(20);
	this->Reset.SetAnalogDiretion();		//由于其内部有内部上拉,所以改成模拟后,其内部会变为高电平
	Target.Delayms(10);
}

 

原创性文章,转载请注明出处CSDN:http://blog.csdn.net/qingwufeiyang12346。

 

 

 

 

 

你可能感兴趣的:(#,STM32快速开发)