篮之新喜 发表于 2024-9-3 16:15:56

NB6L295M MCU 设计参考

NB6L295M

2.5V / 3.3V 双通道可编程时钟 / 数据差分 CML 的耽误输出多电平输入,带内部终端;NB6L295M 是一款双通道可编程耽误芯片主要用于 Clock 或 Data 去偏斜和定时调解。NB6L295M 在那两个单独的可变耽误通道 PD0 和 PD1 可以在以下之一中配置两种操作模式,Dual Delay 或 Extended Delay。在 Dual Delay Mode(双耽误模式)中,每个通道都有一个可编程耽误部门,该部门使用门矩阵和多路复用器。每个通道的最小耽误固定为 3.2 ns。Extended Delay Mode 相当于 PD0 的附加耽误加上 PD1,并通过串行数据接口 MSEL 位完成设置为 High。这会在内部将 PD0 的 output 级联到 input 中的 PD1。因此,Extended Delay 路径从 IN0/IN0 开始输入,流经 PD0,级联到 PD1,输出通过第 1 季度/第 1 季度。有一个固定的最小耽误为 6.0 n。
https://i-blog.csdnimg.cn/direct/391567ef2059431cb20656cdeebe9ff7.png
硬件设计

本文设计资料资源参考如下连接
NB6L295MMCU设计参考,含工程代码使用分析手册等资料,代码工程在实际项目中多次重复使用,加速NB6L295M的设计资源-CSDN文库
MCU采用STM32F407搭配NBL295M,实现的时序设计。
原理图设计如下
https://i-blog.csdnimg.cn/direct/a8c99f468a13461f9b1a5a7a963d4648.png
与MCU管脚连接如下表所示
Label
NB6L295M
STM32F407
EN_3V3_GTDLY2_1
EN
PE4
SLOAD_3V3_GTDLY2_1
SLOAD
PE5
SDIN_3V3_GTDLY2_1
SDIN
PE6
SCLK_3V3_GTDLY2_1
SCLK
PE7
  软件设计

参考如下时序图
https://i-blog.csdnimg.cn/direct/59a0221febd241609606d24a2510eb59.png
主步伐设计
void NB6L295M_init(void)
{
        //PSEL: 0 Loads Data to PD0 1 Loads Data to PD1
        //MSEL: 0 Selects Dual Programmable Delay Paths, 3.1 ns to 8.8 ns Delay Range for Each Path
        //MSEL: 1 Selects Extended Delay Path from IN0/IN0 to Q1/Q1, 6.0 ns to 17.2 ns Delay Range; Disables Q0/Q0 Outputs,
        //Q0-LOW, Q0-HIGH.
        uint16_t delay_p0, delay_p1, delay_sum = 800;

        //H门脉冲第二级延时(通道1)芯片U43(R/W)
        if(delay_sum >= 511)
        {
                delay_p0 = 511;
                delay_p1 = delay_sum - delay_p0;
        }
        else
        {
                delay_p0 = delay_sum;
                delay_p1 = 0;
        }
        NB6L295M_3V3_GTDLY2_1(0, 1, delay_p0);
        delay_us(2);
        NB6L295M_3V3_GTDLY2_1(1, 1, delay_p1);

}
//3V3_GTDLY2_1
#define EN_3V3_GTDLY2_1_H             {HAL_GPIO_WritePin(EN_3V3_GTDLY2_1_GPIO_Port, EN_3V3_GTDLY2_1_Pin, GPIO_PIN_SET);}
#define EN_3V3_GTDLY2_1_L             {HAL_GPIO_WritePin(EN_3V3_GTDLY2_1_GPIO_Port, EN_3V3_GTDLY2_1_Pin, GPIO_PIN_RESET);}
#define SLOAD_3V3_GTDLY2_1_H          {HAL_GPIO_WritePin(SLOAD_3V3_GTDLY2_1_GPIO_Port, SLOAD_3V3_GTDLY2_1_Pin, GPIO_PIN_SET);}
#define SLOAD_3V3_GTDLY2_1_L          {HAL_GPIO_WritePin(SLOAD_3V3_GTDLY2_1_GPIO_Port, SLOAD_3V3_GTDLY2_1_Pin, GPIO_PIN_RESET);}
#define SDIN_3V3_GTDLY2_1_H         {HAL_GPIO_WritePin(SDIN_3V3_GTDLY2_1_GPIO_Port, SDIN_3V3_GTDLY2_1_Pin, GPIO_PIN_SET);}
#define SDIN_3V3_GTDLY2_1_L         {HAL_GPIO_WritePin(SDIN_3V3_GTDLY2_1_GPIO_Port, SDIN_3V3_GTDLY2_1_Pin, GPIO_PIN_RESET);}
#define SCLK_3V3_GTDLY2_1_H         {HAL_GPIO_WritePin(SCLK_3V3_GTDLY2_1_GPIO_Port, SCLK_3V3_GTDLY2_1_Pin, GPIO_PIN_SET);}
#define SCLK_3V3_GTDLY2_1_L         {HAL_GPIO_WritePin(SCLK_3V3_GTDLY2_1_GPIO_Port, SCLK_3V3_GTDLY2_1_Pin, GPIO_PIN_RESET);}
 工程代码在实际项目中使用。
本文设计资料资源参考如下连接
NB6L295MMCU设计参考,含工程代码使用分析手册等资料,代码工程在实际项目中多次重复使用,加速NB6L295M的设计资源-CSDN文库

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: NB6L295M MCU 设计参考