Нестандартный вывод динамической индикации,нужна подсказка.

Поклонники продукции Microchip Technology Inc тусуются тут.
Аватара пользователя
musor
Друг Кота
Сообщения: 39197
Зарегистрирован: Сб сен 13, 2014 16:27:32
Откуда: СпиртоГонск созвездия Омега

Re: Нестандартный вывод динамической индикации,нужна подсказ

Сообщение musor »

все нестандартные решения ВСЕГДА чреваты граблями причем порой самыми неожидаными и проявляющимися в определены условный момент.. в таком подпаленом мк всеже луче сделать вывод иначе через регистры или спец цип драйвера или оставит битую ципрку наа другую поделку попроше
и взять новый мк
ZМудрость(Опыт и выдержка) приходит с годами.
Все Ваши беды и проблемы, от недостатка знаний.
Умный и у дурака научится, а дураку и ..
Алберт Ейнштейн не поможет и ВВП не спасет.и МЧС опаздает
Реклама
Аватара пользователя
shindax
Потрогал лапой паяльник
Сообщения: 378
Зарегистрирован: Сб сен 19, 2009 07:02:19

Re: Нестандартный вывод динамической индикации,нужна подсказ

Сообщение shindax »

[uquote="Вечный ученик",url="/forum/viewtopic.php?p=3867224#p3867224"]...Например присмотритесь с каких пинов вывод на сегменты,там есть как пины порта А так и порта В...[/uquote] А какая разница с каких пинов/портов всё управляется в устройстве на МК? Тем МК и хорош, что любые ( почти любые ) выводы могут быть как входами, так и выходами. Достаточно часто сначала разводят печатную плату со связями наиболее удобными для разводки, а уже потом пишут программу под полученную схему. Так что это не "изврат", а "упрощение жизни" создателю печатной платы за счет небольшого "усложнения жизни" программисту ( судя по рисунку ПП, так оно и есть ).
Реклама
Аватара пользователя
Вечный ученик
Нашел транзистор. Понюхал.
Сообщения: 180
Зарегистрирован: Вт сен 15, 2015 21:54:34
Откуда: РФ Курск

Re: Нестандартный вывод динамической индикации,нужна подсказ

Сообщение Вечный ученик »

[uquote="shindax",url="/forum/viewtopic.php?p=3867334#p3867334"]Так что это не "изврат", а "упрощение жизни" создателю печатной платы за счет небольшого "усложнения жизни" программисту ( судя по рисунку ПП, так оно и есть ).[/uquote]
Какая разница каким словом это называется если это нестандартный метод и хочу в нем разобраться....BSF ом поднимал флаги на пинах,BCF ом пускал,мплаб долго ругался но все же скомпилировал,а вот протез начал какие-то карказябры выдавать... :facepalm:
Аватара пользователя
shindax
Потрогал лапой паяльник
Сообщения: 378
Зарегистрирован: Сб сен 19, 2009 07:02:19

Re: Нестандартный вывод динамической индикации,нужна подсказ

Сообщение shindax »

[uquote="Вечный ученик",url="/forum/viewtopic.php?p=3867345#p3867345"]...Какая разница каким словом это называется если это нестандартный метод...[/uquote]
А кто сказал, что это "нестандартный" метод? Где можно ознакомиться со списком "стандартных"? :-D Начните с простого. Для начала выведите конкретный сегмент на конкретном знакоместе. Потом этот-же сегмент на другом знакоместе, затем то-же самое с другим сегментом. И.т.д. После составьте таблицу где столбцы - конкретные пины МК, строки - состояние дисплея в конкретный момент времени. не забудьте про полное гашение дисплея, когда все знакоместа неактивны. В Вашем случае для "стандартного" метода удобнее всего для включения сегментов выделить пины RB0-RB6 ( тупая таблица знакогенератора ). RB7 и пины PORTA выделить под активацию знакомест.
Реклама
Эиком - электронные компоненты и радиодетали
Аватара пользователя
Вечный ученик
Нашел транзистор. Понюхал.
Сообщения: 180
Зарегистрирован: Вт сен 15, 2015 21:54:34
Откуда: РФ Курск

Re: Нестандартный вывод динамической индикации,нужна подсказ

Сообщение Вечный ученик »

[uquote="shindax",url="/forum/viewtopic.php?p=3867349#p3867349"]Для начала выведите конкретный сегмент на конкретном знакоместе.[/uquote]
Вот теперь стало всё предельно ясно...А именно то что Вы не знаете даже чем статическая индикация отличается от динамической...Читайте дальше зайца,носова,нечаева и подобных самородков.......В статической индикации все намного проще организовать причем не важно какого порта будут пины,только пинов у контроллера частенько совсем не хватает.
Реклама
NStorm
Поставщик валерьянки для Кота
Сообщения: 1978
Зарегистрирован: Ср июл 17, 2013 13:55:57

Re: Нестандартный вывод динамической индикации,нужна подсказ

Сообщение NStorm »

