Jump to content

Немного стук

В компьютерной технике электротехнике удары и по битам или удары по битам. [ нужна ссылка ] это термин, обозначающий любой метод передачи данных , в котором программное обеспечение используется вместо специального оборудования для генерации передаваемых сигналов или обработки полученных сигналов. Такое программное обеспечение напрямую устанавливает и выбирает состояния GPIO (например, контактов микроконтроллера ) для передачи и приема соответственно и отвечает за соблюдение всех требований по синхронизации и протокольной последовательности сигналов. В отличие от битовой обработки, выделенное оборудование (например, UART , SPI , I²C ) удовлетворяет этим требованиям и, при необходимости, предоставляет буфер данных для смягчения требований программного обеспечения к синхронизации. Битовую обработку можно реализовать с очень низкой стоимостью, и она обычно используется во встроенных системах . [1]

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

Пример кода C

[ редактировать ]

Следующий пример кода на языке C передает байт данных по шине SPI .

// передаем байт последовательно, сначала MSB  void   send_8bit_serial_data  (  беззнаковые   символьные   данные  )  {     int   i  ;     // выбираем устройство (активный низкий уровень)     output_low  (  SD_CS  );     // отправляем биты 7..0     for   (  i   =   0  ;   i   <   8  ;   i  ++  )     {         // учитываем крайний левый бит         // устанавливаем высокий уровень строки, если бит равен 1, низкий уровень, если бит равен 0         if   (  data   &   0x80  )             output_high  (  СД_ДИ  );         еще             выходной_низкий  (  SD_DI  );         // импульсное состояние часов, чтобы указать, что значение бита должно быть прочитано         output_low  (  SD_CLK  );         задерживать  ();         выходной_высокий  (  SD_CLK  );         // сдвигаем байт влево, чтобы следующий бит был самым левым         данными   <<=   1  ;     }     // отменяем выбор устройства     output_high  (  SD_CS  );  } 

Соображения

[ редактировать ]

Вопрос о том, использовать бит-бэнг или нет, — это компромисс между нагрузкой, производительностью и надежностью, с одной стороны, и доступностью аппаратной альтернативы — с другой. Процесс программной эмуляции потребляет больше вычислительной мощности, чем поддержка выделенного оборудования. Микроконтроллер тратит большую часть своего времени на отправку или получение выборок на выводы и обратно за счет других задач. Создаваемый сигнал обычно имеет больше джиттера или сбоев , особенно если во время обмена данными процессор также выполняет другие задачи. Однако если программное обеспечение для обработки битов управляется прерываниям сигналом по управляющие сигналы, такие как RTS, CTS или DCD , это может иметь второстепенное значение, особенно если доступны . Программная реализация может быть решением, когда конкретная аппаратная поддержка недоступна или требуется более дорогой микроконтроллер.

См. также

[ редактировать ]
  1. ^ Предко, Михаил (2000). Программирование и настройка микроконтроллеров PICmicro (2-е изд.). МакГроу-Хилл Профессионал . стр. 10–12 . ISBN  978-0-07-136172-9 .
[ редактировать ]
Асинхронный последовательный (RS-232)
шина I²C
Шина SPI
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 1b89122de85f0a298db7362d3c1d1fac__1707667560
URL1:https://arc.ask3.ru/arc/aa/1b/ac/1b89122de85f0a298db7362d3c1d1fac.html
Заголовок, (Title) документа по адресу, URL1:
Bit banging - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)