共2条
1/1 1 跳转至页
MAX1240 帮忙看看MAX1240的程序!
问
没有数值!!
#include <MSP430x14x.h>
#define uchar unsigned char
#define uint unsigned int
#define sclk_1 (P1OUT|=BIT5) //P1.5
#define sclk_0 (P1OUT&=~BIT5)
#define cs_1 (P1OUT|=BIT6) //P1.6
#define cs_0 (P1OUT&=~BIT6)
uint ADCVALUE=0; //DO P1.7
unsigned char RcvByte(void)
{
unsigned int retc;
unsigned char BitCnt;
retc=0;
cs_0;
sclk_0;
_NOP();
sclk_1; //前续脉冲
for(BitCnt=0;BitCnt<16;BitCnt++)
{
_NOP();
sclk_0; /*置时钟线为低,准备接收数据位*/
_NOP();
_NOP();
_NOP();
_NOP();
_NOP();
sclk_1; /*置时钟线为高使数据线上数据有效*/
_NOP();
_NOP();
retc=retc<<1;
if((P1IN&BIT7)==1) retc=retc+1; /*读数据位,接收的数据位放入retc中 */
_NOP();
_NOP();
}
cs_1;
_NOP();
_NOP();
return(retc>>4);
}
void main(void)
{
WDTCTL=WDTPW+WDTHOLD;//终止看门
P1OUT|=BIT5; //CS=1
P1DIR|=BIT5+BIT6; //CS CLK OUT
ADCVALUE=RcvByte();
_NOP();
while(1)
{_NOP();
_NOP();
}
}
#include <MSP430x14x.h>
#define uchar unsigned char
#define uint unsigned int
#define sclk_1 (P1OUT|=BIT5) //P1.5
#define sclk_0 (P1OUT&=~BIT5)
#define cs_1 (P1OUT|=BIT6) //P1.6
#define cs_0 (P1OUT&=~BIT6)
uint ADCVALUE=0; //DO P1.7
unsigned char RcvByte(void)
{
unsigned int retc;
unsigned char BitCnt;
retc=0;
cs_0;
sclk_0;
_NOP();
sclk_1; //前续脉冲
for(BitCnt=0;BitCnt<16;BitCnt++)
{
_NOP();
sclk_0; /*置时钟线为低,准备接收数据位*/
_NOP();
_NOP();
_NOP();
_NOP();
_NOP();
sclk_1; /*置时钟线为高使数据线上数据有效*/
_NOP();
_NOP();
retc=retc<<1;
if((P1IN&BIT7)==1) retc=retc+1; /*读数据位,接收的数据位放入retc中 */
_NOP();
_NOP();
}
cs_1;
_NOP();
_NOP();
return(retc>>4);
}
void main(void)
{
WDTCTL=WDTPW+WDTHOLD;//终止看门
P1OUT|=BIT5; //CS=1
P1DIR|=BIT5+BIT6; //CS CLK OUT
ADCVALUE=RcvByte();
_NOP();
while(1)
{_NOP();
_NOP();
}
}
共2条
1/1 1 跳转至页
我要赚赏金
