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 ...
随机推荐
- Web通过JS调用客户端
代码实现==> <html> <head> <script language="javascript"> function Run(str ...
- 【Mongodb】3.0 配置身份验证db.createUser()说明
原文地址:http://bbs.51cto.com/thread-1146654-1.html 定义: 创建一个数据库新用户用db.createUser()方法,如果用户存在则返回一个用户重复错误. ...
- Linux的软连接与硬链接
Linux的软连接相当于window系统的快捷方式,如我们桌面的QQ等. 硬连接相当于复制一个文件,但不同的是两个文件内容同步.如创建一个文件A的硬连接B, 如果我修改A里面的内容,同时B中的内容也会 ...
- sealed修饰符
sealed(C# 参考) 当对一个类应用 sealed 修饰符时,此修饰符会阻止其他类从该类继承. 在下面的示例中,类 B 从类 A 继承,但是任何类都不能从类 B 继承. class A {} s ...
- Authentication token manipulation error for ubuntu ubuntu-16.04.1-desktop-amd64
https://ubuntuforums.org/showthread.php?t=1772894 Hi, I faced the same problem when I tried to recov ...
- VS2013 越来越慢
Q.VS2013 原来启动只要大概 一两秒的时间,现在启动最少也得十秒以上.而且打开项目也变得很慢了!求解决方案. 清理一下缓存就好了.devenv.exe /resetuserdata 第二:装了v ...
- OpenGL®ES基础
参考:http://www.cnblogs.com/salam/archive/2016/01/08/5113572.html http://blog.csdn.net/wangyuchun_799/ ...
- ERP_Oracle Fusion Application新一代ERP介绍
2014-12-31 Created By BaoXinjian
- 点击Listview弹出PopWindow的用法
先来张截图: 如图点击listview中的Item在item的下方弹出一个框框,这个框框就是用的Popwindow. 用法很简单:首先写一个PopupWindow并自定义它的布局: ...
- reduce的数目到底和哪些因素有关
reduce的数目到底和哪些因素有关 1.我们知道map的数量和文件数.文件大小.块大小.以及split大小有关,而reduce的数量跟哪些因素有关呢? 设置mapred.tasktracker. ...