Автоматическое зарядное устройство для SLA аккумуляторов тини26
Автоматическое зарядное устройство для SLA аккумуляторов
Как инвертировать семисегментный индикатор ОК на ОА
Сообщений 1 страница 10 из 10
Поделиться12014-01-06 21:44:04
Поделиться22014-01-06 21:47:32
Помогите адаптировать прошивку под индикатор ОА. В программировании я не силён
на шару пробовал менять константы в программе, инвертировал двоичный код "dat" не помогло.
Поделиться32014-01-06 21:56:00
Смысл создавать еще одну тему?
Поделиться42014-01-06 21:58:29
1. В секции Dta все 0 меняем на 1 и наоборот:
' 0 Data &B00111111
' 0 Data &B11000000
2. В коде ищем Dig1, Dig2, Dig3. Если рядом стоит Set меняем на Reset и наоборот:
$end Asm
Set Dig1 : Set Dig2 : Set Dig3
Lds R31 , {Bright} 'Сдвимем биты в переменной по кольцу$end Asm
Reset Dig1 : Reset Dig2 : Reset Dig3
Lds R31 , {Bright} 'Сдвимем биты в переменной по кольцу3. Заменить этот кусок кода:
Segmlink = Lookup(dg , Dta)
A = 1
$asm
Lds R31 , {SegmLink}
SBRC R31, 0
$end Asm
A = 0
B = 1
$asm
SBRC R31, 1
$end Asm
B = 0
C = 1
$asm
SBRC R31, 2
$end Asm
C = 0
D = 1
$asm
SBRC R31, 3
$end Asm
D = 0
E = 1
$asm
SBRC R31, 4
$end Asm
E = 0
F = 1
$asm
SBRC R31, 5
$end Asm
F = 0
G = 1
$asm
SBRC R31, 6
$end Asm
G = 0
Dp = 1
$asm
SBRC R31, 7
$end Asm
Dp = 0
If Dprz = X Then Dp = 0По идее должно заработать.
Поделиться52014-01-07 19:02:23
теперь другая проблема всё работает (пишет A1.7:204:bat:tes) потом (bat:tes)по кругу циклирует а напряжение не показывает. Tfreq-отвечает за это порт 4 если я правильно понимаю (14 нога тини26). \
Если на 14 ногу подать 5вольт на дисплее должно быть 999? и как переназначить порт ввода который следит за напругой? Tfreq- как оно работает если в программе присутствует 1 раз ито при назначении портов?
Поделиться62014-01-07 19:03:33
1. В секции Dta все 0 меняем на 1 и наоборот:
2. В коде ищем Dig1, Dig2, Dig3. Если рядом стоит Set меняем на Reset и наоборот:
3. Заменить этот кусок кода:
По идее должно заработать.
спасибо дисплей заработал!
Поделиться72014-01-07 19:07:47
Смысл создавать еще одну тему?
старая тема давно неактуальна там не отвечают
Поделиться82014-01-08 00:36:43
проблему решил так код: сonfig Adc = Single , Prescaler = Auto , Reference = AVCC
не исключено битая тинька хотя новая
Отредактировано ZX-TV (2014-01-09 18:25:55)
Поделиться92014-01-09 18:20:44
А не проще было поставить инвертирующие транзисторы? Выйдет новая прошивка и придется заново ее править.
Хотел инвертировать на кт315/кт361 сегменты+ точки 2 + катоды 3 = 12 транзисторов, поленился печатку рисовать/травить ведь исходник есть, лет 20 назад был у меня zx-spectrum на бейсике писал вот и опыт пригодился хотя здесь всё не так но пару операторов похожих есть.
Флеш память тиньки в исходнике заполнена автором на 94% у меня 99% добавил звуковую индикацию всех процессов (заряжен, заряжен на полную, не заряжается, не подключён итд). Осталя один свободный порт к которому можно сделать разряд (десульфатация) но тинька на 99% заполнена.
баском сильно расходует память, нужно писать на СИ больше влезет.
РS: Умел бы программировать поправил код за 5 минут, от незнания разбирался 4 дня( методом научного тыка зная основы подобного языка программирования) + очень помог /max/и /dimon-790/ им огромное СПАСИБО!!! и всем кто ответил.
Поделиться102014-01-09 18:24:57
прошивок не будет, работает идеально алгоритм заточен автором профессионально для этой МК