yyzhen 发表于 2011-8-17 17:13:10

msp430的si4432调试程序

msp430的si4432调试程序
/*
* Copyright (c) 2011,
* All rights reserved.
*
* 当前版本:1.0
* 作者:534117529
* 开始日期:2011年8月10日
*
*/
#include <msp430x14x.h>
#include<string.h>
#include"uart0.h"
#include"spi.h"
#include"rf4432.h"
#define uchar unsigned char
#define uint unsigned int
#define LampOn P1OUT|=BIT1
#define LampOff P1OUT&=~BIT1
#define btn_press (P1IN&BIT0) //p1_0口为按键输入口
//-------------------------------------------射频芯片相关定义--------------------------------
unsigned char         RF4432_RxBuf;
unsigned char         RF4432_TxBuf={0x30,0x31,0x32,3,4,5,6,7,8,9};
unsigned char    A;
/////////////////////////////////////////////////////////////////
//                RF4432_SDI=1;                //SPI数据输入
//                RF4432_SCLK=1;                //SPI时钟输入端口
//                RF4432_SEL=1;                //SPI片选
//                RF4432_SDI=0;                //SPI数据输入
//                RF4432_SCLK=0;                //SPI时钟输入端口
//                RF4432_SEL=0;                //SPI片选
////////////////////////////////////////////////////////////////////
void init_Device(void)
{
P1DIR|=BIT1;//LED口的方向
InitUART();
SPI_Init();
RF4432_Init();
}
void main(void)
{
        WDTCTL = WDTPW + WDTHOLD;               // Stop WDT
      unsigned char i;
        LampOn;
        init_Device();
        UART_Send_Str("初始化完毕....\n");
        RF4432_SetRxMode();       //设置成接收模式
        UART_Send_Str("模块处于接收状态....\n");
        while(1)
        {
              if(RF4432_RxPacket())
                {
                        RF4432_ReadBurestReg(FIFO_ACCESS,RF4432_RxBuf,RF4432_RxBuf_Len);
                        for(i=0;i<RF4432_RxBuf_Len;i++)
                        {
                                UART_Send_Byte(RF4432_RxBuf);        //向串口发送接收到的数据
                                delay_10us(10);
                        }
                        RF4432_SetRxMode();        //设置成接收模式
                       UART_Send_Str("成功接收完毕,恢复到接收状态....\n");               
                }
               
                LampOn; delay(50) ;LampOff;delay(50) ;
                if(btn_press==0)
                {
                     while(btn_press==0);
                     UART_Send_Str("按键被按下,开始发送....\n");
                      RF4432_TxPacket();
                      RF4432_SetRxMode();        //设置成接收模式
                     UART_Send_Str("发送完毕,恢复到接收状态....\n");
                }
                       
                       
       }
}

yyzhen 发表于 2011-8-17 17:14:30

完成程序正在调试,改天再上传...

adamj 发表于 2011-10-18 15:35:22

楼主,求430程序啊!

yyzhen 发表于 2011-11-17 08:53:43

欢迎加入我创建的单片机技术交流群,群号:92381027
无论你是擅长51,avr还是msp430单片机的,用c语言编程都是相通的,欢迎加入。相互学习

duguchengxin 发表于 2011-11-18 09:52:27

我的程序为什么接受不到数据呢?有发送中断,却等不到接受中断。有哪些需要注意的地方呢?请高手指点迷津!!
页: [1]
查看完整版本: msp430的si4432调试程序