atmega8+lcd 3310=ампермерт помогите найти схемку
atmega8+lcd 3310=ампермерт помогите найти схемку
подскажите кто встречал. ищу схемку с приминением атмеги 8 и дисплея от 3310 для измерения тока (до 1,5-2 Ампер)
- adrenocrome
- Потрогал лапой паяльник
- Сообщения: 365
- Зарегистрирован: Вт окт 21, 2008 15:03:06
- Откуда: moscow
- Контактная информация:
Re: atmega8+lcd 3310=ампермерт помогите найти схемку
По ссылке схема блока питания.
Выброси все, что не нужно и прикрути к контроллеру дисп от 3310. Элементарно же =)
http://hardlock.org.ua/download/file.php?id=551&mode=view/sch.gif
А вот у TI есть готовые токовые датчики с цифровым выходом
http://focus.ti.com/analog/docs/gencontent.tsp?familyId=57&genContentId=28023
Но сдается мне, что это очередной вопрос из серии "а что с прошивкой делать, в программированиии не силён."
Выброси все, что не нужно и прикрути к контроллеру дисп от 3310. Элементарно же =)
http://hardlock.org.ua/download/file.php?id=551&mode=view/sch.gif
А вот у TI есть готовые токовые датчики с цифровым выходом
http://focus.ti.com/analog/docs/gencontent.tsp?familyId=57&genContentId=28023
Но сдается мне, что это очередной вопрос из серии "а что с прошивкой делать, в программированиии не силён."

