MSP430F149学习之路——SPI
代码一:
//******************************************************************************
//Description:SPI slave talks to SPI master using 3-wire mode. Data is sent
//to the master starting at 0x00 and increments. Received data from the
//master is expected to start at 0xff and decrements with each transmission.
//******************************************************************************
#include <msp430x14x.h>
char MST_data = 0x00,SLV_data = 0XFF;
void main()
{
WDTCTL = WDTPW + WDTHOLD; P6DIR |= BIT0;
P6OUT |= BIT0;
P3SEL = 0X0E; //P3.1,2,3 SPI option select
P3DIR |= BIT1;
P3OUT |= BIT1; U0CTL |= SWRST + SYNC + MM +CHAR; //master spi 8-bit
U0TCTL |= CKPH + SSEL1 + STC;
U0TCTL &= ~CKPL; U0BR0 = 0X02; //SPICLK = SMCLK/2
U0BR1 = 0X00;
U0MCTL = 0X00; ME1 = USPIE0;
U0CTL &= ~SWRST;
IE1 |= URXIE0; //receive enable
_EINT(); while()
{
TXBUF0 = MST_data;
LPM0;
}
}
#pragma vector=USART0RX_VECTOR
__interrupt void SPI_RX()
{
P6OUT ^= BIT0;
while((IFG1 & UTXIFG0)==);
if(U0RXBUF == SLV_data)
{
SLV_data = SLV_data - ;
MST_data = MST_data + ;
U0TXBUF = MST_data;
}
else
TXBUF0 = MST_data;
}
代码二:
#include <msp430x14x.h>
char MST_data = 0x00,SLV_data = 0xff;
void main()
{
WDTCTL = WDTPW + WDTHOLD;
P3SEL = 0X0E;
UOCTL = CHAR + SYNC + SWRST;
U0TCTL = CKPL + SSEL1 + STC;
U0CLT &= ~CKPH; ME1 |= USPIE0;
U0CTL &= ~SWRST;
IE1 |= URXIE0;
_EINT();
while()
{
TXBUF0 = SLV_data;
LMP4;
}
}
#pragma vector=USART0RX_VECTOR
__interrupt void USART0_RX()
{
while((IFG1 & OFIFG)==);
if(U0RXBUF == MST_data)
{
SLV_data = SLV_data - ;
MST_data = MST_data + ;
TXBUF0 = SLV_data;
}
else
TXBUF0 = SLV_data;
}
MSP430F149学习之路——SPI的更多相关文章
- dubbo学习之路-SPI机制
dubbo学习之路-SPI机制 1.SPI 1.1Java SPI 原理 SPI是service provider interface简称.在java JDK中 内置的一种服务提供发现机制.它解决在一 ...
- MSP430F149学习之路——AD
代码一:Timer_A触发转换 #include <msp430x14x.h> void main() { WDTCTL = WDTPW + WDTHOLD; P6SEL |= BIT0; ...
- MSP430F149学习之路——蓝牙模块
注意蓝牙模块的接法! #include <msp430x14x.h> ]; ; void int_clk() { BCSCTL1 &= ~XT2OFF; BCSCTL2 |= SE ...
- MSP430F149学习之路——UART
代码一: #include <msp430x14x.h> void int_clk() { BCSCTL1 &= ~XT2OFF; BCSCTL2 |= SELM_2 + SELS ...
- MSP430F149学习之路——比较器Comparaor_A
代码一: #include <msp430x14x.h> ; void int_clk() { BCSCTL1 &= ~XT2OFF; BCSCTL2 |= SELM_2 + SE ...
- MSP430F149学习之路——PWM信号
代码一: /******************************* 程序功能:ACLK=32768Hz PWM波 T=512/32768 占空比75% ******************** ...
- MSP430F149学习之路——捕获/比较模式
1.捕获模式 #include <msp430x14x.h> unsigned ,last1=; unsigned ,j=; void mian(void) { WDTCTL = WDTP ...
- MSP430F149学习之路——时钟1
1.看门狗产生方波 #include <msp430x14x.h> void main() { WDTCTL = WDT_MDLY_32; IE1 |= WDTIE; P1DIR |= B ...
- MSP430F149学习之路——时钟2
代码一: /************************** 功能:LED每隔1秒闪烁一次 ****************************/ #include <msp430x14 ...
随机推荐
- Oracle远程数据库一直连接不上的原因:多了个空格
- SparkSQL项目中的应用
Spark是一个通用的大规模数据快速处理引擎.可以简单理解为Spark就是一个大数据分布式处理框架.基于内存计算的Spark的计算速度要比Hadoop的MapReduce快上100倍以上,基于磁盘的计 ...
- DBA_Oralce Enterprise Manager OEM管理应用介绍(案例)
2014-08-16 BaoXinjian
- OAF_OAF Exception Handling异常处理(概念)
2014-06-12 Created By BaoXinjian
- HDU 2717 Catch That Cow(BFS)
Catch That Cow Farmer John has been informed of the location of a fugitive cow and wants to catch he ...
- 控制WIFI状态
1.控制WIFI public class MainActivity extends Activity { private Button startButton = null; private But ...
- Android学习笔记01
一. 创建Activity的要点: 1.继承Activity类2.需要重写onCreate方法3.需要在AndroidManifest.xml注册4.为Activity添加控件和内容5.setCont ...
- 设置presentVC跟PushVC一样的效果即从右到左的动画
SettingViewController *VC = [[SettingViewControlleralloc]init]; VC.view.backgroundColor = [UIColorwh ...
- C#异步编程 z
http://www.cnblogs.com/fangyz/p/5134018.html 从.NET4.5开始,用async和await关键字再加上Task.Run是一个非常不错的异步编程模型. 1. ...
- vacabulary1
The hard hat is rigid,so nothing will hurt my head. glue 胶水vegetarian 素食者: 素食主义者:素食的 North Korea 朝鲜S ...