С малого надо начинать, конечно. Но я,обычно, развожу платы "на будущее", предусматриваю возможные входы-выходы. Ну можно сначала с кварцем, потом добавить маленькую платку с ЧРВ и питанием резервным. На автомобиль DS-ку круто, но опасность есть что ноги перегниют современем (если на двигатель ставить).AndyWorld писал(а):У меня есть Мега 16, два датчика DS18B20. ШИМ на 15 Кгц примерно. Кварц для часиков 4,096Mhz. Или прикрутить реал-тайм часы... еще не решил как быть - I2C тож освоить надо.
Не уверен на счет ШИМ - будет ли "бычить" двигатель. Вдруг загнется. А вот вольтметр обязательно прикручу, а то один раз "попал" не проконтролировал заряд и по метели тащили меня - жесть!
АЦП для 12 вольт
- Реклама
- Сообщения: 1
- Зарегистрирован: Сб май 02, 2009 18:52:27
Делал я подобную конструкцию к своей машине, часиков там только небыло. DS-ки не отгнили, но с помехами от зажигания я устал бороться, и установил родной датчик температуры прикрутив к нему АЦП.
Чтобы вывести на дисплей десятичные числа.
Деление числа с остатком:
Выдернул из своего вполне рабочего проекта.
Деление числа с остатком:
Код: Выделить всё
; 16-разрядное число (r1:r0) делим на 8-разрядное (r3)
; в (r1:r0) получаем результат, в (r2) остаток от деления
clr r2
ldi r16,16
div_loop:
clc
rol r0
rol r1
rol r2
cp r2,r3
brlo div_l1
sub r2,r3
inc r0
div_l1:
dec r16
brne div_loop
1. Не пойму чего это огромное число форумчан уперлись в DS18B20? ну да, простота интерфейса в CV есть мастера и т.п., но я сталкивался с таким явлением: 3 шт DS18B20 лежащие на одном столе в радиусе 15 см показывали температуру с разбегом в 3,4 градуса!!! а на авто так вообще не айс, ИМХО лучще ставить 19.3828 (положительный ТКН) или 23.3828 (отрицательный ТКН) кому что по дуще.AndyWorld писал(а):У меня есть Мега 16, два датчика DS18B20. ШИМ на 15 Кгц примерно.
2. Частота ШИМ для управления двигателем будет определяться силовым ключем который у вас будет применяться. не все ключи на такой частоте будут работать.
зы: а вообще идея хорошая, но опять же ИМХО лучше иметь несколько мелки проциков для разных задач, чем пытаться одной мегой решить кучу проблем, в общем удачи, пишите что получиться.
- Реклама
Вы в какой среде пишете прогу?
Вот, для Code Vision AVR, пример. Только там вывод температуры. Надо вам напряжение - пожалуйста, выводите, что хотите, только в temp забейте предварительно данные из ADCW.
Вот, для Code Vision AVR, пример. Только там вывод температуры. Надо вам напряжение - пожалуйста, выводите, что хотите, только в temp забейте предварительно данные из ADCW.
Код: Выделить всё
#include <lcd> // LCD driver routines
// LCD display buffer
char lcd_buffer[33];
void main(void)
{
char sign;
int temp;
// initialize the LCD
lcd_init(16);
// initialize the I2C bus
i2c_init();
// initialize the LM75 chip with address 0
// hysterezis temperature 20°C
// O.S. temperature 25°C
// O.S. output is active high
lm75_init(0,20,25,1);
// temperature display loop
while (1)
{
// read LM75 temperature *10°C
// from chip with address 0
temp=lm75_temperature_10(0);
sign='+';
if (temp<0)
{
sign='-';
temp=-temp;
};
sprintf(lcd_buffer,"t=%c%i.%u\xdfC",sign,temp/10,temp%10);
// display the temperature
lcd_clear();
lcd_puts(lcd_buffer);
delay_ms(200);
}
}Цапу крутить надо!!! Ку или не ку?
А я вообще не парился. Вот по этой ссылке сделал вольт-амперметр и все ОК!
http://www.avr.4mg.com/custom4_1.html
Сейчас еще два таких же буду делать (есть необходимость).
http://www.avr.4mg.com/custom4_1.html
Сейчас еще два таких же буду делать (есть необходимость).
Цапу крутить надо!!! Ку или не ку?
- Сообщения: 41
- Зарегистрирован: Пн дек 21, 2009 15:16:31
зы: а вообще идея хорошая, но опять же ИМХО лучше иметь несколько мелки проциков для разных задач, чем пытаться одной мегой решить кучу проблем, в общем удачи, пишите что получиться.[/quote]
для меги вовсе не напряг управлять процессами затронутыми выше....
у неё куча аппаратных средств для облечения жизни цпу( тот же шим )..
гораздо проще отладить одно устройство чем несколько.....да и надежность в общем будет хуже на количество этиж же устройств...
для меги вовсе не напряг управлять процессами затронутыми выше....
у неё куча аппаратных средств для облечения жизни цпу( тот же шим )..
гораздо проще отладить одно устройство чем несколько.....да и надежность в общем будет хуже на количество этиж же устройств...
- Сообщения: 76
- Зарегистрирован: Вт фев 09, 2010 20:54:18
- Сообщения: 76
- Зарегистрирован: Вт фев 09, 2010 20:54:18
- Сообщения: 76
- Зарегистрирован: Вт фев 09, 2010 20:54:18
Я как нормальный человек попросил помочь, а ты строишь из себя такого невебенного педераста!Если ты не знаешь латинских букв то это только твои проблемы!Если хочешь то помоги ,как нормальный человек,а если и дальше хочешь казаться умным,то иди ты тогда лесом! С уважением Я!!!
Обижаться на справедливое замечание не есть ГУТ. При таком хамском отношении к другим посетителям Вы помощи не получите. Сэр Мурр.
Обижаться на справедливое замечание не есть ГУТ. При таком хамском отношении к другим посетителям Вы помощи не получите. Сэр Мурр.
- Сообщения: 7
- Зарегистрирован: Чт май 06, 2010 21:09:37
Собралл вольтметр MILLI выложеный ранее. Откомпилил прошивки. Обе вроде работают сначало залил для общего анода на индикаторе крякозаблины, но от изменения напряжения скачут. Потом залил катодную работает правильно. Индикатор приминил Е40281-L.
- Вложения
-
- milli.rar
- Откомпилированые прошивки и платка.
- (8.19 КБ) 309 скачиваний
- Сообщения: 7
- Зарегистрирован: Чт май 06, 2010 21:09:37
В собранном устройстве столкнулся с проблемой запуска вольтметра то запустится то нет показывает 0 или прочую ерунду.
Ещё при установке в авто скачет последняя цифра, хотя тестер кажет ровно.
Ещё при установке в авто скачет последняя цифра, хотя тестер кажет ровно.
Такая же фигня,при включении питания вроде нормально всё,но при подключении нагрузки на индикаторе творится фиг знает что,какаято светомузыка,всё моргает,значений тока не видно толком,цифры бегут.999 писал(а):В собранном устройстве столкнулся с проблемой запуска вольтметра то запустится то нет показывает 0 или прочую ерунду.
Ещё при установке в авто скачет последняя цифра, хотя тестер кажет ровно.
- Сообщения: 60
- Зарегистрирован: Чт окт 29, 2009 23:22:03
Доброго времени суток!!!
Народ нужна помощь- собрал вольтметр на атмеге8 все работает, но показания скачут как бешаные (фильтр на вод ацп поставил ) думаю надо усреднить показания АЦП
Но как?
пробую вот так:
#include <mega8.h>
#include <delay.h>
#include <stdio.h>
#asm
.equ __lcd_port=0x18 ;PORTB
#endasm
#include <lcd.h>
char lcd_buffer[31];
unsigned int result;
unsigned int c;
unsigned int i;
unsigned int r2 ;
unsigned int result2 [64];
void main(void)
{
PORTC=0x00;
MCUCR = 0x0A;
GICR = 0xC0;
lcd_init(16);
while(1){
for(i=0; i<64;i++)
{ result= 0;
ADMUX=0;
ADCSRA=0b11011111; //включаем ацп
result2 = (ADCW*5-ADCW/10); //пишем в масив значение ацп
result= ( result+result2) /i ; //усредняем
}
lcd_gotoxy(0,0);
sprintf(lcd_buffer,"ADC=% umV %u\r\n % u % u",result,i, result2[9] ,c );// записываем в буфер вторые 2 параметра
lcd_puts(lcd_buffer);
}
}
- ни хрена не выходит
Где тут грабли???
Помогите замучился уже
Народ нужна помощь- собрал вольтметр на атмеге8 все работает, но показания скачут как бешаные (фильтр на вод ацп поставил ) думаю надо усреднить показания АЦП
Но как?
пробую вот так:
#include <mega8.h>
#include <delay.h>
#include <stdio.h>
#asm
.equ __lcd_port=0x18 ;PORTB
#endasm
#include <lcd.h>
char lcd_buffer[31];
unsigned int result;
unsigned int c;
unsigned int i;
unsigned int r2 ;
unsigned int result2 [64];
void main(void)
{
PORTC=0x00;
MCUCR = 0x0A;
GICR = 0xC0;
lcd_init(16);
while(1){
for(i=0; i<64;i++)
{ result= 0;
ADMUX=0;
ADCSRA=0b11011111; //включаем ацп
result2 = (ADCW*5-ADCW/10); //пишем в масив значение ацп
result= ( result+result2) /i ; //усредняем
}
lcd_gotoxy(0,0);
sprintf(lcd_buffer,"ADC=% umV %u\r\n % u % u",result,i, result2[9] ,c );// записываем в буфер вторые 2 параметра
lcd_puts(lcd_buffer);
}
}
- ни хрена не выходит
Где тут грабли???
Помогите замучился уже
- Сообщения: 7
- Зарегистрирован: Чт май 06, 2010 21:09:37
Автор прошивки milly подправил её и теперь показания обновляются раз в 1 сек. Вот ,сам пока не проверял.
- Вложения
-
- MILLUM1.rar
- Прошивка. Задержка индикации 1 сек
- (639 байт) 357 скачиваний



