Jump to content

    
Sign in to follow this  
vepex

Какой контроллер выбрать

Recommended Posts

а я делаю так:

задача посылать по скоростному SPI произвольные блоки данных через ДМА:

1. Один раз инициализирую ДМА и SPI при помощи SPL,

2. Запоминаю значения регистов в SPI и ДМА, ПЕРЕД запуском всего этого.

3. При повторном запуске другого блока данных с другим размером - восстанавливаю значения регистров, и меняю только адрес с размером и запускаю при помощи SPL ДМА.

 

круто!

Share this post


Link to post
Share on other sites

 

Этот прайс-лист я уже смотрел (реально спасибо за него). Но я хочу узнать реальный опыт использования - кто что использует, какие проблемы возникают и т.д.

Share this post


Link to post
Share on other sites
Этот прайс-лист я уже смотрел (реально спасибо за него). Но я хочу узнать реальный опыт использования - кто что использует, какие проблемы возникают и т.д.

Использовал KSZ8041, KSZ8051, KSZ8081. Никаких проблем не возникает.

Share this post


Link to post
Share on other sites
Оформлено это всё в красивую отдельную либу с приятным "сахором" в виде одной функции spi_dma_send(addr, size);

и не знаю проблем ни с досканальным изучением регистров, ни скоростью запуска отправки блока, и написано всё на понятном SPL а не дрочь с битами в регистрах и последующим чтением "а чего это там за EN бит в CR1 записывается". И всё изучение регистров ДМА и SPI сокращается до нахождения адреса и размера посылаемых данных + общий порядок запуска всего этого дела (а по сути всегда это однотипно: настроить всё неважно как и дать отмашку уже важно в какой последовательности)

Из всего многообразия возможностей DMA (работы связным списком, flip-flop, комбинации этих режимов, возможности прямой работы со сложными структурами данных типа кольцевых буферов и N-мерных массивов одной транзакцией и много другого что взбредёт в голову) Вы оставили куцый обрезок в стиле memcpy() и сидите радуетесь этому? Мне Вас жаль....

Share this post


Link to post
Share on other sites
Из всего многообразия возможностей DMA (работы связным списком, flip-flop, комбинации этих режимов, возможности прямой работы со сложными структурами данных типа кольцевых буферов и N-мерных массивов одной транзакцией и много другого что взбредёт в голову) Вы оставили куцый обрезок в стиле memcpy() и сидите радуетесь этому? Мне Вас жаль....

задачу жалеть надо, и такую науку как системное проектирование, ну и здравый смысл пожалеть можно.

а я в свою очередь жалею перфекционистов и любителей запилить все режимы только потому что они есть, когда по сути нужен просто банальный memcpy в устройство без отнимания процессорного времени.

Share this post


Link to post
Share on other sites
а я в свою очередь жалею перфекционистов и любителей запилить все режимы только потому что они есть

+100500 :a14:

Ув. товарищ перфекционист в соседней теме изобретает невозможный чудо-макрос на все случаи жизни. Всем понятно, что и без этого макроса хорошо, а всё равно руки чешутся :biggrin:

Решение абстрактных задач - это неплохо и забавно, в том числе в качестве разминки для извилин. Но следует понимать, что с решением насущных задач это, как правило, ничего общего не имеет. Пустая трата рабочего времени.

Share this post


Link to post
Share on other sites
Ув. товарищ перфекционист в соседней теме изобретает невозможный чудо-макрос на все случаи жизни. Всем понятно, что и без этого макроса хорошо, а всё равно руки чешутся :biggrin:

Решение абстрактных задач - это неплохо и забавно, в том числе в качестве разминки для извилин. Но следует понимать, что с решением насущных задач это, как правило, ничего общего не имеет. Пустая трата рабочего времени.

Да ладно - в насущных задачах перфекцинист пользуется тем, что есть. Но стремится к лучшему ;)

А вот насчёт использования всякого рода сторонних библиотек как раз и считаю это пустой тратой рабочего времени... на ловлю багов потом.

 

Да и о чём тут (на форуме) ещё общаться? Только чайников учить? Скучно ;)

Share this post


Link to post
Share on other sites
А вот насчёт использования всякого рода сторонних библиотек как раз и считаю это пустой тратой рабочего времени... на ловлю багов потом.

