-
找到问题了 延时要扩大十倍。。。
-
应该是可以的
-
学习一下
-
奇怪了 为什么 我显示是70多呢。。。
int main( void )
{
WDTCTL=WDTPW+WDTHOLD; //关看门狗
P1DIR |=BIT7+BIT5+BIT6+BIT0;
BCSCTL1 =CALBC1_1MHZ; //设定DCO 为1MHZ
DCOCTL =CALDCO_1MHZ;
ADC10CTL0 = ADC10ON+REFON+ADC10SHT_3+SREF_1; // 设置 ADC10, 参考电压1.5v, 采样时间
ADC10CTL1 = INCH_10; // 用采样定时器
ADC10CTL0|=ADC10IE; // 使能 ADC10IFG.0
while(1)
{
ADC10CTL0 |=ENC+ADC10SC; //启动AD 转换
_BIS_SR(GIE+CPUOFF); //开总中断并进入低功耗
temp_value=((ad_value*1.5/1023)-0.986)/0.0035; //计算温度
Temp2 = (int)temp_value/ 10;
Temp1 =(int)temp_value % 10;
Temp0 = ((int)(temp_value*100) % 100)/10;
Initialize_LCD();
pos(0, 0);
write_string( "WENDU:");
pos(0,3);
write_data(Temp2 + '0');
write_data(Temp1 + '0');
write_data('.');
write_data(Temp0 + '0');
write_data('C');
delay_ms(500); // delay 1 second
}
}
#pragma vector = ADC10_VECTOR //ADC10 中断服务
__interrupt void adc_isr(void)
{
ad_value=ADC10MEM; //将AD 采样值存入ad_value
_BIC_SR_IRQ(CPUOFF); //退出低功耗0
}
-
请教!为什么我的 TAR只有最大255呢。。。怎么设置呢
-
我的延时 没有那么精确 用的内部晶振1m 8m我都试过 都能使 不过稳定性有差异 串口通信 你线连得对不对啊
-
没错啊 找时间给你贴图
-
应该是copy的时候出问题了吧。。原来是这样子的
void delay(unsigned int t)
{
unsigned int i,j;
for(i=0; i
-
是单通道单次转换还是多次 怎么没见设置呢
-
用ad采集128个二进制数 存成一个数组显示在12864上 数组怎么弄。。