Форум программистов, компьютерный форум, киберфорум
Микроконтроллеры
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.90/41: Рейтинг темы: голосов - 41, средняя оценка - 4.90
0 / 0 / 0
Регистрация: 24.01.2010
Сообщений: 37

основа по микроконтроллерам

16.11.2010, 00:44. Показов 8250. Ответов 21
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
вот сейчас наткнулся что не знаю, как работает процессор на примере какой нибудь архитектуры
программы писать могу на С, а позади белое пятно в знаниях
чем его закрасить?(литература)
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
16.11.2010, 00:44
Ответы с готовыми решениями:

Даны 2 строковых массива – основа и окончание. Сформировать случайным образом название страны по принципу «основа-плюс о
Даны 2 строковых массива – основа и окончание. Сформировать случайным образом название страны по принципу «основа-плюс окончание», название...

Стажировка по микроконтроллерам
Очень интересует вопрос касательно получения начального опыта работы в программирование микроконтроллеров. Имею высшее техническое...

Задачка по микроконтроллерам
Какую последовательность 0 и 1 покажут светодиоды, подключенные к источнику +5В порта В микроконтроллера ATmega16, после выполнения...

21
0 / 0 / 0
Регистрация: 10.08.2010
Сообщений: 1,264
16.11.2010, 01:30
Чарльз Петцольд "Код"... Это про самые самые основы.
0
0 / 0 / 0
Регистрация: 21.04.2010
Сообщений: 1,890
16.11.2010, 03:29
вот с картинками
Катцен С. PIC-микроконтроллеры. Все, что вам необходимо знать

Но лучше всё-таки выбери вначале с какой архитектуры начинать.
0
0 / 0 / 0
Регистрация: 24.01.2010
Сообщений: 37
16.11.2010, 20:46
архитектура авр, ну может еще x51 с последующим переходом на arm cortex
0
0 / 0 / 0
Регистрация: 08.05.2010
Сообщений: 332
16.11.2010, 22:18
Цитата Сообщение от Broymyos
архитектура авр, ну может еще x51 с последующим переходом на arm cortex
Посмотрите:
http://klax.tula.ru/~chip/
Это про 8051.
По АВР тоже есть множество книжек для начинающих.
АВР не "голову" мощнее х51. Но принципы функционирования все процессоров очень близки.
И еще - если хотите освоить микроконтроллеры купите какой-нибудь Стартер КИТ, лучше всего на АВР и "помучьте" его как следует! :-)
Дело в том, что в микроконтроллерах все почти "густо замешано на железе". Поэтому знание СИ Вам ничего не даст положительного для освоения МК.
0
0 / 0 / 0
Регистрация: 24.01.2010
Сообщений: 37
17.11.2010, 00:18
блин!
да я знаю как писать под микроконтроллеры на С и делал несколько устройств на них)
и плата у меня тоже есть
просто понимаю, что есть белое пятно в знаниях
0
0 / 0 / 0
Регистрация: 02.11.2010
Сообщений: 499
17.11.2010, 00:21
"Большие знания умножают печаль..."
0
0 / 0 / 1
Регистрация: 22.01.2010
Сообщений: 4,000
17.11.2010, 00:23
Изучи ассемблер. Любой. Любого контроллера. Научись гонять байты, делать стековые извраты, напиши простенькую операционку. Тогда ты жопой будешь чуять то как работает компилятор, что он делает, как и зачем. Тогда вскрытые дебагером кишки будут простыми и понятными.
0
0 / 0 / 0
Регистрация: 23.01.2010
Сообщений: 2,550
17.11.2010, 18:32
На Асме можешь ты не кодить
Но знать обязан ты его!

=)
0
0 / 0 / 0
Регистрация: 16.08.2010
Сообщений: 1,326
17.11.2010, 21:25
Цитата Сообщение от Mittid Mitot
На Асме можешь ты не кодить
Но знать обязан ты его!
И складно, и, как ни странно, правда. Да вы, батенька, поэт. Вам бы баллады на околоэлектронные темы сочинять.
0
0 / 0 / 0
Регистрация: 28.10.2010
Сообщений: 892
17.11.2010, 22:32
По поводу АСМа. Пытаюсь приобщиться к высокому стилю программирования, пробую кусочки своих программ перенести в Алгоритм Билдер, как самый близкий к АСМ. И тут же нарываюсь - обычный инкремент счетчика на регистрах r0,r1 выливается в 6 команд и 6 тактов, в то время как у меня всегда используется:
yms r0 ;
brbc 1,k;
yms r1;
т.е. 3 команды и 3 такта.
Кто-то скажет, ерунда, три такта, а для меня в конкретной программе нужно понизить почти в два раза скорость приема/передачи. Если говорить о читаемости кода, то макрос может выглядеть INCW r1,r0 , что вполне наглядно.
Поэтому скажу, что АСМ нужно не только знать, на нем можно даже писать программы.
0
0 / 0 / 0
Регистрация: 28.09.2010
Сообщений: 4,283
17.11.2010, 22:53
Если-уж считать такты, то выходит, что BRBC занимает от 1 до 2 тактов. И ваш код, таким образом, имеет длительность от 3 до 4 тактов. И, что самое грустное, в 255 случаях из 256 он будет выполняться 4 такта.

Так-что 6 тактов в АБ это ещё не так плохо.
0
0 / 0 / 0
Регистрация: 28.10.2010
Сообщений: 892
17.11.2010, 23:30
Цитата Сообщение от dsodir
Если-уж считать такты, то выходит, что BRBC занимает от 1 до 3 тактов. И ваш код, таким образом, имеет длительность от 3 до 5 тактов. И, что самое грустное, в 255 случаях из 256 он будет выполняться 5 тактов.

