1 | |
Программирование микроконтроллеров23.04.2016, 07:10. Показов 5070. Ответов 54
Метки нет (Все метки)
0
|
23.04.2016, 07:10 | |
Ответы с готовыми решениями:
54
Программирование микроконтроллеров Программирование микроконтроллеров Программирование микроконтроллеров Программирование микроконтроллеров |
5113 / 4552 / 854
Регистрация: 07.10.2015
Сообщений: 9,462
|
|
25.04.2016, 18:53 | 41 |
0
|
2063 / 1542 / 168
Регистрация: 14.12.2014
Сообщений: 13,402
|
|
25.04.2016, 19:01 | 42 |
Перфоленты издали видел. Перфораторы для перфокарт еще тоже видел, правда не в работе. Как раз как то эмулятор для телетайпа на котором перфоратор был встроенный делал. Функция перфоратора уже правда была неактуальна поэтому без нее.
Fixed Point далеко не всегда достаточно. Хотя для токарки с ЧПУ выше крыши (я правда имел дело с теми на которых уже магнитная лента встроена была, а под перфоленту на соседнем участке были). Но есть очень нехороший недостаток у всех этих токарок с ЧПУ болгарского производства с совдеповским контроллером - из за того что с плавающей арифметикой не дружат не умеют вычислять начальную и конечную точку окружности для круговой интерполяции. И эллиптической нет, а могли бы, алгоритм Брезенхема и для эллипсов применим, только вот если вычисление начальной и конечной точки окружности токарь в столбик еще может осилить, а с инженерным калькулятором вообще не проблема, то вычисления точек эллиптической дуги уже не для человеческого вычислителя. Добавлено через 2 минуты Расположение листов на линии прокатки в момент времени n, температура каждого прохода и усилие прокатки листа номер m тоже всегда перед глазами?
0
|
5113 / 4552 / 854
Регистрация: 07.10.2015
Сообщений: 9,462
|
|
25.04.2016, 19:10 | 43 |
Так программа ж считает. Зачем туда влазить? Раз настроить и все.
И вообще, в моих нынешних задачах больших вычислений практически нет. Немного перелопать байты, сформировать информацию для вывода, передача-прием, подергать портами, все просто Для вычислительных задач все вычисления я бы делал на компьютере, с передачей информации на исполнительное устройство. Добавлено через 2 минуты Fulcrum_013, это должно быть согласовано в протоколе обмена, какие порты подключены к каким датчиках, а порты в схеме, которая перед глазами
0
|
2063 / 1542 / 168
Регистрация: 14.12.2014
Сообщений: 13,402
|
|
25.04.2016, 19:17 | 44 |
0
|
5113 / 4552 / 854
Регистрация: 07.10.2015
Сообщений: 9,462
|
|
25.04.2016, 19:25 | 45 |
Fulcrum_013, Все зависит, от того, что надо делать, и сколько есть на это времени.
Задачи бывают разные
0
|
2063 / 1542 / 168
Регистрация: 14.12.2014
Сообщений: 13,402
|
|
25.04.2016, 20:00 | 46 |
В таком случае быстрее проектировать протокол так, чтобы программа была написана 1 раз, а схема каким портом дернуть по какой команде была бы данными, тогда все эти дела можно делать просто чертя схему.
0
|
5113 / 4552 / 854
Регистрация: 07.10.2015
Сообщений: 9,462
|
|
25.04.2016, 20:14 | 47 |
Fulcrum_013, разумеется, схема и программа должны быть согласованы на этапе проектирования, что и как выводить, что и как получать.
На одной плате может быть реализовано множество устройств с разными программами. Все последующие программы используют то распределение ресурсов, которое заложено. Правда, иногда приходится добавлять дополнительные ключи, еще что-нибудь... На все случаи жизни не заложишься... И датчики бывают разные. Есть стандартные, с которыми мы работаем всегда, иногда появляются весьма "хитрые". Но ничего, приспосабливаемся... Нет, так недолго и новую плату развести
0
|
389 / 188 / 47
Регистрация: 11.07.2013
Сообщений: 1,120
|
|
26.04.2016, 00:56 | 48 |
Господа, хоть и не про Лазарус, но беседа получилась интересной.
Как сторонний наблюдатель поддерживаю доводы скорее Fulcrum_013, чем _liv_, хотя хочу отдать должное уважение пследнему за его преданность асму. Уважаемый _liv_, просто хочется спросить, а не мазохист вы случайно (в хорошем смысле этого слова и прошу не обижаться). Сам начинал в 80-х по журналу "Радио" с Кр580, сначала писал в тетраде на ассемблере, затем переводил вручную в машинные коды, набирал их на самодельном программаторе и т.д. Можно было бы и по сей день так писать, однако, являясь представителем ленивого рода "Homo sapiens", захотелось получать результат с меньшими затратами труда, поэтому отказался от тетради, а asm-коды стал набирать на "Радио-86 МК". И, собственно, так далее - зачем отказываться от прогресса... К слову так, один мой товарищ (физик-теоретик, д.т.н.) использовал для своих расчётов Турбо-Паскаль. Чёрный экран, командная строка. Долго я "доставал" его и всё-таки "достал" - "пересел" он на Delphi, а через пол года он на нём начал такие чудеса творить...(к стати, в Лазарус я влез "с его подачи"). А второй товарищ - электронщик, для него кроме PIC-ов и ассемблера ничего не существует. А если что-то не получается, то делает такую "умную рожу", что и не возразишь ему (например, АЦП работает нестабильно, ложно срабатывают уставки. Предлагаю: сделай программный фильтр. "Да что ты. На это ещё неделя уйдёт, лучше пускай они линию нормально проложут...") На Си эта задача решается минут за 10 (с учётом времени включения ноутбука и подключения программатора), а на ассемблере у него - неделя. И мужик-то не дурак. Предлагал ему изучить Си, а он свои доводы: код у него компактный, быстрый. А, мне так кажется, что изучил человек когда-то добросовестно свой ассемблер и теперь пытается сам обмануть себя - "надо будет - изучу", "нет задач - не надо учить". Не поддерживаю. Лично я, будучи в начале 2000 г безработным и без всякой дальнейшей перспективы, в возрасте далеко за 40 не постеснялся пойти со школьниками на курсы изучать Си (Изучить его в совершенстве не смог до сих пор и вряд ли хватит на это всей жизни, но стал восстребованным специалистом в саоей области. Считаю, что поступил правильно). Беспорно, код на ассемблере более компактный и быстрый, но писать его на несколько порядкав сложнее, чем на том же Си. Он не "прощает" ошибок, требует очень высокой квалификации. Если я через год с трудом вспоминаю, что написал на Си и на это уходит дня два-три, то недели две буду вспоминать, что когда-то писал на ассемблере. И ещё очень важный момента не в пользу ассемблера: нет, допустим, в продаже контроллера данного типа или вообще он снят с производства. Что делать? На ассемблере придётся всё начинать с нуля, а на Си только подправить некоторые функции. Но это ещё пол беды. А представьте, что вы работаете в команде и вдруг заболели, уволились или ещё хуже - вас задавил трамвай. Ваша фирма, полагаю, будет вам очень благодарна... Когда-то мой начальник говорил крылатуя фразу: "Нет незаменимых людей. Просто сейчас их неким заменить". Дорогой _liv_, если вам так легко даётся писать на ассемблере, то, поверьте, поработав с Си вы поймёте, на сколько вы себя обкрадывали всё это время и сколько вы смогли бы сделать за это время полезного... Вывод: используйте те программные инструменты, которыми пользуется большинство (во всяком случае, будет к кому обратиться за помощью). Что касается вопроса Hretgir. Если раньше вы не занимались электроникой и программированием МК, а сроки поджимают, то подключите к своей работе кого-нибудь из знакомых электронщиков, который "знает в этом толк", т.к. не факт, что хорошо написанная программа заработает в "железке", собранной "кривыми руками". Или возьмите за основу микрокомпьютер типа "Raspberry Pi" (есть и другие аналоги), во всяком случае, "железо" собрано качественно, а ПО сами напишете на Лазарусе. Добавлено через 1 час 20 минут Хочу ещё дополнить. Что такое ассемблер, Си, Лазарус и др. Это - инструменты для достижения конкретной цели. Интересная былабы беседа между двумя землекопами: один копал сочковой лопатой, а другой - штыковой. Представляеете этот диспут... Или еще лучше: один сантехник отчерпывает их колодца г.... ведром, а другой отсасывает шлангом (продолжать?). Главное ведь результат, а не вы - копатель, сантехник или разработчик и, тем более, чем вы там пользовались (ведром или шлангом). Вас же не интересует при покупке в магазине того же хлеба, на какой почве и кем был ворощен урожай, а печь, в которой его пекли: была электрическая или газовая.... Максимум вашего интереса - это вкус и, может быть, вес булки хлеба. Вот интересно, между пекарями хлеба тоже развивается подобная дискуссия: какая печь лучше (на дровах - ассемблер, на газе - Си иди электро - Лазарус). В прошлый век счётов, логарифмических линеек и калькуляторов как-то было даже стыдно сказать, что я считал на калькуляторе, а не в уме... А сейчас умение пользоваться инструментом даже возводится в какой-то особый ранг - Я ПРОГРАММИСТ. Да это просто обязанность каждого современного инженера. А выбор инструмента (пока нет по этому поводу закона) личное дело каждого.
1
|
5113 / 4552 / 854
Регистрация: 07.10.2015
Сообщений: 9,462
|
|
26.04.2016, 11:06 | 49 |
shyub, думаете, я не работал на С? Работал и довольно долго и успешно. Но вернулся на асм. По той простой причине, что на нем быстрее и качественнее. Вот такой парадокс. Я не мазохист, а прагматик, выбираю тот инструмент, который лучше подходит на данный момент, "для достижения конкретной цели"
Перенос кода на другой контроллер AVR делается на раз. Мы используем разнообразные AVR-ки. Это вообще не вопрос. AVR-ки тем и хороши, что они отличаются только набором периферии на борту, да адресами управляющих регистров. Первое учитывается при выборе типа контролера. Второе в мнемонике регистров, т.е. в include-ах Отличие еще может быть в доступе по in/out или lds/sts, так и это учтено, у меня есть макро, которое автоматом подставляет нужную команду. Все! Поменял include, и код готов! Заменить кем-то... Это, конечно, пока вопрос открытый Я так далеко не заглядываю вперед. Там видно будет. Но на мой век еще хватит. Зачем мне идти той дорогой, которой идут все? Спрашивать кого-то? Я и сам могу все сделать... У меня основные справочники - datasheet-ы. Взять полностью готовый С-шный код для какого-то девайса? Так переносится на асм за пару-тройку дней. Уже делал не раз. Естественно, с оптимизацией. Да, ассемблер предъявляет особые требования к программисту. Далеко не каждому это дано, даже тем, кто на нем работает... Но это как раз по мне. Я по другому и не хочу, предпочитаю все контролировать самому. И мыслю категориями регистр, бит и т.п. Могу тут же выбросить какой-то кусок, тут же переписать его заново! При этом очень быстро и практически без ошибок... (Может это и мазохизм с Вашей точки зрения ) Каждому свое... На данный момент, мой основной инструмент - ассемблер. Не исключаю, что в будущем он поменяется, если будут другие задачи Для компа я пишу на С++, хотя могу и на асме, но здесь это нецелесообразно PS У меня даже на компе нет антивируса, точнее стоят некоторые другие средства, обеспечивающие минимальную степень защиты. Вычищаю, в случае необходимости, "ручками". Тоже предпочитаю сам все контролировать Люблю, знаете ли, покопаться в реестре...
0
|
26.04.2016, 12:47 | 50 |
_liv_, Вы не выбираете, а используте асм всегда.
У нас был такой же специалист, повернутый на асме. После его ухода его проект переделали с нуля на язык C в сроки, на порядок меньшие, чем затратил он.
0
|
5113 / 4552 / 854
Регистрация: 07.10.2015
Сообщений: 9,462
|
|
26.04.2016, 13:07 | 51 |
Rius, это именно мой выбор, могу и на С, но не хочу.
И я свой выбор никому не навязую... А просто изложил свой взгляд
0
|
26.04.2016, 20:18 [ТС] | 52 |
Вот как я подошёл к проблеме, по поводу линка на программирование кинематики. Тема открыта мной на другом форуме, потому что там есть раздел философии, но парадигму придумал я сам, на второе сообщение в теме без ответов. Тут я не наблюдал раздела философии, поэтому не думаю, что в рамках данного форума как-то реально обсуждать тему.
Парадигма начинается с того, что: Действия бывают связанные по условию и по задаче. Вот так замыкается парадигма: Действия связанные по задаче, являются друг для друга условиями её достижения.
0
|
389 / 188 / 47
Регистрация: 11.07.2013
Сообщений: 1,120
|
|
27.04.2016, 00:22 | 53 |
Уважаемый _liv_, я вас услышал. Как говорится в одной умной книге: умеющий уши - да услышит, имеющий глаза - да увидет.
Hretgir, а что вы ещё ожидали? Своё мнение по вашей проблеме я вам сказал дважды. Навязывать своё мнение вам никто не будет. Будут проблемы, обращайтесь. Один есть хороший анегдот по этому поводу: Наводнение, тонет верующий еврей. Подплывает к нему лодка - садись еврей, спасём. Нет, меня бог спасёт. Тонет дальше. Подплывает плот и т.д. Утонул еврей и попдает к богу: Бог, я тебя всю жизнь любил, молился тебе, а ты меня не спас. Бог отвечает: а кто тебе лодку присылал, кто плот присылал и т.д. Не будтье таким евреем (ничего не имею к еврейской национальности, просто такой анегдот). Вы, Hretgir, сам решайте, на какой базе делать проект, а когда возникнут проблемы обращайтесь за помощью (если это не ассемблер - шучу).
0
|
0 / 0 / 0
Регистрация: 16.10.2020
Сообщений: 28
|
|
21.02.2024, 20:29 | 55 |
liv, а какой ассемблер используете?
0
|
21.02.2024, 20:29 | |
21.02.2024, 20:29 | |
Помогаю со студенческими работами здесь
55
Визуальное программирование микроконтроллеров программирование микроконтроллеров pic Втягивание в программирование микроконтроллеров С чего начать? программирование микроконтроллеров Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |