Welcome to My World (www.dgmayor.com)

전체 글 341

13. 건전지 정리

지금으로부터 50여년 전인 1970년대 미국의 스탠리 휘팅엄 교수와 엑슨에 의해 리튬이온전지가 제안되었고, 이후 일본의 소니에 의해 리튬이온전지가 대량생산되었습니다. [출처] 위키백과 Chapter. 1 리튬이온배터리의 원리 ​ 배터리는 "양극(+)과 음극(-)간의 산화와 환원 반응으로 화학에너지를 전기에너지로 변환시키는 장치"입니다. 여기서 산화와 환원은 아주 작은 전자의 이동이며, 전자를 잃은 쪽을 산화 그리고 전자를 얻은 쪽을 환원이라고 하죠. ​ 산화: 전자를 잃음 환원: 전자를 얻음 ​ 화학전지 원리 [출처]전북사대부고 위의 그림에서 음극(-)에서 산화되면서 전자가 전선을 타고 이동하고 양극에서 음극으로 전류가 흐르게 됩니다. ​ 방전과 충전시의 전자의 이동 [출처: blog.naver.com/..

커넥션 풀... (원래 추가할 예정에 없었던 파트)

c, 자료구조, os랑 묶어서 파트를 두려고 하다가..... 데이터 베이스 대신 csv만 쓰려고 하였으나.... 하다 보니 결국 데이터 베이스를 쓰게 되었고, 그러다 보니 중복된 커넥션을 지울 필요가 있었다. 그래서 뒤 늦게 파트를 추가 하였는데.... 전에 글은 그냥 그대로 두기로 한다. 그리고 번호도 이제 왠만 하면 안 달려고 한다. DB Connection DB를 사용하기 위해 DB와 애플리케이션 간 통신을 할 수 있는 수단 DB Connection은 Database Driver와 Database 연결 정보를 담은 URL이 필요함 Java의 DB Connection은 JDBC를 주로 이용하는데, URL 타입을 사용함 DB Connection 구조 2Tier - 클라이언트로서의 자바 프로그램(JSP)..

5. PCB (Printed Circuit Board)란???

인쇄 회로 기판 위키백과, 우리 모두의 백과사전. 1983년 싱클레어 ZX 스펙트럼 컴퓨터 기판의 한 부분. 장착된 인쇄회로기판은, 어떤 실장된 전기부품과 전도 전선, 다른 면으로 통하는 홀을 보여주고 있다 전자공학에서 인쇄 회로 기판(印刷回路基板) 혹은 Printed Circuit Board(PCB, 피시비)는 저항기, 콘덴서, 집적 회로 등 전자 부품을 인쇄 배선판의 표면에 고정하고 부품 사이 구리 배선으로 연결해 전자 회로를 구성한 판이다. 기계적 지원에 사용되고 동 기판에서 비전도 "기판"으로 습식 식각한 전도선이나 신호 선을 사용하여 전기적으로 전자 부품을 연결한다. 대체 명칭으로 인쇄 와이어 본딩(PWB)과 식각 와이어 본딩으로도 불린다. 전자 부품이 "부착된" 보드는 인쇄 회로 조립(PCA)..

4. 아두이노 서보모터 제어하기

서보모터는 별도의 드라이버없이 아두이노의 라이브러리만 이용하여 동작시킬 수 있습니다. (엄밀히 말해서 서보모터 안에 컨트롤러가 들어있습니다.) 테스트에 사용한 서보모터는 'DGS-288'입니다. (참고 : 스카이홀릭 - DGS-288 - Digital Servo) 1. 서보 모터 동작 시키기 일단 서보모터를 연결해 봅시다. 1-1. 보드 구성 그냥 아두이노에 연결해도 됩니다. 전 포스팅을 하는 입장이라 다른 글과 비슷한 화면을 보여주기 위해 브레드보드를 사용한 것입니다. ServoMotor_001_001.fzz 1-2. 펌웨어 작성 서보모터는 라이브러리를 이용하면 간단하게 제어할 수 있습니다. #include int potPin = 0; int servoPin = 9; Servo servo; int nS..

3. 아두이노 포트 찾기

아두이노 보드를 우분투에 연결했는데......이놈 포트 이름이 뭐로 잡힌 거지 ㅡ,.ㅡ;;; 윈도우에서야 장치관리자를 통해서 보면 되는데 우분투에서 장치관리자 대용으로 내가 쓰는 프로그램에는 그런 정보가 전혀 나오질 않습니다;;; (참고 : [Ubuntu 12.xx] 장치관리는 어떻게 하지?) 결국 그냥 우분투에 아두이노를 연결하고 아두이노 프로그램을 설치해서 확인했습니다. ㅜㅜ 이게 뭥미;;; 여튼 구글링을 해보니 시리얼 포트정보는 'dmesg'를 해보면 안다고.... 그래서 해보니 리스트가 눈 돌아가게 나오내요 ㅎㅎㅎㅎ 스압 ㅡ.-;; 결국은 시리얼 포트가 잡히면 tty라는 이름이 붙어서 동작하게 되므로 'tty'가 포함된 포트를 검색하기위해 아래와 같이 명령어를 입력해 줍니다. 1 dmesg | g..

2. 아두이노와 라즈베리 파이의 차이점

[강좌 글. 라즈베리파이와 아두이노의 차이점] 많은분들이 아두이노와 라즈베리파이를 두고 어느 것을 선택해야할지 고민합니다. 이 글에서는 이런 고민을 해결하기위해 아두이노(Arduino)와 라즈베리파이(Raspberrypi)의 차이점에 대해 구체적으로 알아보도록 하겠습니다. 출처 [메카솔루션] http://Mechasolution.com [라즈베리파이와 아두이노 비교하기] 여러분들은 프로젝트의 진행을 위해 보드를 필요로합니다. 그 중 가장 유명한것이 바로 아두이노와 라즈베리파이입니다. [아두이노 우노 R3 정품] [라즈베리파이2 B Model] 크기로 보나 구성(회로기판, 칩, 입출력 단자)으로 보나 언뜻 보기에 둘은 아주 비슷해보입니다. 하지만 둘은 명확한 차이점을 가지고 있습니다. 과연 어떤것들일까요?..

4. html 색상 표

홈페이지 제작에 필수인 색상코드입니다. 2가지가 준비 되었으니 간편하게, 또는 정밀한 색상을 찾아 보세요. 직접 색상을 찾을려면 네이버 색상 팔레트를 클릭해 주세요. 순서 : 검정 - 회색 - 파랑 - 녹색 - 노랑 - 브라운 - 오렌지 - 레즈 - 분홍색 - 자색 코드색상 # 000000 검은 # 0C090A 밤 # 2C3539 건메탈 # 2B1B17 한밤중 # 34282C 숯 # 25383C 다크 슬레이트 그레이 # 3B3131 기름 # 413839 검은 고양이 # 3D3C3A 이리듐 # 463E3F 블랙 뱀장어 # 4C4646 블랙 암소 # 504A4B 회색 늑대 # 565051 뱀파이어 회색 # 5C5858 회색 돌고래 # 625D5D 탄소 회색 # 666362 애쉬 그레이 # 6D6968 흐린 ..

34. 이클립스에서 실수로 지운 파일 복구

이클립스에서 프로젝트 진행시 파일을 실수로 삭제하거나 이건에 작성한 파일로 복원이 필요한 경우가 생긴다. 이럴경우는 해당 파일의 상위 폴더에 오른쪽 버튼을 누르고 Restore from Local History...를 누른다 원하는 파일 클릭 후 원하는 복구 날짜를 선택해 복구하면 된다. 다 배운줄 알았는데, 가면 갈 수록 새로운 기능이 나오는 것인지;; 내가 몰랐던 것인지;; 어쨌든 덕분에 살았다.

3. html 폰트 크기 조정

지난 시간에는 인라인 방식으로 글자 크기(font size)를 정해 보았습니다. 인라인 방식은 각 HTML 태그에 style 속성을 입력하는 방식입니다. 예를 들어 어떤 단락의 글자 크기를 20px로 바꾸고 싶다면, 을 쓰면 됩니다. 같은 방식으로 오늘은 글자색(color)을 지정해 보도록 하겠습니다. 색 표현 방식 컴퓨터는 어떻게 색을 표현할까요? 컴퓨터에서 여러 가지 색깔은 빛의 삼원색인 빨강(red), 초록(green), 파랑(blue) 3가지 색의 조합으로 표현됩니다. 3가지 색 이름의 앞 글자를 따 RGB라고도 하지요. 각 색을 얼마만큼씩 섞었는지에 따라 화면 상에 보이는 색이 결정되는 것입니다. 하나의 색은 0~255까지 섞을 수 있습니다. ​ rgb(255, 0, 0)이라고 하면 빨강만 최대..

45. 자바 스프링버퍼 및 초기화 방식

처음 대학에 들어가 c언어를 배우면서 일상에서 쉽게 사용하던 문자열들이 굉장히 어렵게 처리했던것들이 기억난다. char형의 배열로 문자열형태를 만들고 제어했는데, 자바는 String 클래스 하나면 문자열을 저장하고 합치고 필요한 메소드를 사용해 제어가 가능하다. 불과 작년까지 String을 자바의 기본 자료형(primitive type)으로 착각하고 문자열처리는 String 클래스로만 가능할 것이라고 생각했던 것에 반성하며 String, StringBuffer, StringBuilder클래스에 대해 정리해본다. String String 클래스는 일단 변경 불가능한 클래스(immutable)이다. 쉽게 String클래스에 문자열을 넣어 사용하지만 실제로는 다른 언어처럼 char[] 배열 변수를 인스턴스 변..

44. 자바 InputStream & OutputStream 정리

데이터 입출력 프로그램에서는 데이터를 외부에서 읽고 다시 외부로 출력하는 작업이 빈번하게 일어납니다. 데이터는 사용자로부터 키보드, 마우스 등을 통해 입력될 수도 있고, 파일 또는 네트워크를 통해 입력될 수도 있습니다. 또 반대로 데이터를 사용자에게 모니터나 파일등으로 출력할수도 있습니다. 자바 입출력과 스트림(Stream) 자바에서 데이터는 스트림(Stream)을 통해 입출력 됩니다. 스트림은 단일 방향으로 연속적으로 흘러가는 것을 말하는데 물이 높은 곳에서 낮은곳으로 흐르듯이 데이터는 출발지에서 나와 도착지로 흘러간다는 개념입니다. 프로그램이 출발지냐 또는 도착지냐에 따라서 스트림의 종류가 결정되는데, 프로그램이 데이터를 입력받을 때에는 입력(InputStream)이라고 부릅니다. 입력스트림의 출발지..

1. 이클립스에서 c/c++ 개발하기

뭐 왠만하면 java만 배워도 다 쓸 수 있기야 하지만..... 커널 고칠 때도 gedit이면 충분하지만.... 그래도 자료구조 공부나 드라이버 때문에 c/c++을 연동해야 할 때가 있다. 그 때 참조용..... 이클립스로 딱 못하는거 두가지가.... 얕은 gui -> 님이 adt 만들면 된다. -X 애플의 스위프트랑.... 구글의 안드로이드.... -> 예전엔 되었는데.... 오라클 소송 때문에 없어진듯 하다... 아니면 말고.... 어쨌든..... marketplace에서 업데이트 해도 되고... Eclipse(이클립스)는 자바 전용 IDE? 자바를 공부할 때, 많은 서적에서 Eclipse(이클립스)는 JDK와 함께 필수 설치 프로그램으로 꼽힙니다. 비슷한 예로 C언어나 C++를 공부할 때에도 많은 ..

43. 자바 TextArea 정리 + 스크롤 넣기

TextArea는 여러 줄의 text를 입력하거나 보여줄 수 있는 편집가능한 컴포넌트이다. 그리고 스크롤바를 이용해서 실제화면에 보이는 것보다 많은 양의 text를 담을 수 있다. 메서드 또는 생성자 설명 TextArea(String text, int row, int col, int scrollbar) text – TextArea에 보여질 text를 지정한다. row – TextArea의 줄(row) 수를 지정한다. col – TextArea의 열(column) 수를 적는다. scrollbar – TextArea에 사용할 scrollbar의 종류와 사용여부지정. 아래의 4가지 값 중에서 하나를 선택 TextArea.SCROLLBARS_BOTH TextArea.SCROLLBARS_NONE TextArea...

5. 일요일 교보문고

읽어 보고 싶은 책이 너무 많다. 한 때 백수 때라던가는.... 책을 보려 해도 좋은 책이 없었다. 학교에서 배우는 것은 기껏해야 구구단 짜기, c언어 300제가 전부 였던거 같다. 한 학기에 c언어로 설치 배우고, 그 다음에 구구단 짜다가... 포인터 쯤 배우려 하면 학기 종료... 이 것은 대학 도서관이나 동네 도서관에서 더 심했었다. 그리고... 학교 졸업 하고 내 나름대로 머리가 트였다 자부하자.... 돈이 없어서 서버를 못사고 창업 떨어지고... 돈 좀 모른다고 알바 좀 뛰니 머리가 굳고.... 그라고 돌아 보니 수많은 성공한 사람들.... 그 때 내가 엄청 힘들게 알아낸 지식들이 엄청 체계적으로 꽂혀 있는데.... 나는 뭘 하는 놈인가 하는 생각도 들고..... ㅜㅠㅠㅠㅠ

42. 자바 콤보 박스 사용 예제

//150520 import java.awt.BorderLayout; import java.awt.FlowLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JComboBox; import javax.swing.JFrame; import javax.swing.JLabel; ​ ​ public class JComboBoxTest extends JFrame { //콤보박스에 나타낼 데이터를 배열에 저장합니다. ​ String rainbow[] = {"빨강색", "주황색", "노랑색", "초록색", "파랑색", "남색","보라색"}; ​ JComboBox combo; JLabel ms..