ad.c
来自「用ATMEGA8做的AD键盘」· C语言 代码 · 共 42 行
C
42 行
#include<avr/io.h>
#include<avr/interrupt.h>
#include<avr/signal.h>
#include<dianya.h>
#include<hanshu.h>
#define uint unsigned int
#define uchar unsigned char
float g_value;
SIGNAL(SIG_INTERRUPT0)
{GICR&=~_BV(INT0);
delay();delay();delay();delay();delay();delay();delay();delay();delay();delay();
delay();delay();delay();delay();delay();delay();delay();delay();delay();delay();
delay();delay();delay();delay();delay();delay();delay();delay();
ADCSRA|=_BV(ADSC);
}
SIGNAL(SIG_ADC)
{uint p;
cli();
p=ADCL;
p|=(uint)(ADCH<<8);
g_value=p*2.56;
g_value=g_value/1023;
g_value=g_value*1000;
anjian(g_value);
GICR|=_BV(INT0);
sei();
}
int main(void)
{
ioint();PORTB|=_BV(PB3);
PORTC&=~_BV(PC2);PORTC&=~_BV(PC3);PORTC&=~_BV(PC5);
ADMUX=0XC0;//左对齐,通道1
ADCSRA=_BV(ADIE)|_BV(ADEN)|_BV(ADPS1)|_BV(ADPS0);
MCUCR|=_BV(ISC01);
GICR|=_BV(INT0);
sei();
while(1)
{
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?