Цифровой одометр на Atmega8

Обсуждаем контроллеры компании Atmel.
Аватара пользователя
Jack_A
Друг Кота
Сообщения: 6312
Зарегистрирован: Вт апр 24, 2007 07:45:40
Откуда: Minsk

Re: Цифровой одометр на Atmega8

Сообщение Jack_A »

А я вот управляю анодами в дин. индикации так :


Включение - низким уровнем.
Вложения
Fragm.jpg
(5.07 КБ) 500 скачиваний
Реклама
Аватара пользователя
yur4ik
Вымогатель припоя
Сообщения: 613
Зарегистрирован: Сб окт 17, 2009 18:56:05
Откуда: РФ, Башкортостан г.Сибай
Контактная информация:

Re: Цифровой одометр на Atmega8

Сообщение yur4ik »

Jack_A писал(а):А я вот управляю анодами в дин. индикации так :


Включение - низким уровнем.
а чет странное происходит то вместо нуля 8 высветится то Н высвечивается то тройка но только в зеркальном отображении ппцци так с каждой цифрой :shock: :evil:
Нельзя всё знать, достаточно понимать.
Реклама
s64
Потрогал лапой паяльник
Сообщения: 321
Зарегистрирован: Пн окт 18, 2010 21:18:21

Re: Цифровой одометр на Atmega8

Сообщение s64 »

yur4ik писал(а):Так это я до такой степени тупой или как? :roll: почему как на рисунке 1 все работает? а если разорвать цепь идущую к R3 то сразу не работает, сток полевика весит просто в воздухе :shock: сделал как на рисунке 2 то выход с коллектора +5В тоесть что и нужно :)
ЗАпись.JPG
Вот вольтметр из проутеса показывает 5В при разорванной цепи +12В
ЗАпись2.JPG

R6 нужно цеплять между эмиттером и базой, иначе от него нет толку.
Аватара пользователя
yur4ik
Вымогатель припоя
Сообщения: 613
Зарегистрирован: Сб окт 17, 2009 18:56:05
Откуда: РФ, Башкортостан г.Сибай
Контактная информация:

Re: Цифровой одометр на Atmega8

Сообщение yur4ik »

s64 писал(а):
yur4ik писал(а):Так это я до такой степени тупой или как? :roll: почему как на рисунке 1 все работает? а если разорвать цепь идущую к R3 то сразу не работает, сток полевика весит просто в воздухе :shock: сделал как на рисунке 2 то выход с коллектора +5В тоесть что и нужно :)
ЗАпись.JPG
Вот вольтметр из проутеса показывает 5В при разорванной цепи +12В
ЗАпись2.JPG

R6 нужно цеплять между эмиттером и базой, иначе от него нет толку.
а я его как подцепил? вроде так и подцепил или нужно после R5 цепляться? меня только интересует почему когда разъединяю цепь на R3 то сразу все становится не рабочим?
Нельзя всё знать, достаточно понимать.
Реклама
Эиком - электронные компоненты и радиодетали
Аватара пользователя
yur4ik
Вымогатель припоя
Сообщения: 613
Зарегистрирован: Сб окт 17, 2009 18:56:05
Откуда: РФ, Башкортостан г.Сибай
Контактная информация:

Re: Цифровой одометр на Atmega8

Сообщение yur4ik »

а как в cvavr с itoa() работать? уж мне так хочется сократить число переменных.
и как будет предоставлен ответ после выполнения этой функции допустим есть число 1234 после первого выполнения переменная в которую нужно выдать ответ будет 1 второго 2 третьего 3 четвертого выполнения 4 так чтоли?
Нельзя всё знать, достаточно понимать.
Реклама
Аватара пользователя
yur4ik
Вымогатель припоя
Сообщения: 613
Зарегистрирован: Сб окт 17, 2009 18:56:05
Откуда: РФ, Башкортостан г.Сибай
Контактная информация:

Re: Цифровой одометр на Atmega8

Сообщение yur4ik »

похоже я понял из за чего такая херня :)) в проутосе судя по картинкам возле анодов не бывает такого что тушится сегмент до транзистора все норм есть и красный квадратик и синий моргает а вот после транзистора такого нету следовательно все время горят все сегменты :) и получается каля баля :kill:
Нельзя всё знать, достаточно понимать.
Реклама
Аватара пользователя
yur4ik
Вымогатель припоя
Сообщения: 613
Зарегистрирован: Сб окт 17, 2009 18:56:05
Откуда: РФ, Башкортостан г.Сибай
Контактная информация:

Re: Цифровой одометр на Atmega8

Сообщение yur4ik »

нашел тут проект спидометра в проутосе, индикатор с общим анодом. никак больше устройство не работает, а так транзистор в роли инвентора :) сделал как должно быть поставил пнп эмиттер на + коллектор на анод и все пошло тоже самое что у меня.
ЗАпись.JPG
(102.03 КБ) 465 скачиваний
вывод собирать все в железе а потом добавить транзисторы :) т.к я уверен что тот спидометр в железе работает
Нельзя всё знать, достаточно понимать.
Аватара пользователя
GP1
Поставщик валерьянки для Кота
Сообщения: 2401
Зарегистрирован: Пт май 23, 2008 19:32:22
Откуда: Россия, Волгоград
Контактная информация:

Re: Цифровой одометр на Atmega8

Сообщение GP1 »

Молодец, давай дальше. :beer:
по схеме включения индикаторов рекомендую прочитать http://radiokot.ru/articles/30
так для общего развития :wink:
Чем дальше, тем больше становлюсь занудой...
Изображение
Аватара пользователя
yur4ik
Вымогатель припоя
Сообщения: 613
Зарегистрирован: Сб окт 17, 2009 18:56:05
Откуда: РФ, Башкортостан г.Сибай
Контактная информация:

Re: Цифровой одометр на Atmega8

Сообщение yur4ik »

GP1 писал(а):Молодец, давай дальше. :beer:
по схеме включения индикаторов рекомендую прочитать http://radiokot.ru/articles/30
так для общего развития :wink:
СПасибо :) а вот насчет функции itoa() не подскажешь а?
Нельзя всё знать, достаточно понимать.
s64
Потрогал лапой паяльник
Сообщения: 321
Зарегистрирован: Пн окт 18, 2010 21:18:21

Re: Цифровой одометр на Atmega8

Сообщение s64 »

yur4ik писал(а):
GP1 писал(а):Молодец, давай дальше. :beer:
по схеме включения индикаторов рекомендую прочитать http://radiokot.ru/articles/30
так для общего развития :wink:
СПасибо :) а вот насчет функции itoa() не подскажешь а?
чего там подсказывать? два входных параметра - переменная типа int ( та что будет преобразовываться ) и указатель на массив, куда эта переменная в разложенном на char виде будет складываться. Кстати после преобразования цифры в массиве будут в обратном порядке.

unsigned char s[] =
{
0, 0, 0, 0, 0
};

void itoa( int n, unsigned char s[] );
void reverse( unsigned char s[] );
// ******************************************************************* //
void itoa( int n, unsigned char s[] )
{
int i, sign;

if(( sign = n ) < 0 )
/* çàïèñûâàåì çíàê */
n = - n;
/* äåëàåì n ïîëîæèòåëüíûì ÷èñëîì */
i = 0;
do
{
/* ãåíåðèðóåì öèôðû â îáðàòíîì ïîðÿäêå */
s[i++] = n % 10+'0'; /* áåðåì ñëåäóþùóþ öèôðó */
}

while(( n /= 10 ) > 0 ); /* óäàëÿåì */
if( sign < 0 )
s[i++] = '-';
s = '\0';
reverse( s );

}
// ******************************************************************* //
void reverse( unsigned char s[] )
{
unsigned char i, j;
unsigned char c;

for( i = 0, j = strlen( s ) - 1; i < j; i++, j-- )
{
c = s;
s = s[j];
s[j] = c;
}
}
// ******************************************************************* //
Аватара пользователя
yur4ik
Вымогатель припоя
Сообщения: 613
Зарегистрирован: Сб окт 17, 2009 18:56:05
Откуда: РФ, Башкортостан г.Сибай
Контактная информация:

Re: Цифровой одометр на Atmega8

Сообщение yur4ik »

s64 писал(а):
yur4ik писал(а): СПасибо :) а вот насчет функции itoa() не подскажешь а?
чего там подсказывать? два входных параметра - переменная типа int ( та что будет преобразовываться ) и указатель на массив, куда эта переменная в разложенном на char виде будет складываться. Кстати после преобразования цифры в массиве будут в обратном порядке.

unsigned char s[] =
{
0, 0, 0, 0, 0
};

void itoa( int n, unsigned char s[] );
void reverse( unsigned char s[] );
// ******************************************************************* //
void itoa( int n, unsigned char s[] )
{
int i, sign;

if(( sign = n ) < 0 )
/* çàïèñûâàåì çíàê */
n = - n;
/* äåëàåì n ïîëîæèòåëüíûì ÷èñëîì */
i = 0;
do
{
/* ãåíåðèðóåì öèôðû â îáðàòíîì ïîðÿäêå */
s[i++] = n % 10+'0'; /* áåðåì ñëåäóþùóþ öèôðó */
}

while(( n /= 10 ) > 0 ); /* óäàëÿåì */
if( sign < 0 )
s[i++] = '-';
s = '\0';
reverse( s );

}
// ******************************************************************* //
void reverse( unsigned char s[] )
{
unsigned char i, j;
unsigned char c;

for( i = 0, j = strlen( s ) - 1; i < j; i++, j-- )
{
c = s;
s = s[j];
s[j] = c;
}
}
// ******************************************************************* //

спасибо :)
Нельзя всё знать, достаточно понимать.
Аватара пользователя
O-LED
Мудрый кот
Сообщения: 1800
Зарегистрирован: Вт окт 05, 2010 01:08:57
Контактная информация:

