About: Bit banging

An Entity of Type: topical concept, from Named Graph: http://dbpedia.org, within Data Space: dbpedia.org

In computer engineering and electrical engineering, bit banging is a "term of art" for any method of data transmission that employs software as a substitute for dedicated hardware to generate transmitted signals or process received signals. Software directly sets and samples the states of GPIOs (e.g., pins on a microcontroller), and is responsible for meeting all timing requirements and protocol sequencing of the signals. In contrast to bit banging, dedicated hardware (e.g., UART, SPI, I²C) satisfies these requirements and, if necessary, provides a data buffer to relax software timing requirements. Bit banging can be implemented at very low cost, and is commonly used in some embedded systems.

Property Value
dbo:abstract
  • ضرب البت أو تقسيم البت (بالإنجليزية: Bit Banging)‏ هو عبارة عن تقنية في التواصل التسلسلي، تستخدم البرمجيات بدلاً عن عتاد مستقل. حيث يقوم البرنامج بتجميع و أخذ عينات عن حالة إبر التوصيل على المتحكم المصغر، ويكون مسؤولاً عن كل بارامترات الإشارة: التوقيت، المستويات، التزامن... إلخ. على عكس البرمجيات، يعالج العتاد المستقل ( كالمودم، UART، أو مسجلات الإزاحة) هذه البارامترات و توفر واجهة بيانات في أنظمة أخرى، لذا فليست هناك ضرورة لتعديل الإشارة عن طرق البرمجيات. يتميز تقسيم البوت بسهولة تطبيقه بكلفة رخيصة جدا، ويتم استخدامه على سبيل المثال في الأنظمة المضمنة. على الرغم من اعتباره hack، إلا أنه يسمح باستخدام عدة بروتوكولات مختلفة على نفس الجهاز بدون أي تعديلات على العتاد المستخدم في أغلب الأحيان. يوجد بعض المشاكل في استخدام bit banging، حيث تستهلك البرمجيات التي تقوم بالعملية مواد معالجة أكثر من العتاد المستقل. حيث يمضي المتحكم المصغر أغلب وقته بقراءة وإرسال العينات من و عن طريق إبر توصيله Pin، مستهلكا من وقت العمليات الأخرى. كما أنّ الإشارة المولدة عن طريقه لديها عادة jitter or glitches أكثر، خاصة إذا كان المعالج يقوم بمعالجة مهام أخرى غير التواصل. لكن في حال تم تطبيق برنامج bit-banging بأسلوب معالجة المقاطعات interrupt-driven، لا تعد هذه المشاكل ذات أهمية، خصوصاً إذا توفرت إشارات التحكم مثل RTS، CTS أو DCD. (ar)
  • Unter Bit-Banging versteht man eine Technik, die mittels Software und I/O-Leitungen eine Hardware-Schnittstelle emuliert, die gewöhnlich mit einem spezifischen Peripherie-Baustein realisiert wird. Auf einem PC können sowohl die serielle als auch die parallele Schnittstelle genutzt werden. Bei Mikrocontrollern nutzt man die I/O-Pins. Das Bit-Banging-Verfahren kann dann sinnvoll sein, wenn eine bestimmte Schnittstelle nicht in Hardware vorhanden ist, z. B. hat kein Standard-PC ein SPI, oder wenn bei Mikrocontrollern eine Ressource bereits belegt ist. Besonders häufig dient Bit-Banging der Kosteneinsparung durch Ersetzen relativ teurer Peripheriebausteine. Eine Vielzahl von Schnittstellen kann durch Bit-Banging emuliert werden. Hier einige Beispiele: * SPI, synchrone serielle Schnittstelle * UART, asynchrone serielle Schnittstelle – wird dann auch als „Software-UART“ bezeichnet * 1-Wire, Eindraht-Schnittstelle * LC-Display (z. B. HD44780) * I²C, synchrone serielle Schnittstelle * Decodierung der Leitungscodes für TV-Fernbedienungen * Digital-Analog-Umsetzer, mittels PWM und RC-Siebglied Entsprechend der Komplexität des Schnittstellen-Protokolls kommen unterschiedliche Methoden zum Einsatz. Die einfachste Art ist das Polling. Der Prozessor fragt, so oft er kann, Änderungen an den I/O-Leitungen ab. Ist ein bestimmtes Zeitverhalten einzuhalten, benutzt man Warteschleifen oder Timer-Funktionen. Die Nutzung der Interrupt-Leitungen reduziert weiter die Prozessorauslastung. Speziell zur Erzeugung eines PWM-Signals dienen häufig die direkten Timer-Ausgänge. Trickreich ist die Aufwertung einer einfacheren Schnittstelle zu einem komplexen Protokoll. Nachteile des Bit-Bangings sind die hohe Prozessorauslastung, der erhöhte Softwareaufwand und meist starkes Jitter beim Zeitverhalten. Einige Schnittstellen, etwa SPI, sind dagegen immun, andere, etwa UART, haben strikte Zeitforderungen. (de)
  • In computer engineering and electrical engineering, bit banging is a "term of art" for any method of data transmission that employs software as a substitute for dedicated hardware to generate transmitted signals or process received signals. Software directly sets and samples the states of GPIOs (e.g., pins on a microcontroller), and is responsible for meeting all timing requirements and protocol sequencing of the signals. In contrast to bit banging, dedicated hardware (e.g., UART, SPI, I²C) satisfies these requirements and, if necessary, provides a data buffer to relax software timing requirements. Bit banging can be implemented at very low cost, and is commonly used in some embedded systems. Bit banging allows a device to implement different protocols with minimal or no hardware changes. In some cases, bit banging is made feasible by newer, faster processors because more recent hardware operates much more quickly than hardware did when standard communications protocols were created. (en)
  • Bit-banging — технология организации последовательного соединения с использованием программной эмуляции вместо специализированного аппаратного устройства. Программа непосредственно устанавливает состояние GPIO выводов на микроконтроллере (либо LPT на компьютере), таким образом полностью обеспечивая нужные характеристики сигнала. Обычно используется в дешевых устройствах. (ru)
