Страница 1 из 1

Подкорректировать прошивку МК

Добавлено: Вс июн 02, 2013 10:45:46
MAndrey90
Собрал данный девайс http://www.azovbike.com.ua/index.php?op ... &Itemid=78. использовал вот такой индикатор(в нем есть два лишних сегмента в виде двух точек по середине)
http://catalog.gaw.ru/index.php?page=co ... l&id=17210.
Устройство заработало сразу же. но как обычно есть проблемы.
1). В режиме текущего пробега при удержании кнопки MODE на индикаторе загораются три восьмерки и все. Убираются только путем отключения питания.В итоге тек.пробег не сбрасывается.
2)В режиме скорости и общего пробега горят ненужные сегменты-точки по середине индикатора. вместо нижних у самих цифр. Можно как-то убрать их? Просто другого индикатора в продаже не было.
Помогите пожалуйста подправить прошивку. буду премного благодарен.

Re: Подкорректировать прошивку МК

Добавлено: Вс июн 02, 2013 11:12:46
E71
Глупый вопрос можно? Почему автора не попросить об этом? Ведь кто как не он знает все тонкости того, что он написал?

Re: Подкорректировать прошивку МК

Добавлено: Вс июн 02, 2013 11:41:39
gfgeuf
Так не подключайте точки - ..:.. :dont_know: и используйте вместо них четыре дискретных светодиода - ....
и неиспользуемый вывод RESET можно по прямому назначению задействовать - для обнуления.

Re: Подкорректировать прошивку МК

Добавлено: Вс июн 02, 2013 12:46:04
MAndrey90
какая часть кода зажигает сегмент точки(DP)?

Re: Подкорректировать прошивку МК

Добавлено: Вс июн 02, 2013 13:28:52
ChipKiller
какая часть кода зажигает сегмент точки(DP)?
... вывод в PORTB, а точнее бит_7 этого порта

Re: Подкорректировать прошивку МК

Добавлено: Вс июн 02, 2013 13:43:02
MAndrey90
А как сделать чтобы загорались сегменты DP3 /4, а не DP5/6?

Re: Подкорректировать прошивку МК

Добавлено: Вс июн 02, 2013 13:47:27
Goodefine
Eddy71 писал(а): Ведь кто как не он знает все тонкости того, что он написал?
Исходник там есть. Страшный, корявый, но есть. Так что исправить все вполне реально.

Re: Подкорректировать прошивку МК

Добавлено: Вс июн 02, 2013 14:19:40
ChipKiller
MAndrey90 писал(а):А как сделать чтобы загорались сегменты DP3 /4, а не DP5/6?
.. править здесь

Код: Выделить всё

void Dig_init()     //кодировка цифр для индикатора
{
Dig[0] =255-63; //(a+b+c+d+e+f);   // Сейчас у нас схема с общим катодом
Dig[1] =255-6; // (b+c);
Dig[2] =255-91; // (a+b+g+e+d);
Dig[3] =255-79; // (a+b+g+c+d);
Dig[4] =255-102; // (f+g+b+c);
Dig[5] =255-109; // (a+f+g+c+d);
Dig[6] =255-125; // (a+f+g+c+d+e);
Dig[7] =255-7;  //(a+b+c);
Dig[8] =255-127; // (a+b+c+d+e+f+g);
Dig[9] =255-111; // (a+b+c+d+f+g);
}
Goodefine писал(а):Исходник там есть. Страшный, корявый...
...да уж - загонять константы в RAM :kill: ... и ведь находятся те, кто хотят повторить этот кошмар :))