У кого короче код?
|
|
deskjet |
Дата: Вс, 15.08.2010, 12:21 | Сообщение # 1 |
Группа:
Проверенные
Ранг:
Продвинутый
Сообщений:
143
Замечания:
±
На сайте с 20.06.2009
Статус:
Offline
|
Проведя сравнение размеров кодов PICSimulatorIDE и BascomAVR обнаружил, что BascomAVR генерирует код размер которого в 1,5 раза больше кода PICSimulatorIDE при полной идентичности выполняемых действий на уровне BASIC. В качестве тестовой использовалась программа типа A+B=C, Portn=C и др. А как дела с другими компиляторами?
За 20 8 дней ни одного сгоревшего микроконтроллера. PIC12, PIC16, PIC18, ATtiny, ATmega, STM8, STM32, MSP430
|
|
|
|
DAlexV |
Дата: Вс, 15.08.2010, 15:46 | Сообщение # 2 |
Группа:
Проверенные
Ранг:
Разобрался
Сообщений:
657
Замечания:
±
На сайте с 13.05.2008
Статус:
Offline
|
Тема уже поднималась, но заглохла. http://www.picbasic.ru/forum/19-266-1 Quote (deskjet) Проведя сравнение размеров кодов PICSimulatorIDE и BascomAVR обнаружил, что BascomAVR генерирует код размер которого в 1,5 Для того чтобы действительно сравнивать компиляторы нужно применять один и тот же проц. тогда все будет объективно. А сравнивать 2 абсолютно разных проца нет смысла.
Будьте оригинальны-не повторяйте чужих ошибок ! Рыба сдохла. Теперь STM32(TS)+C#(VS).Старею :)
|
|
|
|
deskjet |
Дата: Вс, 15.08.2010, 16:14 | Сообщение # 3 |
Группа:
Проверенные
Ранг:
Продвинутый
Сообщений:
143
Замечания:
±
На сайте с 20.06.2009
Статус:
Offline
|
Очепяточка вышла: я использовал AVRSimulatorIDE и BascomAVR а процессор atmega8, после этого мой интерес к BascomAVR понизился. А вот PICBasic с PICSimulatorIDE ктонибудь сравнивал? А фишербазик как в этом плане? PS: когда я тестировал PIC877 и atmega16 PICSimulatorIDE и AVRSimulatorIDE соответственно, то разница в размере кода составила десятые доли процента в пользу atmega16 при заполнении flash памяти контроллеров на 20%
За 20 8 дней ни одного сгоревшего микроконтроллера. PIC12, PIC16, PIC18, ATtiny, ATmega, STM8, STM32, MSP430
Сообщение отредактировал
deskjet - Вс, 15.08.2010, 16:23
|
|
|
|
DAlexV |
Дата: Вс, 15.08.2010, 16:48 | Сообщение # 4 |
Группа:
Проверенные
Ранг:
Разобрался
Сообщений:
657
Замечания:
±
На сайте с 13.05.2008
Статус:
Offline
|
Quote (deskjet) А вот PICBasic с PICSimulatorIDE ктонибудь сравнивал? А фишербазик как в этом плане? Да вот и мне интересно "у кого короче ..." Давай сравним. Допустим камень у нас будет 18F452 т.к. рыба заточена только под 18 линейку. Выкладывай прогу. Давай компильнем и посмотрим
Будьте оригинальны-не повторяйте чужих ошибок ! Рыба сдохла. Теперь STM32(TS)+C#(VS).Старею :)
|
|
|
|
deskjet |
Дата: Вс, 15.08.2010, 17:05 | Сообщение # 5 |
Группа:
Проверенные
Ранг:
Продвинутый
Сообщений:
143
Замечания:
±
На сайте с 20.06.2009
Статус:
Offline
|
У меня пока не установлены ни рыба ни PICBasicPro, нет времени, а программа может быть простой, например [code] dim a as byte dim b as byte dim c as byte dim q as byte a=%00000111 b=%00001111 trisb=%00000000 for q= 0 to 200 c=0 c=a+b portb=c next q for q= 0 to 200 c=0 c=a+b portb=c next q for q= 0 to 200 c=0 c=a+b portb=c next q for q= 0 to 200 c=0 c=a+b portb=c next q и т.д. до заполнения сколь-нибудь значительного объема памяти мк
За 20 8 дней ни одного сгоревшего микроконтроллера. PIC12, PIC16, PIC18, ATtiny, ATmega, STM8, STM32, MSP430
Сообщение отредактировал
deskjet - Вс, 15.08.2010, 17:06
|
|
|
|
DAlexV |
Дата: Вс, 15.08.2010, 17:26 | Сообщение # 6 |
Группа:
Проверенные
Ранг:
Разобрался
Сообщений:
657
Замечания:
±
На сайте с 13.05.2008
Статус:
Offline
|
Пожалуйста получите. HEX весит 461 байт Время прохождения программы видно на рисунке Все файлы в архиве Остальные барсики у меня то же не установлены
Будьте оригинальны-не повторяйте чужих ошибок ! Рыба сдохла. Теперь STM32(TS)+C#(VS).Старею :)
|
|
|
|
deskjet |
Дата: Вс, 15.08.2010, 18:05 | Сообщение # 7 |
Группа:
Проверенные
Ранг:
Продвинутый
Сообщений:
143
Замечания:
±
На сайте с 20.06.2009
Статус:
Offline
|
У меня intel HEX для PIC16F877 @20MHz получился 513 байт. Вообще я имел в виду, что программа должна занимать, минимум, процентов 20-30 памяти мк для объективности. файл pic877 exampl: при компиляции 63,8% памяти мк занято, intel hex имеет размер 28,7 КБ (29 477 байт), контроллер - PIC16F877 @20MHz (PICSimulatorIDE)
За 20 8 дней ни одного сгоревшего микроконтроллера. PIC12, PIC16, PIC18, ATtiny, ATmega, STM8, STM32, MSP430
Сообщение отредактировал
deskjet - Вс, 15.08.2010, 18:10
|
|
|
|
DAlexV |
Дата: Вс, 15.08.2010, 18:42 | Сообщение # 8 |
Группа:
Проверенные
Ранг:
Разобрался
Сообщений:
657
Замечания:
±
На сайте с 13.05.2008
Статус:
Offline
|
еще раз повторюсь Quote (DAlexV) т.к. рыба заточена только под 18 линейку. Рыба не работает с 16 линейкой Quote (deskjet) Вообще я имел в виду, что программа должна занимать, минимум, процентов 20-30 памяти мк для объективности. Да не вопрос. Если есть готовая программа под данный размер, скидывай, переделаю и скомпилирую, а там видно будет. Жду предложений
Будьте оригинальны-не повторяйте чужих ошибок ! Рыба сдохла. Теперь STM32(TS)+C#(VS).Старею :)
|
|
|
|
deskjet |
Дата: Вс, 15.08.2010, 19:03 | Сообщение # 9 |
Группа:
Проверенные
Ранг:
Продвинутый
Сообщений:
143
Замечания:
±
На сайте с 20.06.2009
Статус:
Offline
|
Пожалуйста, PIC18F452 @20MHz, используемая flash память 27,0%, intel hex имеет размер 24,4 КБ (25 051 байт) (PICSimulatorIDE) Прилагаю файл тхт для самостоятельной компиляции фишербазиком
За 20 8 дней ни одного сгоревшего микроконтроллера. PIC12, PIC16, PIC18, ATtiny, ATmega, STM8, STM32, MSP430
|
|
|
|
DAlexV |
Дата: Вс, 15.08.2010, 19:36 | Сообщение # 10 |
Группа:
Проверенные
Ранг:
Разобрался
Сообщений:
657
Замечания:
±
На сайте с 13.05.2008
Статус:
Offline
|
Quote (deskjet) PIC18F452 @20MHz, используемая flash память У меня получилось 18,3% Hex весит 16.5Kb Время прохода программы 116.72 ms Если бы не было WaitUs 100 прошла бы быстрее Следующий шаг. LCD 16*2 В первой строке "Hello World" Во второй "PicBasic.ru"
Будьте оригинальны-не повторяйте чужих ошибок ! Рыба сдохла. Теперь STM32(TS)+C#(VS).Старею :)
Сообщение отредактировал
DAlexV - Пн, 16.08.2010, 19:21
|
|
|
|
DAlexV |
Дата: Вс, 15.08.2010, 20:08 | Сообщение # 11 |
Группа:
Проверенные
Ранг:
Разобрался
Сообщений:
657
Замечания:
±
На сайте с 13.05.2008
Статус:
Offline
|
Выкладываю свои результаты: Использование проца 1,59% Hex весит 1,53Kb Время прохода программы 164.06ms Фото и файлы прилагаю
Будьте оригинальны-не повторяйте чужих ошибок ! Рыба сдохла. Теперь STM32(TS)+C#(VS).Старею :)
|
|
|
|
ivan_fd |
Дата: Вс, 15.08.2010, 22:48 | Сообщение # 12 |
Группа:
Модераторы
Ранг:
Специалист
Сообщений:
894
Замечания:
±
На сайте с 12.01.2009
Статус:
Offline
|
Мои результаты. Компилятор Протон. Процессор 18F452 Использование Flash 0,95% Памяти данных 0,59% HEX весит 993 байт. Время прохода программы 22.111мс
|
|
|
|
DAlexV |
Дата: Пн, 16.08.2010, 08:34 | Сообщение # 13 |
Группа:
Проверенные
Ранг:
Разобрался
Сообщений:
657
Замечания:
±
На сайте с 13.05.2008
Статус:
Offline
|
У нас появился новый претиндент на победу. ivan_fd, а как насчет проги из 9 поста. Прокомпилируй пожалуйста и выложи результаты.
Будьте оригинальны-не повторяйте чужих ошибок ! Рыба сдохла. Теперь STM32(TS)+C#(VS).Старею :)
|
|
|
|
deskjet |
Дата: Пн, 16.08.2010, 09:27 | Сообщение # 14 |
Группа:
Проверенные
Ранг:
Продвинутый
Сообщений:
143
Замечания:
±
На сайте с 20.06.2009
Статус:
Offline
|
А мне что компилировать на PICSimulatorIDE? Нужен файл тхт для вставки в окно базик редактора. Следует избегать уникальных для каждой среды инструкций типа LCD.WriteAT
За 20 8 дней ни одного сгоревшего микроконтроллера. PIC12, PIC16, PIC18, ATtiny, ATmega, STM8, STM32, MSP430
|
|
|
|
ivan_fd |
Дата: Пн, 16.08.2010, 10:54 | Сообщение # 15 |
Группа:
Модераторы
Ранг:
Специалист
Сообщений:
894
Замечания:
±
На сайте с 12.01.2009
Статус:
Offline
|
Quote (deskjet) А мне что компилировать на PICSimulatorIDE? Нужен файл тхт для вставки в окно базик редактора. У PICSimulatorIDE есть процедуры для вывода на LCD? Если есть то их и используйте. Я же в Прготон не засунул файл DAlexV, а сам переписал под Протон. Quote (DAlexV) Время прохода программы 11.72ms Вы ошиблись, время 116.72! На коде из поста №9 Протон выдал такие результаты: Сначала просто скомпилировал код -> Использование Flash 20,73% Памяти данных 0,39% HEX весит 19222 байт. Время прохода программы 132.84мс Потом включил первый уровень оптимизации -> Использование Flash 18,26% Памяти данных 0,39% HEX весит 16939 байт. Время прохода программы 116.72мс
Сообщение отредактировал
ivan_fd - Пн, 16.08.2010, 10:55
|
|
|
|