Вечный ученик, да без разницы, статическая или динамическая индикация. Вы просто сами не умеете работать с МК. Не понимаете что такое битовые и логические операции. Какая разница - на одном порту висит или на нескольких разных? Только в количестве инструкций. Что для динамической индикации совершенно неважно. Так что вы лучше не людей поучайте, что им читать, а сами почитайте, как работать с портами МК и про логические операции. И что такое Read-Modify-Write, который тут упоминали. Немного поясню - помимо BSF, BCF, чтобы поменять состояние только нескольких пинов порта, можно текущее значение порта считать в регистр, применить к нему через лог. И или лог. ИЛИ маску и записать назад. Тем самым в 3 инструкции поменяются только нужные пины порта. На C это вообще одной командой делается и одинаково для любого МК.

Добавлено after 8 minutes 43 seconds:
Re: Нестандартный вывод динамической индикации,нужна подсказка.

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

movf PortА,0 ; Копировать содержимое PortА в регистр W
andlw b‘00001111’ ; побитное И содержимого W и числа 00001111
movwf PortA ; копировать содержимое W в порт A.
Подумайте над этим что-ли. Хотя это в любом учебнике разъяснено должно быть.
Реклама
Аватара пользователя
anatol378
Мудрый кот
Сообщения: 1833
Зарегистрирован: Вс окт 04, 2009 13:23:12
Откуда: н. новгород

Re: Нестандартный вывод динамической индикации,нужна подсказ

Сообщение anatol378 »

У вас правильный ник...Не "вечный" ученик задаёт вопросы, а не доказывает свои умозаключения.
Кстати динамическая индикация - это набор статических индикаций изменяемых во времени. Скорость изменения выбирается исходя из инерционности глаз-мозг человека.
Лучше умному тупить, чем тупому умничать
Аватара пользователя
Вечный ученик
Нашел транзистор. Понюхал.
Сообщения: 180
Зарегистрирован: Вт сен 15, 2015 21:54:34
Откуда: РФ Курск

Re: Нестандартный вывод динамической индикации,нужна подсказ

Сообщение Вечный ученик »

[uquote="anatol378",url="/forum/viewtopic.php?p=3867404#p3867404"]У вас правильный ник..[/uquote]
Знаю.Почитайте первое сообщение в теме.Кем оно написано и какой вопрос я задал??? Почитали?Так вот в ответ почти все пытаются объяснить какой я мудак и не понимаю некоторых вещей,а реально в какую сторону попробовать покопать подсказали только три человека......злые вы,уиду я от вас...
NStorm
Поставщик валерьянки для Кота
Сообщения: 1978
Зарегистрирован: Ср июл 17, 2013 13:55:57

Re: Нестандартный вывод динамической индикации,нужна подсказ

Сообщение NStorm »

RB4,RB5,RB6,RB7,RA0,RA1,RA2 осуществить управление сегментами
Сдвиги и лог. операции. Ну допустим мы слева направо писать будем. RB4 - старший бит, RA2 - младший. Вот есть у нас число для записи, пусть будет 0b01111001, где ведущий ноль - лишний. Начнем с младших 3х бит. "Извлечем" их наложением маски 0b00000111 И с числом. Получим 0b00000001. Если нам на остальные пины порта плевать - ну так и пишем его прямо в порт А. "Извлекаем" старшие 4 - И с 0b01111000 = 0b01111000, сдвиг влево на 1 (из-за ведущего ноля), получили 0b11110000. Ну ведь всё-равно что будут нули в RB0-3? Так и пишем прямо тоже.
Если б было не всё-равно на остальные пины порта, то надо R-M-W делать.
На C это вообще элементарно делается:

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

char out = 0b01111001;
PORTA = (out & 0b111);
PORTB = (out & 0b01111000) << 1;
Аватара пользователя
КРАМ
Друг Кота
Сообщения: 25385
Зарегистрирован: Чт янв 10, 2008 22:01:02
Откуда: Московская область, Фрязино

Re: Нестандартный вывод динамической индикации,нужна подсказ

Сообщение КРАМ »

[uquote="Вечный ученик",url="/forum/viewtopic.php?p=3867320#p3867320"]Можно поподробней,а то с побитным выводом даже компилироваться не хочет[/uquote]
Вы бы привели текст исходника. который не желает компилироваться... А то все как то туманно.
Я речь вел о том, что инструкции ассемблера bcf/bsf на самом деле не изменяют биты напрямую (это принципиально невозможно, поскольку биты не имеют прямой адресации), а реализуют процедуру Чтение-Модификация-Запись (Read-Modify-Write). И если МК не имеет доступа к чтению выходной защелки и читает вместо нее пины, то управляя одним битом, можно перезаписать в выходную защелку другой бит как состояние выходного пина. То есть нештатно его изменить.
Аватара пользователя
shindax
Потрогал лапой паяльник
Сообщения: 378
Зарегистрирован: Сб сен 19, 2009 07:02:19

Re: Нестандартный вывод динамической индикации,нужна подсказ

Сообщение shindax »

