BASIC4MCU | 질문게시판 | 답변 : 앱인벤터 세븐세그먼트 제어하기
페이지 정보
작성자 master 작성일2019-12-17 14:31 조회16,189회 댓글6건본문
// MCU BASIC: https://www.basic4mcu.com// DateTime : 2019-12-17 오후 2:31:18// by Ok-Hyun Park//#include <SoftwareSerial.h>SoftwareSerial btSerial(2,3); //블루투스칩//byte digits[10][7]={{0,0,0,0,0,0,1},{1,0,0,1,1,1,1},{0,0,1,0,0,1,0},{0,0,0,0,1,1,0},{1,0,0,1,1,0,0},{0,1,0,0,1,0,0},{0,0,0,1,1,1,1},{1,0,0,0,0,0,0},{0,0,0,1,1,0,0},};//int fnd[7]={4,5,6,7,8,9,10}; //세븐세그먼트int digit=10;//void setup(){for(int i=0;i<7;i++)pinMode(fnd[i],OUTPUT);btSerial.begin(9600);}//void disp(int n){for(int i=0;i<7;i++){if(n&(0x40>>i))digitalWrite(fnd[i],1);else digitalWrite(fnd[i],0);}}//void loop(){if(Serial.available()){int c=btSerial.read();if((c>='a')&&(c<='j'))disp(digits[c-'a']);}}
댓글 6
조회수 16,189bas213님의 댓글
bas213 작성일
저 이코드를 그대로 쓰니 업로드대고 세그먼트 불이다들어오는데
warning: invalid conversion from 'byte* {aka unsigned char*}' to 'int' [-fpermissive]
if((c>='a')&&(c<='j'))disp(digits[c='a']); 일케 경고하나있고 앱으로 숫자바뀌는거 해도 적용이 안대네여 여기서 뭘더추가해야하는건가요?
master님의 댓글
master
[c='a'] 가 아니고
[c-'a'] 입니다.
master님의 댓글
master 작성일
//void disp(int n){
void disp(unsigned char n){
//
//char c=btSerial.read();
unsigned char c=btSerial.read();
두 군데 수정해서 다시 해보세요
bas213님의 댓글
bas213
저근데 저 코딩으로 연결하면 원래 작동안시켜도 불이다들어오는게 정상인가요??
master님의 댓글
master
다시 복사해서 돌려보세요
bas213님의 댓글
bas213
혹시 수정된건가요? 이번에 전체다시복사해서 붙여넣으니 컴파일에러뜨네여..
sketch_dec18c.ino:34:44: error: invalid conversion from 'byte* {aka unsigned char*}' to 'int' [-fpermissive]
sketch_dec18c.ino:24:6: error: initializing argument 1 of 'void disp(int)' [-fpermissive]
a,b,c,d를 혹시 따로 선언해줘야하나여?