День прошёл, а ты всё жив
- РадиоЛоматель
- Мудрый кот
- Сообщения: 1733
- Зарегистрирован: Чт авг 21, 2008 22:03:30
- Откуда: Одесса(Украина)
- Контактная информация:
Re: atmega8+lcd 3310=ампермерт помогите найти схемку
Не, из спортивного интереса, конечно, интересно, но зачем в амперметре ЖКИ от 3310? Не лучше ли просто светодиодный семисегментный индикатор? в бп такое всегда красиво смотрится. 
(*tmp) &= ~( ( (param1 & (1<<PARAM1_BIT6)) || ((param2==PARAM2_TRUE)&&(--param3)) ) ? (param1 & (~param2)) : (Func1() | FUNC1_FLAGS) );
Люблю Си...
Люблю Си...
Re: atmega8+lcd 3310=ампермерт помогите найти схемку
странные вопросы задаете. если бы мог наверное сюда не писал а сидел собирал. да, правильно а что с прошивкой делать?
почему именно атмега8 и жки от 3310. потому что более ничего нет. кто может помогите
почему именно атмега8 и жки от 3310. потому что более ничего нет. кто может помогите
- zhu4er
- Вымогатель припоя
- Сообщения: 544
- Зарегистрирован: Пт июн 04, 2010 17:40:13
- Откуда: Непокорный город-герой Севастополь
Re: atmega8+lcd 3310=ампермерт помогите найти схемку
witia03 писал(а):странные вопросы задаете. если бы мог наверное сюда не писал а сидел собирал. да, правильно а что с прошивкой делать?
почему именно атмега8 и жки от 3310. потому что более ничего нет. кто может помогите
Гы.. прошивку писать надо... А неподготовленному радиолюбителю такой прибор не под силу. Надо планомерно учится.
Даже у стен есть уши...
Re: atmega8+lcd 3310=ампермерт помогите найти схемку
zhu4er писал(а):witia03 писал(а):странные вопросы задаете. если бы мог наверное сюда не писал а сидел собирал. да, правильно а что с прошивкой делать?
почему именно атмега8 и жки от 3310. потому что более ничего нет. кто может помогите
Гы.. прошивку писать надо... А неподготовленному радиолюбителю такой прибор не под силу. Надо планомерно учится.
да уж понятно что не рисовать. подсказали бы по существу лучше.
библиотека на дисплей есть. инициализировать получается. там делов то по идее - кот наплакал- измерять напряжение на резисторе и делить на сопротивление этого резистора а данные выводить на дисплей. но я не знаю (совсем не знаю) как заставить микроконтроллер определять напряжение на одном из выводов. натолкните на мысль а я дальше сам.
например-
бесконечный цикл само собой
напряжение записывается в переменную а дальше я сам
-
PE_VK
- Первый раз сказал Мяу!
- Сообщения: 21
- Зарегистрирован: Вт ноя 16, 2010 23:19:40
- Откуда: Украина, г. Макеевка
Re: atmega8+lcd 3310=ампермерт помогите найти схемку
adrenocrome писал(а):По ссылке схема блока питания.
Выброси все, что не нужно
http://hardlock.org.ua/download/file.php?id=551&mode=view/sch.gif
Я так понял, на приведеной схеме за измерение отвечает LM324(1) и с его выхода сигнал
поступает на вход АЦП Меги8, а все остальное лишнее.
Re: atmega8+lcd 3310=ампермерт помогите найти схемку
давно баловался с прошивой, как в CV вызвать функцию оценки 255 раз в сек и выбрать среднее?
и какой формулой сделать оценку без округления ,я обычно делал на целые вольты
и какой формулой сделать оценку без округления ,я обычно делал на целые вольты
- adrenocrome
- Потрогал лапой паяльник
- Сообщения: 365
- Зарегистрирован: Вт окт 21, 2008 15:03:06
- Откуда: moscow
- Контактная информация:
Re: atmega8+lcd 3310=ампермерт помогите найти схемку
witia03 писал(а):да уж понятно что не рисовать. подсказали бы по существу лучше.
библиотека на дисплей есть. инициализировать получается. там делов то по идее - кот наплакал- измерять напряжение на резисторе и делить на сопротивление этого резистора а данные выводить на дисплей. но я не знаю (совсем не знаю) как заставить микроконтроллер определять напряжение на одном из выводов. натолкните на мысль а я дальше сам.
например-
бесконечный цикл само собой
напряжение записывается в переменную а дальше я сам
Да почитай хотя бы тот же несчастный курс авр123
Есть там у него про АЦП. Да и пример на кодвижн (а это на мой взгляд самая простая IDE).
А писать паршивку за тебя никто не будет.
День прошёл, а ты всё жив
Re: atmega8+lcd 3310=ампермерт помогите найти схемку
#define ADC_VREF_TYPE 0x00
// Read the AD conversion result
unsigned int read_adc(unsigned char adc_input)
{
ADMUX=adc_input | (ADC_VREF_TYPE & 0xff);
delay_us(10);
ADCSRA|=0x40;
while ((ADCSRA & 0x10)==0);
ADCSRA|=0x10;
return ADCW;
}
unsigned int n,k,a,i,y;
void main(void)
{
MCUCR=0x00;
TIMSK=0x00;
ACSR=0x80;
SFIOR=0x00;
// ADC initialization
// ADC Clock frequency: 1000,000 kHz
// ADC Voltage Reference: AREF pin
ADMUX=ADC_VREF_TYPE & 0xff;
ADCSRA=0x83;
// LCD module initialization
LcdInit();
while (1)
{
LcdMode(2);
n=read_adc(0); //порты
k=read_adc(1);
a=read_adc(2);
i=read_adc(3);
y= ((((long int)n*500)/1024)/3); // счёт вольт
{
{sprintf (lcd_buf, "v=%u", n); }
LcdString(2,2);
{sprintf (lcd_buf, "v=%u", y); }
LcdString(2,3);
{sprintf (lcd_buf, "v=%u", a); }
LcdString(2,4);
{sprintf (lcd_buf, "v=%u", i); } // область
LcdString(2,5);
delay_ms(500);
LcdUpdate();
}
}
}
я делал так ,но пульсации велики и нету значений после точки но для начала покатит
// Read the AD conversion result
unsigned int read_adc(unsigned char adc_input)
{
ADMUX=adc_input | (ADC_VREF_TYPE & 0xff);
delay_us(10);
ADCSRA|=0x40;
while ((ADCSRA & 0x10)==0);
ADCSRA|=0x10;
return ADCW;
}
unsigned int n,k,a,i,y;
void main(void)
{
MCUCR=0x00;
TIMSK=0x00;
ACSR=0x80;
SFIOR=0x00;
// ADC initialization
// ADC Clock frequency: 1000,000 kHz
// ADC Voltage Reference: AREF pin
ADMUX=ADC_VREF_TYPE & 0xff;
ADCSRA=0x83;
// LCD module initialization
LcdInit();
while (1)
{
LcdMode(2);
n=read_adc(0); //порты
k=read_adc(1);
a=read_adc(2);
i=read_adc(3);
y= ((((long int)n*500)/1024)/3); // счёт вольт
{
{sprintf (lcd_buf, "v=%u", n); }
LcdString(2,2);
{sprintf (lcd_buf, "v=%u", y); }
LcdString(2,3);
{sprintf (lcd_buf, "v=%u", a); }
LcdString(2,4);
{sprintf (lcd_buf, "v=%u", i); } // область
LcdString(2,5);
delay_ms(500);
LcdUpdate();
}
}
}
я делал так ,но пульсации велики и нету значений после точки но для начала покатит
