전체 글
-
[AVR] CLCD 내부구조 및 핀설명 / WH1602B-YYH-JT#AVR study 2013. 1. 29. 15:56
이번 포스팅에선 CLCD의 내부구조와 함께 제가 구매한 CLCD의 데이터시트를 바탕으로 간단한 LCD 제어 헤더파일을 작성해보도록 하겠습니다. ♠LCD의 내부구조 및 핀 설명 위의 블럭도가 LCD의 구조를 가장 잘 표현해주고 있습니다. 좌측에 블럭 안으로 들어오는 화살표들은 LCD의 pinout을 나타냅니다. 아래 표에 더 자세히 정리했습니다. 1,2번핀 : LCD마다 조금씩 차이가 있지만 대체로 1번핀은 Vss 혹은 GND이고 2번핀은 5V Vcc전원입니다. 3번핀 : VEE 또는 Vo라고 많이 표시하며 LCD에 표시되는 글씨의 Contrast를 결정하는 핀 입니다. 좌측과 같이 Vo(VEE) 핀에 가변저항을 연결해서 LCD의 글씨밝기를 조정할 수 있습니다. 이 때 중요한 것은 가변저항을 사용하는것입니..
-
필요에의해서 급조한 브레드보드용 전원공급 변환기판전자공작 2013. 1. 28. 11:48
AVR스터디하는데 컴퓨터 USB포트의 전원을 사용하는게 얼마나 위험한지 알게 되었습니다. 일부 메인보드는 800mA까지도 지원가능하지만, 기본적으로 컴퓨터의 USB전원은 기본적으로 최대 500mA까지만 사용가능합니다. 따라서 그 이상의 전류를 사용할 경우에 메인보드에 과전류가 흘러서 USB전원부에 있는 모듈에 손상이 갈 수도 있습니다. 좋은 메인보드는 USB에 과전류가 감지되었을 경우 윈도우에 경고 메세지를 띄우기도 합니다. 이러한 이유로 컴퓨터 USB전원을 통해 핸드폰 충전을 하면 0.5A * 5V = 2.5W 까지밖에 사용할 수가 없기 때문에 충전 속도가 느린 것입니다. 보통 스마트폰 충전기 어댑터는 5W짜리를 사용하는 경우가 많습니다. 컴퓨터 전원은 이것에 비해 딱 절반인 셈이죠. 물론 PC USB..
-
LCD란? LCD의 동작원리와 장단점AVR study 2013. 1. 27. 22:08
1. 액정이란? 액정은 광학적 이방성을 가지고 있어 전압이 가해지면 봉상 결정이 전계의 방향에 따라 분자 배열이 바뀌고 전압을 가하지 않으면 원래의 위치로 되돌아오는 성질을 가지는 물질을 말한다. 결정의 움직임에 따라 투과율이 변하는데 LCD는 이 성질을 이용하여 원하는 정보를 표시하는 장치이다. 자연 상태의 액정은 약 3,000여 종이 있지만 디스플레이로서 실용화 된 것은 네마틱, 스멕틱, 초레스틱이 있다. 이 세 액정의 성질은 다음과 같다. ▶ 연속체의 특성 (Twist) : 스프링처럼 어떤 한 점에 힘을 가하면 그 변형이 이웃 분자에도 영향을 미친다. ▶ 전기적 분극성 (Shutter) : 액정은 봉상형의 결정 모양을 가지므로 장축과 단축의 유전율에 따라 전압 인가시 일정한 방향을 가진다. ▶ 광학..
-
[AVR]타이머/카운터 - LED패턴 변화AVR study 2013. 1. 26. 00:42
LED패턴 8가지를 배열로 지정하고 switch 구문을 이용해서 LED 패턴의 변화를 주었습니다. #include #include volatile unsigned int cnt=0; // 타이머 발생 횟수 volatile unsigned int i=0; // pattern 배열 변수 unsigned char pattern[8] = {0x01, 0x03, 0x07, 0x0f, 0x1f, 0x3f, 0x7f, 0xff}; // pattern 8가지 종류 선언 ISR(TIMER0_OVF_vect) // 타이머0 오버플로 언터럽트 서비스루틴 { TCNT0=0x06; // 타이머/카운터 레지스터 6부터 시작 cnt++; //타이머 발생 횟수 1증가 //----------------------------------..
-
[AVR]타이머/카운터 - 정확히 1초 주기로 LED 점등AVR study 2013. 1. 26. 00:39
정확하게 1초 주기로 LED를 점등하는 영상입니다. 아이폰 스탑워치로 체크를 해보니 계속해서 오차없이 1초 주기로 점등하는것을 알 수 있었습니다. 좀 더 정확한 오차를 계산하기 위해선 오실로스코프가 필요할 것 같네요. #include #include volatile unsigned int cnt=0; // 타이머 발생 횟수 volatile unsigned int flag=0; ISR(TIMER0_OVF_vect) // 타이머0 오버플로 언터럽트 서비스루틴 { TCNT0=0x06; // 타이머/카운터 레지스터 6부터 시작 cnt++; //타이머 발생 횟수 1증가 if(cnt1000)&&(cnt2000) cnt=0; // 타이머 발생 2000번 이후에 발생 횟수 초기화 } int main(void) { TC..
-
꿈에 취해 사는사람들 vs 그들의 꿈을 응원하는 사람들나와 하는 이야기 2013. 1. 25. 22:54
음반이나 책의 맨 뒤에 있는 Thanks To 란에 수많은 사람들의 이름을 적어넣곤 합니다. 그 의미를 알게 된 오늘, 이런저런 생각이 드는 밤이네요. 오늘 전 알았습니다. 비록 자신의 꿈을 이루지 못하고 다른 삶을 살지라도, 그 꿈을 포기하지 않고 그들의 꿈들을 응원하고 사는 사람들이 얼마나 멋진 사람들인지를. 혹자는 얘기할지도 모르겠네요. 그건 패배자의 자기 위안일 뿐이라고. 그러나 자신의 경험을 거울삼아 후배들이 더 잘되길 바라는 마음은 그저 자신의 인생을 한탄하며 사는 것 보단 비교가 불가능할 정도로 훨씬 더 가치있는 삶이라는걸 뼈저리게 깨달았습니다. 세상이 좋고 멋진 방향으로 흘러가길 바라는 마음은 누구나 갖고 있지만, 그걸 사소한 삽질로 표현할 수 있는 사람. 그런 사람들 덕분에 이 사회의 온..
-
Atmega128의 타이머/카운터 및 관련 레지스터AVR study 2013. 1. 25. 13:23
ATmega 128의 타이머/카운터는 타이머/카운터0, 타이머/카운터1, 타이머/카운터2, 타이머/카운터3으로 총 4개가 있다. 이 타이머/카운터는 비트수에 따라서 분류하는것이 일반적이다. 8비트는 타이머/카운터0, 타이머/카운터2 이고 16비트는 타이머/카운터1, 타이머/카운터3 이다. 8비트 타이머와 16비트 타이머의 큰 차이점은 8비트 타이머는 0xFF까지 셀 수 있고, 16비트 타이머는 0xFFFF까지 셀 수 있기 때문에 계수의 범위가 늘어나고 저주파 발생이 가능하다는 점이 있다. 그 중에서 8비트 타이머/카운터0과 타이머/카운터2의 차이점은 외부클럭 입력을 받아들인다는 점에서 차이가 있다. 타이머/카운터 관련 레지스터 1. 타이머/카운터 제어 레지스터(Timer/Counter Control Re..
-
[2011-1학기]공학설계입문 자판기 Flow Chart 및 동전분류 알고리즘School Portfolio/2011_Sophomore 2013. 1. 23. 02:26
자판기의 동전 분류 전 과정을 나타내는 Block Diagram입니다. 1. 우선 동전이 들어오면 이물질 검사부터 실시합니다. 2. 이물질을 필터링하게 되면 그 다음 단계로 동전 분류를 하게 됩니다. 이 때 자판기 하단의 진동모터를 통해서 분류기를 흔들어주고 동전은 크기별로 각 층에 위치하게 됩니다. 3. 각 층에 위치하게 된 동전들이 위조 동전인지 아닌지를 판별하면서 동시에 동전의 개수가 몇개인지 측정합니다. 이 과정에서 각 층에 부착된 감압센서를 활용하여 동전의 무게 데이터를 자판기로 보냅니다. ☞ 만일 위조 동전이 감지되었을 경우에는 진짜 동전과 위조 동전 모두를 반환합니다. 4. 위조 동전이 없다는 것이 판명되었으면 파악된 동전의 개수와 종류 데이터를 통해 동전의 총 금액을 계산합니다. 5. 이 ..