|
libopencm3, Неплохая либа для кортексов... |
|
|
|
 |
Ответов
|
Oct 6 2015, 07:11
|
Гуру
     
Группа: Свой
Сообщений: 2 712
Регистрация: 28-11-05
Из: Беларусь, Витебск, Строителей 18-4-220
Пользователь №: 11 521

|
Мне кажется пример для UART вы неудачный выбрали. )) Дело в том, что написать универсальный обработчик UART, на мой взгляд, нецелесообразно. С одной стороны сам USART позволяет слишком многое, а с другой стороны законченный драйвер должен обеспечивать хотя бы канальный уровень (ведущий/ведомый, контрольная сумма, контроль приёма сообщений) и сетевой (определение маршрута и логическая адресация). А это для разных протоколов существенно отличается. То есть универсальный или не получится или будет слишком громоздкий, избыточный. Кроме того значительно чаще интересен не "универсальный драйвер для одного типа МК (например STM32F4)", а драйвер для целого семейства. И здесь начинают проявляться особенности периферии. Посмотрите мануалы для F0/F1/F3/F4 контроллеров STM. Вроде похожи, но ... Кое где предусмотрена обработка полудуплекса, а где-то нет. Где то есть аппаратная обработка логичесской адресации. Разная обработка LIN протоколов. Ещё всякие особенности ... Причём сама работа с железом у вас составит максимум 1% от библиотеки. Думаю меньше на самом деле. И она проста до безобразия. Вам просто надо почитать описание самих регистров. Вот и получается ... С одной стороны - прочитать описание регистров контроллера и написать универсальную (по возможности) библиотеку своего протокола. С другой стороны - прочитать описание библиотеки КУБ или другой, со всеми взаимоувязками (так как там одна написана через другую) и, опять же, написать библиотеку своего протокола. ... Так ответьте мне. В чём выигрыш? Я вот просто не пойму. У меня создаётся впечатление, что библиотеками пользуются те, кто сами вообще ничего не пишут. А берут готовый пример с просторов инета, и прикручивают что-то своё с косяками. ... Некоторыми библиотеками я пользуюсь сам. Например Ethernet. Но думаю, там то же самое. Просто недостаток моих знаний и времени. Я уверен, что если переписать это всё под себя то работать будет комфортней намного.
|
|
|
|
Сообщений в этой теме
demiurg_spb libopencm3 Mar 15 2013, 06:35 zhevak Цитата(demiurg_spb @ Mar 15 2013, 12:35) ... Mar 15 2013, 07:04 esaulenka Тут есть пользователи этой библиотеки?
Первое впе... Apr 3 2015, 08:06 demiurg_spb Цитата(esaulenka @ Apr 3 2015, 11:06) Тут... Apr 3 2015, 13:24 AlexandrY Цитата(demiurg_spb @ Mar 15 2013, 09:35) ... Apr 3 2015, 10:38 klen голосую за libcm3
Spl еще както было похоже на что... Apr 4 2015, 07:36 kan35 Цитата(klen @ Apr 4 2015, 10:36) голосую ... Apr 12 2015, 15:50  Dr.Alex Цитата(kan35 @ Apr 12 2015, 18:50) Запуск... Apr 12 2015, 17:17 _Pasha Цитата(esaulenka @ Apr 3 2015, 11:06) Соб... Apr 6 2015, 14:49 esaulenka Цитата(_Pasha @ Apr 6 2015, 17:49) у меня... Apr 7 2015, 10:45 Golikov A. А какая связь наличие или отсутствия while (бит) и... Apr 13 2015, 06:45 Dr.Alex Цитата(Golikov A. @ Apr 13 2015, 09:45) А... Apr 13 2015, 07:27 Golikov A. строго говоря я не под что не пишу while(условие).... Apr 13 2015, 09:28 Dr.Alex Цитата(Golikov A. @ Apr 13 2015, 12:28) с... Apr 13 2015, 09:44 AlexandrY Цитата(Golikov A. @ Apr 13 2015, 12:28) с... Apr 13 2015, 09:52 Golikov A. понятно, спасибо... Apr 13 2015, 09:56 SasaVitebsk Вы знаете, но честно говоря меня напрягают оценки ... Apr 13 2015, 10:00 mantech Цитата(SasaVitebsk @ Apr 13 2015, 13:00) ... Apr 13 2015, 11:10 Golikov A. А вот теперь я задумался, а как с учетом заточенос... Apr 14 2015, 11:16 AHTOXA Тут всё просто. Если ждать долго, то надо на оконч... Apr 14 2015, 14:21  Dr.Alex Цитата(AHTOXA @ Apr 14 2015, 17:21) Если ... Apr 14 2015, 14:35   AHTOXA Цитата(Dr.Alex @ Apr 14 2015, 19:35) Кто ... Apr 14 2015, 17:01    Dr.Alex Цитата(AHTOXA @ Apr 14 2015, 20:01) Ну за... Apr 14 2015, 17:04     AHTOXA Цитата(Dr.Alex @ Apr 14 2015, 22:04) С та... Apr 14 2015, 17:59 mantech Цитата(Golikov A. @ Apr 14 2015, 14:16) А... Apr 14 2015, 14:51 Golikov A. ЦитатаВообще-то для этого под оси и пишутся драйве... Apr 14 2015, 18:16 AlexandrY Цитата(Golikov A. @ Apr 14 2015, 21:16) М... Apr 14 2015, 18:40  jcxz Цитата(AlexandrY @ Apr 15 2015, 00:40) Ра... Apr 15 2015, 03:04   AlexandrY Цитата(jcxz @ Apr 15 2015, 06:04) Иногда ... Apr 15 2015, 04:46    jcxz Цитата(AlexandrY @ Apr 15 2015, 10:46) В ... Apr 15 2015, 06:55     scifi Цитата(jcxz @ Apr 15 2015, 09:55) при опи... Apr 15 2015, 07:29  mantech Цитата(AlexandrY @ Apr 14 2015, 21:40) Ра... Apr 15 2015, 05:02 AHTOXA Цитата(Golikov A. @ Apr 14 2015, 23:16) И... Apr 15 2015, 03:59 Golikov A. "не о чем" - было о другом...
конкретн... Apr 15 2015, 05:12 AlexandrY Цитата(Golikov A. @ Apr 15 2015, 08:12) Д... Apr 15 2015, 05:47  Dr.Alex Цитата(AlexandrY @ Apr 15 2015, 08:47) Лу... Apr 15 2015, 07:37   jcxz Цитата(Dr.Alex @ Apr 15 2015, 13:37) Поэт... Apr 15 2015, 09:07    mantech Цитата(jcxz @ Apr 15 2015, 12:07) Это одн... Apr 15 2015, 17:41     den_po Цитата(mantech @ Apr 15 2015, 22:41) Вот ... Apr 15 2015, 19:06     Dr.Alex Цитата(mantech @ Apr 15 2015, 20:41) Че-т... Apr 15 2015, 19:08     jcxz Цитата(mantech @ Apr 15 2015, 23:41) Че-т... Apr 16 2015, 02:16      mantech Цитата(jcxz @ Apr 16 2015, 05:16) Как тут... Apr 16 2015, 04:59       jcxz Цитата(mantech @ Apr 16 2015, 10:59) Это ... Apr 16 2015, 07:02        SasaVitebsk Цитата(jcxz @ Apr 16 2015, 10:02) Готовно... Apr 16 2015, 09:23         jcxz Цитата(SasaVitebsk @ Apr 16 2015, 15:23) ... Apr 17 2015, 02:27          mantech Цитата(jcxz @ Apr 17 2015, 05:27) Вот соб... Apr 17 2015, 05:17           jcxz Цитата(mantech @ Apr 17 2015, 11:17) Дак ... Apr 17 2015, 07:01            mantech Цитата(jcxz @ Apr 17 2015, 10:01) Какие п... Apr 17 2015, 08:50             jcxz Цитата(mantech @ Apr 17 2015, 14:50) CRC ... Apr 17 2015, 09:42              mantech Цитата(jcxz @ Apr 17 2015, 12:42) 64-битн... Apr 17 2015, 17:17 mantech Цитата(Golikov A. @ Apr 15 2015, 08:12) В... Apr 15 2015, 08:42 Golikov A. еще матрица шин, а потом доступ проца и каналы кро... Apr 15 2015, 07:44 Golikov A. ЦитатаПрием - запускаю дма и счетчик таймаута, жду... Apr 15 2015, 09:47 SasaVitebsk Когда у человека появляется красивый инструмент, в... Apr 15 2015, 09:59 jcxz Цитата(SasaVitebsk @ Apr 15 2015, 15:59) ... Apr 15 2015, 10:29  SasaVitebsk Цитата(jcxz @ Apr 15 2015, 13:29) Прелест... Apr 16 2015, 05:05 Golikov A. Цитатакоторые нужно парсить "на лету", т... Apr 16 2015, 07:26 mantech Цитата(Golikov A. @ Apr 16 2015, 10:26) Э... Apr 16 2015, 16:42 Golikov A. ЦитатаТогда объясните алгоритм приема пакета с фиф... Apr 16 2015, 17:06 mantech Цитата(Golikov A. @ Apr 16 2015, 20:06) F... Apr 16 2015, 18:31  den_po Цитата(mantech @ Apr 16 2015, 23:31) Хоро... Apr 16 2015, 18:48 Golikov A. ЦитатаПринимаю пакет, фифо настроен на 16 байт, а ... Apr 17 2015, 05:11 den_po Цитата(Golikov A. @ Apr 17 2015, 10:11) А... Apr 17 2015, 05:37 Golikov A. Если фифо железное, то глубина фифо определена жес... Apr 17 2015, 05:57 Golikov A. А еще любое прерывание - это сброс всех конвейеров... Apr 17 2015, 11:19 Эдди Если кому интересно, можно глянуть на систему упра... Apr 23 2015, 09:47 drozel А позвольте некропостнуть и вступить в полемику по... Oct 6 2015, 04:10 mantech Цитата(drozel @ Oct 6 2015, 07:10) Объясн... Oct 6 2015, 06:27 Эдди Вкратце: CUBE — признак идиота. Это как ардуйня. Т... Oct 6 2015, 05:43 drozel Цитата(Эдди @ Oct 6 2015, 11:43) Вкратце:... Oct 6 2015, 05:46 Golikov A. Вот вам на пальцах:
Ну берем SPI, настраиваем по ... Oct 6 2015, 06:28 mantech Цитата(Golikov A. @ Oct 6 2015, 09:28) К ... Oct 6 2015, 06:34  scifi Цитата(mantech @ Oct 6 2015, 09:34) Но ИМ... Oct 6 2015, 07:17   mantech Цитата(scifi @ Oct 6 2015, 10:17) Конечно... Oct 6 2015, 07:30   drozel Цитата(scifi @ Oct 6 2015, 13:17) +1. Зап... Oct 6 2015, 08:18    ViKo Цитата(drozel @ Oct 6 2015, 11:18) Код не... Oct 6 2015, 08:49 Golikov A. ЦитатаДак так и получается, если делать не один пр... Oct 6 2015, 10:58 _Pasha Сабж нормальный. Но API в некоторых местах не нрав... Oct 6 2015, 12:01 drozel Цитата(_Pasha @ Oct 6 2015, 18:01) dma - ... Oct 7 2015, 03:28  _Pasha Цитата(drozel @ Oct 7 2015, 06:28) Ну так... Oct 7 2015, 04:45 drozel Люди, помогите с либой.
Пытаюсь завести USB CDC с ... Oct 8 2015, 09:24 SasaVitebsk Цитата(drozel @ Oct 8 2015, 12:24) Что пр... Oct 8 2015, 10:34 drozel Цитата(SasaVitebsk @ Oct 8 2015, 16:34) В... Oct 8 2015, 16:41 _Pasha usbd_device *usbd_init
возвращает указатель на sta... Oct 8 2015, 18:53 drozel Да, уже нашел, спасибо. Просто непривычно: вместо ... Oct 9 2015, 01:57 esaulenka Цитата(drozel @ Oct 9 2015, 04:57) Да, уж... Oct 9 2015, 09:11 drozel Почти мигрировал с stdlib и cube на сабж.
Остался ... Oct 12 2015, 11:10 _Pasha Цитата(drozel @ Oct 12 2015, 14:10) Почти... Oct 12 2015, 11:40  drozel Цитата(_Pasha @ Oct 12 2015, 17:40) это с... Oct 12 2015, 11:55   _Pasha RE: libopencm3 Oct 12 2015, 12:14    drozel Цитата(_Pasha @ Oct 12 2015, 18:14) держи... Oct 13 2015, 03:33     _Pasha Цитата(drozel @ Oct 13 2015, 06:33) Спаси... Oct 13 2015, 04:58      drozel Цитата(_Pasha @ Oct 13 2015, 10:58) я не ... Oct 13 2015, 07:58       Эдди Цитата(drozel @ Oct 13 2015, 10:58) Если ... Oct 13 2015, 08:26        drozel Цитата(Эдди @ Oct 13 2015, 14:26) Кодls l... Oct 13 2015, 08:35 esaulenka Цитата(drozel @ Oct 12 2015, 14:10) Где ф... Oct 12 2015, 12:43  drozel Цитата(esaulenka @ Oct 12 2015, 18:43) Я ... Oct 12 2015, 17:14 Эдди Быстрее по даташиту с регистрами разобраться, неже... Oct 12 2015, 18:14 Golikov A. ЦитатаКак сказать.. GCC я никогда не пользовался, ... Oct 13 2015, 08:39
2 страниц
1 2 >
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|