1. 프로젝트 사용한 보드 종류
아두이노 UNO
2. 사용한 개발 프로그램명
아두이노 IDE
3. 사용한 센서 모델명
2 digit FND, LED, SW
4. 연결한 회로 설명 (또는 이미지)
5. 소스코드 (주석 필수)
#include
#ifdef __AVR__
#include
#endif
#define A 3
#define B 4
#define C 8
#define D 10
#define E 9
#define F 7
#define G 11
#define digit1 6
#define digit2 5
#define buttonPin 2
#define ledPin 13
int buttonState = 0;
int k=0;
int j=0;
int i=0;
const int segs[7]={A,B,C,D,E,F,G};
const int numbers[10][7]={{1,1,1,1,1,1,0},{0,1,1,0,0,0,0},{1,1,0,1,1,0,1},{1,1,1,1,0,0,1},{0,1,1,0,0,1,1},{1,0,1,1,0,1,1},{1,0,1,1,1,1,1},{1,1,1,0,0,1,0},{1,1,1,1,1,1,1},{1,1,1,1,0,1,1},};
int randomNum = 0;
void setup(){
Serial.begin(9600);
pinMode(buttonPin, INPUT_PULLUP);
for(int i=0;i<7;i++){
pinMode(segs[i],OUTPUT);
}
pinMode(digit1,OUTPUT);
pinMode(digit2,OUTPUT);
pinMode(ledPin, OUTPUT);
}
void loop(){
if(Serial.available())
{
randomNum = Serial.read();
}
lightnumber1(randomNum);
delay(10);
lightnumber2(randomNum/10);
delay(10);
buttonState=digitalRead(buttonPin);
if(buttonState==LOW)
{
randomNum=0;
for(j=0;j<5;j++)
{
for(k=0;k<3;k++)
{
digitalWrite(ledPin, HIGH);
delay(500);
digitalWrite(ledPin, LOW);
delay(500);
}
}
}
}
void lightnumber1(int num1){
digitalWrite(digit1,LOW);
digitalWrite(digit2,HIGH);
for(int i=0;i<7;i++){
digitalWrite(segs[i],numbers[num1][i]);
}
}
void lightnumber2(int num2){
digitalWrite(digit1,HIGH);
digitalWrite(digit2,LOW);
for(int i=0;i<7;i++){
digitalWrite(segs[i],numbers[num2][i]);
}
}
6. 문제점 및 에러 내용
버튼을 누르면 FND의 1의 자리 숫자가 꺼집니다 뭐가 문제일까요 도와주세요ㅠ
|