📄 main.c
字号:
#include <MSP430x16x.h>
unsigned char Data[1]={0xa5};
void Init_SPI();
void Send_SPI(unsigned char *pBuffer,unsigned char n_byte);
int main(void)
{
WDTCTL=WDTPW+WDTHOLD;
Init_SPI();
TXBUF0=0;
while(1)
{
Send_SPI(Data,1);
}
}
//SPI初始化
void Init_SPI()
{
UCTL0=0x00; //将寄存器的内容清零
UTCTL0=0x00;
UCTL0 &=~SWRST; //UASRT模块允许
UCTL0=CHAR+SYNC+MM; //发送数据为8位,SPI模式,多机模式选择地址位多机协议
UTCTL0=STC+CKPH+SSEL0;
UBR00=0x03; //设置波特率为9600bit/s
UBR10=0x00;
UMCTL0=0x4a;
ME1 |=USPIE0; //SPI模块允许
P3SEL |=0x0f; //设置P3.0~P3.3,P5.0-P5.3为SPI端口
P3DIR |=0x0a; //P3.1、P5.1(SIMO),P3.3、P5.3(UCLK)
}
/****************************
发送数据指令
*****************************/
void Send_SPI(unsigned char *pBuffer,unsigned char n_byte)
{
unsigned char q;
for(q=0;q<n_byte;q++)
{
while((IFG1&UTXIFG0)==0); //判断是否发送完毕
TXBUF0=*pBuffer;
pBuffer++;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -