共2条
1/1 1 跳转至页
AD,BIS,XX,amp,P6SEL,ad 使用AD的时候,我的I/O不用BIS.B #XX,&P6SEL,可以启动ad工作吗?

问
不设BIS.B #XX,&P6SEL,输入不会连接到ADC内核上。
答 1:
引用:
答 2:
引用:
答 3:
引用:
答 4:
引用:
答 5:
用下面的例程试试:
#include "MSP430x14x.h" // Standard Equations
void main(void)
{
unsigned int i;
WDTCTL = WDTPW+WDTHOLD; // Stop watchdog timer
P6SEL |= 0x01; // Enable A/D channel A0
//P6SEL |= 0x08;
ADC12CTL0 = ADC12ON+SHT0_2+REFON+REF2_5V; // Turn on and set up ADC12
ADC12CTL1 = SHP; // Use sampling timer
ADC12MCTL0 = SREF_1; // Vr+=Vref+
for ( i=0; i<0x3600; i++) // Delay for reference start-up
{
}
ADC12CTL0 |= ENC; // Enable conversions
while (1)
{
ADC12CTL0 |= ADC12SC; // Start conversion
//while ((ADC12IFG & BIT0)==0);
while ((ADC12IFG & BIT0)==0);
_NOP(); // SET BREAKPOINT HERE
}
} 答 6: 还有一个问题
有个BUZY位专门用来判断单通道单次转换的
这个可以用吗?
我用了以后,感觉有点不是很稳定,
不知道用这个位判断好还是用ADIFG位判断好呢?
#include "MSP430x14x.h" // Standard Equations
void main(void)
{
unsigned int i;
WDTCTL = WDTPW+WDTHOLD; // Stop watchdog timer
P6SEL |= 0x01; // Enable A/D channel A0
//P6SEL |= 0x08;
ADC12CTL0 = ADC12ON+SHT0_2+REFON+REF2_5V; // Turn on and set up ADC12
ADC12CTL1 = SHP; // Use sampling timer
ADC12MCTL0 = SREF_1; // Vr+=Vref+
for ( i=0; i<0x3600; i++) // Delay for reference start-up
{
}
ADC12CTL0 |= ENC; // Enable conversions
while (1)
{
ADC12CTL0 |= ADC12SC; // Start conversion
//while ((ADC12IFG & BIT0)==0);
while ((ADC12IFG & BIT0)==0);
_NOP(); // SET BREAKPOINT HERE
}
} 答 6: 还有一个问题
有个BUZY位专门用来判断单通道单次转换的
这个可以用吗?
我用了以后,感觉有点不是很稳定,
不知道用这个位判断好还是用ADIFG位判断好呢?
共2条
1/1 1 跳转至页
回复
打赏帖 | |
---|---|
【STM32F769】AI之与本地deepseek对接被打赏50分 | |
Buck电路工作在CCM模式下电感电流的计算公式是什么?被打赏5分 | |
buck电路工作原理被打赏5分 | |
基于MSPM0L1306的MODBUS-RTU协议通讯实验被打赏100分 | |
我想要一部加热台+多合一调试工具被打赏18分 | |
每周了解几个硬件知识+485硬件知识分享被打赏10分 | |
【换取手持数字示波器】树莓派PICO调试器官方固件本地化部署实践被打赏24分 | |
【换取手持数字示波器】分享一个KEIL无法识别CMSIS-DAP调试器的解决办法被打赏20分 | |
【换取手持数字示波器】分享一个自制的ArduinoNano扩展板底板被打赏23分 | |
【换取手持示波器】树莓派PICOW网页烟花被打赏18分 |