Именно так.

 

Share this post


Link to post
Share on other sites
А вот насчёт использования всякого рода сторонних библиотек как раз и считаю это пустой тратой рабочего времени... на ловлю багов потом.

 

Хм... Линуксописатели тихо смеются в сторонке, ибо там-то точно без библиотек не написать ничего :biggrin:

 

А если без шуток, всегда умиляет то, что кто-то там наделал кучу багов в программах, а я-то их уж точно никогда не понаделаю, при написании с чистого листа, читая многотомные даташиты на английском, ерраты и пр... Причем еще не всегда полностью понимая прочитанное...

А тестирование результата работы никто не отменял, поэтому и вылавливаются все эти глюки, благо библиотеки в исходниках, в отличие от emwin-ов всяких...

Share this post


Link to post
Share on other sites
Хм... Линуксописатели тихо смеются в сторонке, ибо там-то точно без библиотек не написать ничего :biggrin:

 

А если без шуток, всегда умиляет то, что кто-то там наделал кучу багов в программах, а я-то их уж точно никогда не понаделаю, при написании с чистого листа, читая многотомные даташиты на английском, ерраты и пр... Причем еще не всегда полностью понимая прочитанное...

А тестирование результата работы никто не отменял, поэтому и вылавливаются все эти глюки, благо библиотеки в исходниках, в отличие от emwin-ов всяких...

 

Кроме того что вылавливаются еще важно чем вылавливаются.

Важно насколько среда заточена для вылавливания.

Если хотите GUI в исходниках переходите на eGUI под Kinetis-MQX - http://gargy007.github.io/egui_doc/ :biggrin:

Share this post


Link to post
Share on other sites
А если без шуток, всегда умиляет то, что кто-то там наделал кучу багов в программах, а я-то их уж точно никогда не понаделаю, при написании с чистого листа, читая многотомные даташиты на английском, ерраты и пр...

Да, смертельно-непонятных не наделаю. Просто по причине, что отвечать приходится почти головой, и получать по результату и рублем отвечать, в отличие он подавляющего большинства писателей "библиотек".

Причем еще не всегда полностью понимая прочитанное...

Ну это Вы за всех не говорите.

А тестирование результата работы никто не отменял, поэтому и вылавливаются все эти глюки...

Умиляет. Типовой дерьмокод содержит такое количество потенциальных ошибок и написан с таким количеством заплаток, на ошибки котрые вылезли при минимальной работе в паркетных условиях, что ловить там уже НЕЧЕГО.

 

Кроме того что вылавливаются еще важно чем вылавливаются.

Посему средства диагностики сбоев должны быть встроены в рабочий вариант оборудования, когда всякие среды c отладчиками давно уже ушли лесом.

 

 

Хм... Линуксописатели тихо смеются в сторонке, ибо там-то точно без библиотек не написать ничего :biggrin:

Да смеяться-то нечего - способ обеспечения "надежности" в линуксе весьма лобовой - сотни писателей и тысячи латателей за годы дописали и долатали до приемлимого состояния. И продолжают...

 

 

Share this post


Link to post
Share on other sites
А вот насчёт использования всякого рода сторонних библиотек как раз и считаю это пустой тратой рабочего времени... на ловлю багов потом.

чем SPL не угодила? она только перегоняет значения из структуры в регистры простым ленейным кодом в 99% случаях.

Более того производитель наверняка именно ей тестит своё железо, а другой порядок инициализации может дать сюрприз.

И никто не говорит о библиотеках как о панацеи, если разраб в их исходники и документации вообще неразу не глянул и у него не возникли даже сомнения делает ли он всё верно, то это его вина.

А так же распростронённые ошибки есть когда в AHB инициализируются константами APB, всякие не до конца заполненные структуру, переполения стеков, да и тупое игнорирование всяких мелочек.

А потом все ноют "SPL гавно, CMSIS вообще на свалку, WINapi уничтожить, poco примитивна - ООП не используется на всю катушку, а boost вообще дебилы писали - ничего не понятно в ней и это не ООП а гавно".

Share this post


Link to post
Share on other sites

Исползьую STM32. Почему то так исторически сложилось, что почти все проекты на них да и дрова под них понаписывал и ОС(хотя ОС просто под cortex-m3/4)

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this