Como convertir Unicode U+2800 a binario

hola estoy desarrollando una línea braille para ciego en esp32 pero me consigo con un problema y es que los caracteres brailles con Unicode Carácter U+2800 representados en UTF-8 Encoding: `0xE2 0xA0 0x80 Unicode Block “Braille Patterns”

yo necesito leerlo en binario donde
⠁ = 00000001
⠂ = 00000010
⠃ = 00000011
⣿ = 11111111

yo que esp32 reciba el carácter y lo convierta a binario para luego yo levantar los puntos según el carácter los 0 significan apagado y los 1 encendido

e visto un código en Arduino para encender led pero solo trabaja con numero cuando coloco caracteres Unicode o ascii no los reconoce a la salida manda siempre 00000000

yo necesito o bien convertir los caracteres a binario o mandar directamente en binario por el puerto serial o bluetooth pero que me almacene los ocho bit de binario en string par luego yo recorrerlo y levantar los pines de cada carácter

quiero desarrollar una línea braille de bajo costo para las personas ciegas y hacerlo de condigo libre para que cualquiera pueda tener la posibilidad de crear la suya pero tengo ya días estancado en este problema e buscado todas las formas y no logro solucionarlo

agradezco mucho la ayuda que me puedan dar

1 Like

Ahora bien, tu problema es trabajar con datos hexadecimales. Los caracteres unicode que recibes están entre 2800 y 28FF , por lo tanto tienes que restar 2800 al valor, en hexadecimal, que recibes por serie. Luego eligiendo correctamente los pines del Arduino, trabajar con Port registrer
para generar el carácter braille.

muchas gracias por su respuesta pero disculpa la molestia podrías ponerme un código de ejemplo

Moderador:
Hay dos hilos al comienzo de esta Sección que dicen

1. Que temas son considerados Proyectos
2. Leer las Normas del foro.

Y además posteas temas de elementos No AVR por lo que corresponde otra sección, que es Microcontroladores.
Lo muevo a esa sección.
Ten mas cuidado en adelante!!.

Hola @discapacidad5;

Me gustaría ayudar con este proyecto.

Pero no entendí claramente cómo debería funcionar.

Dijiste que recibes los datos:
"Quiero que esp32 tome el carácter y lo convierta a binario ..."
¿Cómo recibes estos datos? ¿Serie vía?
¿De dónde vienen estos personajes?
¿Viene en qué codificación?

// "Quiero desarrollar una pantalla braille de bajo costo para ciegos"
// ¿Pantalla para ciegos?

// ¿Qué tipo de pantalla?

RV - mineirin

@ruilviana creo que Google Translate te ha jugado una mala pasada.
El dice:

Una línea de puntos o matriz de puntos, para que un ciego pueda leerlo usando su tacto.

kkkkkk

Verdad. Gracias

RV - mineirin

hola gracias por responder y la ayuda los dato entran por el puerto serial pero no son letras son caracteres braille el problema se presenta por que un carácter braille esta en Unicode Block “Braille Patterns” Arduino trabaja en UTF-8 Encoding: por lo que un carácter es similar a esto 0xE2 0xA0 0x81 no lo pedo guardar en un entero y convertir vinario si lo guardo en string

en resumen necesito pasar estos caracteres a binario
⠁ ⣿ ⠀ ⠿

el braille es un método de escritura es un alfabeto para ciegos por lo que no corresponde a ninguna letra en particular dependiendo el idioma y país los puto pueden significar diferentes letras el mimo punto

hay un programa llamado lector de pantalla que se encarga de convertir la letras del abecedario a braille y lo manda por bluethooth o usb a la pantalla braille

yo necesito recibir esos datos en combatirlos a binario y guardar el código binario en un array temporal guarde cada bit por separado

la idea es por ejemplo

punto 1 00000001
punto 2 00000010
punto 1 y 2 00000011
punto 3 00000100
punto 1 y 3 00000101
punto 2 y 3 00000110
puntos 1, 2 y 3 00000111

así sucesivamente hasta
punto 1, 2, 3, 4, 5, 6, 7, y 8 11111111

lo que necesito es después de convertidos a binario leer los 8 bit uno a uno y cada 0 colocar el servo en 0 grado cada uno colocar un servo motor en 45 grados de esta manera formar los punto brailles
se que podría hacerlo con array comparativo pero tendría que comprar todos los caracteres uno por uno y tener instrucciones para cada uno y son muchísimos

El estándar Unicode codifica patrones de braille de 8 puntos de acuerdo a su apariencia binaria, en vez de seguir un orden alfabético. Unicode define el bloque de caracteres para patrones de braille en el rango hexadecimal entre 2800 y 28FF

esta persona entendió un poco cual era mi problema pero no me explico como hacer lo que me propuso. pero según entiendo de lo que dice debo restar a los bites entrante 2800 el problema es que cada bit entra por separado y si los uno ya no puedo restarle al String

no se si me estoy explicado bien soy nuevo en esto se muy poco

pero en resumen necesito que cada ves que reciba por serial este carácter ⠁se guarde en un array así 00000001
y este ⣿ como 11111111

aquí la lista completa

U+2800 // este aparentemente no tiene nada pero si hay un carácter solo que es como el espacio en braille 

⠀
Braille Pattern Blank

U+2801

⠁
Braille Pattern Dots-1

U+2802

⠂
Braille Pattern Dots-2

U+2803

⠃
Braille Pattern Dots-12

U+2804

⠄
Braille Pattern Dots-3

U+2805

⠅
Braille Pattern Dots-13

U+2806

⠆
Braille Pattern Dots-23

U+2807

⠇
Braille Pattern Dots-123

U+2808

⠈
Braille Pattern Dots-4

U+2809

⠉
Braille Pattern Dots-14

U+280A

⠊
Braille Pattern Dots-24

U+280B

⠋
Braille Pattern Dots-124

U+280C

⠌
Braille Pattern Dots-34

U+280D

⠍
Braille Pattern Dots-134

U+280E

⠎
Braille Pattern Dots-234

U+280F

⠏
Braille Pattern Dots-1234

U+2810

⠐
Braille Pattern Dots-5

U+2811

⠑
Braille Pattern Dots-15

U+2812

⠒
Braille Pattern Dots-25

U+2813

⠓
Braille Pattern Dots-125

U+2814

⠔
Braille Pattern Dots-35

U+2815

⠕
Braille Pattern Dots-135

U+2816

⠖
Braille Pattern Dots-235

U+2817

⠗
Braille Pattern Dots-1235

U+2818

⠘
Braille Pattern Dots-45

U+2819

⠙
Braille Pattern Dots-145

U+281A

⠚
Braille Pattern Dots-245

U+281B

⠛
Braille Pattern Dots-1245

U+281C

⠜
Braille Pattern Dots-345

U+281D

⠝
Braille Pattern Dots-1345

U+281E

⠞
Braille Pattern Dots-2345

U+281F

⠟
Braille Pattern Dots-12345

U+2820

⠠
Braille Pattern Dots-6

U+2821

⠡
Braille Pattern Dots-16

U+2822

⠢
Braille Pattern Dots-26

U+2823

⠣
Braille Pattern Dots-126

U+2824

⠤
Braille Pattern Dots-36

U+2825

⠥
Braille Pattern Dots-136

U+2826

⠦
Braille Pattern Dots-236

U+2827

⠧
Braille Pattern Dots-1236

U+2828

⠨
Braille Pattern Dots-46

U+2829

⠩
Braille Pattern Dots-146

U+282A

⠪
Braille Pattern Dots-246

U+282B

⠫
Braille Pattern Dots-1246

U+282C

⠬
Braille Pattern Dots-346

U+282D

⠭
Braille Pattern Dots-1346

U+282E

⠮
Braille Pattern Dots-2346

U+282F

⠯
Braille Pattern Dots-12346

U+2830

⠰
Braille Pattern Dots-56

U+2831

⠱
Braille Pattern Dots-156

U+2832

⠲
Braille Pattern Dots-256

U+2833

⠳
Braille Pattern Dots-1256

U+2834

⠴
Braille Pattern Dots-356

U+2835

⠵
Braille Pattern Dots-1356

U+2836

⠶
Braille Pattern Dots-2356

U+2837

⠷
Braille Pattern Dots-12356

U+2838

⠸
Braille Pattern Dots-456

U+2839

⠹
Braille Pattern Dots-1456

U+283A

⠺
Braille Pattern Dots-2456

U+283B

⠻
Braille Pattern Dots-12456

U+283C

⠼
Braille Pattern Dots-3456

U+283D

⠽
Braille Pattern Dots-13456

U+283E

⠾
Braille Pattern Dots-23456

U+283F

⠿
Braille Pattern Dots-123456

U+2840

⡀
Braille Pattern Dots-7

U+2841

⡁
Braille Pattern Dots-17

U+2842

⡂
Braille Pattern Dots-27

U+2843

⡃
Braille Pattern Dots-127

U+2844

⡄
Braille Pattern Dots-37

U+2845

⡅
Braille Pattern Dots-137

U+2846

⡆
Braille Pattern Dots-237

U+2847

⡇
Braille Pattern Dots-1237

U+2848

⡈
Braille Pattern Dots-47

U+2849

⡉
Braille Pattern Dots-147

U+284A

⡊
Braille Pattern Dots-247

U+284B

⡋
Braille Pattern Dots-1247

U+284C

⡌
Braille Pattern Dots-347

U+284D

⡍
Braille Pattern Dots-1347

U+284E

⡎
Braille Pattern Dots-2347

U+284F

⡏
Braille Pattern Dots-12347

U+2850

⡐
Braille Pattern Dots-57

U+2851

⡑
Braille Pattern Dots-157

U+2852

⡒
Braille Pattern Dots-257

U+2853

⡓
Braille Pattern Dots-1257

U+2854

⡔
Braille Pattern Dots-357

U+2855

⡕
Braille Pattern Dots-1357

U+2856

⡖
Braille Pattern Dots-2357

U+2857

⡗
Braille Pattern Dots-12357

U+2858

⡘
Braille Pattern Dots-457

U+2859

⡙
Braille Pattern Dots-1457

U+285A

⡚
Braille Pattern Dots-2457

U+285B

⡛
Braille Pattern Dots-12457

U+285C

⡜
Braille Pattern Dots-3457

U+285D

⡝
Braille Pattern Dots-13457

U+285E

⡞
Braille Pattern Dots-23457

U+285F

⡟
Braille Pattern Dots-123457

U+2860

⡠
Braille Pattern Dots-67

U+2861

⡡
Braille Pattern Dots-167

U+2862

⡢
Braille Pattern Dots-267

U+2863

⡣
Braille Pattern Dots-1267

U+2864

⡤
Braille Pattern Dots-367

U+2865

⡥
Braille Pattern Dots-1367

U+2866

⡦
Braille Pattern Dots-2367

U+2867

⡧
Braille Pattern Dots-12367

U+2868

⡨
Braille Pattern Dots-467

U+2869

⡩
Braille Pattern Dots-1467

U+286A

⡪
Braille Pattern Dots-2467

U+286B

⡫
Braille Pattern Dots-12467

U+286C

⡬
Braille Pattern Dots-3467

U+286D

⡭
Braille Pattern Dots-13467

U+286E

⡮
Braille Pattern Dots-23467

U+286F

⡯
Braille Pattern Dots-123467

U+2870

⡰
Braille Pattern Dots-567

U+2871

⡱
Braille Pattern Dots-1567

U+2872

⡲
Braille Pattern Dots-2567

U+2873

⡳
Braille Pattern Dots-12567

U+2874

⡴
Braille Pattern Dots-3567

U+2875

⡵
Braille Pattern Dots-13567

U+2876

⡶
Braille Pattern Dots-23567

U+2877

⡷
Braille Pattern Dots-123567

U+2878

⡸
Braille Pattern Dots-4567

U+2879

⡹
Braille Pattern Dots-14567

U+287A

⡺
Braille Pattern Dots-24567

U+287B

⡻
Braille Pattern Dots-124567

U+287C

⡼
Braille Pattern Dots-34567

U+287D

⡽
Braille Pattern Dots-134567

U+287E

⡾
Braille Pattern Dots-234567

U+287F

⡿
Braille Pattern Dots-1234567

U+2880

⢀
Braille Pattern Dots-8

U+2881

⢁
Braille Pattern Dots-18

U+2882

⢂
Braille Pattern Dots-28

U+2883

⢃
Braille Pattern Dots-128

U+2884

⢄
Braille Pattern Dots-38

U+2885

⢅
Braille Pattern Dots-138

U+2886

⢆
Braille Pattern Dots-238

U+2887

⢇
Braille Pattern Dots-1238

U+2888

⢈
Braille Pattern Dots-48

U+2889

⢉
Braille Pattern Dots-148

U+288A

⢊
Braille Pattern Dots-248

U+288B

⢋
Braille Pattern Dots-1248

U+288C

⢌
Braille Pattern Dots-348

U+288D

⢍
Braille Pattern Dots-1348

U+288E

⢎
Braille Pattern Dots-2348

U+288F

⢏
Braille Pattern Dots-12348

U+2890

⢐
Braille Pattern Dots-58

U+2891

⢑
Braille Pattern Dots-158

U+2892

⢒
Braille Pattern Dots-258

U+2893

⢓
Braille Pattern Dots-1258

U+2894

⢔
Braille Pattern Dots-358

U+2895

⢕
Braille Pattern Dots-1358

U+2896

⢖
Braille Pattern Dots-2358

U+2897

⢗
Braille Pattern Dots-12358

U+2898

⢘
Braille Pattern Dots-458

U+2899

⢙
Braille Pattern Dots-1458

U+289A

⢚
Braille Pattern Dots-2458

U+289B

⢛
Braille Pattern Dots-12458

U+289C

⢜
Braille Pattern Dots-3458

U+289D

⢝
Braille Pattern Dots-13458

U+289E

⢞
Braille Pattern Dots-23458

U+289F

⢟
Braille Pattern Dots-123458

U+28A0

⢠
Braille Pattern Dots-68

U+28A1

⢡
Braille Pattern Dots-168

U+28A2

⢢
Braille Pattern Dots-268

U+28A3

⢣
Braille Pattern Dots-1268

U+28A4

⢤
Braille Pattern Dots-368

U+28A5

⢥
Braille Pattern Dots-1368

U+28A6

⢦
Braille Pattern Dots-2368

U+28A7

⢧
Braille Pattern Dots-12368

U+28A8

⢨
Braille Pattern Dots-468

U+28A9

⢩
Braille Pattern Dots-1468

U+28AA

⢪
Braille Pattern Dots-2468

U+28AB

⢫
Braille Pattern Dots-12468

U+28AC

⢬
Braille Pattern Dots-3468

U+28AD

⢭
Braille Pattern Dots-13468

U+28AE

⢮
Braille Pattern Dots-23468

U+28AF

⢯
Braille Pattern Dots-123468

U+28B0

⢰
Braille Pattern Dots-568

U+28B1

⢱
Braille Pattern Dots-1568

U+28B2

⢲
Braille Pattern Dots-2568

U+28B3

⢳
Braille Pattern Dots-12568

U+28B4

⢴
Braille Pattern Dots-3568

U+28B5

⢵
Braille Pattern Dots-13568

U+28B6

⢶
Braille Pattern Dots-23568

U+28B7

⢷
Braille Pattern Dots-123568

U+28B8

⢸
Braille Pattern Dots-4568

U+28B9

⢹
Braille Pattern Dots-14568

U+28BA

⢺
Braille Pattern Dots-24568

U+28BB

⢻
Braille Pattern Dots-124568

U+28BC

⢼
Braille Pattern Dots-34568

U+28BD

⢽
Braille Pattern Dots-134568

U+28BE

⢾
Braille Pattern Dots-234568

U+28BF

⢿
Braille Pattern Dots-1234568

U+28C0

⣀
Braille Pattern Dots-78

U+28C1

⣁
Braille Pattern Dots-178

U+28C2

⣂
Braille Pattern Dots-278

U+28C3

⣃
Braille Pattern Dots-1278

U+28C4

⣄
Braille Pattern Dots-378

U+28C5

⣅
Braille Pattern Dots-1378

U+28C6

⣆
Braille Pattern Dots-2378

U+28C7

⣇
Braille Pattern Dots-12378

U+28C8

⣈
Braille Pattern Dots-478

U+28C9

⣉
Braille Pattern Dots-1478

U+28CA

⣊
Braille Pattern Dots-2478

U+28CB

⣋
Braille Pattern Dots-12478

U+28CC

⣌
Braille Pattern Dots-3478

U+28CD

⣍
Braille Pattern Dots-13478

U+28CE

⣎
Braille Pattern Dots-23478

U+28CF

⣏
Braille Pattern Dots-123478

U+28D0

⣐
Braille Pattern Dots-578

U+28D1

⣑
Braille Pattern Dots-1578

U+28D2

⣒
Braille Pattern Dots-2578

U+28D3

⣓
Braille Pattern Dots-12578

U+28D4

⣔
Braille Pattern Dots-3578

U+28D5

⣕
Braille Pattern Dots-13578

U+28D6

⣖
Braille Pattern Dots-23578

U+28D7

⣗
Braille Pattern Dots-123578

U+28D8

⣘
Braille Pattern Dots-4578

U+28D9

⣙
Braille Pattern Dots-14578

U+28DA

⣚
Braille Pattern Dots-24578

U+28DB

⣛
Braille Pattern Dots-124578

U+28DC

⣜
Braille Pattern Dots-34578

U+28DD

⣝
Braille Pattern Dots-134578

U+28DE

⣞
Braille Pattern Dots-234578

U+28DF

⣟
Braille Pattern Dots-1234578

U+28E0

⣠
Braille Pattern Dots-678

U+28E1

⣡
Braille Pattern Dots-1678

U+28E2

⣢
Braille Pattern Dots-2678

U+28E3

⣣
Braille Pattern Dots-12678

U+28E4

⣤
Braille Pattern Dots-3678

U+28E5

⣥
Braille Pattern Dots-13678

U+28E6

⣦
Braille Pattern Dots-23678

U+28E7

⣧
Braille Pattern Dots-123678

U+28E8

⣨
Braille Pattern Dots-4678

U+28E9

⣩
Braille Pattern Dots-14678

U+28EA

⣪
Braille Pattern Dots-24678

U+28EB

⣫
Braille Pattern Dots-124678

U+28EC

⣬
Braille Pattern Dots-34678

U+28ED

⣭
Braille Pattern Dots-134678

U+28EE

⣮
Braille Pattern Dots-234678

U+28EF

⣯
Braille Pattern Dots-1234678

U+28F0

⣰
Braille Pattern Dots-5678

U+28F1

⣱
Braille Pattern Dots-15678

U+28F2

⣲
Braille Pattern Dots-25678

U+28F3

⣳
Braille Pattern Dots-125678

U+28F4

⣴
Braille Pattern Dots-35678

U+28F5

⣵
Braille Pattern Dots-135678

U+28F6

⣶
Braille Pattern Dots-235678

U+28F7

⣷
Braille Pattern Dots-1235678

U+28F8

⣸
Braille Pattern Dots-45678

U+28F9

⣹
Braille Pattern Dots-145678

U+28FA

⣺
Braille Pattern Dots-245678

U+28FB

⣻

Braille Pattern Dots-1245678

U+28FC

⣼

Braille Pattern Dots-345678

U+28FD

⣽

Braille Pattern Dots-1345678

U+28FE

⣾

Braille Pattern Dots-2345678

U+28FF

⣿

Braille Pattern Dots-12345678

Hola
La parte de codificación ya la había entendido. Lo que todavía no entiendo es cómo se obtienen los datos a través de la serie.
¿Quién o qué envía estos datos a la serie?

RV - mineirin

aquí esta un video que muestra como es una pantalla braille pero sus costo varían de 3000 dólares a 6000 dólares

yo estoy desarrollado una que cuesta menos de 100 dólares su fabricación esto abriría un mudo para las personas ciegas y sordociegas para de bajo recurso que son mas del 90% de la población quiero colocar todo disponible para que la misma persona pueda reconstruir su propia línea braille

yo soy persona con discapacidad visual baja visión y eso me a echo muy sensible a la problemática de primera mano

lo enviar un programa llamado lector de pantalla

en Windows se llama nvda o jaws
en linux se llama orca
en adroid se llama brailleback
en ifone se llama voiceover

claro esta que una ves tenga ya definido debo desarrollar un cotorreador para los lectores de pantalla un protocolo de comunicación

si gustas me puedes escribir a mi teléfono WhatsApp +584129994784

ella recibe y envía datos por serie por que la pantalla braille recibe la información que va a mostrar pero retorna las pulsaciones de teclas del usuario ya que incorpora un teclado

además debe retornar un rutero de la letra que el usuario pise como especie de la pulsación de clic del ratón sobre una letra pero esta parte es mas fácil de hacer lo que me a complicado la vida es los códigos brailles como manejarlos dentro de el id de Arduino

en ultima instancia tendré que hacer una tabla comparativa con toda la tabla acci y crear instrucciones por cada carácter si no consigo solucionar por medio de conversión de caracteres pero son 255 caracteres y 255 instrucciones y cada vez que lege una letra tendría que recorrer todo buscado la coincidencia me parece que es mas trabajo para el procesador mas memoria y mas trabajo para para programarlo

Hola
Para poder ayudar mejor, primero me gustaría entender el proyecto en forma macro.
Si es posible, haga dibujos (incluso a mano alzada).
Describe qué tipo de equipo (PC, ESP, teclado ArRduino, etc.) formará parte del proyecto.
Entendiendo el proyecto en su conjunto, puedo ayudar mejor.
Si es posible, describe en bloques cómo es tu idea para este proyecto.
Las dificultades de programación, creo que puedo ayudar mucho.

RV - mineirin

Espero que te sirva

int braile_Byte[255];
void setup() {
  Serial.begin(9600);
  for (int i = 0; i < 255; i++) {
    braile_Byte[i] = 0X2800 + i; //Cargamos todos los balores desde 0X2800 a 0x28FF
  }
  for (int i = 0; i < 255; i++) {
    Serial.print( braile_Byte[i], HEX); //imprimimos todos los valores
    Serial.print("        ");
    Serial.println( braile_Byte[i] - 0X2800, BIN); //Sacamos los valores en binario
  }
}
void loop() {}

Unir dos bytes para obtener un integer, no es complicado, se usa la función de desplazamiento

byte inByte[2];
int braille;

void setup() {
  Serial.begin(9600);
}

void loop() {
  if (Serial.available() > 1) {
    Serial.readBytes(inByte, 2);
    braille = inByte[0];
    braille = braille << 8;
    braille = braille + inByte[1];
    Serial.println(braille, HEX);
    Serial.flush();
  }
}

¿Por qué no ignorar el caracter 0x28 y tomar directamente el segundo caracter?

Saludos

Buen punto.

Antes de seguir escribiendo por favor algunos detalles para que corrijas o mejores
no es vinario sino binario

no sé si usas un celular y por eso cometes estos errores pero es android e iphone.

Bueno dejemos esto, espero lo tomes para bien. Ya me conocerás, ladro pero no muerdo. Y estas cosas las conservo desde que dejé de enseñar.

Vas a encontrar mucha colaboración en proyectos altruistas como éste.
Ya estoy viendo como ayudarte pero sería bueno que le des el marco contextual que @ruilviana te pide.
Ejemplo, si hablas de un programa como nvda o jaws pon links asi podemos verlos y enterarnos en profundidad. Primer aporte para sumar:
Windows

Linux Orca
https://help.gnome.org/users/orca/stable/introduction.html.es
Android
https://support.google.com/accessibility/android/answer/3535226?hl=es-419
Iphone (no se si este es el link adecuado pero parece que esta integrado. Al carecer de Iphone no puedo afirmarlo)

De leer algo de Nvda me encuentro con que tiene

  • Soporte para muchas pantallas braille.
    que es el motivo de @discapacidad5 en este hilo.
    Asi que ahi tenemos por un lado una PC/Tablet/celular y por otro una interfaz para resolver en Arduino.

El primer enfoque de @PeterKantTropus creo que esta mas que claro y la sugerencia de @gatul lo hace mas simple aún.

Esperemos a ver como continuar ayudando.

hola valoro mucho su respuesta de verdad estoy muy agradecidos con todos los que me responden.

sin embargo este código no me sirve por que básicamente este código lo que ase es cargarme los 255 caracteres para luego hacer comparaciones uno a uno

y seria lo mismo hacer comparaciones con el ascci normal

lo que yo necesito es escuchar el puerto serial y

      Serial.print("Estoy leyendo...\n");
      Received = Serial.read();                // carácter enviado = ⠊
      Serial.print(Received);

me da este resultado
/* Estoy leyendo...

  • 226: ⸮
  • Estoy leyendo......
  • 160: ⸮
  • Estoy leyendo......
  • 138: ⸮
    */

divide el carácter en 3 bit necesito unir los 3 bit en uno
lo resuelvo detectado el retorno de carro antes

  if(Serial.available() > 0){ 
 Serial.print("Estoy leyendo...\n");                                 
      while(c != '\n'){
       Received = Serial.read();              // carácter enviado = ⠊
   
      } 
 }

me da este resultado

/* Estoy leyendo...

*/

bien a ese carácter que entro por el puerto serial es que necesito combatirlo en binario para hacer algo como esto supongamos que la conversión a vinario la tengo en una variable o aray llamada output

servo_disp(output); // envió output a la función servo_disp para sacar los caracteres binario a los servo motores

void servo_disp(int* output)
{
   if( output[0] == 1 )
   {
    dot1.write(0);
//    digitalWrite(k+2, HIGH);
     Serial.print("punto 1...\n");
   }
   else
   {
    dot1.write(45);
//    digitalWrite(k+2, LOW);
   }
    if( output[1] == 1 )
   {
    dot2.write(0);
     Serial.print("punto 2...\n");
//    digitalWrite(k+2, HIGH);
   }
   else
   {
    dot2.write(45);
//    digitalWrite(k+2, LOW);
   }
    if( output[2] == 1 )
   {
    dot3.write(0);
     Serial.print("punto 3...\n");    
//    digitalWrite(k+2, HIGH);
   }
   else
   {
    dot3.write(45);
//    digitalWrite(k+2, LOW);
   }
    if( output[3] == 1 )
   {
    dot4.write(0);
     Serial.print("punto 4...\n");    
//    digitalWrite(k+2, HIGH);
   }
   else
   {
    dot4.write(45);
//    digitalWrite(k+2, LOW);
   }
    if( output[4] == 1 )
   {
    dot5.write(0);
     Serial.print("punto 5...\n");    
//    digitalWrite(k+2, HIGH);
   }
   else
   {
    dot5.write(45);
//    digitalWrite(k+2, LOW);
   }
    if( output[5] == 1 )
   {
    dot6.write(0);
     Serial.print("punto 6...\n");    
//    digitalWrite(k+2, HIGH);
   }
   else
   {
    dot6.write(45);
//    digitalWrite(k+2, LOW);
   }
   if( output[6] == 1 )
   {
    dot7.write(0);
     Serial.print("punto 7...\n");    
//    digitalWrite(k+2, HIGH);
   }
   else
   {
    dot7.write(45);
//    digitalWrite(k+2, LOW);
   }if( output[7] == 1 )
   {
    dot8.write(0);
     Serial.print("punto 3...\n");    
//    digitalWrite(k+2, HIGH);
   }
   else
   {
    dot8.write(45);
//    digitalWrite(k+2, LOW);
   }

}

no se si se entiende mejor pero lo que necesito es convertir sobre la marcha cada carácter recibido guardar en binario recibido en un aray de 8 posiciones correspondiente cada posición a un bit binario

char input[8]={{0,1,0,1,0,0,0,0} };

si embargo yo necesito mostrar no solo una letra sino 40 letras por lo que cada letra ya convertida a binario debo guardarla en una matriz de array para luego leerlas en el display braile

  int binary[40][8]={{0,0,0,0,0,0,0,0},{0,0,0,0,0,0,0,0},{0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0},{0,0,0,0,0,0,0,0},{0,0,0,0,0,0,0,0},{0,0,0,0,0,0,0,0},{0,0,0,0,0,0,0,0},{0,0,0,0,0,0,0,0},{0,0,0,0,0,0,0,0},{0,0,0,0,0,0,0,0} ,{0,0,0,0,0,0,0,0} ,{0,0,0,0,0,0,0,0},{0,0,0,0,0,0,0,0},{0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0},{0,0,0,0,0,0,0,0},{0,0,0,0,0,0,0,0},{0,0,0,0,0,0,0,0},{0,0,0,0,0,0,0,0},{0,0,0,0,0,0,0,0},{0,0,0,0,0,0,0,0},{0,0,0,0,0,0,0,0},{0,0,0,0,0,0,0,0},0,0,0,0,0,0,0,0},{0,0,0,0,0,0,0,0},0,0,0,0,0,0,0,0},{0,0,0,0,0,0,0,0},{0,0,0,0,0,0,0,0},{0,0,0,0,0,0,0,0},{0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0},{0,0,0,0,0,0,0,0},{0,0,0,0,0,0,0,0},{0,0,0,0,0,0,0,0},{0,0,0,0,0,0,0,0},{0,0,0,0,0,0,0,0},{0,0,0,0,0,0,0,0},{0,0,0,0,0,0,0,0},{0,0,0,0,0,0,0,0}};

servo_disp(output); //salida ⠓ ⠕ ⠇ ⠁ ⠀ ⠍ ⠥ ⠝ ⠙ ⠕

esto se traduce en braille en español hola mundo

i se dan cuenta los caracteres ascci tienen su propio orden y no corresponden en nada al al alfabeto por eso no sirve de nada convertir todo el alfabeto ya que el orden es diferente se necesita convertir letra por letra a medida que se van recibiendo sobre la marcha y irla guardado en un aray para luego leerlas

espero esta vez si me de a explicar mejor

como explicaba en el mensaje anterior al convertirlo de esa forma se sigue manteniendo el mismo orden y en el leguaje braille el orden es diferente y solo se necesita convertir los caracteres entrantes para guardarlos y luego leerlos