подскажите, как можно вывести точку на семисегментник, используя сдвиговый регистр? у меня есть значение ацп, преобразованное в вольты. выводится это дело на семисегментник в виде трехзначного числа. мне нужно установить точку после самого старшего разряда, чтобы отделить целую часть.
Комментарии: 10
Dmytro
Давайте по порядку, это вы на микроконтроллере делаете?
Paschendale
да, использую атмегу8
Dmytro
Не с АЦП, а просто так вы уже научились выводить числа и точку, да? Вам нужно подсказать по алгоритму программы, или по физическому подключению семисегментника?
Paschendale
при динамической индикации без использования сдвиговго регистра я еще как-то примерно представляю, что в определенный момент можно тупо дать команду (1«PB7). здесь же все иначе примерно на словах разъяснить, дать толчок, так сказать)
Dmytro
А, я понял в чем у вас вопрос. Если на каждый индикатор по одному сдвиговому регистру нацепить (на 8 разрядов) - то в каком-то индикаторе можно будет вывести либо число, либо точку. Но не одновременно
Paschendale
похоже, я запутал вас. сдвиговый регистр у меня один. при этом динамическая индикация используется, чтобы перебирать аноды семисегментника о четырех разрядах. и я не могу понять, как одновременно на один и тот же семисегментник вывести одновременно и цифру, и точку. хотя, наверное, уже начинаю понимать. наверное, тупо нужно добавить к цифре в интересующем меня разряде еще один бит, отвечающий за точку
Dmytro
сдвиговый регистр перебирает сегменты, а пины микроконтроллера - цифры?
Paschendale
ага
Paschendale
нет, не умею выводить ни точку, ни знак минуса, что очень меня печалит
Dmytro
Вы об этом, да? Вам нужно будет по одному 7-битному регистру на каждый индикатор (только на сегменты цифр), а на точки один общий сдвиговый регистр. Тогда вы сможете только одну точку вывести, но зато на любом индикаторе, в том числе и на том, на котором уже отображается цифра