打印
[STM32F1]

usart 同步模式 从机

[复制链接]
1297|6
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
m191007|  楼主 | 2014-7-31 11:17 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
两个stm32都处于 usart同步模式 能够一个主机一个从机呢?CK信号要如何连接?USART支持智能卡模式,智能卡和 同步模式有什么区别吗?区别是不是只是,把SCEN置一后 tx 和rx内部就连接了,那如果 在同步模式下能实现一主一从,那在智能卡模式下是否能实现 双线 (tx 和clk)的通信
沙发
m191007|  楼主 | 2014-7-31 11:35 | 只看该作者
USART的单线半双工和智能卡模式的区别只是CLK线吗

使用特权

评论回复
板凳
airwill| | 2014-7-31 12:05 | 只看该作者
USART允许用户以主模式方式控制双向同步串行通信。CK脚是USART发送器时钟的输出。
但不支持从模式!

在智能卡模式下 不 能实现双线 (tx 和clk)的通信,

使用特权

评论回复
地板
m191007|  楼主 | 2014-7-31 12:47 | 只看该作者
airwill 发表于 2014-7-31 12:05
USART允许用户以主模式方式控制双向同步串行通信。CK脚是USART发送器时钟的输出。
但不支持从模式!

那USART的单线半双工和智能卡模式的区别只是CLK线吗 能否一个智能卡模式的st去控制另一个单线半双工模式的st呢

使用特权

评论回复
5
m191007|  楼主 | 2014-7-31 16:10 | 只看该作者
airwill 发表于 2014-7-31 12:05
USART允许用户以主模式方式控制双向同步串行通信。CK脚是USART发送器时钟的输出。
但不支持从模式!

配置为开漏输出 但一直抓不到数据
  float temp;
        u16 mantissa;
        u16 fraction;           
        temp=(float)(pclk2*1000000)/(bound*16);//得到USARTDIV
        mantissa=temp;                                 //得到整数部分
        fraction=(temp-mantissa)*16; //得到小数部分         
    mantissa<<=4;
        mantissa+=fraction;
        RCC->APB2ENR|=1<<2;   //使能PORTA口时钟  
        RCC->APB2ENR|=1<<14;  //使能串口时钟
        GPIOA->CRH&=0XFFFFFF0F;//PA9开楼输出
        GPIOA->CRH|=0X000000F0;//PA9开楼输出
//            GPIOA->CRH&=0XFFFFF00F;//IO状态设置
//          GPIOA->CRH|=0X000008B0;//IO状态设置
        RCC->APB2RSTR|=1<<14;   //复位串口1
        RCC->APB2RSTR&=~(1<<14);//停止复位                     
        //波特率设置
        USART1->BRR=mantissa; // 波特率设置         
        USART1->CR1|=0X200C;  //1位停止,无校验位.  禁止RX接收0X2008 使能RX接收0X200C
            USART1->CR3|=1<<3;//HDSEL = 1,选择半双工
            USART1->CR2&=~(1<<14);//LINEN = 0
            USART1->CR2&=~(1<<11);//CLKEN = 0
            USART1->CR3&=~(1<<5);//SCEN = 0
            USART1->CR3&=~(1<<1);//IREN = 0
   
        //使能接收中断
        USART1->CR1|=1<<8;    //PE中断使能
        USART1->CR1|=1<<5;    //接收缓冲区非空中断使能

使用特权

评论回复
6
airwill| | 2014-7-31 16:48 | 只看该作者
为什么不考虑使用 SPI 做同步传输呢?
可以主从, 可以半双工.

使用特权

评论回复
7
m191007|  楼主 | 2014-7-31 17:16 | 只看该作者
airwill 发表于 2014-7-31 16:48
为什么不考虑使用 SPI 做同步传输呢?
可以主从, 可以半双工.

因为SPI是 5线 MOSI MISO,但目前需要一条数据线

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

4

主题

23

帖子

1

粉丝