Так-что 6 тактов в АБ это ещё не так плохо.
Возражаю, этот участок всегда исполняется за три такта. Там анализ перехода по SREG, а не порта или регистра.
0
0 / 0 / 0
Регистрация: 02.11.2010
Сообщений: 499
17.11.2010, 23:35
Цитата Сообщение от инкер
Возражаю, этот участок всегда исполняется за три такта. Там анализ перехода по SREG, а не порта или регистра.
Если условие выполняется - одно количество тактов, не выполняется - другое.

Ниже отрывок из справочника Евстифеева:

При выполнении команд типа Test & Skip, следующая команда не вы-
полняется в случае истинности проверяемого условия. Однако выборка про-
пускаемой команды уже произошла. Вследствие того что команда не выпол-
няется, в конвейере образуется «дырка», которая заключается в пропуске
одного или двух (в зависимости от пропускаемой команды) машинных цик-
лов. Таким образом команды типа Test & Skip выполняются за один машин-
ный цикл, если результат проверки условия отрицателен, и за два или три
цикла, если он положителен.
0
0 / 0 / 0
Регистрация: 28.09.2010
Сообщений: 4,283
17.11.2010, 23:37
Я там ошибся. не от 1 до 3, а от 1 до 2. Но суть не меняется.
0
0 / 0 / 0
Регистрация: 28.10.2010
Сообщений: 892
17.11.2010, 23:44
(инкремент=1такт) + (бренч по не 0 = 2такта) = 3 такта
(инкремент=1такт) + (нет бренча по 0 = 1такт) + (второй инкремент = 1) = 3такта

Обращаю внимание, это не СКИП!

Система команд и вся архитектура АВР это пригородный шанхай, но если привыкнуть, как к рваным домашним тапочкам, то очень даже ничего.
Анализ только регистра статуса позволяет делать переходы, остальные - только пропуски.
Я использовал эту особенность, запихивая в SREG флаги нажатых кнопок в подпрограмме опроса , потом легко бренчами прыгать на обработку нажатий. Те же флаги в обычном регистре или порте требуют дополнительно GOTO.

Уверен, что ни один компилятор не использует такую фичу. Это сила голого АСМа.
0
0 / 0 / 0
Регистрация: 28.09.2010
Сообщений: 4,283
17.11.2010, 23:46
хм... фак... я затупил :)
0
0 / 0 / 0
Регистрация: 08.05.2010
Сообщений: 332
18.11.2010, 00:49
Цитата Сообщение от инкер
По поводу АСМа. Пытаюсь приобщиться к высокому стилю программирования, пробую кусочки своих программ перенести в Алгоритм Билдер, как самый близкий к АСМ. И тут же нарываюсь - обычный инкремент счетчика на регистрах r0,r1 выливается в 6 команд и 6 тактов, в то время как у меня всегда используется:
yms r0 ;
brbc 1,k;
yms r1;
т.е. 3 команды и 3 такта.
Кто-то скажет, ерунда, три такта, а для меня в конкретной программе нужно понизить почти в два раза скорость приема/передачи. Если говорить о читаемости кода, то макрос может выглядеть INCW r1,r0 , что вполне наглядно.
Поэтому скажу, что АСМ нужно не только знать, на нем можно даже писать программы.
Мне только непонятно, зачем Вы используете счетчик на "младших" регистрах?
Ведь существуют специальные регистровые пары: W, X, Y и Z. В них инкремент выполняется за 2 такта.
0
0 / 0 / 0
Регистрация: 28.10.2010
Сообщений: 892
18.11.2010, 03:18
Цитата Сообщение от vystor_b_k
Мне только непонятно, зачем Вы используете счетчик на "младших" регистрах?
Ведь существуют специальные регистровые пары: W, X, Y и Z. В них инкремент выполняется за 2 такта.
Редко, когда все старшие заняты.
Меня просто заинтересовало, почему Громов применил такой шаблон, с пересылкой из младших в старшие. Может потому, что инкремент, декремент не действует на перенос и теряется один из признаков.
0
0 / 0 / 1
Регистрация: 22.01.2010
Сообщений: 4,000
18.11.2010, 06:27
Я использовал эту особенность, запихивая в SREG флаги нажатых кнопок в подпрограмме опроса , потом легко бренчами прыгать на обработку нажатий. Те же флаги в обычном регистре или порте требуют дополнительно GOTO.
Сильно! И как я до этого недопетрил. Красиво же! Мда, надо почаще пускать на мясо священных коров вроде SREGa и подумать под нетрадиционному использованию других узкозаточенных регистров.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
18.11.2010, 06:27
Помогаю со студенческими работами здесь

Книга по микроконтроллерам STM8
Здравствуйте, форумчане. У меня появилась идея написать книгу по микроконтроллерам STM8. В последнее время читал несколько книг по AVR. У...

Книга по микроконтроллерам STM8
Здравствуйте, форумчане. У меня появилась идея написать книгу по микроконтроллерам STM8. В последнее время читал несколько книг по AVR. У...

Книги по PIC микроконтроллерам
Четыре книги для начинающих осваивать микроконтроллеры PIC: "Ридиалюбительские конструкции на PIC-микроконтроллерах. Книга 1"...

Вакансия - программист по микроконтроллерам
Инженер программист встраиваемых систем. Требования: муж., о/р от 1 года, высшее образование Знание принципов работы и построения...

вакансия программиста по микроконтроллерам
Программист по микроконтроллерам Требования: Муж., в/о, о/р от 1 года, гражданство РФ. Знание языка С, навыки написания программного...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru