Мур 1 18 марта, 2015 Опубликовано 18 марта, 2015 · Жалоба Рессурс PIC12LF1840 впечатляет, как по быстродействию\пространству\набору периферии, так и по набору команд (аж 49!!!). Казалось бы, тут можно расслабиться и отдать все на откуп компилятору. Проекты становятся в Си прозрачнее и скорость исполнения проекта возрастает. Так можно было вести дела с привычными AVR или ARM... Вопрос звучит так. Как, из какого набора сред, компиляторов развернуть инструментарий, чтобы уйти от нынешнего бетта состояния, предлагаемого Microchip? Проверять компилятор нет времени... Да и симулятор серый, а внешний мир для осцила как узкое горлышко... Что сейчас используют мастера для этого чипа? Нужен совет(желательно со ссылками), "как обрести крылья"? :salmari: Может не все так мрачно?.. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ViKo 1 18 марта, 2015 Опубликовано 18 марта, 2015 · Жалоба Hi-Tech PIC-C. Но придется согрешить. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
shindax 0 18 марта, 2015 Опубликовано 18 марта, 2015 (изменено) · Жалоба ...Вопрос звучит так. Как, из какого набора сред, компиляторов развернуть инструментарий, чтобы уйти от нынешнего бетта состояния, предлагаемого Microchip?.. А о "бета-состоянии" чего идёт речь? Чем XC8 + MPLAB не угодил? HI-TECH был хорош, конечно, но до определённой версии ( 9.60 PL3, кажется ). Но она точно не поддерживала ядро Enhanced midrange. IMHO, тут без вариантов: XC8 + MPLAB, или MPLABX. Изменено 18 марта, 2015 пользователем shindax Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
A. Fig Lee 0 18 марта, 2015 Опубликовано 18 марта, 2015 · Жалоба MPLABX работает на всех платформах. Проблем не имел. Чипы разные Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Мур 1 18 марта, 2015 Опубликовано 18 марта, 2015 · Жалоба Да хотя бы из http://electronix.ru/forum/index.php?showtopic=125601 .... Этот чип сампо себе проблемен и я догадываюсь почему. Я глянул на основную систему из 34 команд (из 49 ти!). Оказалось, что 6 из них отличаются от PIC12LF1840 в части битовых полей. Спасибо за советы. Расслаблюсь, буд-то нет проблем! =) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
shindax 0 19 марта, 2015 Опубликовано 19 марта, 2015 (изменено) · Жалоба Да хотя бы из http://electronix.ru/forum/index.php?showtopic=125601 .... Так там шла речь про "бету" симулятора, но никак не компилятора, или собственно IDE. ...Этот чип сампо себе проблемен и я догадываюсь почему... Так поделитесь Вашими сакральными знаниями, чем именно этот чип проблемен и почему. Изменено 19 марта, 2015 пользователем shindax Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Мур 1 19 марта, 2015 Опубликовано 19 марта, 2015 · Жалоба Так там шла речь про "бету" симулятора, но никак не компилятора, или собственно IDE. Так это ведь интегральная среда от одной фирмы... Чего ожидать дальше? Так поделитесь Вашими сакральными знаниями, чем именно этот чип проблемен и почему. Команды, которые могут иметь отличия в машинных кодах: CLRW ADDLW k MOVLP k SUBLW k RETLW k NOP Гляньте внимательно на Opcode поля ХХХ В этом случае обмануть может не получится(если проект гнать для похожего контроллера!) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
A. Fig Lee 0 19 марта, 2015 Опубликовано 19 марта, 2015 · Жалоба Да хотя бы из http://electronix.ru/forum/index.php?showtopic=125601 .... Этот чип сампо себе проблемен и я догадываюсь почему. Я глянул на основную систему из 34 команд (из 49 ти!). Оказалось, что 6 из них отличаются от PIC12LF1840 в части битовых полей. Спасибо за советы. Расслаблюсь, буд-то нет проблем! =) Есть mid range micro controllers (33 инструкции), есть mid range enhanced core (49). Не путайте теплое с мягким. Это 2 разных класса микроконтрроллеров. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Мур 1 19 марта, 2015 Опубликовано 19 марта, 2015 · Жалоба Есть mid range micro controllers (33 инструкции), есть mid range enhanced core (49). Не путайте теплое с мягким. Это 2 разных класса микроконтрроллеров. Вы меня не поняли. Я предположил вести проект, не замечая остальные команды (от 35 до 49). Буд-то бы их нет! Тупо забить! Ведь можно? Вот тут и появляется сомнение, что среди привычных команд есть шесть с потенциальной угрозой.... Я об ассемблере, ....но с оглядкой на выходные файлы после Си. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
shindax 0 20 марта, 2015 Опубликовано 20 марта, 2015 (изменено) · Жалоба Так это ведь интегральная среда от одной фирмы... Чего ожидать дальше? И что, что одной фирмы? Чего ждать? Как и у всех других фирм - новой версии, это процесс бесконечен. Команды, которые могут иметь отличия в машинных кодах: CLRW ADDLW k MOVLP k SUBLW k RETLW k NOP Гляньте внимательно на Opcode поля ХХХ ... ...что среди привычных команд есть шесть с потенциальной угрозой... Посмотрел. Так в чём по-Вашему их "потенциальная угроза"? IMHO, Вы себе проблему сами выдумываете. Что, впрочем, для начинающих характерно. Всё заговоры мерещятся. То косяк в кристалле, то закладки в компиляторе. Или Вы в машинных кодах программировать собираетесь? :) ...В этом случае обмануть может не получится(если проект гнать для похожего контроллера!)... Здесь вообще ничего не понял. Или формулируйте точнее. А в целом Вы сами себе ответили. Если проект кроссплатформенный - то пишите на Си, а машиннозависымие участки уже на ассемблере, это общепринятая, устойчивая практика. Изменено 20 марта, 2015 пользователем shindax Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Мур 1 20 марта, 2015 Опубликовано 20 марта, 2015 · Жалоба И что, что одной фирмы? Чего ждать? Как и у всех других фирм - новой версии, это процесс бесконечен. Посмотрел. Так в чём по-Вашему их "потенциальная угроза"? IMHO, Вы себе проблему сами выдумываете. Что, впрочем, для начинающих характерно. Всё заговоры мерещятся. То косяк в кристалле, то закладки в компиляторе. Или Вы в машинных кодах программировать собираетесь? :) А как тут не понять? Есть два контроллера имеющие общие команды (34шт). Да только 6 из них имеют поля явно прописанные для одного, но не определенные для другого контроллера, что означает формально произвольное значение бит в этих полях. ...Чтобы вы знали,- программирование на ассемблере соответствует программированию в машинных кодах. Да только для исключения ошибок(а это человеку присуще!) их заменили мненоникой один к одному! Здесь вообще ничего не понял. Или формулируйте точнее. А в целом Вы сами себе ответили. Если проект кроссплатформенный - то пишите на Си, а машиннозависымие участки уже на ассемблере, это общепринятая, устойчивая практика. ... и если взять наихудший случай,- одна и та же программа выполняющаяся для одного контроллера не сможет работать на другом. Именно в расхождениях в этих битах. Для всех 16\12х Пиков эти 34 команды и есть вроде как машинонезависимые. Теперь о Си. Известно, что компилятор переводит одну логику высокого уровня Си в более громоздкую ассемблерную проследовательность. Среди этого набора команд обязательно есть эти злощастные 6 команд, что трактуются, если верить таблице, по-разному. Понимэ?.. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
A. Fig Lee 0 21 марта, 2015 Опубликовано 21 марта, 2015 · Жалоба Из пальца высосанная проблема. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Мур 1 21 марта, 2015 Опубликовано 21 марта, 2015 · Жалоба Из пальца высосанная проблема. Да какая ни была!... Это надо держать в голове и не забывать. По поводу проблемы. По сути это оффффтоп. Да только нет дыма без огня. Указанный контроллер можно отлаживать пошагово только на реальном железе ( в режиме эмуляции под PICKit3 к примеру). Симулятор будет вводить в заблуждение, поскольку работает не правильно и в 3.0 версии. Тут всего на всего была идея идти по пути подмены проекта(с дальнейшей обратной коррекцией) на другой ПРОВЕРЕННЫЙ контроллер, что, собственно, и дало повод для анализа этой стратегии. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
shindax 0 21 марта, 2015 Опубликовано 21 марта, 2015 (изменено) · Жалоба ...Чтобы вы знали,- программирование на ассемблере соответствует программированию в машинных кодах. Да только для исключения ошибок(а это человеку присуще!) их заменили мненоникой один к одному! ... Понимэ?.. Идиотизм какой-то... Да какая ни была!... Это надо держать в голове и не забывать. По поводу проблемы. По сути это оффффтоп. Да только нет дыма без огня. Указанный контроллер можно отлаживать пошагово только на реальном железе ( в режиме эмуляции под PICKit3 к примеру). Симулятор будет вводить в заблуждение, поскольку работает не правильно и в 3.0 версии. Тут всего на всего была идея идти по пути подмены проекта(с дальнейшей обратной коррекцией) на другой ПРОВЕРЕННЫЙ контроллер, что, собственно, и дало повод для анализа этой стратегии. Так Вы сделайте хоть что-то, а после анализируйте, если что-то пойдёт не так, а не наоборот. Так, по-крайней мере, все адекватные люди поступают. И не пойте, пожалуйста, прописные истины с видом оракула. На данный момент, ваша "проницательность", откровенно веселит. Изменено 21 марта, 2015 пользователем shindax Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Мур 1 21 марта, 2015 Опубликовано 21 марта, 2015 · Жалоба Идиотизм какой-то... Учите матчасть! Я застал время, когда программы писались в машинных кодах... Так Вы сделайте хоть что-то, а после анализируйте, если что-то пойдёт не так, а не наоборот. Так, по-крайней мере, все адекватные люди поступают. И не пойте, пожалуйста, прописные истины с видом оракула. На данный момент, ваша "проницательность", откровенно веселит. Вы не указали моей ошибки. Отличие в кодах существует (см.6 команд) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться