Свежие обсуждения
Не про радио

Творческий кризис, или как стать программистом

1 8

Вот возникла такая ситуация. Как "радиолюбитель" я похоже, закончился. Собирать нечего. Усилитель с колонками мне не нужен, по радио слушать нечего, автомат управления баней на мелкой логике тоже на... не сдался, и тому подобное. Не осталось ничего из того, чего я хотел-бы и мог собрать и ради чего стоит постараться. Лишь только иногда возникает желание проверить какую-нибудь сомнительную идею, на что обычно хватает одного дня раз в два месяца. При этом понимаю, что начал посматривать не на тех кто припаивает КТ315, а на тех, кто прошивает микроконтроллер. Регулярно возникает желание выучить асм, что нибудь собрать такое-этакое, но. Вроде бы могу себе представить - записать значения, регистр а, регистр б, что то с ними сделать... Но, при попытке причастится, сталкиваюсь с большой проблемой - я в этом ничего не могу понять. Не укладываются в голове эти пространства адресов, маскируемые и немаскируемые прерывания, и зачем к внешним портам приделали сдвиговый регистр, а позже выложили схему где его нет. "C", Arduino и прочие резиновые изделия - не то, это не путь самурая. Хочется знать ассемблер, но понимаю, что разобраться с ним не смогу никогда. Уважаемый форум, что делать? В отчаянии. Хочется, и понимаю что для этого рожей не вышел.

 

TEX: Хочется знать ассемблер, но понимаю, что разобраться с ним не смогу никогда.

Где логика???? Мы не ищем лёгких путей?
Как по мне то современность требует отказаться от ассемблера, и не морочить им себе голову. Не пойму вашей дилеммы в сути, Вы хотите изучить ассемблер ради самого ассемблера или хотите написать работающую программу для проца?

 

Link: Где логика???? Мы не ищем лёгких путей?

Хочется знать микроконтроллерный АСМ, и уметь пользоваться им. Дилемма такова - можно уйти от низкоуровневой части, можно использовать всякие среды разработки, сейчас можно мышкой программировать. Но в этом случае, мк так и останется черным ящиком.

 

желаете раскрашивать мк-ящик вообще или всё же плавно съедете к проблеме выбора?
- Вы какие предпочитаете? - А у вас разные, что ли есть? (с)

 

TEX: Но в этом случае, мк так и останется черным ящиком.

Определите саму цель более точнее.
Вы хотите просто изучить архитектуру МК или написать программу которая будет исполнять нужный вам алгоритм?

З.Ы.
помнится мне я в академии изучал ассемблер под ИК80, скажу вам сразу сам ассемблер слабо показывает архитектуру проца, ну есть там всякие регистры и что дальше? Ну написали вы в ассемблере переложить из регистра А в регистр В число, ну и что? проц это делает и архитектура проца остаётся за кадром, короче многое зависит от самой цели, лично мне программирование на ассемблере показалось весьма трудоёмким хоть и позволяет написать код с малым объёмом, но как бы так сказать, сейчас в 99,9% реализации любительских задачах на МК знание ассемблера излишне. Изучать же архитектуру МК через ассемблер это как то не то, даже когда вы будете писать на языке более высокого уровня вам всё равно нужно знать архитектуру МК и изучается эта архитектура отдельно от языка программирования по даташиту на МК.

 

Цель - понять, и научится эффективно пользоваться процессором/контроллером. Проблема - нет понимания этих устройств.

 

Программатор нужно делать самому. Если купить, тогда и девайс на мк захочется купить. Но если никакой девайс с мк не нужен, зачем тогда учиться программированию мк?

 

TEX: понять, и научится эффективно пользоваться процессором/контроллером.

МК это некие многофункциональные устройства, у каждого есть свои плюсы и минусы, под конкретную задачу будет более выгоден конкретный МК. Но если уж решили изучать МК с нуля то мне кажется есть смысл забыть про все МК которые были лидерами до 2014г, т.е. взять и начать изучать самый современный МК. Как я понимаю нынче из дешёвых МК в лидерах ARMы, вот и начните изучать 32 разрядные АРМы. Но опять же, если конечная практическая цель мигать светодиодом то нет разницы на каком МК реализовывать эту задачу.

 

TEX: Проблема - нет понимания этих устройств.

МК это считай маленький компьютер у которого на борту есть всё что есть в системном блоке компа. Есть ОЗУ ПЗУ есть АЦП ЦАП порты ввода вывода USART( это типа 5В RS232), USB, даже есть МК с вай фвай модулем на борту, короче можно найти МК на любой цвет и вкус, всё зависит от задачи, под задачу подбирают МК...

 

С разборок есть доступ к довольно широкому ассортименту, правда, не самых свежих cpu/mcu. Есть один AtMega16 (DIP40), давно на нее поглядываю в плане заюзать, но если справлюсь хоть с какой-нибудь ВЕ35 (новая, в золоте и белой керамике), уже буду рад безмерно. Поморгать светодиодом буду считать прорывом, если пойму как это делается. Есть и другие идеи.

Михалыч А: Программатор нужно делать самому. Если купить, тогда и девайс на мк захочется купить.

Не вижу ничего зазорного. Это инструмент, а не конечная цель. Я не вытачиваю на наждаке отвертку, я просто ее покупаю.