TI中文支持网
TI专业的中文技术问题搜集分享网站

FR4133串口时钟

求助 FR4133 头文件中

#define UCSSEL__UCLK        (0x0000u)    /* USCI 0 Clock Source: UCLK */
#define UCSSEL__MODCLK      (0x0040u)    /* USCI 0 Clock Source: MODCLK */
#define UCSSEL__SMCLK       (0x0080u)    /* USCI 0 Clock Source: SMCLK */

这三个时钟分别对应着多少频率 SMCLK我觉得应该在系统时钟初始化时设置CSCTL4寄存器设定的,其他两个是什么

HG:

他们是不同的时钟类型。还需要选用什么样的时钟本体给这些时钟源。VLOCLK /XT1/REFOCLK/DCO等频率在datasheet中可以看出来。

#define SELMS__DCOCLKDIV (0x0000) /* MCLK and SMCLK Source Select DCOCLKDIV */#define SELMS__REFOCLK (0x0001) /* MCLK and SMCLK Source Select REFOCLK */#define SELMS__XT1CLK (0x0002) /* MCLK and SMCLK Source Select XT1CLK */#define SELMS__VLOCLK (0x0003) /* MCLK and SMCLK Source Select VLOCLK */

你可以对照msp430fr413x_euscia0_uart_01.c理解一下

海是永远流动的天:

回复 HG:

您说的这个是系统时钟吧?我的意思是在串口初始化时 BRCLK选择UCA0CTLW0 |= UCSSEL__UCLK; 这个UCSSEL__UCLK对应着是什么时钟

我知道如果UCA0CTLW0 |= UCSSEL__SMCLK就是选择SMCLK作为串口时钟,SMCLK由你说的可以配置,我不明白UCLK对应着啥?

gaoyang9992006:

回复 海是永远流动的天:

我在21ic.com的论坛找到了个一个人说的关于这个寄存器的内容。

——————————————————————————————————————————

我看了一下那个单片机的技术手册,跟楼主的教程对比了一下,发现了一个问题,就是串口UART可选的时钟有多种,那个MSP430i2xxFamilyUser'sGuide.pdf的231页的结构图上,写的是通UCSSELx寄存器可以选择,UCLK,ACLK,SMCLK,SMCLK,其中SMCLK出现两次,我觉得第四个,当寄存器位对应11时候应该是MCLK,可是我查看了头文件。如下#define UCSSEL__UCLK           (0x0000)       /* USCI 0 Clock Source: UCLK */#define UCSSEL__ACLK           (0x0040)       /* USCI 0 Clock Source: ACLK */#define UCSSEL__SMCLK          (0x0080)       /* USCI 0 Clock Source: SMCLK */没有找到串行收发器使用MCLK的证据,也就是只要这两位的,高一位是1,就是成立的, 可以记作1x.所以不用太纠结,这个直接用库函数操作就很OK了,经过查证那个手册也是没错的,只是没有写清楚。

赞(0)
未经允许不得转载:TI中文支持网 » FR4133串口时钟
分享到: 更多 (0)