-
- Ну что за вопрос, в самом деле? Дальновидные товарищи пишут не на Яре, а на Си, поэтому менять нужно в двух, от силы в трёх местах. - SciFi(05.05.2013 10:03)
- Вот я и спрашиваю, что за те два, от силы три места, если написано на Си. - Vladimir Ljaschko(05.05.2013 10:12)
- На GCC переносить не приходилось, а вот С IAR на Keil и наоборот - бывало. Ничего страшного. Все же не командная строка, все error-ы компилятора быстренько исправляются. С GCC тоже не все так плохо, современные специализированные редакторы tesla(127 знак., 05.05.2013 21:54 - 21:57)
- Примеры - ф студию, желательно с возможностью редактировать опции компилятора/ линкера, как в Яре. Ну, и с симулятором встроенным (хотя бы). Хотя, в Keil симулятор на порядок лучше. - tesla(05.05.2013 22:01)
- Чего? "специализированные редакторы делают разработку почти такой же удобной, как в IAR"??? Чувак, да ты ваще не видел нормальных редакторов. Яр - это редкостное гуано. - SciFi(05.05.2013 21:57)
- Не умеешь то же самое, что делают волшебные IDE делать руками -- инвалид. - fk0(05.05.2013 22:55)
- Настоящие профессионалы кодят сразу в хексе :-) - SciFi(06.05.2013 09:40)
- В машинных кодах. - PlainUser(06.05.2013 12:18)
- Настоящие профессионалы кодят сразу в хексе :-) - SciFi(06.05.2013 09:40)
- Не умеешь то же самое, что делают волшебные IDE делать руками -- инвалид. - fk0(05.05.2013 22:55)
- Стартап, прерывания, скрипт линкера. Дальше по-разному: inline asm, прагмы и т.д. - то, чем не следует злоупотреблять из-за непереносимости. - SciFi(05.05.2013 10:15)
- Я вот, чем дольше живу :), тем больше склоняюсь к мнению, что стремление к переносимости - одно из самых больших зол в программировании. У меня есть знакомый (уже в летах), который до сих пор пишет комментарии большими буквами по-английски, потому Ксения(720 знак., 05.05.2013 14:51)
- Учитывая постоянные проблемы у вашего ИАРа, Ваш знакомый не очень то неправ ;) - Vladimir Ljaschko(05.05.2013 18:40)
- Это проблема не ИАРа, а всей АРМ-платформы, в том, что она потеряла переносимость с одного МК на другой! А от ИАРа ждут, чтобы он своими средствами, эту переносимость восстановил. И ругают его, когда это сделать не удается. - Ксения(05.05.2013 19:42 - 19:44)
- Ругают его за ошибки в генерируемом коде. - Apтём(05.05.2013 19:51)
- Вы про какой Иар? Для АВР или АРМ? У АВРовкого вроде всё более-менее, особых проблем нет. - Apтём(05.05.2013 19:01)
- Сегодня вспоминать не буду, но в каком-то из MSP430/AVR/ARM при вводе русских букв вставляются последовательности каких-то символов, поэтому всегда пишу комменты
заглавными литинскими символамина английском. - Vladimir Ljaschko(05.05.2013 20:12)- MSP430 5501 не вводит русские буквы ( ETB вместо буквы З ), а у меня там один из языков сообщений русский :( Copy+paste рулит. - Vladimir Ljaschko(09.05.2013 01:26)
- кроссворк для авр если в комментарии увидит буквы 'э' или 'ю' хренеет и ругается. ))) - Mahagam(05.05.2013 20:37)
- Сегодня вспоминать не буду, но в каком-то из MSP430/AVR/ARM при вводе русских букв вставляются последовательности каких-то символов, поэтому всегда пишу комменты
- Это проблема не ИАРа, а всей АРМ-платформы, в том, что она потеряла переносимость с одного МК на другой! А от ИАРа ждут, чтобы он своими средствами, эту переносимость восстановил. И ругают его, когда это сделать не удается. - Ксения(05.05.2013 19:42 - 19:44)
- Такое бывает... Apтём(181 знак., 05.05.2013 15:25)
- Гы-гы! Увидев одного психа, решили, что все homo sapiens - психи :-) - SciFi(05.05.2013 15:01)
- Вся переносимость стоит на том что под ней лежит прокладка в виде оси, драйверов, фреймворков итд итп. Такшта переносимость без костылей не бывает. - Codavr(05.05.2013 15:04)
- Спасибо, Капитан! Добавьте в список компилятор, регистры МК, схему тактирования проца и прочее. - SciFi(05.05.2013 16:18)
- Ендианность, выравнивание, неправильное использование различных типов данных (не заметное на конкретной платформе)... - fk0(05.05.2013 22:47)
- Желаю тебе написать код который будет работать на всем железе сразу. Вот только проблемы могут с проверкой переносимости возникнуть. - Codavr(05.05.2013 20:39, ссылка)
- Ты ещё попроси перенести код на деревянные счёты из твоего пыльного чулана. Вот примеры переносимого кода -> - SciFi(05.05.2013 20:47, ссылка, ссылка)
- Лет через пяток попробуй переносимость своего нынешнего кода на новых мелкоконтроллерах. Будеш удивлен несказанно. - Codavr(05.05.2013 22:07)
- У меня есть код в новых проектах который унаследован от изделия 10-летней давности. Принципиальных проблем не было вообще. Допиливать под новые реалии приходилось, но новый код на старом приборе вполне заработал бы. Единственное что -- распухает fk0(163 знак., 05.05.2013 22:50 - 22:58)
- У меня такой тоже есть, но как правильно заметил rezident это все более относится к алгоритмам. А вот такого чтобы взять и целиком программу и без допиливания перенести с одного контроллера на принципиально отличный нет вообще. И не утруждаюсь Codavr(34 знак., 06.05.2013 00:20)
- Если взять целиком программу, то её между между разными версиями юникс-подобной ОС не всегда без единого изменения можно перенести. Но можно писать программы так, чтоб эти изменения были минимальны и касались только аппаратуры и/или ОС. А можно fk0(90 знак., 06.05.2013 10:12)
- Если бы у бабушки был... - Codavr(06.05.2013 16:44)
- Если бы не было говнокодеров, ага. - fk0(06.05.2013 16:55)
- Если бы у бабушки был... - Codavr(06.05.2013 16:44)
- *100500 - бомж(06.05.2013 00:46)
- Если взять целиком программу, то её между между разными версиями юникс-подобной ОС не всегда без единого изменения можно перенести. Но можно писать программы так, чтоб эти изменения были минимальны и касались только аппаратуры и/или ОС. А можно fk0(90 знак., 06.05.2013 10:12)
- У меня такой тоже есть, но как правильно заметил rezident это все более относится к алгоритмам. А вот такого чтобы взять и целиком программу и без допиливания перенести с одного контроллера на принципиально отличный нет вообще. И не утруждаюсь Codavr(34 знак., 06.05.2013 00:20)
- У меня есть код в новых проектах который унаследован от изделия 10-летней давности. Принципиальных проблем не было вообще. Допиливать под новые реалии приходилось, но новый код на старом приборе вполне заработал бы. Единственное что -- распухает fk0(163 знак., 05.05.2013 22:50 - 22:58)
- Ну так и скажи. Переносимый код это тот который ты умудрился куда-то перенести. На тини 15 свои примеры перенеси. Или у тебя счеты должны покрупнее быть? - Codavr(05.05.2013 21:01)
- Чудак-человек! Чего туда переносить-то? "2+2" половину памяти займёт :-) Держи ещё один пример переносимого кода -> - SciFi(05.05.2013 21:04 - 21:07, ссылка)
- Хренушки ты угадал. Сишнику нужен стек в оперативе. IAR и гнусь потому тини 15 и не поддерживают патамушта не могуть. У тебя до 2+2 даже не дойдет. На этапе инициализации раком встанет. - Codavr(05.05.2013 21:31 - 21:35)
- При желании можно программировать tiny15 на Си, просто нужен соответствующий компилятор - Imagecraft или доработанный напильником GCC. AlexG(127 знак., 06.05.2013 07:21)
- Можно. Вот пример. Только вначале компилится это дело в ассемблер, а потом допиливается ручками. Codavr(07.05.2013 16:32 - 16:39)
- вопрос, почему так TCCR1 = '\x80'; а не по простому TCCR1 = 0x80; ? Nikolay801_(33 знак., 08.05.2013 10:01)
- Нет. Просто не отошел еще тогда от турбосишных привычек. - Codavr(08.05.2013 12:03)
- столько всего впихнуть в tiny15 на Си это круто - AlexG(08.05.2013 09:51)
- Смеесси. - Codavr(08.05.2013 12:01)
- вопрос, почему так TCCR1 = '\x80'; а не по простому TCCR1 = 0x80; ? Nikolay801_(33 знак., 08.05.2013 10:01)
- Можно. Вот пример. Только вначале компилится это дело в ассемблер, а потом допиливается ручками. Codavr(07.05.2013 16:32 - 16:39)
- туды ему и дорога :-) SciFi(304 знак., 05.05.2013 21:36 - 21:50)
- Сишник норовит передать параметры функций через стек, а у тини 15 стек аппаратный, и параметры через него не передать ни каким раком. - Codavr(06.05.2013 00:25)
- Все вменяемые компиляторы лет 30 как умеют через регистры. Кроме функций вроде printf -- по очевидным причинам... Но в Hitech-C для контроллероф проф. уровня это сумели обойти (через btemp). - fk0(06.05.2013 10:14)
- Если не трудно, предъяви какой-нить рабочий проект для тини15 на сишнике. Который можно откомпилировать в готовый код не прибегая к ассемблерным извратам. - Codavr(06.05.2013 16:43)
- А для арифмометра Однера тебе код на C не нужен? AT-Tiny из той же области. AVR вообще ещё та поделка на любителя. В контроллерах проф. уровня (PIC16) компилятор есть и он даже работает и даже ограниченное множество программ вполне переносятся. - fk0(06.05.2013 16:58)
- А какого хрена ты тогда встреваешь со своими умными мыслями в подветку где базар изначально пошел о тини 15. Показать какой ты крутой и ни разу не говнокодер? Ну это все в конфе давно знают. Слова говнокодеры, контроллеры профессионального уровня Codavr(158 знак., 07.05.2013 11:02 - 11:10, картинка)
- А для арифмометра Однера тебе код на C не нужен? AT-Tiny из той же области. AVR вообще ещё та поделка на любителя. В контроллерах проф. уровня (PIC16) компилятор есть и он даже работает и даже ограниченное множество программ вполне переносятся. - fk0(06.05.2013 16:58)
- Если не трудно, предъяви какой-нить рабочий проект для тини15 на сишнике. Который можно откомпилировать в готовый код не прибегая к ассемблерным извратам. - Codavr(06.05.2013 16:43)
- Все вменяемые компиляторы лет 30 как умеют через регистры. Кроме функций вроде printf -- по очевидным причинам... Но в Hitech-C для контроллероф проф. уровня это сумели обойти (через btemp). - fk0(06.05.2013 10:14)
- Сишник норовит передать параметры функций через стек, а у тини 15 стек аппаратный, и параметры через него не передать ни каким раком. - Codavr(06.05.2013 00:25)
- При желании можно программировать tiny15 на Си, просто нужен соответствующий компилятор - Imagecraft или доработанный напильником GCC. AlexG(127 знак., 06.05.2013 07:21)
- Хренушки ты угадал. Сишнику нужен стек в оперативе. IAR и гнусь потому тини 15 и не поддерживают патамушта не могуть. У тебя до 2+2 даже не дойдет. На этапе инициализации раком встанет. - Codavr(05.05.2013 21:31 - 21:35)
- Чудак-человек! Чего туда переносить-то? "2+2" половину памяти займёт :-) Держи ещё один пример переносимого кода -> - SciFi(05.05.2013 21:04 - 21:07, ссылка)
- Лет через пяток попробуй переносимость своего нынешнего кода на новых мелкоконтроллерах. Будеш удивлен несказанно. - Codavr(05.05.2013 22:07)
- Ты ещё попроси перенести код на деревянные счёты из твоего пыльного чулана. Вот примеры переносимого кода -> - SciFi(05.05.2013 20:47, ссылка, ссылка)
- Спасибо, Капитан! Добавьте в список компилятор, регистры МК, схему тактирования проца и прочее. - SciFi(05.05.2013 16:18)
- Переносимость это миф. Это хотелки/пожелания и не больше :0) Переносимость существует лишь на уровне алгоритмов. - rezident(05.05.2013 15:04)
- Никакие не хотелки, речь идет о переносимости на уровне кусков кода/модулей, написанных на языке Си. Я таскаю между проектами те же файлы поддержки структурированных данных в EEPROM, например, и буду воспринимать необходимость переписывания прагм Vladimir Ljaschko(27 знак., 06.05.2013 09:33)
- Собака лает -- караван идёт. И с появлением больших MCU поезд для адептов непереносимости окончательно уйдёт. Миф, наверное при том уровне программирования, на котором некоторые находятся. А так вообще язык "C" обеспечивает переносимость, если fk0(20 знак., 05.05.2013 22:45)
- Дык. Вы тут все ARM да контроллеры профессионального уровня. Пора уже делать проц с аппаратной явой и забыть нахрен про непереносимость. Правда с тех пор как написал первую прогу все слышу про переносимость, но появилась она более или менее Codavr(236 знак., 06.05.2013 00:36 - 00:41)
- Чушь и бред. У меня есть, например, ноут на арме. Там тот же софт, что и на PC (в убунте). Тысячи программ. Это переносимость. И её основы заложены как раз языком "C". Если есть "C" компилятор, то всё остальное строится поверх него и может быть fk0(127 знак., 06.05.2013 10:10)
- Ги ;) Не про переносимость, а про то, что Java поверх С работает. Так и не догнал глубину этой мысли. Может это потому, что в мыслях нет, что кто-то (а тем более fk0) может не знать поверх чего Ява работает ;) - Dir(06.05.2013 20:05)
- Чушь и бред спорить не договорившись о терминологии. "Если, разумеется, ресурсы позволяют". Широко шагаешь в своих определениях. - Codavr(06.05.2013 16:39)
- Ты и правда загнался. Конечно, переносимость существует. У неё есть пределы? Спасибо, Кэп! И твои просьбы портировать линукс на тини, и чтобы обязательно gcc, - это ваще улёт. Кстати, о птичках -> - SciFi(06.05.2013 16:59 - 17:01, ссылка)
- Про эту птичку я наслышан. Постебался кекс, но стеб еще не хлеб. - Codavr(06.05.2013 17:56)
- Какая терминология? Вот два компьютера с разными архитектурами, разными процессорами. Там один и тот же софт. Тебе продемонстрировать? Вообще переносимость есть. Это у говнокодеров проф. уровня её в частном случае нет. - fk0(06.05.2013 16:55)
- Ты и правда загнался. Конечно, переносимость существует. У неё есть пределы? Спасибо, Кэп! И твои просьбы портировать линукс на тини, и чтобы обязательно gcc, - это ваще улёт. Кстати, о птичках -> - SciFi(06.05.2013 16:59 - 17:01, ссылка)
- Чушь и бред. У меня есть, например, ноут на арме. Там тот же софт, что и на PC (в убунте). Тысячи программ. Это переносимость. И её основы заложены как раз языком "C". Если есть "C" компилятор, то всё остальное строится поверх него и может быть fk0(127 знак., 06.05.2013 10:10)
- Дык. Вы тут все ARM да контроллеры профессионального уровня. Пора уже делать проц с аппаратной явой и забыть нахрен про непереносимость. Правда с тех пор как написал первую прогу все слышу про переносимость, но появилась она более или менее Codavr(236 знак., 06.05.2013 00:36 - 00:41)
- Угу. И пустая болтовня существует лишь на уровне пустой болтовни. - SciFi(05.05.2013 15:06)
- Вся переносимость стоит на том что под ней лежит прокладка в виде оси, драйверов, фреймворков итд итп. Такшта переносимость без костылей не бывает. - Codavr(05.05.2013 15:04)
- Учитывая постоянные проблемы у вашего ИАРа, Ваш знакомый не очень то неправ ;) - Vladimir Ljaschko(05.05.2013 18:40)
- Стартап, скрипт линкера у каждой тулзы свои. Прерывания можно писать чтобы компилировалось и там и там. - Apтём(05.05.2013 14:36)
- Я вот, чем дольше живу :), тем больше склоняюсь к мнению, что стремление к переносимости - одно из самых больших зол в программировании. У меня есть знакомый (уже в летах), который до сих пор пишет комментарии большими буквами по-английски, потому Ксения(720 знак., 05.05.2013 14:51)
- На GCC переносить не приходилось, а вот С IAR на Keil и наоборот - бывало. Ничего страшного. Все же не командная строка, все error-ы компилятора быстренько исправляются. С GCC тоже не все так плохо, современные специализированные редакторы tesla(127 знак., 05.05.2013 21:54 - 21:57)
- Вот я и спрашиваю, что за те два, от силы три места, если написано на Си. - Vladimir Ljaschko(05.05.2013 10:12)
- Ну что за вопрос, в самом деле? Дальновидные товарищи пишут не на Яре, а на Си, поэтому менять нужно в двух, от силы в трёх местах. - SciFi(05.05.2013 10:03)