Lisitsin 0 15 октября, 2012 Опубликовано 15 октября, 2012 · Жалоба Не подскажете, как у них там дела с симулятором? Не хуже Кейла для AT91? Чёт симулятор не включается для Cortex M4. Хотя компилировать компилирует. Люди добрые, а существует вообще в природе asm для Cortex??? Или мне C учить ??????? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
prottoss 0 15 октября, 2012 Опубликовано 15 октября, 2012 · Жалоба Чёт симулятор не включается для Cortex M4. Хотя компилировать компилирует. Люди добрые, а существует вообще в природе asm для Cortex??? Или мне C учить ??????? Можете и на ассемблере. Вижу для Вас плевое дело. Вот тут качайте - http://infocenter.arm.com/help/index.jsp?t...g/Cfaggajd.html Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Lisitsin 0 15 октября, 2012 Опубликовано 15 октября, 2012 · Жалоба Можете и на ассемблере. Вижу для Вас плевое дело. Вот тут качайте - http://infocenter.arm.com/help/index.jsp?t...g/Cfaggajd.html Да я про компилятор ... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_Pasha 0 15 октября, 2012 Опубликовано 15 октября, 2012 (изменено) · Жалоба Чёт симулятор не включается для Cortex M4. Хотя компилировать компилирует. Люди добрые, а существует вообще в природе asm для Cortex??? Или мне C учить ??????? Это в Atmel Studio? Ага, понятненько. Спасибо. Насчет асма. Вы на этом этапе крепко сравните между gas(из GCC для армов) и тот, что кейловский. Имея в виду вопрос, как не подсаживаться на особенности синтаксиса того и другого. Изменено 15 октября, 2012 пользователем _Pasha Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Артём__ 0 15 октября, 2012 Опубликовано 15 октября, 2012 · Жалоба Чёт симулятор не включается для Cortex M4. Хотя компилировать компилирует. Наверняка потому что нет его - отладка только через атмеловский j-link. Люди добрые, а существует вообще в природе asm для Cortex??? Или мне C учить ??????? Зачем вам асм в чистом виде? Или мне C учить ??????? Конечно, как иначе. Но GCC допускает использование inline assembler-а. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
prottoss 0 15 октября, 2012 Опубликовано 15 октября, 2012 · Жалоба Да я про компилятор ...Там же, по моему и компилятор можно скачать. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_Pasha 0 15 октября, 2012 Опубликовано 15 октября, 2012 · Жалоба Конечно, как иначе. Но GCC допускает использование inline assembler-а. Что значит "допускает"? 8) А файлы *.S ? А в этом инлайне разобраться - лучше нинада :) ужос. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Артём__ 0 15 октября, 2012 Опубликовано 15 октября, 2012 · Жалоба Что значит "допускает"? 8) Ну, можно пару строк в С-файле черкануть. А в этом инлайне разобраться - лучше нинада :) ужос. Я не пробовал - не нужно было. Что лучше всю программу сразу в S-файлах писать? Вот где ужос. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_Pasha 0 15 октября, 2012 Опубликовано 15 октября, 2012 · Жалоба Что лучше всю программу сразу в S-файлах писать? Вот где ужос. Дык она там в 80% случаях на байт-код будет похожа: таблицы, таблицы ... Ничего ужасного, дело вкуса. Писанины поболее, - это такида, но блин, цмсис тоже подзадолбал своим графоманством. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Артём__ 0 15 октября, 2012 Опубликовано 15 октября, 2012 · Жалоба Дык она там в 80% случаях на байт-код будет похожа: таблицы, таблицы ... Таблицы? Не представил... цмсис тоже подзадолбал своим графоманством. Не мспользуйте cmsis, никто же не заставляет. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_Pasha 0 15 октября, 2012 Опубликовано 15 октября, 2012 · Жалоба Таблицы? Не представил... Оно всегда распадается на три резко контрастирующие части: - быстрые подпрограммы - тут всё ясно, - движок для тредов, тсз, недо-ось, - медленный интерпретатор для работы с верхней логикой, - тут можно изголяться от макросов, конструирующих байт-код, до собственного языка, с символьным входным потоком Тут и - сценарии инициализации периферии - пары <смещение>:<значение>, и таблицы параметров для "общения" с внешним миром, итераторы всевозможные- с описанием работы в виде таблицы <адрес пп>:<адрес перехода, если пп вернула==0>:<адрес перехода если !=0>, причем адреса - короткие, в байт шириной, только зачем это всё - чем дальше, тем непонятнее, - кругом велосипеды :) . Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Артём__ 0 15 октября, 2012 Опубликовано 15 октября, 2012 · Жалоба Оно всегда распадается на три резко контрастирующие части: - быстрые подпрограммы - тут всё ясно, - движок для тредов, тсз, недо-ось, - медленный интерпретатор для работы с верхней логикой, - тут можно изголяться от макросов, конструирующих байт-код, до собственного языка, с символьным входным потоком Тут и - сценарии инициализации периферии - пары <смещение>:<значение>, и таблицы параметров для "общения" с внешним миром, итераторы всевозможные- с описанием работы в виде таблицы <адрес пп>:<адрес перехода, если пп вернула==0>:<адрес перехода если !=0>, причем адреса - короткие, в байт шириной, только зачем это всё - чем дальше, тем непонятнее, - кругом велосипеды :) . Жесть... И всё на асме? Двойная жесть. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
hd44780 0 16 октября, 2012 Опубликовано 16 октября, 2012 · Жалоба Во-во ... Заморачиваться с асмом надо тогда, когда необходимо выверить быстродействие какого-то куска до какого-нибудь такта или наносекунды и при этом не зависеть от "оптимизаторных" выкрутасов компилятора Си. А писать на асме, например, функцию strcpy или sprintf, это, извините, маразм. Или мне C учить ??????? Подумайте, что проще - изучить Си, который применяется поголовно на ВСЕХ процах (даже на АВР-ах без RAM :laughing: ) или очередной ассемблер. Я не отговариваю Вас от асма, но прикиньте, вы его изучите, допустим для того же Cortex M3, убъёте на это, например, 2 недели. Потом вдруг осознаете, что этот M3 Вас чем-то не устраивает (например, тем что оно гарвардское, а не фон-неймановское), и решите заняться ARM7TDMI. И будете ОПЯТЬ 2 недели учить ассемблер, уже для ARM7TDMI. И т.д. до бесконечности .... В итоге Вы будете изучать не новые таймеры, АЦП и прочие плюшки нового контроллера, а то, как запрограммировать ( a + b ) / c, потому как mov ax, a mov bx, b mov dx, c add ax, bx div dx будет работать на 8086, а на AVR или Cortex M3 это всё надо переписывать в силу того, что регистров ax, bx, dx там нету (но есть какие-то другие) и делить оно само не умеет (AVR точно не умеет, M3 - не знаю :) ) и это опять же надо писать самому. А любой компилятор Си подобные "уравнения" понимает от рождения и переписывать их каждый раз не нужно. И можно заниматься делом, а не арифметикой. А арифметикой заняться когда того потребует тот или иной конкретный проект. Это моё мнение, как человека, писавшего программы для Z80, 80x86, x51, AVR и теперь на ARM (AT91SAM7). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
prottoss 0 16 октября, 2012 Опубликовано 16 октября, 2012 · Жалоба ...но прикиньте, вы его изучите, допустим для того же Cortex M3, убъёте на это, например, 2 недели...Гыыы... ржунемогу. Мож за два месяца? Или за год? :) На самом деле Си нужно курить-изучать. Потому как переносимость - главное. Т.е. как говорилось выше, написали программу для одной платформы, а через полгода можно этот же кусок с минимумом исправлений перетащит на совершенно другую платформу, если есть под нее Си компилятор. А он обязательно есть! Второй момент, что 50% программы это не работа с портами ВВ а что то более осмысленное, которое, при определенном навыке, вообще можно отладить на компиляторе для РС, т.е. на х86. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_Pasha 0 16 октября, 2012 Опубликовано 16 октября, 2012 · Жалоба Во-во ... Заморачиваться с асмом надо тогда, когда Когда об этом говорят все, начинаешь сомневаться, правда ли это. Вы думаете, всем нужен sprintf() в таком виде, в котором он есть? Вы думаете, что гораздо проще "от балды" сидеть на си, не зная ассемблера? Вы думаете, что все неизбежно пользуются плавучкой? Это еще при том, что в си нету нативной поддержки fixed point, dsp-инструкций и подобного, всегда надо чего-то допиливать. Повторяю, люди, пишущие на асме, в основном, приходят к виртуальным машинам, пусть примитивным, но устраивающим почему-то. А в этом деле главное - отстроить движок - всё сразу портируется. Тут еще сторонники форта на ум приходят - тоже есть аналогии в методах работы. Второй момент, что 50% программы это не работа с портами ВВ а что то более осмысленное, которое, при определенном навыке, вообще можно отладить на компиляторе для РС, т.е. на х86. Вот это гораздо более весомый аргумент, чем эфемерная переносимость, постоянно вынуждающая к компромиссам. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться