zoukankan      html  css  js  c++  java
  • MSP430的CAN通信发送

    1. 电路图如下,RE是接收使能,DE是发送使能,看图的话,这个CAN只支持半双工

    2. 使用MSP430F149,以下代码只有发送,其实用的是串口

     1 #include  <msp430x14x.h>
     2 
     3 #define DRE_out     P3DIR |= BIT3     //连接485芯片的DE,RE端口的IO设置为输出状态
     4 #define DE          P3OUT |= BIT3     //设置485芯片处于发送状态 
     5 #define RE          P3OUT &= ~BIT3    //设置485芯片处于接收状态
     6 
     7 void Set_UART1(void);
     8 
     9 /****************主函数****************/
    10 void main(void)
    11 {
    12   
    13     WDTCTL = WDTPW + WDTHOLD;                 //关闭看门狗
    14     P6DIR |= BIT2;P6OUT |= BIT2;              //关闭电平转换
    15     DRE_out;
    16     DE;
    17     Set_UART1();
    18     
    19     while (1)
    20     {
    21         TXBUF1 = 0xaa; 
    22         while(!(IFG2 & UTXIFG1));               //等待发送结束 
    23         IFG2 &= ~UTXIFG1;
    24     }
    25 }
    26 /*******************************************
    27 函数名称:Set_UART1
    28 功    能:设置MCU的UART1对应的寄存器
    29 参    数:无
    30 返回值  :无
    31 ********************************************/
    32 void Set_UART1(void)
    33 {
    34     P3SEL |= 0xC0;                            //将P3.6,P3.7选做UART1的通信端口
    35     ME2 |= UTXE1 + URXE1;                     //使能USART1的TXD和RXD
    36     UCTL1 |= CHAR;                            //选择8-bit字符
    37     UTCTL1 |= SSEL0;                          //驱动时钟选择ACLK
    38     UBR01 = 0x0D;                             //波特率2400
    39     UBR11 = 0x00;
    40     UMCTL1 = 0x6B;                            //调整
    41     UCTL1 &= ~SWRST;                          //初始化UART状态机
    42 }
  • 相关阅读:
    MyEclipse配置DataBase Explorer
    Eclipse 如何设置注释的模板
    游戏开发技术
    static_cast 与reinterpret_cast
    一个人的成功取决于晚上的8点至10点经典语录必读
    发送消息给线程
    转载ofstream和ifstream详细用法
    Effective STL笔记
    Making your C++ code robust
    TGA文件
  • 原文地址:https://www.cnblogs.com/429512065qhq/p/8076058.html
Copyright © 2011-2022 走看看