реклама на сайте
подробности

 
 
> Cortex-M3 и М4, В чем разница?
af1283
сообщение Dec 29 2013, 16:02
Сообщение #1





Группа: Участник
Сообщений: 13
Регистрация: 29-12-13
Пользователь №: 79 849



Хочу ответов мудрых на вопрос: в чем отличие системы команд Cortex-M3 и М4 и насколько они совместимы? Если читать книжку по М3, то можно опыт перенести на М4? Спасибо.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Метценгерштейн
сообщение Jan 4 2014, 10:21
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 357
Регистрация: 12-04-05
Из: Петербург
Пользователь №: 4 079



знать асм надо- это дает понимание того, что такое проц вообще и как он работает.
Но писать на асме, что под АВР, что под STM32 смысла нет и не стоит это делать.
Год назад сам на STM32 перешел. Порекомендую сайт chipspace.ru
Там все подробно и по шагам расписано. Сам туда пару статей написал полезных. Начинай с него, описано хорошо и как надо.
И, повторюсь, писать надо на Си. Книжка в помощь- изучаем Си. Крупник.
Go to the top of the page
 
+Quote Post
af1283
сообщение Jan 6 2014, 10:19
Сообщение #3





Группа: Участник
Сообщений: 13
Регистрация: 29-12-13
Пользователь №: 79 849



Цитата(Метценгерштейн @ Jan 4 2014, 14:21) *
знать асм надо- это дает понимание того, что такое проц вообще и как он работает.


Спасибо, но почему асм не подходит для написания чего-либо совсем несложного? Я понимаю, что всем хочется побыстрее и попроще, но... Я пример на асме нашел только на одном американском сайте колледжа.
Go to the top of the page
 
+Quote Post
mantech
сообщение Jan 6 2014, 12:52
Сообщение #4


Гуру
******

Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143



Цитата(af1283 @ Jan 6 2014, 14:19) *
Спасибо, но почему асм не подходит для написания чего-либо совсем несложного? Я понимаю, что всем хочется побыстрее и попроще, но... Я пример на асме нашел только на одном американском сайте колледжа.


Потому что есть такая штука, как переносимость. Например я писал интерпретатор виртуальных задач для аврки, год назад пришлось портировать на арм, я писал на си, время на порт затратил 2 дня. А теперь представь, еслиб я на асме все это писал, и потом надо портировать на арм?? Да, возможно я получил бы еще процентов 5 быстродействия, но потратил бы как минимум пару месяцев. Воть laughing.gif

PS. Надо учитывать одно - во времена 8мибитников, с быстродействием единицы миллионов оп\сек иногда требовалось написать что-то особо быстрое, с мин. кол-вом кода (пример - те же тини у аврок). Теперь, когда микруха стоит 50руб, а в ней 64к флеша 20к ОЗУ и 80 мипсов быстроты, эти требования уже не актуальны, и асм я знаю только на том уровне, чтоб оценить проблему при отладке...
Go to the top of the page
 
+Quote Post
af1283
сообщение Jan 6 2014, 18:34
Сообщение #5





Группа: Участник
Сообщений: 13
Регистрация: 29-12-13
Пользователь №: 79 849



Цитата(mantech @ Jan 6 2014, 16:52) *
Потому что есть такая штука, как переносимость. Например я писал интерпретатор виртуальных задач для аврки, год назад пришлось портировать на арм, я писал на си, время на порт затратил 2 дня. А теперь представь, еслиб я на асме все это писал, и потом надо портировать на арм?? Да, возможно я получил бы еще процентов 5 быстродействия, но потратил бы как минимум пару месяцев. Воть laughing.gif

PS. Надо учитывать одно - во времена 8мибитников, с быстродействием единицы миллионов оп\сек иногда требовалось написать что-то особо быстрое, с мин. кол-вом кода (пример - те же тини у аврок). Теперь, когда микруха стоит 50руб, а в ней 64к флеша 20к ОЗУ и 80 мипсов быстроты, эти требования уже не актуальны, и асм я знаю только на том уровне, чтоб оценить проблему при отладке...


Да, с точки зрения программирования я с вами целиком согласен. Но... Для меня, как для начинающего инженера, с программированием знакомым слабо, понятнее всего всё-таки когда я сначала сам пощупаю всё, что делает код, сам напишу кое-какие велосипеды на асме: покидаюсь байтами, помигаю чем придется; потом досконально разберусь в сишных библиотеках, возможно подпилю их, а тогда уже дело пойдёт на лад, ящитаю. Спасибо.

Сообщение отредактировал af1283 - Jan 6 2014, 18:34
Go to the top of the page
 
+Quote Post
HardEgor
сообщение Jan 6 2014, 18:48
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 2 223
Регистрация: 3-03-06
Из: Tomsk
Пользователь №: 14 925



Снизу, от asm, идти конечно надежнее, но талмуд по нему для АРМ больше 500 страниц. А еще надо будет читать талмуд на конкретный процессор - это еще не одна сотня страниц.

Предлагаю идти сверху, от си, т.е. пишешь программу на си с Standard Peripherals Library Drivers, точнее берешь готовый пример и разбираешься как он работает - что в какой последовательно в какие регистры пишется и т.д. Потом можно для этого си-шного кода получить asm-исходник, и потрассировать программу по нему в железе.

Вот если бы у тебя был преподаватель, который имеет опыт и знает последовательность изучения, направит и подскажет и ответит на вопросы, тогда можно и с asm начинать.
Go to the top of the page
 
+Quote Post
af1283
сообщение Jan 6 2014, 18:56
Сообщение #7





Группа: Участник
Сообщений: 13
Регистрация: 29-12-13
Пользователь №: 79 849



Цитата(HardEgor @ Jan 6 2014, 22:48) *
Снизу, от asm, идти конечно надежнее, но талмуд по нему для АРМ больше 500 страниц.


Объем, конечно, серьезный. Чтоб писать на avr асме - надо страниц 20 прочесть biggrin.gif

Цитата(HardEgor @ Jan 6 2014, 22:48) *
берешь готовый пример и разбираешься как он работает - что в какой последовательно в какие регистры


Отличный вариант, но чтоб потрассировать в железе мне разве не придется периферию переписывать под свою stm32f3disvovery?

Да и ковыряться в большом объеме чужого кода ( тем более ассемблерного) как-то уныло. Лучше честно писать самому biggrin.gif
Неплохо бы совместить оба подхода.

Цитата(HardEgor @ Jan 6 2014, 22:48) *
Вот если бы у тебя был преподаватель, который имеет опыт и знает последовательность изучения, направит и подскажет и ответит на вопросы, тогда можно и с asm начинать.


Это было бы шикарно, но преподаватель кроме avr, похоже, и знать ничего не желает.


Сообщение отредактировал af1283 - Jan 6 2014, 18:59
Go to the top of the page
 
+Quote Post
SII
сообщение Jan 6 2014, 19:25
Сообщение #8


Знающий
****

Группа: Свой
Сообщений: 549
Регистрация: 13-07-10
Из: Солнечногорск-7
Пользователь №: 58 414



Цитата(af1283 @ Jan 6 2014, 22:56) *
Объем, конечно, серьезный. Чтоб писать на avr асме - надо страниц 20 прочесть biggrin.gif


Не переживайте, для начала работы на асме читать всё это и не требуется. Половина инструкций нужна лишь для специфических вещей, да и отсутствует во многих АРМах; без другой прожить можно, хотя с их помощью можно писать эффективнее -- в общем, это как раз дело наживное. Кроме того, очень значительный объём руководства посвящён всяким другим вопросам, например, устройству защиты памяти (MPU) -- для начинающего всё это даром не нужно.

Что касается документации на конкретный МК, то там тоже не требуется сразу читать все эти сотни, а то и тысячи страниц -- это ж не художественное произведение. Читаются те разделы, что нужны. Например, чтоб поморгать светодиодом, достаточно разобраться с GPIO и с настройкой ног процессора вообще. Синхронизацию процессора здесь настраивать не нужно -- вполне устроит то, с чем он начинает работать. Для более сложных вещей уже нужно и синхронизацию, но это один сравнительно небольшой раздел, а не 500 страниц. Ну и так далее sm.gif
Go to the top of the page
 