dbo:wikiPageExternalLink
dbo:wikiPageID
  • 2824933 (xsd:integer)
dbo:wikiPageLength
  • 5284 (xsd:nonNegativeInteger)
dbo:wikiPageRevisionID
  • 1109498864 (xsd:integer)
dbo:wikiPageWikiLink
dbp:cs1Dates
  • y (en)
dbp:date
  • December 2021 (en)
dbp:wikiPageUsesTemplate
dcterms:subject
gold:hypernym
rdf:type
rdfs:comment
  • Bit-banging — технология организации последовательного соединения с использованием программной эмуляции вместо специализированного аппаратного устройства. Программа непосредственно устанавливает состояние GPIO выводов на микроконтроллере (либо LPT на компьютере), таким образом полностью обеспечивая нужные характеристики сигнала. Обычно используется в дешевых устройствах. (ru)
  • ضرب البت أو تقسيم البت (بالإنجليزية: Bit Banging)‏ هو عبارة عن تقنية في التواصل التسلسلي، تستخدم البرمجيات بدلاً عن عتاد مستقل. حيث يقوم البرنامج بتجميع و أخذ عينات عن حالة إبر التوصيل على المتحكم المصغر، ويكون مسؤولاً عن كل بارامترات الإشارة: التوقيت، المستويات، التزامن... إلخ. على عكس البرمجيات، يعالج العتاد المستقل ( كالمودم، UART، أو مسجلات الإزاحة) هذه البارامترات و توفر واجهة بيانات في أنظمة أخرى، لذا فليست هناك ضرورة لتعديل الإشارة عن طرق البرمجيات. يتميز تقسيم البوت بسهولة تطبيقه بكلفة رخيصة جدا، ويتم استخدامه على سبيل المثال في الأنظمة المضمنة. (ar)
  • In computer engineering and electrical engineering, bit banging is a "term of art" for any method of data transmission that employs software as a substitute for dedicated hardware to generate transmitted signals or process received signals. Software directly sets and samples the states of GPIOs (e.g., pins on a microcontroller), and is responsible for meeting all timing requirements and protocol sequencing of the signals. In contrast to bit banging, dedicated hardware (e.g., UART, SPI, I²C) satisfies these requirements and, if necessary, provides a data buffer to relax software timing requirements. Bit banging can be implemented at very low cost, and is commonly used in some embedded systems. (en)
  • Unter Bit-Banging versteht man eine Technik, die mittels Software und I/O-Leitungen eine Hardware-Schnittstelle emuliert, die gewöhnlich mit einem spezifischen Peripherie-Baustein realisiert wird. Auf einem PC können sowohl die serielle als auch die parallele Schnittstelle genutzt werden. Bei Mikrocontrollern nutzt man die I/O-Pins. Eine Vielzahl von Schnittstellen kann durch Bit-Banging emuliert werden. Hier einige Beispiele: (de)
rdfs:label
  • تقسيم البت (ar)
  • Bit-Banging (de)
  • Bit banging (en)
  • Bit-banging (ru)
rdfs:seeAlso
owl:differentFrom
owl:sameAs
prov:wasDerivedFrom
foaf:isPrimaryTopicOf
is dbo:wikiPageRedirects of
is dbo:wikiPageWikiLink of
is owl:differentFrom of
is foaf:primaryTopic of
Powered by OpenLink Virtuoso    This material is Open Knowledge     W3C Semantic Web Technology     This material is Open Knowledge    Valid XHTML + RDFa
This content was extracted from Wikipedia and is licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License