[uquote="Вечный ученик",url="/forum/viewtopic.php?p=3867373#p3867373"]...А именно то что Вы не знаете даже чем статическая индикация отличается от динамической...Читайте дальше зайца,носова,нечаева и подобных самородков...[/uquote]:-D Не Вам судить, что я знаю, а чего не знаю. Тысячу раз зарекался с муд@ками не связываться и в снова сорвался. :-D

Добавлено after 3 minutes 25 seconds:
[uquote="КРАМ",url="/forum/viewtopic.php?p=3867450#p3867450"]...Я речь вел о том, что инструкции ассемблера bcf/bsf на самом деле не изменяют биты напрямую...[/uquote]IMHO бесполезно это, в пустоту вещаете. Чукча - писатель. :-D
Аватара пользователя
pyzhman
Друг Кота
Сообщения: 7016
Зарегистрирован: Вс июл 12, 2009 19:15:29
Откуда: Ижевск
Контактная информация:

Re: Нестандартный вывод динамической индикации,нужна подсказ

Сообщение pyzhman »

[uquote="Вечный ученик",url="/forum/viewtopic.php?p=3867414#p3867414"]...злые вы,уиду я от вас...[/uquote]
Напрасно. Здесь не ложка дегтя в меде, а бриллиант в бочке говна. Надо просто его выудить.
Docendo discimus
Аватара пользователя
Вечный ученик
Нашел транзистор. Понюхал.
Сообщения: 180
Зарегистрирован: Вт сен 15, 2015 21:54:34
Откуда: РФ Курск

Re: Нестандартный вывод динамической индикации,нужна подсказ

Сообщение Вечный ученик »

[uquote="pyzhman",url="/forum/viewtopic.php?p=3867568#p3867568"]Надо просто его выудить.[/uquote]
Всё же решил собрать свой переносной термометр на другом камне,навалились другие дела,некогда сейчас разбираться с управлением пинами...Но мне не дает покоя мысль как калиграфской так организовал вывод,может укого есть исходник с подобным извращением на ассемблере,покажите именно эту часть,пожалуйста!
Аватара пользователя
Core-X
Встал на лапы
Сообщения: 83
Зарегистрирован: Вс ноя 01, 2015 00:09:59

Re: Нестандартный вывод динамической индикации,нужна подсказ

Сообщение Core-X »

[uquote="Вечный ученик",url="/forum/viewtopic.php?p=3867602#p3867602"]Но мне не дает покоя мысль как калиграфской так организовал вывод[/uquote]Если бы Вы углублено изучали принципы работы динамической индикации. То Вы бы узнали, что она может быть реализована двумя способами:
1) Поразрядный вывод информации.
2) Посегментный вывод информации. Он как раз и реализован в той схеме с часами.
На сайте изиэлектроникс есть хорошая статья по динамической индикации. И легко находиться в гугле.
Для связи email: risctronix собака gmail.com
otest
Друг Кота
Сообщения: 7853
Зарегистрирован: Ср фев 11, 2009 20:35:58

Re: Нестандартный вывод динамической индикации,нужна подсказ

Сообщение otest »

Посегментный вывод информации. Он как раз и реализован в той схеме
Не согласен . Вывод самый обычный поразрядный.
Аватара пользователя
Core-X
Встал на лапы
Сообщения: 83
Зарегистрирован: Вс ноя 01, 2015 00:09:59

Re: Нестандартный вывод динамической индикации,нужна подсказ

Сообщение Core-X »

[uquote="otest",url="/forum/viewtopic.php?p=3867660#p3867660"]
Посегментный вывод информации. Он как раз и реализован в той схеме
Не согласен . Вывод самый обычный поразрядный.[/uquote]
А более детально можете сказать, с чего Вы сделали такой вывод?
Для связи email: risctronix собака gmail.com
otest
Друг Кота
Сообщения: 7853
Зарегистрирован: Ср фев 11, 2009 20:35:58

Re: Нестандартный вывод динамической индикации,нужна подсказ

Сообщение otest »

Сделал дизасм и посмотрел.
Аватара пользователя
musor
Друг Кота
Сообщения: 39197
Зарегистрирован: Сб сен 13, 2014 16:27:32
Откуда: СпиртоГонск созвездия Омега

Re: Нестандартный вывод динамической индикации,нужна подсказ

Сообщение musor »

[uquote="Core-X",url="/forum/viewtopic.php?p=3867652#p3867652"]может быть реализована двумя способами:
1) Поразрядный вывод информации.
2) Посегментный вывод информации. Он как раз и реализован в той схеме с часами.
На сайте изиэлектроникс есть хорошая статья по динамической индикации. И легко находиться в гугле.[/uquote]
на самом деле способоф боле 2х я кроме них знаю +3 но уверен что их боле
на практике однако в основном реализован 1 метож+ из 1 из тех трех что я знаю....
другие мене удобны для работы с мк широкого применения
ZМудрость(Опыт и выдержка) приходит с годами.
Все Ваши беды и проблемы, от недостатка знаний.
Умный и у дурака научится, а дураку и ..
Алберт Ейнштейн не поможет и ВВП не спасет.и МЧС опаздает
Ответить

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