start();
write1byte(address+1); ack();
result_h=read1byte(); ack();
result_l=read1byte(); ack(); stop();
result=result_h*256+result_l; return result; }
uint go_1115(uchar temp) {
uint result_gd; Confige1115(temp); delay_ms(5); result_gd=read1115(); delay_ms(5); return result_gd; }
/////////////////////////////////////////// main() {
uchar i; uint result=0;
WDTCTL = WDTPW + WDTHOLD; //关狗 Ini_Lcd(); //初始化液晶
P1DIR|=BIT0+BIT1+BIT2+BIT4+BIT5; P1OUT|=BIT0+BIT1+BIT2+BIT4+BIT5; SCL_H; //ADS1115 IIC SDA_H; SDA_out;
WDTCTL = WDTPW + WDTHOLD; // Stop WDT ADC10CTL0 = ADC10SHT_2 + ADC10ON + ADC10IE; // ADC10ON, interrupt enabled
30
ADC10CTL1 = INCH_3; // input A1
ADC10AE0 |= 0x02; // PA.1 ADC option select P1DIR&=~BIT7; P1OUT|=BIT7; while(1)
{ LCD_12864(1,0,\——界面设置\ LCD_12864(2,0,\——调整电流\ LCD_12864(3,0,\——电流监测\ LCD_12864(4,0,\——重置界面\ while(P1IN&BIT7) { adc(); anjian(); //tlv5618_init(); // tlv5618(0x04,2047);
// Write_A_B(1, 2, Channal_AB, 1); result=go_1115(channel_0); jieguo[0]=(result/10000)+0x30; jieguo[1]=(result/1000)+0x30; jieguo[2]=(result/100)+0x30; jieguo[3]=(result/10)+0x30; jieguo[4]=(result)+0x30; // while(1); } } }
#pragma vector=ADC10_VECTOR __interrupt void ADC10_ISR(void) {
__bic_SR_register_on_exit(CPUOFF); }
31
// Clear CPUOFF bit from 0(SR)