Можешь начинать грызть свою руку, она тебе ни к чему, ты даже на пальцах считать не умеешь! Садись, ДВА!a5021 писал(а):да и сказать под руку тихое словцо незлобивое...
Кто сам изучил програмирование мк?
Re: Кто сам изучил програмирование мк?
- Реклама
Re: Кто сам изучил програмирование мк?
И что? Что это меняет? Там таких "особливых" пруд пруди!Леонид Иванович писал(а):для x8 даже для F0 остался особый алгоритм
Когда начнёти работать плотненько с таймерами, охренеете! А примерчиков под все таймера и все случаи то в SPL и НЕТу!
И что будете делать, как в Меге двумя таймерами рулить? Зачот!
Ещё раз! SPL предназначена для начального ознакомления и быстрого старта, не более! Так что, добро пожаловать в референс для понимания "особых алгоритмов"!
- urry
- Сверлит текстолит когтями
- Сообщения: 1262
- Зарегистрирован: Пн дек 08, 2008 10:58:48
- Откуда: Винница
- Контактная информация:
Re: Кто сам изучил програмирование мк?
не знаю, стоит ли добивать a5021 с его таблицей ...
Был бы он гуманитарием, цены бы ему не было, все, что угодно доказал бы, но поскольку здесь технический форум, все сложнее, поскольку каждый может использовать калькулятор.
Судя по цифрам в таблице, юзано было стм103 на 72 мегагерц, уарт1.
Итак, берем 921600
(921600/2+72000000)/921600 = 78, 625 = 0x4E
А не 0x4F как записано в табличке.
И сразу становится ясно, кто прав.
Был бы он гуманитарием, цены бы ему не было, все, что угодно доказал бы, но поскольку здесь технический форум, все сложнее, поскольку каждый может использовать калькулятор.
Судя по цифрам в таблице, юзано было стм103 на 72 мегагерц, уарт1.
Итак, берем 921600
(921600/2+72000000)/921600 = 78, 625 = 0x4E
А не 0x4F как записано в табличке.
И сразу становится ясно, кто прав.
Последний раз редактировалось urry Ср янв 29, 2014 16:36:20, всего редактировалось 1 раз.
Re: Кто сам изучил програмирование мк?
Именно! К примеру, во всех случаях, когда мне приходилось использовать UART (для реализации Modbus и своих протоколов), библиотеки по типу SPL просто не давали тот уровень абстракции и тот интерфейс, который я мог хоть как-нибудь применить. Все их "SendByte" и "RecvByte" мне ну вообще никак не впились, как собаке пятая нога. Использовать ее в чем-то более сложном чем простейшие любительские конструкции крайне сложно и оборачивается только потерей времени.nahimovv писал(а):SPL предназначена для начального ознакомления и быстрого старта, не более!
Эта проблема всех подобных библиотек. В противоположность этому, с их старшими собратьями на настольных ПК дела обстоят совсем по-другому. Там действительно можно сделать более менее универсальную библиотеку и успешно ее использовать.
Re: Кто сам изучил програмирование мк?
Завязывайте с этой молитвой. Библиотека называется не Evaluation и не Qick-start, а Standard. Вот слайдшоу с микроконтроллерного саммита 2012 года в Швеции, где ST рассказывает о применении STM8L/STM32L в портативной медицинской технике. В качестве средства разработки ST предлагает (стр. 70 слайдшоу), как раз таки SPL. Если уж в медтехнике (где получить многомиллионный иск за причинение вреда здоровью, как два пальца об асфальт) рекомендуют применять, то все остальные применения подцепляются автоматом.nahimovv писал(а):Ещё раз! SPL предназначена для начального ознакомления и быстрого старта, не более!
- Реклама
Re: Кто сам изучил програмирование мк?
Как применять, если нельзя? Вот невозможно использовать предоставляемый интерфейс в данном архитектурном решении и все тут. Что мне делать? Тратить время, ломать архитектуру, терять простоту и эффективность, подстраиваясь под библиотеку, потому что какие-то манагеры где-то что-то сказали? Нет уж уволь, сам ее используй, если тебе нравится. Да ты, наверное, и так ее используешь, в общем peace тебе последователь ардуино.
- Леонид Иванович
- Друг Кота
- Сообщения: 4779
- Зарегистрирован: Сб апр 02, 2011 12:40:46
- Откуда: Минск
- Контактная информация:
Re: Кто сам изучил програмирование мк?
Плохому танцору всегда что-то мешает. У меня большой проект на F407 сделан на основе SPL, это не помешало написать класс порта с протоколом Wake и с архитектурой, которую хочу, это не помешало запрограммировать все таймеры, которые понадобились, SPI-порты, АЦП и т.д. Так что не надо писать полный бред про библиотеку.menzoda писал(а):Как применять, если нельзя?
Re: Кто сам изучил програмирование мк?
Угу! Когда в суде будете отмахиваться от иска тоже будете ссылаться на рекомендации и слайды?a5021 писал(а):Если уж в медтехнике (где получить многомиллионный иск за причинение вреда здоровью, как два пальца об асфальт) рекомендуют применять, то все остальные применения подцепляются автоматом.
Re: Кто сам изучил програмирование мк?
Прошивка под БП уже готова? Или что-то мешает?Леонид Иванович писал(а): Плохому танцору всегда что-то мешает.
Так поэтому и большой, потому что на SPL!У меня большой проект на F407 сделан на основе SPL,
А при помощи библиотеки бред писать можно?Так что не надо писать полный бред про библиотеку.
-
Alexeyslav
- Друг Кота
- Сообщения: 4550
- Зарегистрирован: Чт май 05, 2011 21:26:34
- Откуда: Украина, Славутич
- Контактная информация:
Re: Кто сам изучил програмирование мк?
И про округление почему-то забыли... по какому праву вы отбросили дробную часть? Если округлять по правилам, то ближайшее целое будет именно 79 = 0x4F.78, 625 = 0x4E
А не 0x4F как записано в табличке.
Именно это число даст наименьшую ошибку.
Re: Кто сам изучил програмирование мк?
Еще один счетовод .Alexeyslav писал(а):
И про округление почему-то забыли... по какому праву вы отбросили дробную часть? Если округлять по правилам, то ближайшее целое будет именно 79 = 0x4F.
- urry
- Сверлит текстолит когтями
- Сообщения: 1262
- Зарегистрирован: Пн дек 08, 2008 10:58:48
- Откуда: Винница
- Контактная информация:
Re: Кто сам изучил програмирование мк?
(с) наберут детей в армию и мучайся с ними...
Округление уже произведено, дробная часть отбрасывается.
Называется "округление целочисленного деления"
Для того, скажем, чтобы 5.99 при делении на 2 получалось 3, а не 2 - добавляют половину делитетеля к числу, которое делим.
(5.99 +2/2)/2=6.99/2=3
В формуле
tmpreg |= ((((fractionaldivider * 16) + 50) / 100)) & ((uint8_t)0x0F);
эти +50 и есть добавление половины делителя.
В формуле
(921600/2+72000000)/921600
921600/2 это добавление для правильного округления при целочисленном делении.
Ваш капитан очевидность
Округление уже произведено, дробная часть отбрасывается.
Называется "округление целочисленного деления"
Для того, скажем, чтобы 5.99 при делении на 2 получалось 3, а не 2 - добавляют половину делитетеля к числу, которое делим.
(5.99 +2/2)/2=6.99/2=3
В формуле
tmpreg |= ((((fractionaldivider * 16) + 50) / 100)) & ((uint8_t)0x0F);
эти +50 и есть добавление половины делителя.
В формуле
(921600/2+72000000)/921600
921600/2 это добавление для правильного округления при целочисленном делении.
Ваш капитан очевидность
Re: Кто сам изучил програмирование мк?
Да, вот так посмотришь на это всё... А может и правда, ну зачем им АРМ, с такими то знаниями, какой толк с этого? Чтобы плодить психически больных и неадекватных? Здоровье нации и так в опасности! Свистелки-дрыгалки-пукалки на АВР работают как-то, и ладно! Зато приносят радость, даже без понимания что к чему!urry писал(а):(с) наберут детей в армию и мучайся с ними...
Re: Кто сам изучил програмирование мк?
Не надо обобщать свой личный возможно успешный опыт применения SPL на все возможные задачи. Это из той же оперы, что и: я - человек, у меня есть член, отсюда делаем вывод, что у всех людей есть член. Ерунда же.Леонид Иванович писал(а):У меня большой проект на F407 сделан на основе SPL, это не помешало написать класс порта с протоколом Wake и с архитектурой, которую хочу.
Кстати, почему тут нету темы с разными вопросами по АРМ, как в других разделах? Мне вот хочется задать маленький вопрос, а куда задавать непонятно.
- urry
- Сверлит текстолит когтями
- Сообщения: 1262
- Зарегистрирован: Пн дек 08, 2008 10:58:48
- Откуда: Винница
- Контактная информация:
Re: Кто сам изучил програмирование мк?
да, как раз, можно подумать, в авр считается как-то по другому...истелки-дрыгалки-пукалки на АВР работают как-то, и ладно! Зато приносят радость, даже без понимания что к чему!
#define UBRR_VALUE (((F_CPU) + 8UL * (BAUD)) / (16UL * (BAUD)) -1UL)
Ладно, что-то я завелся...
Re: Кто сам изучил програмирование мк?
Ну дык все верно , AVR код с плюсами натянутый на SPL требует ни как не меньше F4 .Леонид Иванович писал(а):У меня большой проект на F407 сделан на основе SPL,
Удивляет другое - чему тут гордится , каким достижениям?
- BCluster
- Собутыльник Кота
- Сообщения: 2512
- Зарегистрирован: Пн апр 06, 2009 19:33:29
- Откуда: Молдова, Кишинев
- Контактная информация:
Re: Кто сам изучил програмирование мк?
А поконкретнее можно? Что именно было неэффективно делать посредством SPL?menzoda писал(а):К примеру, во всех случаях, когда мне приходилось использовать UART (для реализации Modbus и своих протоколов), библиотеки по типу SPL просто не давали тот уровень абстракции и тот интерфейс, который я мог хоть как-нибудь применить. Все их "SendByte" и "RecvByte" мне ну вообще никак не впились, как собаке пятая нога. Использовать ее в чем-то более сложном чем простейшие любительские конструкции крайне сложно и оборачивается только потерей времени.
Re: Кто сам изучил програмирование мк?
А тут, как и с прочей архитектурой -- если нет возможности построить флигель к дачному домику из элементов продукции завода ЖБИ, то это не значит, что все крупнопанельное домостроение ошибочная и тупиковая ветвь строительства, а плиты, блоки и перекрытия должны использоваться лишь для ознакомления и изучения. Если в библиотеке нет средств для отработки какого-то алгоритма, то такой элемент изготовляется отдельно и библиотека тут редко может быть помехой.menzoda писал(а):Вот невозможно использовать предоставляемый интерфейс в данном архитектурном решении и все тут.
- BCluster
- Собутыльник Кота
- Сообщения: 2512
- Зарегистрирован: Пн апр 06, 2009 19:33:29
- Откуда: Молдова, Кишинев
- Контактная информация:
Re: Кто сам изучил програмирование мк?
Вообще не такая это и плохая практика подводить свои задачи под стандартные решения.a5021 писал(а): Если в библиотеке нет средств для отработки какого-то алгоритма, то такой элемент изготовляется отдельно и библиотека тут редко может быть помехой.
Re: Кто сам изучил програмирование мк?
Начал писать конкретный пример где библиотеки подобного рода не помогут, стал смотреть какой-же интерфейс предоставляет мне SPL, потому что конкретно с ней я дела не имел, а работал с NXP, где есть аналогичная библиотека. Вот тут я понял, что память меня подвела!BCluster писал(а):А поконкретнее можно? Что именно было неэффективно делать посредством SPL?
Я ошибался, когда говорил, что SPL не позволяет что-то сделать, все она позволяет! Ведь она просто тупая и никчемная обертка над регистрами периферии! Она заменяет один текст - другим, ничем не лучше первого. Это громоздкая прослойка с уровнем абстракции не отличающимся от прямой работы с регистрами. Такой абстракции грош цена! Она для ленивых олигофренов, умственный предел которых - прочитать описания функции и скопипастить ее себе. Теперь все ясно.


