Где получить программное обеспечение для встраиваемых компонентов?

Мне интересно, знает ли кто-нибудь место в Интернете, где я могу приобрести или загрузить программные модули, написанные на C или C++, для взаимодействия между микропроцессорами и другими компонентами, такими как ЦАП, АЦП или UART. Что-то вроде git-хаба для встраиваемого программного обеспечения C. Существует ли это место?


person Joseph DelCioppio    schedule 23.01.2010    source источник
comment
Какой производитель чипов?   -  person Mark Elliot    schedule 23.01.2010
comment
обычно такие библиотеки бесплатны. Вы найдете их под названием Chip Support library или сокращенно CSL.   -  person Nils Pipenbrinck    schedule 23.01.2010


Ответы (7)


Возможно, вы ищете что-то под названием «пакет поддержки доски» или BSP. Для данной операционной системы у него будет набор драйверов/библиотек, которые помогут вам взаимодействовать с аппаратным компонентом.

Сказав это, некоторые стандартные аппаратные интерфейсы, например. 16550 Uart может иметь драйверы, которые поставляются с ОС.

person tonylo    schedule 23.01.2010

Вы также можете ознакомиться с книгой Жана Лаброса "Строительные блоки встраиваемых систем". . Он имеет несколько прямых библиотек C для работы с UART, аналоговым вводом-выводом, таймерами и т. д.

Конечно, вам все равно нужно подключить их к фактической аппаратной реализации чипа (как указывалось в других ответах, вы обычно можете получить библиотеки, чтобы помочь с этим от поставщиков чипов), но они могут быть удобной оболочкой, позволяющей вам больше легко перемещайте программное обеспечение более высокого уровня с одного устройства на другое. Там нет потрясающих вещей, которые было бы особенно сложно сделать самостоятельно, но их можно взять, так почему бы и нет? Даже если это не совсем то, что вам может понадобиться, это шаг вперед.

person Michael Burr    schedule 23.01.2010

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

person Ignacio Vazquez-Abrams    schedule 23.01.2010

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

person wrapperm    schedule 23.01.2010
comment
Можно многое сказать о том, чтобы сделать это наоборот. - person Hans Passant; 23.01.2010
comment
@nobugz: извините, но я не мог понять ваш комментарий... не могли бы вы немного уточнить? - person wrapperm; 24.01.2010
comment
Сначала узнайте, какой чип хорошо поддерживается множеством доступных библиотек, а затем принимайте решение о покупке. - person Hans Passant; 25.01.2010

Хорошо, а что насчет TI? Я знаю о BSP, но на самом деле они не существуют для программного обеспечения, которое существует ниже уровня O/S.

Во-вторых, допустим, мне нужно программное обеспечение, чтобы микроконтроллер TI MSP430 общался с DAC7565. Я действительно не могу найти программное обеспечение, которое каким-либо надежным образом связывает эти два.

Я говорю о полном программном пакете, что-то вроде жемчужины в Ruby, где я мог бы вызывать такие функции, как «OutputVoltage (unsigned int voltage, unsinged int channel)» и не обращать внимания на аппаратную реализацию.

@nobugz Да, я согласен, но это ужасно сдерживает. C должен быть похож на Ruby, где вы можете сосредоточиться только на том, что хотите сделать, не тратя время на ограничение себя из-за доступности программного обеспечения...

person Joseph DelCioppio    schedule 24.01.2010
comment
Вы помещаете комментарии в поле, в которое входят ответы. Так не должно работать SO. - person Craig McQueen; 25.01.2010

@Шайхи

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

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

Просто кажется гигантской тратой инженерных часов.

person Joseph DelCioppio    schedule 24.01.2010
comment
Так работает закрытый исходный код (по крайней мере, насколько я знаю). Вы можете посмотреть драйверы в репозитории Embedded Linux, и если у вас есть кто-то, у кого есть BSP в основной линейке, вы можете связаться с ним, чтобы купить у него HW или просто взять реализацию. Я знаю, например, что с Windows CE вы в конечном итоге пишете много кода с нуля. У нас есть внутренний проект, который сокращает объем работы, но так как это не наш основной бизнес, мы его не продаем. Я не знаком с кем-то, кто это делает. - person Shaihi; 24.01.2010
comment
Я думаю, вы разместили этот вопрос для кого-то, кто может знать компанию, которая занимается этим, поэтому не обращайте внимания на мой комментарий :) - person Shaihi; 24.01.2010

Вы проверили примечания по применению на веб-сайте поставщика A/D? Они очень часто имеют код C. Проблема с кодом на ассемблере заключается в том, что существует так много разных производителей АЦП и микропроцессоров и так много разных способов подключения чипа, что они не могут предоставить библиотеку общего назначения. Кроме того, программист может захотеть опросить флаг окончания преобразования или позволить чипу прерваться, когда преобразование будет завершено. Это очень специфично для приложения. Лучше всего надеяться на то, что у поставщика есть пример кода, который послужит руководством по использованию чипа. Хорошая новость заключается в том, что руководства пользователя для этих периферийных устройств стали намного лучше, чем 20 лет назад.

Кроме того, у поставщика, вероятно, есть инженеры по применению, которые помогут вам с вашим дизайном.

person Bruce    schedule 31.01.2010