spi从.c
来自「基于MSP430F149的SPI通信实例。 详细请看源文件。有较详细的注释。」· C语言 代码 · 共 38 行
C
38 行
#include<msp430x14x.h>
//从机程序
//当主机发送伪数据请示时(即发送接收中断)从机发送字符串”MSP430"
//波特率由主机UCLK决定,为时钟频率的1/2
void Init();
char Data[20]="0xmsp430";
unsigned char i=0,j;
void main()
{
WDTCTL=WDTPW+WDTHOLD;//关闭看门狗
Init();//UART初始化
_EINT();//通用中断允许
while(1);//主循环
}
void Init()
{
UCTL0&=~SWRST;//SWRST复位,USART允许
UCTL0=CHAR+SYNC;//spi从模式,8位数据
UTCTL0=STC+CKPH;//先定UCLK(32KHZ晶振)为时钟源,3线SPI
ME1=USPIE0;//SPI0模块允许
P3SEL=0x0F;//P3.0~P3.3被模块占用
P3DIR=0x04;//P3.2(SOMI) 设为输出模式
IE1|=URXIE0;//接收中断允许
}
#pragma vector = UART1RX_VECTOR
__interrupt void UART1RX()//UART1中断函数
{
j=RXBUF0;
if(i==6) TXBUF0=0xAA;//发送字符串前导字符0XAA
else TXBUF0=Data[i];//发送字符串
i++;
if(i>6) i=0;
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?