[mw_shl_code=c,true]为什么LED1的一直是亮的[/mw_shl_code]
[mw_shl_code=c,true]
[/mw_shl_code]
[mw_shl_code=c,true]中断[/mw_shl_code]
[mw_shl_code=c,true]void TIM3_IRQHandler(void)
{
if (TIM_GetITStatus(TIM3, TIM_IT_Update) != RESET)
{
TIM_ClearITPendingBit(TIM3, TIM_IT_Update);
if((++ADCnumber)==50)ADCnumber=0;
if((++ADC_diffnumber)==10)ADC_diffnumber=0;
ADCbuf_diffarc=ADC_diff[ADC_diffnumber];
adcx=Get_Adc_Average(ADC_Channel_1,10);
temp=(float)adcx*(3.3/4096);
ADCarc[ADCnumber]=temp;
if(ADCnumber>=1)
{
ADC_diff[ADC_diffnumber]=abs(ADCarc[ADCnumber]-ADCarc[ADCnumber-1]);
}
else
{
ADC_diff[ADC_diffnumber]=abs(ADCarc[ADCnumber]-ADCarc[ADCnumber+7]);
}
ADCnum_diffarc=ADCnum_diffarc+ADC_diff[ADC_diffnumber]-ADCbuf_diffarc;
LCD_ShowxNum(172,150,ADCnum_diffarc,3,16,0X80);
if(ADCnum_diffarc>2)
{LED0=0;}
else
{LED0=1;}
delay_us(19950);
}[/mw_shl_code]
[mw_shl_code=c,true]main主函数[/mw_shl_code]
[mw_shl_code=c,true]
[mw_shl_code=c,true]#include "led.h"
#include "delay.h"
#include "key.h"
#include "sys.h"
#include "lcd.h"
#include "usart.h"
#include "adc.h"
#include "timer.h"
int main(void)
{
delay_init();
NVIC_Configuration();
uart_init(9600);
LED_Init();
LCD_Init();
Adc_Init();
TIM3_Int_Init(499,1439);
while(1)
{
GPIO_ResetBits(GPIOE,GPIO_Pin_5);
delay_ms(300);
GPIO_SetBits(GPIOE,GPIO_Pin_5);
delay_ms(300);
}
}
[/mw_shl_code]
[/mw_shl_code]
|