02.c

来自「msp430和nrf905的例子,联系qqliuyong007@163.com」· C语言 代码 · 共 47 行

C
47
字号

void readswitch(void)//读取输入开关量的状态
{
    unsigned char *p;
    p=(unsigned char *)&SPI1.inputstate;
	txbuf[0]=rxbuf[0];
	txbuf[1]=rxbuf[1];
	txbuf[2]=0x02;                   //?????????格式不确定
	txbuf[3]=0x00;
	txbuf[4]=*p;
	T16=crc16(txbuf,5);
	high8=T16 >> 8;
	low8=T16 & 0xff;
	txbuf[5]=high8;
	txbuf[6]=low8;
	P3OUT |= BIT7;  //P3.7为高电平为发送模式
	flag.transfer_ok=FAULT;
	i=0;
   // if ((IFG1 & UTXIFG0) == 0)     // USART0 TX buffer ready?
   //{
	// do
     //   { 
	//	 TXBUF0=txbuf[i];
	//	 i++;
	//}while(i<=7);
	//	transfer_ok=TRUE;
	//	i=0;
    //}
     do 
  {
  TXBUF1=txbuf[i];
	while((IFG2 & UTXIFG1) == 0)     // USART0 TX buffer ready?
	{
	_NOP();
	}
   i++;	
  }while(i<8);                            //数据个数不确定????
   
	flag.transfer_ok=TRUE;
         i=0;
              for(i=0;i<140;i++)
     {
     rxbuf[i]=0;
     txbuf[i]=0;
     }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?