Vous confondez les niveaux de tension (RS-232 nous supposons) et le protocole série (disons simplement uart comme il venait d'une époque où tout le monde était obsédé par le nom des choses).
En utilisant votre exemple, vous ne pouvez pas distinguer 0110 de 001100 par exemple. Avec le protocole uart, vous devez échantillonner idéalement le milieu de la cellule binaire, afin que le récepteur sache où se trouve le milieu, étant sur différentes sources de temps et pas exactement le même, le premier bord de l'inactivité vous donne une référence pour pouvoir pour atteindre le milieu des N bits suivants, la taille de N dépend de la précision de chaque côté, environ 8 bits de données, vous pouvez être assez bâclé, et si vous le souhaitez, vous pouvez resynchroniser sur tous les bords que vous trouvez (dans votre exemple comment recevriez-vous 00000000? ou 11111111?)
Le bit de départ nous donne une arête à distinguer du ralenti, à savoir quand le message commence et une référence pour échantillonner les bits. Le bit d'arrêt garantit que nous retournons au ralenti au moins pour une cellule de bit ou deux. Lorsqu'il est saturé de données, pas de lacunes, pas d'inactivité autre que le bit d'arrêt, alors vous avez un autre problème que le protocole uart ne résout pas nécessairement (bien la parité aide) si vous entrez au milieu (quelqu'un se branche alors que les données se déplacent , ou pour toute autre raison) les bits de démarrage et d'arrêt aident à encadrer les données sans parité, vous pourrez peut-être encore déterminer où vous êtes, avec la parité, vous avez une chance encore meilleure mais pas parfaite.
Il existe maintenant d'autres protocoles. De nombreux autres protocoles. allez chercher irig-106, au lieu d'un bit de départ, vous avez un motif de synchronisation qui peut être suivi de centaines de bits avant un autre motif, pas de périodes mortes. Le document irig a un joli graphique de divers encodages où NRZ-L est ce à quoi nous sommes habitués avec un simple uart (non retour au niveau zéro) un intéressant est bi-phase-l où il y a une cellule de changement d'état au milieu du bit donc votre 0110 serait transmis à 2x la fréquence des données et serait 01101001, dans le pire des cas, vous ne pouvez jamais avoir plus de deux demi-cellules de bits d'affilée au même niveau, de nombreux bords avec lesquels la synchronisation des bits.
Un autre intéressant est mil-std-1553, où ils utilisent bi-phase-L (qui est un encodage populaire avec de nombreux noms différents juste biphase ou manchester, etc.) mais ce ne sont pas des données continues, c'est une rafale de un à plusieurs mots. ils utilisent une erreur biphase-1 intentionnelle de trois demi-cellules binaires et trois demi-cellules binaires comme motif de synchronisation puis entrent dans le message codé en biphase-l.
Aucune raison pour laquelle vous ne pourriez pas utiliser les niveaux de tension RS-232, RS-422, etc. avec un protocole différent de uart. Mais vous avez toujours besoin de bords de temps en temps dans les données afin de synchroniser les horloges (si vous transportez l'horloge, alors c'est une autre histoire) et vous avez besoin d'un moyen de savoir où se trouvent les groupes de bits qui font des octets ou des mots. vous devez donc avoir un motif de synchronisation ou un bit de démarrage ou autre. ou faites quelque chose comme spi ou i2c pour marquer le début. ethernet classique utilisait une longue onde carrée avec quelques bits pour indiquer la fin et le début du paquet. MDIO a quelque chose de similaire.
À la fin de la journée, vous ne pouvez pas avoir un protocole série à signal unique fiable sans un moyen de savoir où se trouvent les limites mot / message dans le flux binaire, de même que vous ne pouvez pas le faire sans savoir où / quand échantillonner pour chaque bit.Même si un train de bits continu et peut-être vous pensez que vous saviez quand le temps zéro était et que vous pouvez simplement compter jusqu'à 8 et marquer un autre octet, vous pourriez avoir de la chance, mais vous devez toujours vous synchroniser avec l'horloge d'envoi car votre horloge est basée sur un autreréférence et dérivera par rapport à l'horloge de l'expéditeur.Vous pouvez donc essayer de réussir à condition de regarder périodiquement les arêtes que vous trouvez et de vous assurer qu'il y a une arête tous les N bits en fonction des mathématiques liées à la précision des horloges.