https://blog.naver.com/newbongman/223247111419
... 교수의 APP-07 : 시리얼 통신
... 교수의 APP-07 : Serial Comm. ▶ Lab01_Serial ▶ Lab02_Serial2LED ▶ Lab03_Serial2...
blog.naver.com
// C++ code
//
void setup() {
Serial.begin(9600);
Serial.print("\n (Choi Dong Hun) Serial Comm. \n\n ");
}
void loop() {
int N = 0;
for (N = 1; N < 10; N++) {
Serial.print(N);
Serial.println(" - Long live ChoiDongHun !!");
}
for (N = 1; N < 10; N++) {
Serial.print(" -> ");
delay(500);
}
Serial.println();
}
Long live ChoiDongHun 9번 출력되고 화살표 10번 출력한 다음 다시 반복되는 코드
void setup() {
Serial.begin(9600);
for (int P = 2; P < 7; P++) {
pinMode(P, OUTPUT);
}
Serial.print("\n (NewBongMan) Serial to LED\n\n ");
}
void loop() {
char X = Serial.read();
if ((X >= '0') && (X <= '9')) {
Serial.println(X);
}
if (X == '2') { digitalWrite(2, HIGH); }
if (X == '3') { digitalWrite(3, HIGH); }
if (X == '4') { digitalWrite(4, HIGH); }
if (X == '5') { digitalWrite(5, HIGH); }
if (X == '6') { digitalWrite(6, HIGH); }
if (X == '0') {
for (int P = 2; P < 7; P++) {
digitalWrite(P, LOW);
}
}
}
시리얼 모니터에 2,3,4,5,6 입력하면 숫자별로 정해진 LED의 불빛이 켜지고 0을 입력하면 모두 꺼진다.
https://www.youtube.com/watch?v=LMx1wvBVqoA
// C++ code
//
void setup() {
Serial.begin(9600);
for (int P = 2; P < 9; P++) {
pinMode(P, OUTPUT);
}
Serial.print("\n (NewBongMan) Serial to FND\n\n ");
}
void loop() {
char X = Serial.read(); // Serial 통신은 문자
if ((X >= '0') && (X <= '9')) {
Serial.print(" Input Number : ");
Serial.println(X);
disp(X - 48); // 문자를 숫자로
}
}
void CLS() { // FND 지우기
for (int X = 2; X < 9; X++) { digitalWrite(X, HIGH); }
}
void disp(int N) { // FND 에 숫자 표시
CLS();
switch (N) {
case 1: digitalWrite(3, LOW); digitalWrite(4, LOW); break;
case 2: digitalWrite(2, LOW); digitalWrite(3, LOW); digitalWrite(5, LOW); digitalWrite(6, LOW); digitalWrite(8, LOW); break;
case 3: digitalWrite(2, LOW); digitalWrite(3, LOW); digitalWrite(4, LOW); digitalWrite(5, LOW); digitalWrite(8, LOW); break;
case 4: digitalWrite(3, LOW); digitalWrite(4, LOW); digitalWrite(7, LOW); digitalWrite(8, LOW); break;
case 5: digitalWrite(2, LOW); digitalWrite(4, LOW); digitalWrite(5, LOW); digitalWrite(7, LOW); digitalWrite(8, LOW); break;
case 6: digitalWrite(2, LOW); digitalWrite(4, LOW); digitalWrite(5, LOW); digitalWrite(6, LOW); digitalWrite(7, LOW); digitalWrite(8, LOW); break;
case 7: digitalWrite(2, LOW); digitalWrite(3, LOW); digitalWrite(4, LOW); break;
case 8: digitalWrite(2, LOW); digitalWrite(3, LOW); digitalWrite(4, LOW); digitalWrite(5, LOW); digitalWrite(6, LOW); digitalWrite(7, LOW); digitalWrite(8, LOW); break;
case 9: digitalWrite(2, LOW); digitalWrite(3, LOW); digitalWrite(4, LOW); digitalWrite(5, LOW); digitalWrite(7, LOW); digitalWrite(8, LOW); break;
case 0: digitalWrite(2, LOW); digitalWrite(3, LOW); digitalWrite(4, LOW); digitalWrite(5, LOW); digitalWrite(6, LOW); digitalWrite(7, LOW); break;
}
}
시리얼 모니터에 입력한 숫자대로 7세그먼트에 출력된다.
void setup() {
Serial.begin(9600);
Serial.print("\n (Choi Dong Hun) Serial Comm. \n\n ");
}
void loop() {
int N = 0;
String name = "ChoiDongHun";
for (N = name.length(); N >=0; N--)
{
Serial.print(name[N]);
}
Serial.println();
for (N = 1; N < 10; N++) {
Serial.print(" -> ");
delay(500);
}
Serial.println();
}
이름 거꾸로 출력하기
'학교 > 스타트업모바일앱' 카테고리의 다른 글
유수봉 교수의 APP-08 (1) | 2023.11.02 |
---|---|
유수봉 교수의 APP - 중간보고서 (0) | 2023.10.26 |
유수봉 교수의 APP-06 (0) | 2023.10.19 |
유수봉 교수의 APP-05 (0) | 2023.10.12 |
유수봉 교수의 APP-04 (1) | 2023.10.05 |