+Quote Post
af1283
сообщение Jan 6 2014, 19:33
Сообщение #9





Группа: Участник
Сообщений: 13
Регистрация: 29-12-13
Пользователь №: 79 849



Цитата(SII @ Jan 6 2014, 23:25) *
Синхронизацию процессора здесь настраивать не нужно -- вполне устроит то, с чем он начинает работать.


У них ещё и тактирование настраивается? rolleyes.gif Или это что-то другое?
Go to the top of the page
 
+Quote Post
SII
сообщение Jan 7 2014, 08:38
Сообщение #10


Знающий
****

Группа: Свой
Сообщений: 549
Регистрация: 13-07-10
Из: Солнечногорск-7
Пользователь №: 58 414



Цитата(af1283 @ Jan 6 2014, 23:33) *
У них ещё и тактирование настраивается? rolleyes.gif Или это что-то другое?


Именно. Несколько возможных источников синхронизации (работать начинает от внутренней RC-цепочки), разные возможные частоты процессора и периферии и т.д. и т.п. Но для моргания светодиодами это роли не играет, так что лично я сначала порекомендовал бы именно их победить (ну, можно с вариациями: например, при нажатии на кнопку зажигать один светодиод, при отпускании -- другой). На этой задаче вполне можно изучить самые важные команды процессора (mov, ldr, str, b, and и тому подобные), ну а после можно браться и за настройку синхронизации.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- af1283   Cortex-M3 и М4   Dec 29 2013, 16:02
- - SII   Всё, что работает на -M3, будет и на -M4. Последне...   Dec 29 2013, 16:19
|- - af1283   Цитата(SII @ Dec 29 2013, 20:19) Спасибо...   Dec 29 2013, 17:46
|- - mantech   Цитата(SII @ Dec 29 2013, 20:19) Вообще с...   Dec 30 2013, 06:40
- - Lagman   http://en.wikipedia.org/wiki/ARM_Cortex-M   Dec 29 2013, 17:10
- - skripach   Цитата12Кб!!! Сдуру можно и х.. сломат...   Dec 29 2013, 18:07
|- - af1283   Цитата(skripach @ Dec 29 2013, 22:07) Сду...   Dec 29 2013, 18:35
|- - ViKo   Цитата(af1283 @ Dec 29 2013, 21:35) так ч...   Dec 30 2013, 05:23
|- - af1283   Цитата(ViKo @ Dec 30 2013, 09:23) Если са...   Dec 30 2013, 14:47
|- - SII   Цитата(af1283 @ Dec 30 2013, 18:47) Так т...   Dec 30 2013, 16:55
|- - toweroff   Цитата(SII @ Dec 30 2013, 20:55) .lst -- ...   Dec 30 2013, 19:35
- - SII   ИМХО, без знания ассемблера хороший специалист в о...   Dec 29 2013, 22:28
- - andrewlekar   ЦитатаБез них просто не будет работать же. Будет. ...   Dec 30 2013, 05:00
- - af1283   SII, большое спасибо за помощь.   Dec 30 2013, 18:24
- - ViKo   Если работать в Keil, то можно задать создавать ли...   Dec 31 2013, 08:26
|- - Сергей Борщ   Цитата(af1283 @ Jan 6 2014, 12:19) Я пони...   Jan 6 2014, 11:30
||- - Lagman   Цитата(af1283 @ Jan 6 2014, 23:33) У них ...   Jan 6 2014, 19:41
|||- - toweroff   Цитата(Lagman @ Jan 6 2014, 23:41) По это...   Jan 6 2014, 21:23
|- - HardEgor   Цитата(SII @ Jan 7 2014, 02:25) Не пережи...   Jan 7 2014, 06:43
|- - Сергей Борщ   Цитата(HardEgor @ Jan 7 2014, 08:43) Проб...   Jan 7 2014, 17:43
- - af1283   Спасибо всем за участие и приятную беседу. Я ещё в...   Jan 7 2014, 17:44


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 23rd August 2025 - 21:22
Рейтинг@Mail.ru


Страница сгенерированна за 0.01495 секунд с 7
ELECTRONIX ©2004-2016