31.01.2013, 16:48
|
|
Гражданин KAZUS.RU
Регистрация: 04.08.2006
Сообщений: 911
Сказал спасибо: 28
Сказали Спасибо 180 раз(а) в 139 сообщении(ях)
|
Re: Изучаем STM32 Cortex M3
TAutomatic, я просто в шоке! В таблице приводится double* и указывается что при определённых ключах компилятора он будет вместо него вставлять чистый float, а в определённых double. При этом точность указана обычного float и идёт ссылка на стандарт, что совершенно естественно. И где вы видете иновацию микрочипа? Да для неё и нет места вам правильно сказали "бит есть бит" и больше туда информации не всунешь. Элементарный подсчёт на калькуляторе даёт следующие цифры double это более 15 десятичных разрядов после точки, float это более 6. Вы разницу понимаете.
Ухудшение работы фильтра можно объяснить не улучшением работы а как раз ухудшением. В общем то это всем известно. Порой сложно точно подобрать коэффициенты. Везде округления. Фильтр с округлёнными коэффициентами работает "не совсем так". Надо просто поиграться с ними. Поподбирать до устойчивой работы. Возможно именно ПИК округляет хуже. Учитывая что это локальная разработка конторы, которая ни передкем не отчитывается. Порой при подборе фильтра приходится десятки их подобрать и симулировать. Причём на симуляции работает всё прекрасно.
По поводу системы команд. Там TUMB2 который обеспечивает плотность практически как у TUMB и быстродействие как у ARM. Сумарная производительность получается выше чем у ARM7. Рост объёма памяти примерно 1.2. У вас 24/14 = 1.7. Это нереально. Вы неверно сконфигурировали компилятор. Возможно выключили оптимизацию либо подключили полные библиотеки либо неверно настроили сам проект. Найболее реальная цифра по моему прогнозу 15-16.
|
|
|
|
31.01.2013, 16:53
|
|
Гражданин KAZUS.RU
Регистрация: 04.08.2006
Сообщений: 911
Сказал спасибо: 28
Сказали Спасибо 180 раз(а) в 139 сообщении(ях)
|
Re: Изучаем STM32 Cortex M3
Можете скинуть мне проект выдрав какую-нибудь значимую часть, если боитесь. Я гляну настройки компилятора. Я работаю и под IAR и под Keil. Но IAR знаю намного лучше, врать не буду.
|
|
|
|
31.01.2013, 17:13
|
|
Почётный гражданин KAZUS.RU
Регистрация: 08.06.2008
Сообщений: 1,394
Сказал спасибо: 4
Сказали Спасибо 183 раз(а) в 167 сообщении(ях)
|
Re: Изучаем STM32 Cortex M3
|
|
|
|
31.01.2013, 21:03
|
|
Временная регистрация
Регистрация: 18.07.2012
Сообщений: 73
Сказал спасибо: 4
Сказали Спасибо 5 раз(а) в 5 сообщении(ях)
|
Re: Изучаем STM32 Cortex M3
Сообщение от Boba_spb
|
Заметили разницу?
У Вас чтение последнего байта стоит чуток рановато.
|
Разница есть, но небольшая. А где Вы взяли этот пример? Это Ваш труд или посторонних?
|
|
|
|
31.01.2013, 21:05
|
|
Гуру портала
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,269 раз(а) в 1,563 сообщении(ях)
|
Re: Изучаем STM32 Cortex M3
Сообщение от TAutomatic
|
А где Вы взяли этот пример? Это Ваш труд или посторонних?
|
Я вам намекал уже . Просмотрите SPL ...
__________________
Осторожно , злой кот
|
|
|
|
31.01.2013, 21:13
|
|
Временная регистрация
Регистрация: 18.07.2012
Сообщений: 73
Сказал спасибо: 4
Сказали Спасибо 5 раз(а) в 5 сообщении(ях)
|
Re: Изучаем STM32 Cortex M3
Сообщение от Boba_spb
|
Если EEPROMка маленькая, и не очень часто в нее пишите, можно ее не ставить , а писать во флеш программы. Будет и быстрее и экономнее.
|
EEPROM маленькая, я указал 2кБита, записывается в нее сравнительно не часто, но сериями по несколько записей - перезаписей. То, что флешевые микроконтроллеры способны выполнять самопрограммирование мне знакомо. И видел наличие AN2594, прада не читывался. По опыту работы с другими контроллерами се операции по записи требуют запрещения прерывания от 1 до 5 мс. В нашем приборе используется динамическая сегментная развертка на 4 разряда для снижения энергопоребления. Думаю, понятно. В каждый момент времени горит не более одного сегмента.
Прерывания развертки самого высокого приоритета из доступного, любое вмешательство вызывает некрасивое блымкание. Может это и не часто происходит, но я сторонник того, что бы все было идеально. Мне не жаль внешнюю епром стоимостью 30 центов, зато "костюмчик хорошо сидит".
|
|
|
|
31.01.2013, 21:36
|
|
Временная регистрация
Регистрация: 18.07.2012
Сообщений: 73
Сказал спасибо: 4
Сказали Спасибо 5 раз(а) в 5 сообщении(ях)
|
Re: Изучаем STM32 Cortex M3
Сообщение от SasaVitebsk
|
Можете скинуть мне проект выдрав какую-нибудь значимую часть, если боитесь. Я гляну настройки компилятора. Я работаю и под IAR и под Keil. Но IAR знаю намного лучше, врать не буду.
|
Скидывать конечно же не буду. Сам не люблю копаться в чужом, почти уверен, остальные тоже самое. Настройки компилятора я и так могу показатьхоть через скриншоты. Уверяю Вас, там все по-умолчанию. Уровень оптимизации всегда стоит 0. И сравнивал, кстати, код Пика и АРМа тоже в одинаковых условиях, при отключенной оптимизации. Оптимизация я включаю только по завершению проектов.
Дело в том, что я не считаю себя новичком в программировании микроконтроллеров. И занимаюсь статической оптимизацией кона с первых строчек написания программы. Я твердо и исренне верю, что "потом", как многие думают уже врядли можно что то оптимизировать. Ну конечно оптимизатор может поработать, безусловно самыйбезобразный код сожмет на какой-то процент. Но что бы дать ему возможность еще лучше выполнить работу, нужно помогать самому. Поэтому я предполагал некоторое увеличение объема при портировании кода, но не такое сильное. Честно говоря, сам ума не приложу. Ну хорошо, можно еще оптимизировать вызова функций, передачу параметров. Это может сократить код на пару процентов, не более. Это не решает проблему. У меня была цель влезть в С4, получается только в С6
|
|
|
|
31.01.2013, 21:41
|
|
Гуру портала
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,269 раз(а) в 1,563 сообщении(ях)
|
Re: Изучаем STM32 Cortex M3
Сообщение от TAutomatic
|
Поэтому я предполагал некоторое увеличение объема при портировании кода, но не такое сильное.
|
А что вы хотели получить используя SPL ?
__________________
Осторожно , злой кот
|
|
|
|
31.01.2013, 22:05
|
|
Временная регистрация
Регистрация: 18.07.2012
Сообщений: 73
Сказал спасибо: 4
Сказали Спасибо 5 раз(а) в 5 сообщении(ях)
|
Re: Изучаем STM32 Cortex M3
Сообщение от dosikus
|
А что вы хотели получить используя SPL ?
|
А причем тут SPL? Я портировал код с совсем другой архитектуры там его нет и в помине, SPL тоже автоматически не вставляется в новый проект для ARM, что бы из-за него вырос объем.
Убрана работа с периферией чужого контроллера, что естественно, не дает компилироваться проекту. Все, остается голая математика и другая обработкаданных.
|
|
|
|
31.01.2013, 22:10
|
|
Почётный гражданин KAZUS.RU
Регистрация: 08.06.2008
Сообщений: 1,394
Сказал спасибо: 4
Сказали Спасибо 183 раз(а) в 167 сообщении(ях)
|
Re: Изучаем STM32 Cortex M3
Сообщение от TAutomatic
|
Разница есть, но небольшая. А где Вы взяли этот пример? Это Ваш труд или посторонних?
|
Насколько я понимаю, то требуемое сотояние ACK установится только при чтении байта.
Пример взял из примера работы с I2C фирмы ST в IARe, там примеров ....
Хочешь пользуй все, хочешь - выдергивай только то что надо, а остальное можно условной трансляцией глушить что б место не кушало.
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 03:25.
|
|