K60学习笔记五:串行通信的时序分析

串行通信的特点:数据以字节为单位,按位的优先级来进行传送
通信涉及通信协议
通信协议按照时间来分:可分为同步通信和异步通信
按照发送数据的位宽来分可分为:串行通信和并行通信
串行通信又分为单工,半双工,全双工
同步通信是面向比特的传输
异步通信是面向字符的传输,需要事先约定波特率
异步通信的空闲格式为1,发送器通过0来表示传送开始,随后传送数据位,再然后发送一到两位的停止位,来停止。
从开始位到停止位称为一帧。
因为没发送一个数据都要发送一个开始位,所以称为异步

串行通信的波特率:
位长:称为位的持续时间,其倒数就是单位时间内传递的位数。人们把每秒传送的位数称为波特率

看了一下数据手册UART 的配置寄存器好多
看了一下书:
UART寄存器初始化步骤:
使能UART时钟
设置UART的服用引脚
先禁止UART发送和接收,以便后续配置UART
设置UART的数据格式,奇偶校验位–停止位数固定为1
设置UART的波特率
如果需要FIFO,还要使能FIFO
使能UART发送和接收
—配置过程好复杂··
PLL锁相环,可以将晶振输出频率Fosc,倍增几倍,以满足高速运算需要。 在不连接PLL时,CPU时钟和晶振时钟相同,即CCLK = Fosc。 当使能PLL并连接,则CCLK = Fosc * M,M为倍频数。
锁相环和锁频环的锁定以及捕获、同步等概念是有区别的。对锁相环而言,所谓锁定是指VCO频率与同步信号频率完全一致,但允许有稳定相位误差;而对锁频环而言,则在锁定时可允许VCO与同步信号有小的稳态频率误差。

关于晶振:
时钟电路
MK60 的时钟电路包括两部分,一个是芯片的主晶振,用于产生芯片和外设所需要的工作时钟;另外一个是实时时钟RTC 的时钟电路,实时时钟(RTC-Real Time Clock)提供一套计数器在系统上电和关闭操作时对时间进行测量,RTC 消耗的功率非常低。蓝
宙电子的K60 系统板的主晶振使用的是50MHz 的有源晶振。
K60 的RTC 时钟由独立的32.768KHz 振荡器来提供。

void uart_init (UARTn_e uratn, uint32 baud)
{
    register uint16 sbr, osr;
    uint8 temp;
    uint32 sysclk,tmp_baud;     //时钟
    uint16 tmp_diff=~0,tmp_sbr,diff_abs_baud;

    /* 配置 UART功能的 复用管脚 */
    switch(uratn)
    {
    case UART0:
        SIM_SCGC4 |= SIM_SCGC4_UART0_MASK;      //使能 UART0 时钟

        if(UART0_RX_PIN == PTA1)
        {
            port_init( UART0_RX_PIN, ALT2);
        }
        else if((UART0_RX_PIN == PTA15)  || (UART0_RX_PIN == PTB16) || (UART0_RX_PIN == PTD6) )
        {
            port_init( UART0_RX_PIN, ALT3);
        }
        else
        {
            ASSERT(0);                           //上诉条件都不满足,直接断言失败了,设置管脚有误?
        }

        if(UART0_TX_PIN == PTA2)
        {
            port_init
  • 0
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值