美图欣赏 | 设为首页 | 加入收藏 | 网站地图

当前位置:电脑中国 > 网络 > 通信协议 >

MSP430中继通讯协议

2018-10-14 12:18|来源:未知 |作者:dnzg |点击:
//===========================================================================//  
//MSP430接收中继端协议——徐方鑫//  
//通讯协议格式为:16进制发送//  
//5309AAAAAAAAAAAA45//  
//53为数据包打头,字符's'//  
//09为字符串长度,char类型//  
//其后AAAAAA等为数据内容//  
//45为数据包结尾,字符'E'//  
//===========================================================================//  
#include"msp430x54x.h"  
#include  
#include  
#include  
#include"PIN_DEF.H"  
#defineucharunsignedchar  
#defineuintunsignedint  
#defineFLL_FACTOR749//FLL_FACTOR:DCO倍频系数  
#defineDATA_BAG_ERROR_MAX0x5000//最大数据包长度,int类型,串口所用8位基本都支持  
charevent;//待机模式事件  
uintData_Bag_Length,Data_Length;//Data_Bag_Leangth接收数据包的长度  
charRXBuffer[20];//接收缓存  
//***************************************************************************//  
////  
//初始化主时钟:MCLK=XT1×(FLL_FACTOR+1)//  
////  
//***************************************************************************//  
voidInit_CLK(void)  
{  
WDTCTL=WDTPW+WDTHOLD;//关看门狗  
P7SEL|=0x03;//端口选择外部低频晶振XT1  
UCSCTL6&=~XT1OFF;//使能外部晶振  
UCSCTL6|=XCAP_3;//设置内部负载电容  
UCSCTL3|=SELREF_2;//DCOref=REFO  
UCSCTL4|=SELA_0;//ACLK=XT1  
__bis_SR_register(SCG0);//关闭FLL控制回路  
UCSCTL0=0x0000;//设置DCOx,MODx  
UCSCTL1=DCORSEL_7;//设置DCO振荡范围  
UCSCTL2=FLLD__1+FLL_FACTOR;//Fdco=(FLL_FACTOR+1)×FLLRef=(649+1)*32768=21.2992MHz  
__bic_SR_register(SCG0);//打开FLL控制回路  
__delay_cycles(1024000);  
do  
{  
UCSCTL7&=~(XT2OFFG+XT1LFOFFG+XT1HFOFFG+DCOFFG);//清除XT2,XT1,DCO错误标志  
SFRIFG1&=~OFIFG
(责任编辑:dnzg)
新锦江娱乐 关闭广告
新锦江娱乐 关闭广告