Re: Цифровой одометр на Atmega8

Сообщение O-LED »

с записью по пропаже питания разобрался? если нет, то смотри.
схема.
Изображение
заводишь компаратор. ИОН - встроенный. настраиваешь прерывание по спаду сигнала. в обработчике прерывания записываешь значение в еепром. контроллер питаешь от 5 вольт через диод. после диода - электролит на 1000мкф, его должно с головой хватить на время записи данных в еепром.
Вложения
untitled-1.JPG
(16.97 КБ) 889 скачиваний
KIT
Аватара пользователя
yur4ik
Вымогатель припоя
Сообщения: 613
Зарегистрирован: Сб окт 17, 2009 18:56:05
Откуда: РФ, Башкортостан г.Сибай
Контактная информация:

Re: Цифровой одометр на Atmega8

Сообщение yur4ik »

O-LED писал(а):с записью по пропаже питания разобрался? если нет, то смотри.
схема.
Изображение
заводишь компаратор. ИОН - встроенный. настраиваешь прерывание по спаду сигнала. в обработчике прерывания записываешь значение в еепром. контроллер питаешь от 5 вольт через диод. после диода - электролит на 1000мкф, его должно с головой хватить на время записи данных в еепром.
да с записью все сделали :)
Нельзя всё знать, достаточно понимать.
Аватара пользователя
yur4ik
Вымогатель припоя
Сообщения: 613
Зарегистрирован: Сб окт 17, 2009 18:56:05
Откуда: РФ, Башкортостан г.Сибай
Контактная информация:

Re: Цифровой одометр на Atmega8

Сообщение yur4ik »

у меня вопрос при прошивке к мк нужно будет кварц цеплять? или когда мк работает от внутреннего генератора кварц при прошивке не нужен?
Нельзя всё знать, достаточно понимать.
Аватара пользователя
ploop
Модератор
Сообщения: 13490
Зарегистрирован: Ср ноя 26, 2008 16:34:25
Откуда: Тамбовская обл.

Re: Цифровой одометр на Atmega8

Сообщение ploop »

При прошивке - нет. Да и вообще для вашего устройства не нужен он.
Аватара пользователя
yur4ik
Вымогатель припоя
Сообщения: 613
Зарегистрирован: Сб окт 17, 2009 18:56:05
Откуда: РФ, Башкортостан г.Сибай
Контактная информация:

Re: Цифровой одометр на Atmega8

Сообщение yur4ik »

ploop писал(а):При прошивке - нет. Да и вообще для вашего устройства не нужен он.
да нет я и не собирался его ставить в готовое устройство, просто хотел узнать при прошивке нужен ли он будет :)
Вопрос исчерпан :)
Нельзя всё знать, достаточно понимать.
Аватара пользователя
yur4ik
Вымогатель припоя
Сообщения: 613
Зарегистрирован: Сб окт 17, 2009 18:56:05
Откуда: РФ, Башкортостан г.Сибай
Контактная информация:

Re: Цифровой одометр на Atmega8

Сообщение yur4ik »

а разве при написаний программ для мк применять деление, остаток от деления не принято? это я просто интересуюсь а то я тут прочитал не помню уже где, но был этот какой-то форум, один там написал типо применять деление, остаток от деления не принято :(
Нельзя всё знать, достаточно понимать.
s64
Потрогал лапой паяльник
Сообщения: 321
Зарегистрирован: Пн окт 18, 2010 21:18:21

Re: Цифровой одометр на Atmega8

Сообщение s64 »

yur4ik писал(а):а разве при написаний программ для мк применять деление, остаток от деления не принято? это я просто интересуюсь а то я тут прочитал не помню уже где, но был этот какой-то форум, один там написал типо применять деление, остаток от деления не принято :(
:)) конечно можно обойтись сложением и вычитанием, но код от этого не станет меньше и читабельнее.
Аватара пользователя
yur4ik
Вымогатель припоя
Сообщения: 613
Зарегистрирован: Сб окт 17, 2009 18:56:05
Откуда: РФ, Башкортостан г.Сибай
Контактная информация:

Re: Цифровой одометр на Atmega8

Сообщение yur4ik »

s64 писал(а):
yur4ik писал(а):а разве при написаний программ для мк применять деление, остаток от деления не принято? это я просто интересуюсь а то я тут прочитал не помню уже где, но был этот какой-то форум, один там написал типо применять деление, остаток от деления не принято :(
:)) конечно можно обойтись сложением и вычитанием, но код от этого не станет меньше и читабельнее.
нет вы меня просто не поняли, я просто на будущее интересовался :)
Нельзя всё знать, достаточно понимать.
s64
Потрогал лапой паяльник
Сообщения: 321
Зарегистрирован: Пн окт 18, 2010 21:18:21

Re: Цифровой одометр на Atmega8

Сообщение s64 »

значит я правильно понял :)))
Ответить

Вернуться в «AVR»