ПРОШЛОГОДНИЙ СНЕГ. Лежал у меня давненько вариант реализации SiProg в стиле, ранее примененном в JDPR... Как-то не особо значимая вариация (плановая замена LPT на СОМ) ...
А тут понесло мня на сайт https://matrex-notes.blogspot.com.by/20 ... tmega.html в части обновить ту ШЕЛЛ... Ну и заодно протестить работу моего SiProg. Сразу отмечу, что работает программатор только с СОМ портами интегрированными в материнку и/или в портовую карту PCI. На USB-COM КОШМАР черепахович - совершенно не рекомендую такой вариант СОМа использовать. Перед употреблением кнопой "параметры" вызываем окошко с параметрами http://img.radiokot.ru/files/20529/1i5fqdtk3k.JPG , тыць в ПОРТ и в открывшемся окошке http://img.radiokot.ru/files/20529/1i5fqo89zq.JPG ставим крестик и указываем номер порта согласно реально подключенному и его описанию в диспетчере устройств (у меня СОМ3). Затем кнопой ОК закрываем вкладку - прожка-оболочка готова к работе. Прожку-оболочку скачать можно тут: https://matrex-notes.blogspot.com.by/20 ... tmega.html для чего в открывшемся окне тыць строчку "Скачать программу AVRDUDESHELL" Весьма впечатляет как список МК, так и работа оболочки.
Планировал некоторый материал нашкрябать по применению ардуинок... Да пока некоторые детали еще в живом виде не готовы..
Тут по ходу дела попалась тема viewtopic.php?f=58&t=152968 Честно говоря я ПИКи для примитива редко использую - ибо и дороговаты и лучше их приберечь под низкопотребляющие устройства. Однако... пообещал нацарапать подходящий проектик с объяснениями/комментарием да "шаблон-заготовку" положил там... А раз обещался - надо доделать хотя бы сканер индикаторов на основе BAM. Вот такая "ШКЕЛЕТИНА" получилась:
три светика отрабатывают независимые задания данных яркости по правилам BAM. Данные действительны для 255 уровней. Схемка под прожку также в проекте. Проект настроен в режиме контрольного теста с применением симулятроа и логического анализатора mplabIDE 8.92. Как добавить кнопу/световые эфекты - то на следующее задание. Посмотрямс на реакцию топикстартера viewtopic.php?f=58&t=152968 (Evgeniy630304) - будет интерес продолжу, а нет - засолю на будущее в архиве.
А я и не претендуют на "абсолютную чистоту" стиля - это слэнговый вариант наиболее приближенный к желаемому. Зато одинаково работоспособный во всех трёх применяемых компиляторах. Как и раздел по папкам внутри проекта. Ежли где попадется "полноценный" вариант так же легко работающий с любым компилятором - проведу соответствующие изменения/дополнения. В любом случае гораздо лучше "линейного" примитивна. (зарекался со смартфона не писать - эта редиска свои "ассоциации" подставить наровит! )
Да и за основу у меня взят материал не с http://www.microchip.su а рекомендации от http://pic24.ru/doku.php/osa/articles/mpasm_formatting правда только за основу "к чему следует стремится", ибо одни и те же приемы по разному трактуются другими применяемыми для mcs51 и ABR компиляторами. У компилятора ассемблера для stm8 вообще специфика ближе к I8086.
Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ очень важен контроль процесса заряда и разряда для избегания воздействия внешнего зарядного напряжения после достижения 100% заряда. Инженеры КОМПЭЛ подготовили список таких решений от разных производителей.
А я и не "чистоте стиля" , хрень какая-то, я о хренпоймешь и нихренаничитаемом проекте. Если цель была -запутать и себя и остальных, то она успешно достигнута. Сплошная вермишель и абсолютное незнание основ компиляции...
Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре.
Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.
Почему "хрень"? У ПИКов два варианта исполнения проекта режим абсолютной адресации и режим относительной адресации. Оба варианта весьма значительно отличаются (у АВР и mcs51 таких резких отличий нет). Данный "шкелет" ( да и практически все последние мои проекты для ПИКовых) сделан именно для режима относительной адресации. От "линейной классики" весьма отличается как по разметке (дефайну) РОН, так и по адресации ПЗУ.
А вот в "популяризированной" любительской практике наиболее часто встречается именно "линейный стиль с абсолютной адресацией". Компилятору вобщем без разницы - какой из вариантов применен, лишь бы не было "смеси" из двух стилей. Мне же удобнее работать с относительным режимом - более совместимым по отношении к MCS51 и AVR.
Ну нет же, ну изучите для чего и как создается мультифайловый проект, как подключаются исходники/библиотеки. Как определяются переменные и секции. Страшно смотреть на вашу лапшу. Ваше творение подобно опусам Корабельникова-пастера. Такой же абсолютно нечитаемый код. Откройте мануал на Mpasm, он находится в папках самого компиля, не ленитесь , читайте. Там же есть пример.
Возможно и до "чистого варианта" когда-нибудь доберусь. На сегодня мне удобнее видеть все дефайны в едином файле расписанные за своими подпрограммами по копиям из заголовков тех подпрограмм (по стандартным решениям они размещаются вместе с основным текстом). Да и разница в суффиксах имен файлов скорее для совместимости. Компиляторы могут не иметь линкера в своем составе. А простые *.txt ВСЕГДА одинаково подключаются, независимо от типа и разновидности компилятора. (Знакомые КОТЯТКИ помоложе уже и до таких проектов добрались где "чистыйАсм" применяется.) Помимо прочего "шкелет" теста - не конечный вариант, а всего-то ШКЕЛЕТ для проверки характеристик программы. Без распределения по конечным файлам. Притом, что в проекте явно обозначены общий файл дефайнов, файл макросов, файл обработчика прерываний, файл инициализации аппаратных ресурсов, файл инициализации программных модулей, библиотека прикладных программных фрагментов и файл еепром. Так что разобраться достаточно просто. Общая карта взаиморазмещения файлов и их содержимого находится в 628_lds.asm Файлы обязательного комплекта компилятора (скопировано из соответствующих папок дистрибутива компилятора) размещены в папке baseinc. Файл сводной карты дефайнов librus\def_lds.txt На данный момент весь обработчик БАМ находится в файле обработки прерываний (librus\irq_lds.txt) - собственно это и есть программа работающая на основе прерываний. Инициализация аппаратной конфигурации таймера и прерываний обеспечения размещена в файле аппаратной инициализации (librus\hd_lds.txt). Пердварительная инициализация программного ядра БАМ для текущего теста в файле librus\sfi_lds.txt
Я постараюсь после праздников найти уроки на вменяемый асм. Постараюсь сделать подбор документации и ссылок. Не поленитесь прочитать/изучить. Вы находитесь на самом низком уровне развития, и уже умудрились свернутт в тупик...
Тупик не тупик, но вполне НА ТЕКУЩЕМ ЭТАПЕ работоспособный.
Речь ведь не о конкретном компиляторе для микорчипа, а о возможности совмещения проектов для различных компиляторов. Ежли удастся накопать вменяемо читабельный материал по masm51 тоже не помешает...
Насчет "уровня" - пока я примеров в Вашем исполнении не видел.
А ссылок на интернет ресурсы (и антикварных первоисточников) у меня достаточно много. Нужного материала в них к сожалению ВЕСЬМА МАЛО.
BOB51 вы одно время зажигалкой занимались, там если не ошибаюсь генерация срывалась, победили проблему? Собираю частотник на ПЛИСке, понятно что макетка, вроде и развязка по оптике, на кнопках иногда ложные срабатывания происходят
Там не генерация срывалась, а проблемы с текущими данными в РОН имели место. Достоверность длительного хранения информации при сработке сторожевика по напряжению (схемы BOD) и вообще "защита от мусора в ОЗУ" как результата непредсказуемого спектра импульсных помех...
И схемотехника там и программные приемы... (не держать константы/данные в ОЗУ относительно длительное время) плюс очень внимательная переинициализация при сбое по помехе.
Схаматехника - там всё на общей шине у вас было или разное питание. Феррит на проволочке помогает в этом вопросе с подавлением помех? Про приёмы в работе логики тоже мысли есть, попробую.
Я просто выделывался - пускал искру с газовой зажигалки в каждую возможную шинку,,, Обязательно в Шинку + питания и в шинку "корпус" … Также баловался искрой в рабочую лапку МК ( полное хамство по отношению к МК)... Однако... Работает, но с жутейшими самоограничениями. Как рекомендация - включить ВСЕ "сторожа" ( и по напряжению ипо собою программы) и как можно жестче проработать перезапуска после сбоя. В самой программе избегать данных хранимых в ОЗУ более одного командного цикла (предпочтение данным в составе команды). Ну и схемотехники само собой (разводка монтажа). При всем прочем,.. Режим с рабочим искровым разрядом в шины питания рекомендуется всячески избегать...
Частотник по уровню помех - игрушка пушистая по сравнению с режимом рабочего искрового разряда в шины питания МК. Скорее всего нужно обратить внимание на схемотехнику - пути сигнальных токов как по активным шинам, так и по линиям возврата... Лишние "петли" в любом случае нежелательны. Да и источник питания должен парировать импульсные выбросы по входным цепям...
И ешшо... Работа велась с батарейным вариантом схем. Конструкции с питанием от сети более устойчивы к разряду в "общий". Ежли прямоугольник с большим размахом (ШИМ 220 для движка) желательно уделить внимание соединительной проводке...
Последний раз редактировалось BOB51 Ср мар 07, 2018 08:29:30, всего редактировалось 1 раз.
Ну у меня искров нет , трёхфазный двигатель, синусоида рисуется шимом. Что-то да пролетает. С макеток перееду на готовую конструкцию, там постараюсь всё предусмотреть. Внутри камня там всё железобетонно. Таблица забита намертво, ОЗУ не имеется.
Прийдется временно "посидеть на обедненном резерве"... Сдох системник, а на подсобном антиквариате весьма неуютно и "зажато"... Пока проекты все замораживаются.
С каждым новым компом (более современной материнкой) все больше проблем с внешним железом...
Все-таки наиболее подходящим решением на среднюю перспективу будут иметь блоки - расширители на основе КОТУИНКО и/или АРДУИНО. Базовый интерфейс RS232 с использованием только линий Rx/Tx. Наибольший "затык" в вопросе создания оболочек-трансляторов в ПК.
BOB51 Прошу помощи котёнку изучающему азы программирования! Изучал как работает сдвиговый регистор 74нс595 оказалось не так сложно. Тестировал его на Attiny13a и решил попробывать забацать что то вроде часов на Ассемблере. Ну думаю ног теперь хватает сейчас забацаю!! И через какое то время преземлился на задницу! Чтоб передать данные на 595 нужно передовать побитно и впихнуть регистор с данными в порт РВ целиком не получается так как на этом же порту ( так как он там один) висят ноги управляющие 595. Начал запихивать побитно используя команды работы с портом и быстро понял что в атиньки 13 мне места не хватит Получилась 1 минута индикации у меня заняла 82 процента памяти! Как не мозговал так и не додумался как можно сделать часы на Attiny13a и используя 74нс595. Подскажите , поделитесь опытом.В протеусе схема у меня работать отказалась в железе работает. Секунды тикают до 1 минуты и всё по кругу. Свои каракули прикладываю ( правда без коментариев так как там и коментировать особо нечего) и файл протеуса ,
ГММ... У тиньки в свободном доступе 5 выводов. Для 595й при минимальном доступе надо три линии CLC, DATA и WR_CT (линии сброса и разрешения выхода можно подключить схемотехнически в фиксированное состояние) с обязательным начальным циклом программной очистки содержимого. В итоге остается свободных аж два вывода... Для полноценного управления часами маловато. А для простейшей тикалки вполне может и хватить (типа секундомера старт/стоп, сброс). Касательно объёма памяти программ - там 512 команд... Должно для секундомера хватить. Насчет проектов/графики .... Протеуса у меня нету - как уже выше говорилось графику (схемы, диаграммы) для всеобщей доступности нужно в *.jpeg или *.gif или *.pdf вариантах выкладывать. Исходник ... для начинающего сойдет - подправлю чуток попозже.
Спасибо! Очень интересно увидеть до какого верхнего предела по разрядам можно сделать секундомер. И как это на Ассемблере будет выглядеть . В интернете очень мало проектов на Ассемблере тяжко учить без наглядного примера. Решил освою сколько смогу максимально Ассемблер и буду переползать на Си. Примеров в разы больше для учёбы. Очень буду ждать Ваш вариант тикалки. Второй день думаю как можно оптимизировать код и не хрена в голову не лезит. Ведь как не крути порт то один и грузить в него РОН целиком не получиться так как не будет нормально работать управление 74НС595. Нашёл касяк почему протеус у меня не работал . В железе использовал два отдельных индикатора а в протеусе выбрал спаренный. Вот схема
_________________ Лучше семь раз покрыться потом , чем один раз инеем!
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 28
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения