📄 main.c
字号:
/***********************************************
程序功能:通过RS485端口不停地发送数据0xaa
------------------------------------------------
测试说明:用示波器观察RS485端口A、B信号线上的波形
或者用RS485接收器接收发送的字符。
************************************************/
#include <msp430x14x.h>
#define DRE_out P3DIR |= BIT3 //连接485芯片的DE,RE端口的IO设置为输出状态
#define DE P3OUT |= BIT3 //设置485芯片处于发送状态
#define RE P3OUT &= ~BIT3 //设置485芯片处于接收状态
void Set_UART0(void);
/****************主函数****************/
void main(void)
{
WDTCTL = WDTPW + WDTHOLD; //关闭看门狗
DRE_out;
DE;
Set_UART0();
while (1)
{
TXBUF0 = 0xaa;
while(!(IFG1 & UTXIFG0)); //等待发送结束
IFG1 &= ~UTXIFG0;
}
}
/*******************************************
函数名称:Set_UART0
功 能:设置MCU的UART0对应的寄存器
参 数:无
返回值 :无
********************************************/
void Set_UART0(void)
{
P3SEL |= 0x30; //将P3.4,P3.5选做UART0的通信端口
ME1 |= UTXE0 + URXE0; //使能USART0的TXD和RXD
UCTL0 |= CHAR; //选择8-bit字符、无校验位、1个停止位
UTCTL0 |= SSEL0; //驱动时钟选择ACLK
UBR00 = 0x0D; //波特率2400
UBR10 = 0x00;
UMCTL0 = 0x6B; //调整
UCTL0 &= ~SWRST; //初始化UART状态机
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -