라즈베리 파이의 GPIO 입력을 int로 변환하려고합니다. 그래서 5 개의 디지털 입력이 있고 입력을 읽고 싶습니다. 일단 값을 얻으면 배열에 저장합니다. 다음으로 배열의 내용을 int 값으로 변환하는 것입니다.이진 신호를 int로 변환
그래서 여기 내 코드입니다 : 첫 번째 입력이 1 또는 0 인 경우 조건을보고하는 경우
int a = digitalRead(PIN_16);
int b = digitalRead(PIN_18);
int c = digitalRead(PIN_22);
int d = digitalRead(PIN_24);
int e = digitalRead(PIN_26);
int array[5];
array[0]=a;
array[1]=b;
array[2]=c;
array[3]=d;
array[4]=e;
내가 뭐지 것 숫자을 배열의 내용을 변환하기 위해 1 I 1, 다른 경우, 0 등등 ....
내 질문에 더 우아한 방법이 있다면 지금입니다. 수의 적절한 위치에
숫자는 무엇을해야 하는가? (예를 들어, pin16이 높으면 숫자는 무엇이되어야합니까?) – Lanting
각기 다른 값으로 2를 곱하고 (또는 다른 값으로 왼쪽으로 시프트 한 다음) 함께 합치십시오 (또는 비트별로 또는 함께) . 예를 들어'value = (a << 0) | (b << 1) | (c << 2) | (d << 3) | (e << 4); –