请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
器件型号:ADS1234 主题中讨论的其他器件: MSP430FR2355
工具/软件:Code Composer Studio
您好!
我想知道、对于 MSP430、Arduino 和其他微控制器、ADS1234是否存在库或示例代码。
谢谢、
David
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
工具/软件:Code Composer Studio
您好!
我想知道、对于 MSP430、Arduino 和其他微控制器、ADS1234是否存在库或示例代码。
谢谢、
David
尊敬的 David:
我没有这个特定的 FR2355 LP、但代码应如附件所示。
/* LaunchPad 端口的 SPI 配置*/ WDTCTL = WDTPW|WDTHOLD; //停止看门狗计时器 P4SEL0 |= BIT5 | BIT6 | BIT7; //将3-SPI 引脚设置为第二个功能 UCB1CTLW0 |= UCSWRST; //**将状态机置于重置中** UCB1CTLW0 |= UCSYNC|UCMST|UCMSB; // 3引脚、8位 SPI 从器件 //时钟极性高,MSB UCB1CTLW0 |= UCSSEL_SMCLK; // SMCLK UCB1BR0 = 0x01; ///2、fBitClock = fBRCLK/(UCBRx+1)。 UCB1BR1 = 0; // UCB1MCTLW = 0; //无调制 UCB1CTLW0 &=~UCSWRST; //**初始化 USCI 状态机**/* 初始化结束*/ 带符号长整型结果= 0; //从 SPI 端口读取数据*/ while (!(UCB1IFG&UCTXIFG));//确保当前没有任何内容在传输 UCB1TXBUF = 0xff;//发送 NOP 以启动 SCLK while (UCB1TXIFG)!//等待直到所有数据被发送(接收) 结果= UCB1RXBUF;//捕获接收缓冲区 UCB1TXBUF = 0xff;//发送 NOP 来启动 SCLK while (!(UCB1IFG&UCRXIFG);//等待直到所有数据被发送(接收) 结果=(结果< 0xCB1IFG&UCB1XIFG);//等待直到所有数据被发送(接收) //发送 NOP 以启动 SCLK while (!(UCB1IFG&UCRXIFG));//等待直到发送(接收)所有数据 结果=(结果<< 8)| UCB1RXBUF; //正确地对二进制补码进行符号扩展/* if (结果& 0x800000)结果+= 0xFF000000;
此致、
Bob B