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
嗨。
有人能告诉我问题是什么以及如何消除它吗?
#include <MSP40.0> static unsigned int var =0; static unsigned int var1 =0; void adcinit () { ADC12CTL0 = ADC12SHT0_2 | ADC12ON | ADC12MSC; /*采样时间,S&H=16,ADC12开*/ ADC12CTL1 = ADC12SHP | ADC12CONSEQ0 | ADC12CONSEQ1; /*使用采样计时器*/ ADC12CTL2 || ADC12RES_2; /* 12位转换结果*/ ADC12MCTL0 |= ADC12INCH_0; /* A0 ADC输入选择;Vref=AVCC */ ADC12MCTL1 |= ADC12INCH_1; /* A1 ADC输入选择;Vref=AVCC */ ADC12MCTL2 || ADC12INCH_2; /* A2 ADC输入选择;Vref=AVCC */ ADC12MCTL3 |= ADC12INCH_3; /* A3 ADC输入选择;Vref=AVCC */ ADC12MCTL4 |= ADC12INCH_4; /* A4 ADC输入选择;Vref=AVCC */ ADC12MCTL5 = ADC12INCH_6| ADC12EOS; /* A6 ADC输入选择;Vref=AVCC,序列结束*/ ADC12IER0 = ADC12IE0 | ADC12IE1 | ADC12IE2 | ADC12IE3 | ADC12IE4 | ADC12IE6;/*启用ADC连接完全中断*/ } void clockinit() { /*在配置时钟系统之前超过8MHz的操作。*/ FRCTL0 = FRCTLPW | NWITS_1; //时钟系统设置 CSCTL0_H = CSOKEY >> 8; /*解锁CS寄存器*/ CSCTL1 = DCORSEL | DCOFsel_4; /*将DCO设置为16MHz*/ CSCTL2 =拉美_ VLOCLK | SESS__DCOCLK | SELM__DCOCLK;// SET SMCLK = MCLK = DCO, /* ACLK = VLOCLK*/ CSCTL3 = DIVA__1 | DIVs__1 | DIVM__1; /*设置所有分隔线*/ CSCTL0_H = 0; } int main(void) { WDTCTL = WDTPW | WDTHOLD; //停止WDT __bis_sr_register(GIE); //禁用GPIO通电默认高阻抗模式以激活 //先前配置的端口设置 PM5CTL0 &=~LOCKLP5; clockinit(); adcinit(); } void __attribute__((interrupt (ADC12_vector)) ADC12_IFF_ADC12IZR_ 案例ADC12IV_NONE: 中断; //矢量0:无中断 CASE ADC12IV_ADC12OVIFG:中断; //矢量2:ADC12MEMx溢出 CASE ADC12IV_ADC12TOVIFG:中断; //矢量4:转换时间溢出 CASE ADC12IV_ADC12HIIFG:中断; //向量6:ADC12BHI CASE ADC12IV_ADC12LOIFG:中断; //矢量8:ADC12BLO CASE ADC12IV_ADC12INIFG:中断; //矢量10:ADC12BIN Case ADC12IV_ADC12IFG0: //矢量14:ADC12MEM0 VAR = ADC12MEM0; VAR1 =(var*VAR)/4096 3.3 ; IF (var1 >= 1.82 || var1 <= 1.64) { P2OUT |=BIIT2; P3OUT |=BIT7; } 中断; CASE ADC12IV_ADC12IFG1: //矢量14:ADC12MEM1 VAR = ADC12MEM1; VAR1 =(var*VAR)/4096 3.3 ; IF (var1 >= 0.265) { P2OUT |=BIIT2; P3OUT |=BIT7; } 中断; CASE ADC12IV_ADC12IFG2: //矢量18:ADC12MEM2 VAR = ADC12MEM2; VAR1 =(var*VAR)/4096 3.3 ; IF (var1 >= 0.461) //用于4A。 用于6. { P2OUT |=BIIT2; P3OUT |=BIT7; } 中断; Case ADC12IV_ADC12IFG3: //向量20:ADC12MEM3 VAR = ADC12MEM3; VAR1 =(var*VAR)/4096 3.3 ; IF (var1 >= 3.121 & P2OUT == BIIT2) { P2OUT |=BIIT2; P3OUT |=BIT7; } 中断; CASE ADC12IV_ADC12IFG4: //向量20:ADC12MEM4 VAR = ADC12MEM4; VAR1 =(var*VAR)/4096 3.3 ; IF (var1 >= 3.118 & P3OUT == BIT7) { P2OUT |=BIIT2; P3OUT |=BIT7; } 中断; CASE ADC12IV_ADC12IFG5: //矢量24:ADC12MEM5 /*var = ADC12MEM5; VAR1 =(var*VAR)/4096 3.3 ; IF (var1 >= 4000 || var1 <=300) { P2OUT |=BIIT2; P3OUT |=BIT7; }*/ 中断; CASE ADC12IV_ADC12IFG6:Break; //矢量24:ADC12MEM6 CASE ADC12IV_ADC12IFG7:Break; //矢量26:ADC12MEM7 CASE ADC12IV_ADC12IFG8:Break; //矢量28:ADC12MEM8 CASE ADC12IV_ADC12IFG9:Break; //向量30:ADC12MEM9 CASE ADC12IV_ADC12IFG10:中断; //矢量32:ADC12MEM10 CASE ADC12IV_ADC12IFG11:Break; //矢量34:ADC12MEM11 CASE ADC12IV_ADC12IFG12:中断; //矢量36:ADC12MEM12 CASE ADC12IV_ADC12IFG13:中断; //矢量38:ADC12MEM13 CASE ADC12IV_ADC12IFG14:Break; //向量40:ADC12MEM14 CASE ADC12IV_ADC12IFG15:中断; //矢量42:ADC12MEM15 CASE ADC12IV_ADC12IFG16:Break; //矢量44:ADC12MEM16 CASE ADC12IV_ADC12IFG17:Break; //矢量46:ADC12MEM17 CASE ADC12IV_ADC12IFG18:中断; //矢量48:ADC12MEM18 CASE ADC12IV_ADC12IFG19:中断; //矢量50:ADC12MEM19 CASE ADC12IV_ADC12IFG20:Break; //矢量52:ADC12MEM20 CASE ADC12IV_ADC12IFG21:Break; //矢量54:ADC12MEM21 CASE ADC12IV_ADC12IFG22:中断; //矢量56:ADC12MEM22 CASE ADC12IV_ADC12IFG23:Break; //矢量58:ADC12MEM23 CASE ADC12IV_ADC12IFG24:中断; //向量60:ADC12MEM24 CASE ADC12IV_ADC12IFG25:中断; //矢量62:ADC12MEM25 CASE ADC12IV_ADC12IFG26:Break; //矢量64:ADC12MEM26 CASE ADC12IV_ADC12IFG27:Break; //矢量66:ADC12MEM27 CASE ADC12IV_ADC12IFG28:Break; //矢量68:ADC12MEM28 CASE ADC12IV_ADC12IFG29:Break; //向量70:ADC12MEM29 CASE ADC12IV_ADC12IFG30:中断; //矢量72:ADC12MEM30 CASE ADC12IV_ADC12IFG31:中断; //矢量74:ADC12MEM31 CASE ADC12IV_ADC12RDYIFG:中断; //矢量76:ADC12RDY 默认值:break; } }
上面给出的是完整代码。
提前感谢您的参与。
维斯瓦纳思。