[DIY] [더미천국] 아두이노 기초편 1 입니다. (이대로 따라하면 고수된다)

ARDUINO제품을 사용해서 

FND counter만드는 예제를 초보에게 맞겼더니 ...

아두이노는 제품화 하는데 쓰는게 아니란 말을 하고 헛소리한다.

그럼3D 프린터 만들어 파는 아나츠의 이동엽 대표는 뭐냐!!

 [ 아두이노는 제품화 하여도 좋은 성능을 가졌습니다. ]

 

그래서 아두이노로 제품 만드는 정도까지..할수있다고 윽박지르고 

제품으로 만드는정도 까지 실력을 높여 주기로 하였다.


일단 스위치 입력

Switch Chattering (Bounce)방지기능첨가하고 뭐 이러랬더니 결과가 엉망이다.

영 프로그램도 맘에 안들고 해서 붙잡아 놓고 첨부터 개발 과정과 전략을 소개했다.

그 복잡한거 다 빼고 뼈다귀와 소개하기 쉽게 큰 프로젝트의 

아주 조금 일부분을 떼어 여기로 가지고 왔다.

 

[개발 목표 규격]

   1. Arduino Uno보드로 FND[7 segmwnt ]1 켜기

   2. Switch 2개로 UP/down기능 실현

   3. Up0,1,2.. 9로 증가시키고 9이상은 증가 안함..

   4. Down9,8,7..0으로 다은되며 0에서 더 내려가지 않음

 

[개발하는 보드의 하드웨어/Schematic]




1998501918d8cfafc21e053eaa7f251f.png


    <회로도 사진> 


FND 연결 port 

 

FND 연결

 Arduino Pin

 Switch PIN

 Arduino Pin

 a

 D 13

Up Switch  

D 3

 b

 D 12

 Down Switch

D 2

 c

D 11

 

 

 d

 D 10

 

 

 e

D 9

 

 

 f

D 8

 

 

 g

D 7

 

 

 dp

D 6

 

 



[개발 순서]

   이런 회로 개발하라면 다짜고짜 회로와 펌웨개발하는 넘이 많다.  

전체 프로그램 작성하고 며칠 밤을 센다그래서 남이 보기에 

엄청 열씨미 프로그램하는 불쌍한 3-D업종에 근무하는 ..

   그래서 초보자에게 프로그램 방법을 5가지 스텝으로 잘라 

하드웨어 소프트웨어를  차례로 만들게 하였다. 오늘은 step 1


1. step1  - 회로도를 보고 빵판에 회로 실장하기   

2. Step2 - 일단 스위치 신호를 제대로 읽는 프로그램 작성하는게 제일 중요하다.


별도로 Timer 1 의 라이브러리 <TimerOne.h>을 추가하시길..


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
// Date Time : 2019-12-16 오전 10:41:59
// by Soo-yeub Yoo
//==============================================
#include <TimerOne.h>
/*7segmet Test by Shifting
fix SegmentsPins to fit for your Hardware */
//const int SegmentPins[8] ={13,12,11,10,9,8,7,6};
const int SegmentPins[8] ={12,11,7,9,10,13,8,6};
const int UpKey =3;
const int DnKey =2;
volatile boolean DnFlag=0;
volatile boolean UpFlag=0;
volatile byte CountUp=0;
volatile byte CountDn=0;
// the setup function runs once when you press reset 
// or power the board
void setup(){
  // initialize digital PIN 13~7 as an output.?
  for(int i=0i<8i++)
  {
    pinMode(SegmentPins[i],OUTPUT);// set each segment Pins as Output
  }
  // Pin 2 3 as Switch Input
  pinMode(UpKey,INPUT);
  pinMode(DnKey,INPUT);
  // Interrupt seting By Timer 1?
  Timer1.initialize(5000);
  // 5 mSec IRQ?Timer1.attachInterrupt(timerISR);
  Serial.begin(9600); pinMode(5,OUTPUT);
  //test
}
// the loop function runs over and over again forevervoid
loop(){
  digitalWrite(SegmentPins[3],UpFlag);
  digitalWrite(SegmentPins[0],DnFlag);
  //DnFlag=?digitalRead(DnKey);
  Serial.println(DnFlag);
}
//
void timerISR(){
  boolean inputU=1;
  byte inputD=1;
  inputDdigitalRead(DnKey);
  inputUdigitalRead(UpKey);
  //if(digitalRead(UpKey)==0)
  if(inputU==0){
    CountUp++;
    if(CountUp==4)UpFlag=1;
    if(CountUp>5)CountUp=5;
  } else{
    CountUp=0;
    UpFlag=0;
  }
  if(inputD==0){
    CountDn++;
    if(CountDn==4)DnFlag=1;
    if(CountDn>5)CountDn=5;
  } else{
    CountDn=0;
    DnFlag=0;
  }
}
// Nice to meet you!


0
0
이 글을 페이스북으로 퍼가기 이 글을 트위터로 퍼가기 이 글을 카카오스토리로 퍼가기 이 글을 밴드로 퍼가기

메이커 DIY

번호 제목 글쓴이 날짜 조회수
113 DIY 팀작업으로 아두이노 턴테이블 만들었습니다!! +2 표표 03-02 25,531
112 DIY 새로운 그림으로 새로운 프로젝트 - WEY20P0062 icon 청계천도사 02-24 24,542
111 DIY 새해시작은 지능지수 높이기 게임부터 - WEY20P0061 icon 청계천도사 02-15 23,712
110 DIY 아이들 완구만들고 있으니 즐겁습니다. 사파리 파크놀이입니다. - WEY20P0060 icon 청계천도사 02-11 24,758
109 DIY 점점 더 각인이 어려워 집니다. 슬럼프인가? - WEY20P0059 icon 청계천도사 02-11 24,671
108 DIY 얼굴 표정을 나타내기는 정말 어렵습니다. . - WEY20P0058 icon 청계천도사 02-08 25,089
107 DIY 오늘은 목이길어서 즐거운 짐승입니다. - WEY20P0057 icon 청계천도사 02-05 24,439
106 DIY 레이저 커터 오랫동안 접근 못했네요. - WEY20P0056 icon 청계천도사 02-04 24,026
105 DIY 순수 원목 도마를 만들기를 하고 았습니다. icon 청계천도사 01-28 22,756
104 DIY 오늘은 작업테이블을 만들었습니다. icon 청계천도사 01-28 23,670
103 DIY 보내주신 그림으로 유아용 목조완구 만들었습니다. (5) - WEY20P0055 icon 청계천도사 01-26 24,237
102 DIY 보내주신 그림을 작품으로 만들기로 하였습니다. (4편) - WEY20P0054 icon 청계천도사 01-26 24,305
101 DIY 보내주신 그림을 작품으로 만들기로 하였습니다. (3편) - WEY20P0053 icon 청계천도사 01-26 24,107
100 DIY 보내주신 그림을 작품으로 만들기로 하였습니다. (2편) - WEY20P0052 icon 청계천도사 01-26 23,961
99 DIY 보내주신 그림을 작품으로 만들기로 하였습니다. - WEY20P0051 icon 청계천도사 01-24 24,490
98 DIY 부엉이 선생님의 모습입니다. . - WEY20P0050 icon 청계천도사 01-15 24,651
97 DIY 오 ~~ 헬캣이다. - WEY20P0049 icon 청계천도사 01-15 23,047
96 DIY 까마귀 아줌마의 방문을 받았습니다.. - WEY20P0048 icon 청계천도사 01-13 23,833
95 DIY 귀여운거 악어가 헬 메이커네 집으로 옵니다. - WEY20P0047 icon 청계천도사 01-13 24,034
94 DIY 으메 귀여운거 악어가 맞나요? - WEY20P0046 icon 청계천도사 01-12 24,140