본문 바로가기

Arduino/AVR/0. 회로이론25

LCD command(제어 명령) 표 LCD 화면을 지우고 싶으면 D7~D0에 00000001 즉 0x01을 command로 보내면 됩니다. 위치 지정 명령은 1xxxxxxx 인데, 첫번째 줄은 0x80~0x8F, 두번째줄은 0xC0~CF 를 command로 보내면 됩니다. 2009. 6. 5.
pullup resistor(풀업저항), pulldown resistor(풀다운저항) 디지털 논리회로를 하면서 가장 처음 나를 괴롭힌것이 풀업저항과 풀다운저항이었습니다. 지금도 해깔리긴하지만 일단 정리하고자 글을 남깁니다. 디지털에서는 모두 알다시피 0(거짓,LOW)과 1(참,HIGH)만 존재하고 그 중간은 없습니다. TTL 레벨에서는 0~5v의 전압이 공급되는데 0v 는 거짓이고 5v는 참으로 인식합니다. 여기서 문제가 생기는데 2.5v는 참일까 거짓일까? 또는 회로와 아무 연결이 없는 (avr의)입력핀은 참일까 거짓일까? 이문제를 해결하기 위해 풀업과 풀다운 저항이 필요하게됩니다. 즉 회로가 연결이 안되어 있으면 잡음신호등으로 불안정한 값이 읽혀질수 있으므로 명시적으로 LOW 또는 HIGH 값을 주는 것입니다. 실제 사용예를 보겠습니다. 스위치를 눌렀을 경우 HIGH를 입력받고 싶은경.. 2009. 6. 1.
크리스탈(x-tal), 오실레이터(OSC), 레조네이터 오실레이터 = 레조네이이터(크리스탈, 세라믹, SAW필터등) + 발진회로 크리스탈은 수정을 얇게 짤르고, 여기에 전기적 신호를 넣어주면 수정편의 두께와 깍은 각도등에 의해 일정한 주파수로 진동을 하는데, 이진동주파수는 외부 환경(전압,온도,습도...)에 대해 아주 안정된 발진을 합니다. 안정도는 10^-6~10^-8정도, 10Mhz를 발진하면 1~10hz정도 오차발생. 크리스탈을 이용해도, 외부에 발진회로를 추가해야 하는데, 이런 번거러움을 없애기 위해 발진회로(트렌지스터 같은)와 크리스탈을 하나의 캔에 내장시켜 만든것이 오실레이터입니다. 오실레이터는 Vcc,Gnd ,Out 로 되어 있어 3~5v를 넣어주면 외부회로추가나 조정없이 clock을 꺼집어 낼수 있습니다. 사용하기 쉬운 만큼 가격은 조금 비싸죠.. 2009. 5. 26.
AVR-ISP 6핀, 10핀, JTAG ICE 포트란? ATMEL 사의 AVR(atmega시리즈)은 ISP(In System Programmer)를 사용하여 프로그램을 다운로드 하는데, 정품에서는 6핀을 사용한다. 6핀과 10핀 ISP는 핀배열만 다르고 같은핀에 GND만 3개 추가 되었다. JTAG ICE는 ISP처럼 프로그램도 다우로드 할수 있지만 디버깅 기능이 있는 포트로 프로그램과 연동하여 avr을 실시간 디버깅 하는데 사용한다. JTAG을 이용하면 회로를 다시 꾸미거나 프로그램을 다시 작성하지 않고도 않고도 AVR의 각 입출력 pin에 임의로 값을 설정할 수 있다. 2009. 5. 19.