Первый пост темы: bazarov Post: #249920 От:07.06.2010 (19:24) Хочу завести себе свою ветку, чтобы не распыляться. Идей много, а на проверку времени мало. Вот захотелось проверять все вечняки в математике, а потом смотреть где ошибка закралась. Если есть интересующие - присоеденяйтесь.
Обсуждаться будет только один ЧЁРТЁЖ или ЭКСКИЗ единовременно. Пока один агрегат не будет расколупан до конца, дальше ни-ни. Если нет возможности рисовать - сам потом нарисую или картинку вставлю. Весь словесный понос подтверждать оффициальными ссылками. Ссылка на дурдомопедию (википедию) в крайнем случае давать. На сайтах производителей и институтов инфы хватает. Всяких дибилов самоназваных с Ахрененными межгалактическими дипломами не приводить в пример.
Надеюсь энергия потом с кондёра не порёт, и ахренесово колесо вечно не поедет - наука штука точная. КПД устройства для взлома искать больше 20% (КПД1,2).
Нельзя взламывать секреты приборов производимых на постсоветском пространстве. Ибо тут всё просто - турма (Поддержим отечественного производителя!). А заграничные стандарта ISO для нас практически недосягаемы, мы со своим ГОСТОМ на рынке условия не диктуем. Поэтому взлом иностранной технологии в нашей "Раше" приравнивается к шлепку буржую по заду - только щёчки порозовеют 😀 . Наши технологии "ломать" только с разрешения собственника либо если инфа открыта для пользования.
Ламачче невозможное проверить при помощи формул теоретически либо элементарно практически также не выкладывать.
Расшифровка предупреждений:
ПИП - первое израильское предупреждение;
ВИП - второе израильское предупреждение;
ТрИП - третье израильское предупреждение;
ЧИП - вставляем имплантант биоботу;
ППЦ - биоботу пипец.
==Кстати очень непонятно и темно работает- после включения по тактам
от 6 до 14 тактов непонятно что делает, и только потом переходит на выполнение программы. И сколько тактов будет "думать" непрогнозируемо.
Очень сложно запаралелить работу нескольких процев от одного тактового источника.==
Dedivan это у всех AVRок такая беда и если знаете как с этим обстоят дела у PIC?
leshik Пост: 288486 От 08.Feb.2011 (10:59)
как с этим обстоят дела у PIC?
Проверь- нужен внешний тактовый генератор и простая программка-
выдать нолик на выходе. Этот выход сбрасывает проц, и начинает все сначала.
Время между этими импульсами будет плавать- это и есть непонятная работа автомата для программирования.
Этого автомата нет у одноразово прошиваемых процев.
Такие есть в ПИКах, а у Атмела есть серия которая имеет только высоковольтное программирование.
Dedivan проверить не вопрос, я проверял на наших мкшках - исправно работают, а про PIC и AVR спрашиваю потому что нет у меня под них программатора, а Вы я вижу с этим уже игрались.
а у Атмела есть серия которая имеет только высоковольтное программирование
Естественно - нету.
Хотя все равно непонятно.
Есть начальный автомат, который при включении считывает регистры фузов,
выставлят по ним частоту внутреннего генератора, или внешнее тактирование, сторожевой таймер.... и прочее и после этого
запускает начало программы- устанавливает програмный счетчик в ноль
и разрешает на него тактовые импульсы.
Но работает это автомат строго отведенное число тактов.
А вот с определением режима внешнего программирования строго не получается.
Причем этот момент не описан в даташитах, типа ноухау.
dedivan Пост: 288478 От 08.Feb.2011 (10:30)
В АвРках в принципе есть зашитый начальный автомат- именно он
определяет при включении режим работы или программирования.
Кстати очень непонятно и темно работает- после включения по тактам
от 6 до 14 тактов непонятно что делает, и только потом переходит на выполнение программы. И сколько тактов будет "думать" непрогнозируемо.
Этот автомат может включать режим Serial Programming только во время активного сигнала RESET, так что к режиму работы он не имеет отношения, и задержек при включении не вызывает.
Почему это непрогнозируемо? В даташите вроде четко написано, сколько AVR будет тупить (start-up times) после сброса и после Power-down/Power-save режимов, в зависимости от конфигурации тактирующей системы (фузы CKSEL, SUT). Причем, при включенном BOD везде указано конкретное число тактов.
выдать нолик на выходе. Этот выход сбрасывает проц, и начинает все сначала.
А вот по такой методике уточним. После деактивации RESET на одном выходов программно выводится 0, который активирует RESET, т.к. соединен с ним. Время от деактивации RESET регламентировано и неизменно, N тактов. Время от активации RESET до перестройки портов на ввод варьируется и нигде не регламентируется, так?
Или при отсутствии тактовых импульсов при сбросе (при активном RESET) на портах вообще ничего не изменяется?
И выдерживается ли при такой методике требование "Minimum pulse width on RESET Pin"?
shura-i Пост: 288505 От 08.Feb.2011 (12:14)
Время от активации RESET до перестройки портов на ввод варьируется и нигде не регламентируется, так?
Попробуй сам посмотри- я не понял где идет задержка.
всех кого спрашивал - не знают.
Житагом может попробовать, но я пытал мелкоту у которой его нет.
Давно плюнул на это дело- но как говорят- осадок остался..
shura-i Пост: 288481 От 08.Feb.2011 (10:39)
И назови AVR с USB, который из магазина готов к прошивке прямо по USB. Я, возможно, что-то недоглядел.
AT90USB1287
Ага, и правда есть, тут это называется DFU - Device Firmware Upgrade. Спасибо! По ходу дела, тем же FLIPом и поддерживается. Теперь увидел: список всех девайсов, относящихся к FLIP.
dedivan Пост: 288509 От 08.Feb.2011 (12:21)
Попробуй сам посмотри- я не понял где идет задержка.
ДедИван, я же методику уточняю. Если не так буду смотреть, могу и не увидеть эффекта. Если в точности повторю, то ведь увижу - авось докопаемся до истины.
P.S. Впрочем, в целом понятно. Посмотрю.
Приобрёл PIC16F876A-I/SP 1012V92. Когда посчитаю сколько у неё лапок отпишусь 😘....
_________________ Не хватит никакого здоровья, чтобы приспособиться к этому глубоко больному обществу(Кришна Мурти)/Горшки не Боги обжигают (многовековая классика)
Форум - Форма ответа
dedivan Пост: 288500 От 08.Feb.2011 (11:43)
Прям в тему- доверяй но перепроверяй!
Для справки.
В промэлектронике стараются не применять PIC и ATMEL из - за недостаточной интегральной надёжности(устойчивости). Даже в стиральных машинах.При искрах и сильных помехах это вылезет при длительной эксплуатации.Сам столкнулся недавно, через несколько дней даже спокойной работы перестает выполнятся одна команда (инверсия бита).Писал на Си, на асм, делал мнократные вставки повторов не помогает.Только принудительный сброс.При том что внешний сторож не видит , для него сбросы идут четко.Менял партии микросхем (ATMEL).Сказывается общее питание ядра и перефирии, отсутствие разделения земель и т.д.
При всем том доступность и дешивизна мсх и рабочего места делает эти МК на первых этапах не заменимыми.
С уважением.
внешний сторож не видит , ...
.Сказывается общее питание ядра и перефирии, отсутствие разделения земель и т.д.
Внешний сторож? Раздельные земли?
Это что за экзотика?
Есть внутренний сторож, все контроллеры имеют общую землю для цифры ,
только для аналоговой части делают отдельную.
Если после сброса все идет нормально- значит во флешпамяти все цело.
Где тогда инверсия бита? Не в команде?
Обычный глюк. Дебажка нужна и правильная разводка земли.
.
Есть конечно случаи порчи памяти , например часто слетает епромка
в телевизорах- она стоит под самым кинескопом, и бывает что через нее
проскакивает высоковольтный разряд.
По паспорту они терпят до 2 кв разрядики но 20 конечно лишку.
Но опять это вина разработчика- поставили схему в одном сантиметре
от высокого напряжения анода и не сделали никакой защиты,
а защита простая - кусочек фольги наклеивается на микросхему и заземляется.
И то это только епромка слетает, рядом стоит контроллер с флэш памятью- терпит даже такое издевательство.
У меня несколько моднмов валяются - после грозы , пожженая аналоговая
часть , а процссоры работают, с компом связываются, отвечают.
Процики такие же как и пики атмели - с общей землей, с флэш памятью.
Почитав любые форумы по мкашкам - везде одно и то же , глюки только в программе и от кривых рук.
Самое частое- не смотрят за стеком, накопят прерываний, и выскакивают в хитрые циклы по адресу где данные лежат.
Самое первое правило если пошли глюки- выводи адрес стека на уарт -на комп и смотри.
_________________ Не хватит никакого здоровья, чтобы приспособиться к этому глубоко больному обществу(Кришна Мурти)/Горшки не Боги обжигают (многовековая классика)
Форум - Форма ответа
dedivan Пост: 288679 От 09.Feb.2011 (08:57)
GTK5 Пост: 288658 От 09.Feb.2011 (00:24)
.Сказывается общее питание ядра и перефирии, отсутствие разделения земель и т.д.
Раздельные земли?
Это что за экзотика?
.........
Где тогда инверсия бита? Не в команде?
.........
В пром МК питание на ядро и вых. каскады подается через раздельные пины и как правило есть свой встроеный стабилизатор
для ядра.
Ниже прикладываю фрагмент программы где были грабли.
С уважением.
Следующим шагом будет импульсная схема. Контроллер будет тупо регулировать мощность сигналом с АЦП как и время. Возможно всё управление внутрь спрячу, а может и на регулируемые аналоговые цацки прикреплю, чёб регулировать можно было. Там время не очень хорошо делается, надо было по 0.05 сек шаг делать а не 0.1. Управление мощностью по ЧИМ, которое будет уровнем сигнала с АЦП от контроллера управляться. И т.д.. В принципе была задумка сделать и точечную сварку для алюминия и сварочник в одном наборе - губу раскатал 😀 . Ток не знаю как приживётся, дороговато приходится. Ещё проблемы с просадкой напряжения. Думал делать дополнительную подпитку высоковольтной части с конденсаторов накопления. Есть в продаже 100 000 мкФ/63В по 20 уё. Пока репу чешу 😀 . Чё думаете?
_________________ Не хватит никакого здоровья, чтобы приспособиться к этому глубоко больному обществу(Кришна Мурти)/Горшки не Боги обжигают (многовековая классика)
_________________ Не хватит никакого здоровья, чтобы приспособиться к этому глубоко больному обществу(Кришна Мурти)/Горшки не Боги обжигают (многовековая классика)
Меня мучает вопрос.... Вот у меня под носом карта памяти контроллера, так непонятно чё там такое. Как я понял описаными регистрами можно напрямую пользоваться, а как быть с регистрами что идут под хитрым названием "регистры общего назначения"?? Чёт не догоняю - туплю 😕 . Пикушку наверное выброшу и на АВР перйду 😕 . Оказывается в Протеусе СИ по умолчнию, а асемблер хитро вшит что шиш достанешь. И ещё, что-то с асемблером туплю, может просто книжку по программированию почитать для начала?
_________________ Не хватит никакого здоровья, чтобы приспособиться к этому глубоко больному обществу(Кришна Мурти)/Горшки не Боги обжигают (многовековая классика)
Немножко расскажу про команды, как я понимаю. Система команд напрямую связана с архтиектурой проца. Это то самое, о чем Базаров сейчас задумался не по детски - собственно, а как пишут программы-то. Я плохо знаком с АВР и ПИКами, если что, старшие товарищи поправят. В АВР и ПИКе все команды двухбайтные. В 51 проце однобайтные. Это значит, что в первом случае можно представить 65 тысяч команд, во втором всего 256. Но в 51-м бывают команды с аргументами - то есть, получается два или три байта. Весь вопрос в том, как распределить эти команды так, чтобы и несложно дешифровались, и битов хватило на все мыслимые действия (это забота разработчика чипа). И разные по длине и сложности команды выполняются за разное время (в АВР, кажется, одинаково или почти все одинаково).
В большинстве процессоров поле команды плавающей длины. Потому что есть команды, которым должна быть доступна адресация всего что есть (mov), а есть совершенно специфические и не требующие адресации (nop, clr a). Поэтому универсальные команды состоят из меньшего количества битов, чтобы в оставшихся битах разместить адреса операндов. В 51-м проце регистры неравноценные, каждому отводится своя роль. Через аккумулятор выполняются все арифметические действия, поэтому существенная чать таблицы команд работает именно с ним. Получается, что адрес аккумулятора как операнда зашит в самом коде команды неявно. Другие регистры приходится адресовать явно. Регистр B используется в командах умножения и деления, регистровая пара DPTR используется как указатель на элемент таблицы, и эти факты отражены в наличии соответствующих команд, поэтому я не могу, например, использовать регистровую пару AB для работы с таблицей данных, даже если сильно хочется - таких команд нет в системе. Или не могу умножить любой байт в памяти на любой другой - сначала мне придется их "заложить в станок, заточенный для умножения" - в регистры A и B. В АВР и ПИКах команды двухбайтные, но общее количество команд гораздо меньше (35 вместо 111 для 51-го). Это расширяет возможности программиста, позволяет меньше думать 😀 о том, куда можно пересылать, а куда нет - просто запускается компилятор, и из его сообщений об ошибках это можно узнать 😀 . Получается быстрее, чем заглянуть в книжку.
Писать программу можно только хорошо представляя себе ресурсы проца. Сколько есть регистров, и есть или нет соответствующие команды для работы с ними. В основном программа занимается всякой мутотой - пересылает что-то куда-то, анализирует биты ячеек памяти или портов, ветвится по условиям. Для такой деятельности обычно требуется один-два регистра и то буквально на несколько команд. А бывают случаи, когда нужно задействовать очень много регистров - например, при любой арифметике. Или во вложенных циклах. Да еще если нужны параллельные счетчики, чтобы не с нуля считали, или вообще в обратную сторону.
Короче, я сам не понял, что пытаюсь рассказать 😀 . А Базарову не терпится узнать, как делается фазо-импульсное управление тиристором... Но до этого еще далеко.
PS. Да, и забыл сказать самое главное: "Чтобы научиться писать программы, надо писать программы".
_________________ И мню аз яко то имать быть, что сам себе всяк может учить.
Спасибо Эдуард, но до фазового управления как до Луны - светодиодик хоть один для начала в симуляторе зажечь 🤢. Просто я не врубаюсь с программированием. В высокоуровневых язывах никаких адресов нет, а тут некие вшитые регистры и память без опознавательных знаков. Как туда данные пихать 😀 ? В принципе переубедил по командам, для начала пикушку свою проштудирую, благо она с флешпамятью - не напортачу, хотя в моих умелых руках всё горит - даже мелкосхемы 🤢. Пока книжки умные поизучаю, вдруг там что умное пишут 😈....
_________________ Не хватит никакого здоровья, чтобы приспособиться к этому глубоко больному обществу(Кришна Мурти)/Горшки не Боги обжигают (многовековая классика)
«Жил-был Буридан. К философии, скорее всего, никакого отношения он не имел. А был у того Буридана осел. Решил как-то раз Буридан своего осла покормить, и нет, чтобы положить корма в одно место, а наполнил он кормом две кормушки, да так получилось, что поровну корма-то вышло. И не было между кормушками никакой разницы, и нельзя было дать ни одной кормушке предпочтения. Посмотрит Буриданов осел на одну кормушку, посмотрит на другую – к какой подойти не знает. Долго выбирал осел, пока с голоду и не подох. Такая вот история про Буриданова осла.»
magneat Пост: 289008 От 12.Feb.2011 (07:13)
если бы Базаров начал с ардуино, ....
Даже блондинко начинают с этого...
И получается. Только что она при этом узнаЁт про мкашку ?- ничего.
А про что у нее появляются знания?
Про усеченный язык типа Си, но только для детишек и умственно слабаков.
Для стран третьего мира хорошая игрушка. А больше им знать и не надо.