Jump to content
Fórum Script Brasil
  • 0

Ajuda! Caracteres Não Imprimíveis, Linux/MacOS


Celso Padilha

Question

Olá pessoal, estou quebrando a cabeça já faz um tempo, sou programador java faz tempo, e faz mais tempo ainda que não vejo C, mas estou precisando dele como nunca agora, e estou com um certo problema, preciso de pegar os caracteres não imprimíveis, com código ascii ou em binário, no mac os eu não consigo fazer a função itoa pra transformar em binário ou em ascii.

O que eu pretendo, estou trabalhando em um projeto em arduino que é um Micro-Controlador que é programável em C, e estou precisando de pegar o evento do teclado para mover um servo gradativamente com as setas do teclado, se eu apertar ou segurar a seta, ele vai aumentar gradativamente, eu tenho que pegar de todo jeito o evento da seta pelo teclado, fiz um código só pra testar mesmo, preciso muito de ajuda, atenciosamente!

Em anexo o Código: Essa gambiarra ai é do getch pra não precisar do enter e não usar o getchar(), pra quem quiser, está disponível ai também, abcs.

/*

* File: main.cpp

* Author: celsopadilha

*

* Created on 5 de Janeiro de 2012, 15:07

*/

#include <cstdlib>

#include <stdlib.h>

#include <stdio.h>

#include <termios.h>

#include <unistd.h>

int getch( ) {

struct termios oldt,

newt;

int ch;

tcgetattr( STDIN_FILENO, &oldt );

newt = oldt;

newt.c_lflag &= ~( ICANON | ECHO );

tcsetattr( STDIN_FILENO, TCSANOW, &newt );

ch = getchar();

tcsetattr( STDIN_FILENO,

TCSANOW, &oldt );

return ch;

}

#define fflush fflush2

void fflush2(FILE * x) {

getchar();

}

#define sleep eeeep

void eeeep(int x) {}

char buffer[8];

/*

*

*/

int main(void)

{

int c;

while(1)

{

c=getch();

if(c==000)//Se a tecla for o null

break;

if (!c)

{

printf("Primeiro byte = 0 \t");

c = getch();

}

else

{//byte não lido é zero

printf("Caracter: %c * ASCII = %d\n", c, c);

}

}

}

Link to comment
Share on other sites

0 answers to this question

Recommended Posts

There have been no answers to this question yet

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152.2k
    • Total Posts
      652.1k
×
×
  • Create New...