루덴스코드 Blog

인터넷에 이곳 저곳에 블로그니 카페니 홈피니 만들던 시절을 이제 정리하고 티스토리에 정착하기로 마음을 잡았다. 그리고 이곳은 전자공학, 로봇공학, 신호처리등의 전공과 관련된 분야로 특화하기로 한다.
글의 내용은 무작위로 쓰기보다는 일종의 흐름을 가지고 쓰려고 한다. 아마도 그때 그때 하는 어떤 주제를 가지고 글을 써야 겠지. 그러다보면 또 다른 글을 쓰게도 될 것 갈다, 그래도 어떤 주제에 주력하면서 글을 쓰는 것이 주제없이 방황하는 것보다는 나으리란 생각을 해 본다.

Electoy 는 앞으로 Season 별로 운영할 계획이다. 각 시즌은 8051, Mindstorms NXT, 영상처리, 등으로 나뉠 생각을 하고 있다. 별로 와서 봐주지도 않는 블로그에 왠 시즌? 이랄지 모르지만 그래도 이곳은 누가와서 보건 그렇지 않건, 개인적으로도 의미가 있는 공간으로 꾸밀 것이다. 어디서든지 볼수 있는 노트로 활용하는 것도 나쁘지 않겠지. 그러기위해서 정리가 필수이니만큼 시즌별 운영은 나름대로 이 블로그의 특성을 살릴수 있으리라 기대해 본다.

Electoy Season I 을 시작하다
http://electoy.tistory.com/32
JelicleLim (2007.11.22.)

Comment +0

사용자 삽입 이미지

WIRE STRIPPER 라는 공구다.
래핑와이어의 피복을 벗기는 도구이다.
이것이 없으면 거의 전선작업을 하기가 불가능할 정도...
괜찮은 것으로 구입하는 것이 좋다. 니퍼나 뺀찌로 피복을 벗기다가 이걸 사용한 뒤로는 인생이 즐거워진다. ^^

래핑와이어의 피복을 벗기는 WIRE STRIPPER
http://electoy.tistory.com/31
JelicleLim (2006.10.06)

Comment +0

굳이 볼 필요도 없는 내용이다. CD 넣고 순서대로 죽 따라가면 다 된다. ^^
행여나 하는 마음에 순서를 여기 차례대로 올려본다.

사용자 삽입 이미지

마인드스톰을 넣고 Autorun.exe 를 실행시키면 위와 같은 화면이 뜬다. 보통은 자동실행이 될것이다. 필자의 경우 자동실행이 번거로워서 현재 그 옵션을 꺼둔 상태다. 그래서 찾아가서 Autorun.exe 를 실행시켜야 했다. 당연히 여기서 English 를 누르면 진행된다.

more..


마인드스톰NXT CD설치 순서
http://electoy.tistory.com/20
JelicleLim(2007.11.20)

Comment +0

다른 블로그를 이용하고 있었지만, 전자쪽 로봇쪽 관련된 자료들을 한곳에 모아두고자 한다.
이곳은 그 용도로 사용하게 될 것이다.

마인드스톰 NXT, 로보틱스, 로봇 교육, 전자공학 취미공작, 8051, 논문리뷰, 기타 이와 관련된 자료들을 모아두는 곳으로 삼는다.

모든 자료는 꼭 필요한 경우를 제외하고는 스크랩한 자료를 올리지 않으며, 스스로 작성한 자료를 올리도록 한다.

이곳의 자료는 기본적으로 공학관 관련된 자료들이 올라가게 될 것이다.




Comment +0

전자관련 링크들이다. 인터넷에서 본 것인데, 제법 괜찮은 링크들이다. 이중 상당수는 현재 접속이 안되기는 한다.



((( 전원회로 )))




((( 기초자료 )))

 
정류 회로 :  직류 전원의 특성과 전압의 안정화 :  스위칭형 안정화 전원 회로 : 전원회로의 기초 설명.
 
Half-wave DC power supply :  Full-wave DC power supply :  Simple Zener-regulated power supply :
 
Rectification : 정류회로의 이론 설명.
 
POWER ELECTRONICS : (강) SMPS, RESONANT CONVERTER, SOFT SWITCHING CONVERTER, VARIABLE SMPS, ELECTRONIC BALLAST, POWER FACTOR CORRECTION, CLASS D AUDIO POWER AMP, THIN FILM INDUCTOR, MAGNETRON DRIVE CIRCUIT, PIEZO TRANSFORMER 등의 논문이 들어있다.
 
오존발생기용 전원장치 : 오존 발생용 고압 전원.
 
UPS란? : UPS의 개요 설명.
 
Embedded 5V-to-3.3V Voltage Regulator for Supplying Digital ICs in 3.3V CMOS Technology :
 
Supply-Voltage Migration, 5V to 3.3V :


((( 정전압 레귤레이터 )))

 
3단자 레귤레이터의 사용법 : 7805, 7812 등의 3단자 레귤레이터의 소개와 사용법.
 
Simple 5V power supply for digital circuits : 7805.
 
Variable Voltage Regulation : 가변전원회로. 7805.
 
Increasing Regulator Current : 낮은 레귤레이터 사용 시 출력 전류를 높이는 법.
 
12 Volt 30 Amp PSU : TIP2955. 7812.
 
Fast Charge Development System : LM317, 78L05, BQ2003.


((( 일반 전원 회로 )))

 
Variable Power Supply, 1 - 30V / 1.5A : 가변 전원회로. LM317사용.
 
Variable Power Supply : 가변전원회로. L200.
 
Transformerless Power Supply : 트랜스 없이 220V를 12V 20mA로 사용하기.
 
+/-12V -> +/-5V : LM317. 자세한 회로 설명.
 
Power Supply : LM317. 간단한 취미 생활용 다전원.
 
아마추어 무선사를 위한 안정성이 높고 효율적인 전원부 만들기 : 설명.
 
Variable DC Power Supply : Voltage range: 0.7 - 24V Current limiting range: 50mA - 2A
 
12 volts at 0.5 amp : 2N3053. 1N795.
 
L200 Regulator Circuit : L200 전원IC 사용법. 2A.
 
Rectification using a Gyrator Circuit :
 
Power supplier : 0~10V. 100mA
 
High Current Power Supply : 2N3055.
 
Power Supply : 1.2 - 30V / 5A 가변 전원회로. LM338K.
 
Car Converter for 12V to 9V : 자동차전원 12V를 9V로 변환하는 회로.
 
Over Voltage Protection : 과전압 보호 회로.
 
Fuse Monitor : 휴즈가 끊어진 것을 알려주는 회로.
 
Electronic Dazer : 전자충격기. 9V를 2000V로 승압.


((( 스위칭 전원회로: SMPS )))

 
SWITCHING POWER SUPPLY : 스위칭파워의 기초.
 
SMPS 회로 개요 : SMPS의 간단한 소개.
 
Switchmode Power Supply Reference Manual : (강) 스위칭파워의 이론과 설계노트.
 
+5V Switching regulator : LM2575. +7V~+40V로 +5V를. 자세한 회로 설명.
 
Switching Regulator : 5~30V, 5A. 자세한 회로 설명.
 
200W ATX PC POWER SUPPLY : TL494. LM393. PC용 스위칭파워 회로.
 
TNY264 Power Supply : 3W, (9V, 0.33A), 85.265VAC input. 스위칭 동작을 이해할 수있는 문서.


((( 부전압 : Negative Power )))

 
Negative Bias Output DC-to-DC Converters for Battery Operated Systems :
 
5V Input Converter Generates -30V at 80mA : MAX668.
 
+12V Input Converter Generates -165V at 100mA : MAX668.
 
15V Input Converter Generates -185V at 50mA : MAX668.


((( DC/DC & Inverter )))

 
DC-DC Converters For Battery-Operated Systems: Charge Pump or Switcher :
 
Get Pumped with TelCom's DC-DC Charge Pump Converters : TC7660.
 
DC-DC convertor ( 1.5 V to 9 V ) : 비안정 multivibrator 사용.
 
Boost converter controls 12V fan from 5V supply : DC 5V를 DC 12V로 변환하는 회로. UCC2805.
 
5V to 12V DC-DC Converter Solutions : DC 5V를 DC 12V로 변환하는 회로. LT1013. MAX761. MIC3172. SC1628.
 
Configure Low Cost Buck Converter for Boost Operation : DC 5V를 DC +/-12V로 변환하는 회로. SC1101.
 
Micropower DC/DC Converter Adjustable and Fixed 5V, 12V : LT1111을 이용한 DC-DC 변환 회로.
 
+5V로 +30V를 : 자세한 회로 설명. 간단하면서도 흥미로운 회로.
 
6V to 12V Converter : DC 6V를 AC 12V로 변환하는 회로.
 
Inverter Basics : 인버터의 기초 개념 설명.
 
12VDC To 120VAC Inverter : DC 12V를 AC 120V로 만드는 Inverter.
 
24 Volt DC to 110 Volt AC Inverter Introduction :


((( 충전회로 : Charge Circuits )))

 
자작 충전기 회로 : 미니카용.
 
겔형 전해액 납산 전지 충전기 : 자동차용. UC3906.
 
충전이 안되는 NiCd 배터리 회복장치+표준충전기 :
 
음.. 충전기를 만들어 봅시다 :
 
자동 충전기회로 (정전류/정전압 전환형) :
 
조(組)전지 및 충전회로 :
 
Car Battery Charger :
 
Temperature Controlled NICD charger :
 
GellCell Battery Charger :
 
Battery charger indicates rate of charge :
 
Nicad Battery Charger :
 
Battery-backup converter uses one NiCd cell :
 
Automatic 9-Volt Nicad Battery Charger :
 
Battery Monitor for 12V Lead-Acid : 12V 베터리의 충전상태 표시. LM3914.
 
Intelligent NiCd/NiMH Battery Charger - Construction Project : 16C711.


((( 사운드 )))




((( 기초자료 )))

 
The audio spectrum : 사람, 악기들의 주파수 대역.
 
Balancing Act : 오디오 기기간의 연결시 노이즈, 험 잡는법.
 
케이블과 앰프/스피커 연결 : 케이블의 L,C,R에 관련된 논문이군요.
 
자작공방 : 진공관 앰프 만들기 강좌와 관련지식 강의.
 
Sound propagation : 소리의 전달에 관한 이론.
 
analog recording of sound : 소리의 직접 저장방법.
 
Basics of Digital Recording : 소리의 디지틀화 저장방법.
 
스피커란 무엇인가 :  스피커란 무엇인가(2) :  스피커란 무엇인가(3) : 스피커에 관한 자세한 설명.
 
음을 만드는 원리 : 스피커에서 소리가 나는 원리를 그림으로 자세히 설명.
 
Car Audio 스피커에 대해서 :
 
speaker : 스피커를 그래피컬하게 설명.


((( 알람 )))

 
Electronic Canary : 1-TR.
 
Birdie Doorbell Ringer : 1-TR.
 
Personal Alarm : 2-TR. 아주 간단한 싸이렌 회로.
 
Intermittent alarm generator : 3-TR.
 
Transistor Organ : UJT.
 
Burglar alarm : OP 728.
 
Fridge door Alarm : 4060. 20초 이상 문이 열려있으면 알람.
 
One-IC two-tones Siren : 4093. Double tone Police sound, Single tone old ambulance sound
 
단속음 발생기 : NE555 타이머를 이용한 단속음 발생기.
 
POWER REMINDER BEEPER : 7414를 발진기로 사용.
 
DOORKNOB TOUCH ALARM : 4013B. 손잡이에 손이 닺기만하면 울리는...
 
Proximity alarm : 4049를 발진기로 사용.
 
SWEEPING TONE ALARM BEEPER : 4069를 발진기로 사용.
 
Bells ring Generator : 40106.
 
5 Zone Alarm System : CMOS IC들로 간단히 구성.
 
Novel Buzzer : 릴레이를 이용한 구식 버저 회로.
 
Metronome with Emphasized Beat :
 
Electronic Doorbell with Counter : HT-2811(벨 사운드 칩). 4026.
 
Gate Alarm : 4093.


((( 응용자료 )))

 
A PARADOXICAL SOUND SYNTHESIZER : 롬에다 사운드 데이터를 저장해 놓고.. 27C256. 4040.
 
RCA Theremin circuit : 진공관 엠프군요.
 
Simple Audio Surround Processor : This is a simple Surround Processor with the degital delay method. This audio processor is not using any special function ICs that difficult to get parsonaly, and desined in only general purpose ICs.
 
Digital Volume Control : DS1669 Digital Pot IC를 사용한 디지털 볼륨.
 
IC녹음 재생장치 : VMM02-020. 최대 20초 녹음 가능.
 
Computer Microphone : PC 사운드 카드에 사용할 수 있는 마이크 회로.
 
전자올겐 : 89C2051.
 
Mini Metronome : NE555. 아주 간단한.


((( MP3 )))

 
MP3 개요 : MP1, MP2, MP3, MP4와 MPEG의 일반적인 특징 설명.
 
생생한 음질 MP3제작 테크닉 : MP3 개요
 
MP3란 무엇인가? : MP3의 기본개요 설명.
 
Pocket-Sized MP3 player : AT90S8515. MAS3507D. DAC3550A. MP3 player 전체 제작 리소스.
 
Mp3PuBliC MW rev. B : PIC16C65a. MAS3507D. DAC3550A. MP3 player 전체 제작 리소스.
 
 
음성합성 이란? : 음성합성의 기초적인 노트가..
 
음성인식 : 음성인식에 괸한 내용이 와장창..
 
HMM을 이용한 화자 식별 보안시스템 : 등록된 화자의 음성만 인식하여 이를 바로 보안장치에 적용하는 시스템.
 
음성인식이란 무엇인가? :  음성인식 기술 : 음성인식에 괸한 전반적인 설명.
 
음성인식의 개요 : 음성인식의 개요 설명.


((( 주파수 )))


타이머 & 발진회로 & 카운터들을 모아놓음.


((( 타이머 )))

 
트랜지스터 타이머 : 약 1분.
 
디지탈 시계 : MSM5509(시계 IC). 2003. 4011.
 
Count-down timer : 74HC192. 74LS247. 아주 자세한 회로설명.
 
1 Second Time Base From Crystal Oscillator : 7414, 4040을 이용하여 1초를 만드는 회로.
 
28 LED Clock Timer : 7400, 7404, 4020, 4017, 74393, 74138. 로직 IC들을 이용하여 시분 LED에 시간을 나타냄.
 
Clock Controller V1.1 : 89C2051. FND.
 
5 minute watchdog timer : 4060.
 
camera shutter timer : ICM72421. 74C14. It has 8 time steps ranging from 0.35 seconds to 4 seconds.
 
Jogging Timer : 4093. 4060. 4017.


((( 발진회로 )))

 
발진 회로의 기초 : 발진 회로의 종류와 개요.
 
1. 발진 회로의 기초 : 발진 회로의 종류와 개요.
 
발진(IC type) :  발진(TR type) : 자세한 회로 설명. 각 부품 설명. 계산공식 설명.
 
구형파1 :  구형파2 :  삼각파 :  톱니파 :  Sine 파 :  Sine/Cosine 파 :
 
2. 사인파 발진 회로 : 동조형, 콜피츠와 하틀리, RC, 브리지형 RC, 수정 발진 회로의 소개.
 
Ⅶ. 펄스 회로 : 비안정, 단안정, 쌍안정 멀티바이브레이터의 소개.
 
micropower pulse generator : 4069.
 
clock generator : 4017.
 
Time Delay Relay : NE555. 0~20초 가변 딜레이.
 
도통 checker : 트랜지스터 발진회로이용.
 
The WavePulse - a DIY Wavemaker : LM3524.
 
Function Generator : 8038PCD, LF351. 20Hz ~ 200KHz.
 
38-kHz IR LED Circuit : 555. 적외선 다이오드를 발광시킨다.
 
20mHz Function Generator : MAX038. 주파수 발생기. MAX038.
 
Opamp Function Generator : OPAMP를 이용한 주파수 발생기. 6Hz ~ 7000Hz.
 
A high frequency generator (0 to 110MHz) : 주파수 발생기.
 
Function generator : This is a function generator that can generates 10Hz trough 20MHz in six ranges. Analog output can select one of any wave forms, sine, triangle or square. TTL output can select 50% fixed duty or variable pulse width.


((( 카운터 )))

 
7 Segment LED Counter : 74LS90, 74LS47. 들어오는 신호를 로직 IC로 카운트하여 FND켜기.
 
주파수 카운터 : 최고 측정 주파수는 SPG8651B, ICM7224, 74HC4052, 4030
 
Potable 500kHz 주파수 카운터 : 16F84.
 
4 Digit Auto Range 주파수 카운터 : 16F84.
 
4 digit decimal counter with LED : TC5053P. GL3P411. BCD 카운터.
 
주파수 주기 측정기 : AT90S8535. FND.
 
Frequency Counter : 주파수 측정. AT90S2313.
 
Frequency Meter : 프리스케일러를 이용하여 120MHz 까지 측정. 89C2051. MAX7219. FND * 8.
 
출입자카운터 : AT90S8535. 적외선 감지.
 
Honey Bee counter : 꿀벌 숫자 세기.


((( V/F & F/V 회로 )))

 
V/F Converter - AD537 : V/F응용. F/V응용.
 
Frequency-to-Voltage Needs : LM331. F/V 컨버터 회로 구성법.
 
VCO Based Sensors : VCO의 개요.
 
200MHz - 400MHz Voltage Controlled Oscillator : 주파수발진기(VCO)의 기본회로.


((( PLL )))

 
PLL : PLL의 기본 원리 설명.
 
What Exactly Is A PLL? : PLL에 관한 기본 개요 설명.
 
PLL -1 :  PLL -2 :  PLL -3 : 설명.
 
DDFS의 기술동향 : PLL은 피드백(feedback) 루프로 빠른 주파수 변환이 어려운 반면, direct digital frequency synthesizer (DDFS)는 피드백 루프 없이 고속으로 주파수 변환.


((( 표시장치 )))


표시장치관련 CRT, LCD, TV 등의 자료를 이곳에 정리한다.


((( 일반자료 )))

 
Display Devices : LED, FND, LCD 소자들에 대한 이론 설명.
 
전자 디스플레이 장치 : CRT, LCD등의 각종 표시장치들에 대한 개요, 설명.
 
디지털 혁명과 MPEG 기술 : MPEG 기술의 소개.
 
Video Primer - The CRT : CRT의 개요.
 
Game Boy Camera Parallel Port Interface : Game Boy용 카메라를 PC에서 동작시키기.
 
DVD SYSTEM : DVD에 대한 개략적인 소개.
 
DVD : Digital Video Disc : DVD에 대한 개략적인 소개.
 
 
CMOS Digital Image Sensors : CCD sensors, 랜즈 등 CCD카메라에 대한 관련자료.
 
CCD의 소개 : CCD 카메라에 관련된 상세한 자료.
 
Hi-Res CCD Camera Survey : CCD 카메라의 기본원리와 동작을 그림으로 설명.


((( LED )))

 
LED & 7-세그먼트 표시장치 이해 : (강) LED와 7-세그먼트의 사용법을 자세히 설명.
 
under voltage led flasher : 저전압 LED 깜빡이.
 
LED Flasher : 555를 이용한 LED 점멸.
 
Two-wire Lamp Flasher : LED 깜빡이.
 
LED 윙커 : 안정 멀티바이브레이터 응용.
 
신호발생기 : 74LS04를 사용, 약 500 Hz를 발진. 분주회로. LED 점등.
 
LED 깜빡이 : 98개의 LED를 번쩍번쩍. 4017. 555.
 
Bicycle back Safety Light : 자전거 안전 깜빡이.
 
Battery-powered Night Lamp : Ultra-low current drawing 1.5V battery supply

7-세그먼트 : FND
 
SPI Interface Big 7-Seg LED : 74595. ULN2003. 직렬 LED로 구현.
 
two 7 segment LEDs & switches interface : 89C2051.

도트매트릭스 & 전광판
 
LED MATRIX 자료 1 다운 :  LED MATRIX 자료 2 다운 : 전광판 회로.
 
전광판(Electronic Sign Board) : 전광판의 개념 상세설명.
 
도트매트릭스 : (16*16)*5 LED어레이 사용하기. 8031,8255.
 
PIC를 이용한 16X16 LED DOT MATRIX DISPLAY : 개발에 대한 설명만 있음.
 
회전식 전광판 제작 : PIC16F84. 자세한 설명.
 
Four Character 5 x 7 Alphanumeric Displays : HDSP-2301 LED 모듈 매뉴얼인데, 소스 볼만함.


((( TV & 영상처리 )))

 
영상방송 : (강) 영상방송의 전반적 설명. 텔레비젼 기초이론, NTSC 영상신호의 점검,,,
 
흑백텔레비젼의 원리 : 흑백텔레비젼의 기본적인 신호 구조.
 
복합NTSC 칼라영상신호 : NTSC 칼라영상의 기본적인 신호 구조.
 
세가지 컬러 TV 신호 규격 : 컬러 TV 신호 규격인 NTCS, PAL, SECAM의 간단한 소개.
 
NTSC / PAL : NTSC와 PAL 방식의 개요.
 
TV 구조도 : TV의 기본원리와 동작을 그림으로 설명.
 
BOB-I Genlock Character Overlay Board : TV 모니터에 문자를 출력하는 보드. 관련자료.
 
Color TV 관련 IC : STMicroelectronics. 관련 매뉴얼이 보기좋게 정리.
 
영상분석을 위한 에지의 검출 및 노이즈 제거 : 연구 논문.
 
 
영상 처리 이론과 실제 구현 : (강) BT829. 영상 처리에 관한 상당히 좋은 자료.
 
CCIR-601 : image format.
 
How to generate video signals in real-time using a PIC16F84 : PIC16F84로 TV에 글자표시하기.
 
Video Clock Superimposer : PIC16C711. 텔레비전에 시계 보이기.
 
VCR Pong : PIC16C711. 예전에 많이 하던 핑퐁게임.
 
NTSC S-video to VGA RGB conversion circuit : NTSC(TV,VCR,LD or DVD)신호를 VGA신호로 변환하는 회로.
 
superimposer : Its rsolution is 512x240 dots, monochrome, so that it can displays Kanji charactors. It is designed using only conventional parts.
 
NTSC video signal edge enhancement circuit :


((( VFD : Vacuum Fluorescent Display )))

 
A Guide to VFD Operation : VFD 기술의 개요.
 
Vacuum Fluorescent Display (VFD) : VFD 기술의 개요.
 
PIC Vacuum Fluorescent Display Interface : VFD 구동. 16C84. 4-LT-105Z.


((( LCD )))




((( 기초자료 )))

 
액정 디스플레이(LCD) 기술 : 개념 정리.
 
Introduction to Liquid Crystal Displays : LCD의 기본 구조 설명.
 
LCD 일반 : LCD 관련 기술자료.
 
6만 5,536 컬러 가진 Hitachi사의 단일 칩 STN 컬러 LCD 드라이버 :
 
Powertip Displays : Powertip에서 생산하는 LCD 모듈 리스트, 매뉴얼.
 
LCD PRODUCTS : 문자 LCD와 그래픽 LCD들을 사진으로 전시해서 보기좋음.
 
LCD 링크 정리 :


((( 응용자료 )))

 
Voltage Generating Circuits for LCD Contrast Control :
 
Circuit tricks increase LCD contrast :
 
DIRECT DRIVE OF LCD DISPLAYS : Z86L33.


((( 문자 LCD 모듈 )))

 
How to control a HD44780-based Character-LCD : 문자 LCD 소개,구조, 사용방법등 무지하게 상세함. 8051, PIC예제 포함.
 
문자형 LCD 표시 장치 이해 : 문자 LCD 소개
 
LCD 제어 : 문자 LCD 개요.
 
LCD Engineering Application Notes : 문자 LCD 소개, 구조 무지하게 상세함.
 
 
LCD & 8051 example : 80C51. 27C512. 8051에서 LCD 출력하기. 일반 LCD에 글자를 뿌리는 회로와 프로그램을 상세히 설명.
 
Hello World LCD Driver(4 bit data mode) : Hello World 문자 출력하기. AT90S2313.
 
Serial LCD display : serial 데이타를 받아서 LCD에 보이기. AT90S2313.
 
LCD-1 : LCD-2 : PIC16C54. 문자 LCD 사용법.
 
lcd1.bmp :  lcd.zip : PIC16C84를 사용한 LCD 테스트.
 
PIC16F84를 이용한 2 line LCD 제어 : PIC16F84. 16*2 문자 LCD의 기초적인 사용법 설명.
 
Serial LCD Controller : PIC16F84. 시리얼 LCD 모듈.
 
Using LCDs : PIC16C84를 이용한 LCD구동.
 
LCD의 기초 : PIC16F84를 이용한 LCD구동.
 
2-Wire LCD Interface : 74174를 이용해 문자 LCD 구동.
 
Interfacing Example - 16 Character x 2 Line LCD : PC 프린터 포트로 문자 LCD 구동.
 
LCD Project : PC 프린터 포트에 LCD(4*20)를 연결하여 표시.


((( 그래픽 LCD 모듈 )))

 
T6963C Controller based Displays : 그래픽 LCD 콘트롤러 T6963C 사용하기. 16C84.
 
Serial Graphic LCD Controller : PIC16F84. T6963을 이용한 (240x128) 그래픽 LCD 시리얼(RS-232) 모듈.
 
AN-005 - Interfacing Graphic LCD Modules to the DOS Stamp : T6963C(240 x 128 monochrome graphic).
 
HG12605-1.pdf : HG12605-2.pdf : 현대 128 *64 그래픽 LCD 매뉴얼


((( 8051,마이크로프로세서 자료)))
아스키 코드표:프로그래밍을 하다 보면 자주 아스키 코드표가 필요하다. 주로 쓰는 에디터나 아니면 별도의 프로그램에서 확인하기도 하는데 번거러운 거 같다. 책도 늘 곁에 두는 것이 아니라서 번거로운 거 같다. 이제 스캔해서 올려서 쓰니 언제 어디서라도 출력해서 쓸 수 있을 거 같다.
8051 외부 인터럽트
8051 타이머0, 타이머1 설정
http://control.cntc.ac.kr/cpu/ : 잘 정리된 프로세서 자료 및 질의응답
http://www.coy.pe.kr : 전자에 관한 각종자료
http://www.onechipworld.com
http://www.winbond.com.twhttp://www.mjmecha.wo.to : 명지대학교 기계공학과 STUDY GROUP.

((( 여러가지 )))

기초 작업 공구
회로도와 기본 부품의 소개
PCB와 부품 조립에 관한 정보


((( 여러가지 )))

 
AKEYS : 3*3 메트릭스 키를 아날로그로 받는 방법 기술.
 
Zener Diode Tester : 제너다이오드 테스터 회로.
 
NPN-PNP transistor tester : 트랜지스터 테스터 회로.
 
Speed-limit Alert : 4069. 4098. 과속경보.
 
Barn Door Tracker : SAA1027. 555.
 
Implementing a Calculator Using Peripherals Like a Keypad : 전자계산기. 8051. 4*4 Key Pad. LCD.
 
RCM710 ELECTRONIC SCALE : 87C552. 75176.
 
Chatter eliminator : 채터링 흡수 회로.
 
Electronic lock : 4022. 전자열쇠.
 
Metal detector uses single IC : 금속탐지기.
 
Digital Step-Km Counter : 만보기. 달릴때 걸음수 측정. 4093. 4024. 4026.
 
A Digital Multimeter Using the ADD3501 : 디지틀 멀티미터. ADD3501. DS75482.
 
Rain Detector : 비 감지 회로.
 
Alternating ON-OFF Control : 스위치를 누를때마다 ON/OFF 반복. 4069.
 
 
Remote Heart Rate & Breathing Rate Detection : 맥박 호흡 감지 장치.
 
경혈 자극 시스템 : 쑥뜸의 효능과 유사한 치료효과를 얻을 수 있는 경혈자극시스템이다.


((( 증폭회로 )))

 
1. 증폭 회로의 개요 :  2. 증폭 회로의 동작 :  3. 증폭 회로의 특성 : 트랜지스터 증폭 회로의 자세한 설명.
 
차동 증폭회로 : 차동 증폭회로의 기초이론 설명.


((( 파워 드라이브 회로 )))

 
솔레노이드 밸브 작동 원리 및 선정 방법 : 솔레노이드의 전반적인 설명.
 
Solenoid 구동회로 : DC24V. IRF510.
 
로직 IC로 릴레이 구동 : 로직 IC들의 출력을 알아보고, 릴레이를 구동 시키는 회로 몇 개 제시.
Transistor switch driving a relay : 트랜지스터로 릴레이를 구동 시키는 회로
24V relay를 8V-Vcc로 구동 :
 
300V PEAK TO PEAK SIGNAL GENERATOR : TTL신호를 +-150V로 변환.


((( 신호 변환 회로 )))

 
미분 회로 :  적분 회로 : 미 적분 회로를 그림으로 간략하게 설명.
 
미분 회로 : 그림 설명이 깔끔합니다.
 
filters : 필터의 동작을 그림으로 설명.
 
A Basic Introduction to Filters.Active, Passive, and Switched-Capacitor :
 
25Hz/30Hz Clock Source : 4011. 전원 주파수를 TTL 레벨로 변환.


((( ADC & DAC )))

 
ADC 강좌 : ADC 관련 이론적인 내용 설명.
 
실험 1 : 아날로그-디지탈 변환기 : 여러가지 변환법 소개.
 
A/D 변환기 & D/A 변환기 고찰 : ADC와 DAC의 기초적인 설명
 
ADC와 DAC 컨버터란 : ADC와 DAC의 기초적인 설명과 예제회로.
 
ADC와 DAC 자료 묶음 : ADC와 DAC 관련 자료, 소스 모음.
 
AD Convert : ADC0809의 사용법.
 
MiniLOGGER : 89C52. 89C2051. 628128. CA3162. 8-channel analog input
 
온도란? 습도란? : 온도 및 습도의 개요
 
RTD : RTD (Resistance Temperature Detectors : 온도저항체)의 개요
 
Thermistor : Thermistor의 개요
 
Thermocouple : Thermocoupler의 개요


 

((( 조명회로 )))

 fluorescent lamp : 형광등의 구조와 소개.
 
형광등 점등회로 : MC33157, MC33260.
 
소형 형광등 켜기 : 555. DC6V로 소형 형광등을 켜는 회로.
 
칼라 사운드 : 음악에 따라 조명이 번쩍거리는 회로.
 
백열등 조광기 : 40502(TRIAC). 빛 밝기 조절.
 네온등 켜기
 
3채널 스펙트럼 아날라이저 : 사운드를 빛으로 보여주는 회로. LM3900. AN6884(Bar Graph IC).
 
Dancing lights : 자세한 회로 설명.
 
Night Light Saver V5.0 : 89C2051.
 
만능조광기 : TB16B6C(트라이액).
 
Courtesy Light : 15초 딜레이 후 꺼지는 렘프.
 
9v powered xenon photoflash controller : 제논램프.


((( 레이저 )))

 
의학적 치료용 레이저 : |강|. 레이저 전반적 설명.
 
Timer Circuit for Tank Laser : NE556.





((( 항해 통신 장비 : GMDSS 6종 장비 포함)))


INMARSAT-C SES
MF/HF RADIO
VHF RADIO
Two-Way Radio Telephone
406MHz EPIRB
SART
NAVTEX RECEIVER
선내 유선 전화 시스템
Sound Emitter System
Time Controller HC7122Bell or Go기상도 팩시밀리Main SwitchBoard(MSB)와 Emergency SwitchBoard(ESB)의 일반What is NMEA-0183?


((( 전자관련 개인홈 )))


강현 : TurboC 강좌. 어셈블러 강좌. 8051, PIC.
 
고일한 : 우송대. FPGA 자료가 제법. HTML tag 모음표(깔끔). MAX+plus II
 
구자윤 : 음성인식 관련 논문자료. 로봇.
 
권기태 : RS-232, GPIB, Printer Port, 80C196에 관한 약간의 자료. 로봇 팔 좌표점 계산 프로그램 for Windows 소스.
 
권순형 : 공장자동화. SCADA. PLC 전반에 걸친 설명 자료. IsSpice를 이용한 회로설계. 네트워크, C++, ASP, JAVA에 대한 정리. RS-232. RS-422.
 
김기환 : 컴퓨터, 전자 기초. 8051, 통신기술 자료
 
김길겸 : 실험노트, 참고자료, 정보모음… 오목 조목 잘 꾸며져 있군요.
 
김낙현 : [말복이]. 로봇관련 읽을거리. 자료. 자작 로봇 사진이 전시되어 있군요..
 
김남식 : 8051, VHDL. 약간의 자료.
 
김동호 : [Pocket-bot]. 포킷에 들어갈만한 로봇을 목표로.. AVR 8515 사용.
 
김동호-2 : [Personal Robot Projects]. 전자관련 링크 약간.
 
김두호 : 기초 전기 이론, 시퀀스 제어, 전력전자, 디지털.
 
김만석 : MPU 강좌(한권의 책에 가까운 자료), basic, fortran, cobol 강의 자료.
 
김민수 : 신호처리, 음성인식 개괄적인 자료들이… C언어 노트.
 
김배성 : 마이크로 마우스. 다운로드자료 약간.
 
김봉춘 : 자료실 약간. C언어 강좌.
 
김상호 : 교사. 하드웨어, 소프트웨어 자료. 기초강의 자료.
 
김서광,허유미 : [돌과유미]. 전광판, 웹서버, 거버, 하드관련자료. 의학상식 게시판.
 
김수만 : 8051. C언어. 자료약간.
 
김수화 : 전자부품 강좌. 전자회로. 음성인식…
 
김승호 : 마이크로 마우스. 자료 약간.
 
김우현 : [우키의 AVR 세상]. AVR에 관련된 읽을거리와 자료들이…
 
김윤기 : [생활속의 인공지능과 로봇]. 로봇관련 강좌, 자료.
 
김일동 : 교사, 전자기초. 데이터 통신 기초 등의 강의 자료가 잘되어있음
 
김정화 : 교사. 전기 전자 기초이론이 그래픽컬하게 잘 정리되어 있음.
 
김준기 : [자치기]. MC68HC11에 관한 자료가 잘 정리되어있군요. 8051 자료도… 홈피가 무척 깔끔하군요.
 
김준호 : 약간의 자료.
 
김태영 : 전자관련 자료들이. 메인페이지에서 안으로 들어가려면 100초가 소요 되는군요. 참 특이합니다. 기다리기 지루하신 분은 주소 뒤에 /neon.html을 붙이시면..
 
김학세 : 각종 CPU공부방. ADuC812 강의 자료. 자료실.
 
김형욱 : [영상처리의 새 마당]. 화상처리. 문자인식. bluetooth source code 분석.
 
 
나성언 : [인터페이스 저널]. 읽을거리. 차량용 MP3 Player 제작기. 리눅스 부팅 설명.
 
노경식 : [전자공작실]. 전자기초. 전자부품. 회로도의 해석과 설계.
 
노세곤 : 로봇관련. 그래픽으로 도배를 해놓아서 속도 느린 사람은 깝깝 하군요. 별에도 관심이 많은듯.
 
 
도용태 : 교수, 연구 자료.
 
 
류수하 : VHDL, FGPA, DSP설계 관련.
 
류재철 : 로봇관련. 마이크로마우스 설계노트.
 
류정탁 : 교수. 논문리스트.
 
 
문윤석 : 음성인식, 디바이스 드라이버 관련 자료가 있군요.
 
 
박권서 : 8051, AVR 회로모음. 전자올겐, 디지털 온도계,도트매트릭스.
 
박귀홍 : PIC, AVR, OrCAD 관련 자료.
 
박상연-이호선 : 아가씨들 둘이서 로봇을 만드는 곳이군요. 로봇이야기.
 
박성열 : AVR 전문 홈. AVR 소개, 초보강좌. 자료.
 
박성준 : 교사. 8051 강좌. 성냥개비 퀴즈. 도서관링크.
 
박수영 : 자기학. 단위. 역사. 자기장 만드는법. 자성잉크. 자기센서. OP AMP.
 
박재욱 : C++. MP3. 약간의 자료.
 
박재훈 : 라인트레이서 사진.
 
박진식 : 무선 전력 전송, 자이로스코프,
 
박태운 : VHDL, ASIC 연구자료. MCU, ECC(Error Correction Code), JPEG, RTOS 구조, 설계.
 
박한 : 전자부품 도감. 정말 대단하군요. 개인이 구축했다고 하기에는 믿어지지 않을 만큼.
 
배성준 : AVR 전문. AVR 관련 자료 정리.
 
백남주 : 전자, 통신관련 자료들…
 
백한영 : PIC16F84A를 이용한 암로봇(ARM ROBOT) 소개. 회로, 소스제공.
 
복문수 : 로봇. 다운로드자료.
 
 
손진환 : 전자부품의 기초 지식
 
송영섭 : 8051, 디지털 노트.
 
신광식 : [WISY]. PIC, CPLD, OPAMP 강좌. 자료.
 
신동선 : 교사. 전자, 데이터통신, 부품 강의 자료가 잘 정리되어 있군요.
 
신동욱 : 물리학관련. 전자, 자기이론에대한 노트. VC++. VJ++.
 
신정순 : 전파, 전자, C 언어, AMP, HF등등 자료들을 깔끔하게 정리했군요.
 
 
안홍환 : 전자에 관한 기초지식. 컴퓨터 하드웨어정리.
 
양창우 : FPGA 관련 자료, 링크 제공.
 
엄연식 : [아이디어 뱅크]. mcs51,pic,avr,cygnal chip등의 관련 정보와 프로그램 소스등.
 
오민우 : 8051 자료.
 
오승찬 : PID제어 개념설명. 모터 속도제어. LM628을 이용한 프로그램.
 
오종인 : 음성인식. CDMA 자료.
 
유재식 : 마이크로 로봇. 자료약간.
 
윤경호 : 마이크로 마우스 입문자료, 기본소자
 
윤덕용 : 마이크로프로세서를 좋아하는 교수의 개인홈 페이지. Z80/8051/80C196KC/TMS320C3X/벡터제어 인버터에 대한 질답 게시판 운영.
 
윤성찬 : 자료약간. ALTERA 트래이닝 보드를 판매하는군요.
 
윤창진 : 로켓을 다루시는 분이군요. 80C196 자료가 약간.
 
윤호기 : 자료정리가 잘되어있군요. 소개의 글도 인상적이구요.
 
이광수 : 8051, ADSP2015, C 강좌. 자료.
 
이명철 : 마이크로 마우스. 강의 자료 약간. 컴파일러 다운로드.
 
이민아 : C강좌, 80c196kc 자료정리.
 
이상락 : C로 쓰는 ~ 시리즈의 저자. 유용한 링크들이 많군요.
 
이상희 : 전동기, 8255, 라인트레이서(ASM 소스) 노트.
 
이성호 : [PIC 를이용한 R/C, HAM 전자회로 모음집]. PIC 노트. PIC Writer 만들기.
 
이정재 : 로봇. DSP. 자료.
 
이종명 : 음성인식, 로봇. 약간의 자료.
 
이중근 : 약간의 자료.
 
이창화 : 약간의 자료.
 
이채원 : PIC 전문. 16F84 게시판 좋음. 자료실.
 
이치환 : CNC Drive. Digital HID Ballast. Motor Control.
 
이희문 : [PIC Project]. PIC 여러 회로와 소스 강의 노트. 전자기술에 연재했던 자료공개.
 
임남훈 : KAIST에서 주관한 과학 올림피아드 강좌 인용(로봇축구의 개요, 이론, C언어)
 
 
전종학 : 자료실이 굉장히 활성화 되어 있군요.
 
정낙희 : 소프트 & 하드 관련 노트. 읽을거리.
 
정동우 : 프린터포트, 일반제작강좌. 도스용 QBASIC으로 하드웨어 제어.
 
정영훈 : 디지털 공학 강의자료.
 
정완선 : 전기, 자기, 반도체, 음성합성 개략 소개.
 
정인수 : CDMA에 대하여. 통신관련에 대한 소개
 
정재영 : 기초 초고주파 강좌. 응용 관련 자료 제공.
 
정혁 : 전자관련 노트. 새소식. 읽을거리.
 
조성찬 : [곰돌이]. 전광판 회로, 프로그램. 형광시트. 각종 자료들이 오목조목 잘 꾸며져 있군요.
 
조현상 : 로보틱스, 인공지능, 전자공학 관련정보, NEURAL NETWORK, 카오스이론.
 
진상윤 : 마이크로 마우스. 전자부품 설명.
 
 
최경진 : 약간의 자료. 8051, 80196, KS88C0116 노트.
 
최기홍 : 로봇관련. R/C 모형. 자료실.
 
최민석 : 전자 부품들을 사진과 함께 설명한 자료.
 
최세일 : 부품, 설계 관련 자료. 세계 153개국 전원 사양 정리
 
최승욱 : [Zero-Nine's PIC World]. PIC관련 홈. CCS C사의 C 컴파일러 소개. PIC 소개 자료. 강좌 등등 자료가 많군요.
 
최유식 : 전자, 로봇관련 자료. C, VB 강의자료. 자료실.
 
최윤석 : VHDL, DSP 세미나자료. 8051, 6800 자료
 
최찬학 : 마이크로 마우스. 아주작은 마우스를 만들었군요. 이것에 대한 자료가 모두 공개되어있네요.
 
최창현 : [해니]. 로봇 자료. 주로 HWP로 되어있군요.
 
최춘식 : 가산기, 불대수등 디지털 공학 노트 정리가 깔끔하군요. PC간 랜연결. PC다루기 팁.
 
 
함광근 : [영구오빠]. 80196, 경혈, VB등의 자료,
 
홈영기 : 임베디드 시스템. RTOS. 펌웨어. 자료정리가 잘되어있군요.
 
황인출 : 목포대 전자공학과 조교, 인터페이스에 관한 소스 약간.

 
파일 포맷 : 각종 파일들의 포맷, 확장자, 형식, 파일변환등에 관한 정보와 자료제공.
 
BIONICS : 생체모방시스템. 로봇 관련.
 
choilee : 전자에 관한 기초 노트.
 
electronic widget : 전자부품, 장비, 로봇, GPS 등등 자료가 잘되어 있군요.
 
ene : [초등 전기와 전자]. 전기와 전자의 기초지식을 그래픽으로 설명.
 
jsyoon : 약간의 자료.
 
leenlim : : 소프트웨어 이론에 대한 전반적인 설명이 잘 되어 있음. 객체지향에 대한 노트도 잘 되어 있음.
 
Miren : 8051 소개. 8255. LCD.
 
sangjong : [영주네 집]. 전자공식, 스마트카드 리더 개발자.


((( 전자 유관 개인홈 )))


 권도윤 : 광운대. 정보통신기술, GSP, 디지털 카메라, LCD(정리가 잘되어 있군요). 용어해설.
 
권혁복 : 아마추어무선. 안테나 자료.
 
김기오 : [어셈러브]. PC용 어셈블러 스터디. 운영체제.
 
김동우 : CDMA, GSM, CDMA2000, WCDMA.
 
김영철 : [Korea PCB Designer Group]. PCB Artwork. 질답게시판 활성.
 
김욱재 : [PBX School]. 디지털 교환기 기술관련
 
김유진 : 스피커 자작 사이트. 스피커의 기초자료가 풍부.
 
김한태 : PCB Artwork. P-CAD 4.5~8.5 전문. 질답게시판 운영.
 
김활 : 차량항법, 교통지도, 위치추적. 고속도로 주행정보. CDMA.
 
김희철 : CDMA, GSM, PCS, WLL, IMT2000등 이동통신에 관련된 유용한 자료
 
류정상 : 다린정보. PCB. 무선모형(정리가 잘되어 있음). 컴퓨터에 관한 자료.
 
문경원 : PCB Artwork. PADS강의. OR-CAD.
 
박만곤 : 교수. SOFTWARE ENGINEERING, 시스템 분석 및 설계, 그룹웨어, 인트라넷등의 강의 자료.
 
송혁 : 디바이스 드라이버. 영상처리관련
 
신상열 : 교사, 전자계산학. 인터넷, 프로그램, 홈페이지 제작등의 컴퓨터 기초강의 자료가 상당하군요.
 
신종필 : 아마추어무선. 무선관련 전자보드 회로, 제작 설명.
 
윤종철 : RF관련. 엄청난 링크제공. 자료도 상당함.
 
이종현 : 스마트 안테나.
 
정수만 : UPS 관련 설명, 자료, AVR, ISO-9000, IGBT, 트랜스
 
조태승 : 플라스마, MPD Gun, PDP 관련 노트.
 
진흥석 : 음성인식. 영상처리 자료.
 
천재승 : 필터관련 홈페이지.
 
최무락 : 최적화에대한 좋은 자료.
 
최지원 : [네트워크 스쿨]. 네트워크 관련 기술 정리.
 
한성배 : 초고압수변전설비, 역률개선, 고조파 제거설비, 무효전력 보상장치 관련.
 
홍승준 : 음성인식. 자료. 질문 게시판운용.
 
 
풀그림 : RF Module, 무선통신기기. 무선통신 관련 개요 및 자료들이 깔끔하게 준비되어있군요.
 
Diy Audio : 진공관 엠프 관련. 링크 많음.
 
freeenergy : 공간에너지, 에너지에 관계된 기술적 개념 정리.
 
KIT HOUSE : 아마추어무선. 안테나 자료.
 
skyscraper : 리튬이온 전지에 관계된 전반적 내용


((( 유용한 홈 )))

 
류봉조 : 가상대학 인터넷 강의실. 물리에 관한 전반적인 내용 강의.
 
양인준 : 물리에 관한 전반적인 내용과 방대한 양을 매우 깔끔하게 정리 했군요.
 
이동준 : Java실험실. 기초 물리 개념을 Java를 이용하여 그래픽컬하게 설명.


((( LOGIC DATASHEET )))

74HC2444HC24574HC14574HC574

Comment +0

(보다 큰 그림을 원하시는 분은 그림을 클릭하시면 원래 크기로 보입니다.)

들고다니는 투명한 비닐같은 핸디파일안에 도트매트릭스를 넣어보았다.

어디 들고가서 8051로 할수 있는 것을 보여주려고 하는데 아무래도 이 도트매트릭스를 한번 보여주는게 나을 듯 하여 TY52 보드에 16*16 짜리 도트매트릭스를 결합하고, 전원은 아무래도 이동용이어야 하니까 전원아답타 12V 짜리에 내부에서 5V 로 만들어주는 것을 사용했다. ^^

사용자 삽입 이미지


책상이 지저분하다. ^^;

워낙에 정리 하고는 거리가 먼 성격이라... 대충~ 산다... ^^

그래도 할건 다 하니까... 가끔 책상 정리도 해야 하는데... 에구... 잘 보면 화면 오른쪽 아래에 돈도 찍혀 있다. ^^;

도트매트릭스 SLM1606M 이 박혀있고(나사로 고정), 그 바로 위에 TY52 보드를 작은 만등기판위에 붙여서 역시 나사로 고정시켜두었다. 만능기판에는 7805를 사용해서 아답타의 전압을 5V 로 바꾸는 회로가 들어있다. 이 회로 역시 게시판에 공개된 바로 그 회로다... ^^

조금 더 가까이에서 찍어 보았다. 디카라 흔들림에 주의해야 하는데, 삼각대를 사용하니 괜찮긴 한데, 매일 밤에 사진을 찍다보니 아무래도 색이 살지 않는다... ^^

확대

아답타를 꼽으면... 바로 작동한다. 이번에는 지난번과 약간 내용을 달리해보았다. 쓸데 없는 그림 조금 넣고.. 한글폰트를 조금 집어 넣었다. 아래쪽에 한글 출력도 된다. 물론 플래시롬이 8K 로 제한되어 있으니 한글 코드를 다 넣을수 없다. 그냥 내고 보고 싶은 것만 몇글자 넣으면 된다. ^^

이건 지난번에 보았던 것과 갈은 사인이다. 사실은 PC의 파워서플라이를 쓸때는 흔들림이 없었는데 아답타전원을 사용하니 LED 점등 수에 따라 약간의 흔들림이 발생한다. 아무래도 아답타의 전류가 부족한 듯 싶다. 그리고 시간이 조금 경과하면 7805가 상당히 뜨거워진다. 예상하고 방열판을 달아두기는 했지만 7805로 도트매트릭스 구동에 필요한 전류를 안정적으로 공급하기는 무리인 듯 싶다.

7805가 많이 사용되는 일반적인 5V 생성용 방법이기는 하지만 전문가들 사이에서는 그 효율성으로 인해 그다지 대우받지 못하고 있는 녀석이긴하다. 우선은 간단하니까 이걸로 만들어봤지만, 혹시 전류를 충분히 소비하는 회로를 만들게 된다면 그때는 7805 대신 다른 녀석을 사용해야 한다.

한글이 나온다. 인터넷에 잘 찾아보니 한글 폰트 추출기라는 것이 있었다. 그걸 사용해서 폰트를 얻고 그걸로 다시 도트매트릭스에서 사용할 수 있게 손으로 직접 (ㅜ.ㅜ) 코드를 수정했다... 귀찮은 작업이었다. 나중에 폰트 생성용 프로그램을 하나 만들까도 생각해 봤지만... (그럴려면 시간이 필요하다.. ^^;) 역시 해야 할 일이 많은 관계로 그건 다른 사람들이 할수 있도록 게으름을 부리기로 했다...

역시 하트는 언제봐도...^ ^  하지만 왠지 내가 만든 하트는 뭔가 부족한 느낌이 항상 .... ㅜ.ㅜ

한글 폰트 하나 더 보자...

이번에 꽃 모양...

사용자 삽입 이미지

이곳을 잘 보면 이제 TY52 보드와 도트매트릭스의 연결 부위가 보인다.

잘보면 전원은 잭으로 들어오고 있고, 두개의 플랫케이블이 TY52 보드와 1606M 매트릭스를 연결해 주고 있다. 오른쪽 전원선은 매트릭스로 들어가는 전원단자이다.


사용자 삽입 이미지

뚜껑을 닫고 밖에서 찍은 사진이다. 투명한 파일을 선택한 이유는 불투명화일인 경우 또 도트매트릭스의 크기에 맞게 창을 잘라서 만들어야 하는데, 그게 귀찮아서다... ^^

혹시 나중에 여자친구한테 이런거 선물하려면 (이런거 선물하는 것도 나쁘지는 않을듯.. 안에 자신만의 사랑의 고백을 넣어두면.... 집에 가서 아답타 꼽는 순간.... [우리 헤어져]이런 글 나오게 한번 해보면 어떨까? ^^; )


사용자 삽입 이미지

투명이라 TY52 보드의 불빛이 밖에서도 보인다. 누드PC도 있는데, 누드8051 이런건 어떨까? ^^


사용자 삽입 이미지

잘 보면 위쪽, 오른편에 잭이 있고, 그 앞에 4개의 다이오드가 보인다. 그리고 그 앝에 방열판에 장착된 7805가 있다. 콘덴서 말고는 특별한 것은 없고, 바로 TY52에서 나온 선을 박스에서 뽑아서 SLM1606M 으로 보내준다.

전원은 TY52 외에도 SLM1606M 으로 바로 간다. 오른쪽 아래편에 있는 단자는 SLM1606M 용 전원공급단자이다.

사용자 삽입 이미지

책상위에 세워두고 한컷... 반투명하니까 왠지 ... 차라리 완전 투명하거나 했으면 더 좋았을텐데...

그래도 우선은 이걸로 만족하자.. ^^

나중에 더 재미있는 장난감을 만들어보자.... ^^

Comment +0

16*16 DotMatrix 를 TY52 보드로 작동시킨다.

사용한 DotMatrix 는 삼성 SLM1606M 으로 현재는 SLM1608로 이름이 바뀌어 나온다. 내부적인 구동방식은 거의 동일하고 1606에서 사용되던 일부의 불필요한 기능을 제거했다.

따라서 1606을 사용하였지만 1608을 사용하듯이 사용하였다.

TY52 보드로 구동하였으면 처음 설정에 애를 먹었지만 현재는 그림으로 보듯이 잘 되고 있다.


사용자 삽입 이미지

TY52 보드의 P0 핀 8개를 사용하였다.

SLM1606M 은 파워 입력 단자(Con1), 밝기조절 단자(Con2), 데이타 입력 단자(Con3) 이렇게 세개의 컨넥터가 있다.

파워 입력은 5V 를 인가하게 되어 있으며, 밝기 조절을 위해서 SEL, BWR, BCLK 세개의 신호가 필요하다. 나머지 3개는 GND다. 데이타 입력을 위해서는 RED, GREEN, CLK, BRT, RST 이렇게 다섯개 신호가 필요하며 나머지 5개 핀은 GND 로 물려있다.

SLM1606M 의 데이타시트는 아래에 올려두었다.


SLM1606Mv31.pdf


외국의 경우, 종종 SLM1606M 의 데이타시트를 찾는 경우를 보았다. 오래된 자료라서 그런지 인터넷에 올라와 있지 않고 스캔된 것을 찾아서 올린다.

어쨌거나 SLM1606 또는 SLM1608 을 가지고 도트매트릭스 전광판 구동을 하는 사람은 참고하기 바란다.

회로도는 따로 첨부하지 않는다. 우선 8개 사용되는 핀을 그대로 P0 에서 빼다 썼고, 나머지는 프로그램안에서 해주면 된다.

소스는 조금 더 정리한 다음에 공개하기로 하다.

Comment +0

아래에 제가 짠 소스를 올려봅니다.
대충 돌아가니까 올리기는 하는데...
아직 뭔가 조금 이상한 부분이 남아 있습니다. ^^

SLM1606M 데이타시트에 있는 Con2 부분에 대한 제어가 아직 미짐쩍어서..
하지만 신경쓰지 않기로 했습니다. ^^

SLM1608 로 바뀌면서 아예 제가 미심쩍어하는 부분은 빼버렸더군요... ^^
그냥 1606을 1608처럼 사용하는 소스...

(여전히 한군데 약간 이상한 구석(버그)이 남아있는 프로그램입니다. ^^)
혹시 SLM1606 이나 1608 구하게 되시면 이 소스 이용해서 프로그램해 보세요. ^^
연결하는 법은 소스 맨 앞쪽에 나와 있습니다.



/* ========================================= */
/*                                           */
/*            DotMatrix LED                  */
/*                                           */
/*                                           */
/* ========================================= */

/* =========================================

    핀 연결 방법

     1. SLM1606M 의 핀 이름
    CON1 - 1 : GND
    CON1 - 2 : VCC (5V)

    CON2 - 1 : GND
    CON2 - 2 : SELECT
    CON2 - 3 : GND
    CON2 - 4 : BRT-WRIGHT
    CON2 - 5 : GND
    CON2 - 6 : BRT-CLOCK

    CON3 - 1 : GND
    CON3 - 2 : RED DATA
    CON3 - 3 : GND
    CON3 - 4 : GREEN DATA
    CON3 - 5 : GND
    CON3 - 6 : CLOCK
    CON3 - 7 : GND
    CON3 - 8 : BRIGHT
    CON3 - 9 : GND
    CON3 - 10: RESET


     2. TY52 보드와 SLM1606M 의 연결
    TY52보드 --+-- SLM1606M
    P0_0 --+-- Con3 의 2 : RED DATA
    P0_1 --+-- Con3 의 4 : GREEN DATA
    P0_2 --+-- Con3 의 6 : CLOCK
    P0_3 --+-- Con3 의 8 : BRIGHT
    P0_4 --+-- Con3 의 10: RESET
    P0_5 --+-- Con2 의 6 : BRT CLOCK
    P0_6 --+-- Con2 의 4 : BRT-LIGHT
    P0_7 --+-- Con2 의 2 : SELECT

  ========================================= */

#include <AT89X52.H>

#define RED                     P0_0
#define GREEN                   P0_1
#define CLK                     P0_2
#define BRT                     P0_3
#define RST                     P0_4
#define BCLK                    P0_5
#define BWR                     P0_6
#define SEL                     P0_7

#define reload_value    (256-50)
// CLK toggle period = 2 * (256-reload_value) cycles
// 1 Cycle 소요시간 : 24MHz/12 분주 => 0.0000005 sec (500ns = 0.5us)
// 1 Cycle 소요시간 : 24MHz/12 분주 * 2 * 50 => 0.00005 sec (50us)
// 1 Sec = 50us * 20,000 (회)
// #define reload_value         (256-200)
typedef unsigned char u08;

void delay(void);
void showtime(void);
void mdata(u08 c, unsigned char i, unsigned char j);
void init_led(void);
void init_brt(void);
void timer0_init(void);
void timer0_end(void);

unsigned int iTime;
u08 uMat=0;

code unsigned char mat[5][16][16] = {
    // Matrix 1
    {
    {2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2},
    {1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1},
    {1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1},
    {1, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 1},
    {1, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 1},
    {1, 0, 0, 0, 0, 2, 0, 0, 0, 0, 3, 0, 0, 0, 0, 1},
    {1, 0, 0, 0, 0, 0, 2, 0, 0, 3, 0, 0, 0, 0, 0, 1},
    {1, 0, 0, 0, 0, 0, 0, 2, 3, 0, 0, 0, 0, 0, 0, 1},
    {1, 0, 0, 0, 0, 0, 0, 3, 2, 0, 0, 0, 0, 0, 0, 1},
    {1, 0, 0, 0, 0, 0, 3, 0, 0, 2, 0, 0, 0, 0, 0, 1},
    {1, 0, 0, 0, 0, 3, 0, 0, 0, 0, 2, 0, 0, 0, 0, 1},
    {1, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 1},
    {1, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 1},
    {1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1},
    {1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1},
    {2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2},
    },

    // Matrix 2
    {
    {3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3},
    {0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0},
    {0, 2, 2, 2, 2, 1, 1, 2, 1, 1, 2, 2, 2, 2, 2, 0},
    {0, 2, 2, 2, 1, 2, 2, 1, 2, 2, 1, 2, 2, 2, 2, 0},
    {0, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 0},
    {0, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 0},
    {0, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 0},
    {0, 2, 2, 2, 1, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 0},
    {0, 2, 2, 2, 1, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 0},
    {0, 2, 2, 2, 2, 1, 2, 2, 2, 1, 2, 2, 2, 2, 2, 0},
    {0, 2, 2, 2, 2, 2, 1, 2, 1, 2, 2, 2, 2, 2, 2, 0},
    {0, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 0},
    {0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0},
    {0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0},
    {0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0},
    {3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3},
    },

    // Matrix 3
    {
    {0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0},
    {2, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 2},
    {0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
    {0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
    {0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 0},
    {0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1, 0, 0},
    {0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0},
    {0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0},
    {0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0},
    {0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0},
    {0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0},
    {0, 0, 0, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0},
    {0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0},
    {0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0},
    {2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2},
    {0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0},
    },

    // Matrix 4
    {
    {0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0},
    {1, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 1},
    {0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0},
    {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
    {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
    {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
    {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
    {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
    {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
    {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
    {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
    {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
    {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
    {0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0},
    {1, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 1},
    {0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0},
    },

    // Matrix 5
    {
    {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
    {0, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0},
    {0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0},
    {0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0},
    {0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0},
    {0, 1, 1, 1, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0},
    {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
    {0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 1, 1, 0, 0, 0},
    {0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0},
    {0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 1, 1, 1, 0, 0, 0},
    {0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0},
    {0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 3, 0, 2, 0},
    {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 2, 0, 2},
    {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 2},
    {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 2, 0},
    {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0},
    },

};

void mdata(u08 c, unsigned char i, unsigned char j){

    RED = mat[c][i][j] & 0x01;
    GREEN = (mat[c][i][j]>>1) & 0x01;
}

void showtime(void){
    unsigned char i;
    for(i=0;i<0xff;i++);
}

void delay(void){
    _asm
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
        nop
    _endasm;
}

void init_brt(void)
{
    unsigned char i;
    for(i=0;i<48;i++) {
        SEL = 1; BRT = 1; BWR = 1;
        RED = 1; GREEN = 1;
        BCLK = 1; BCLK = 0;
        }
}

void init_led(void){

    unsigned char i,j;

    timer0_end();

    if(uMat==4) uMat=0;
    else uMat++;

    RST = 0;       
    RST = 1;               
    RST = 0;               

    BRT = 0;               
    BRT = 1;               
    BRT = 0;               

    SEL = 1; BWR = 1;      
    BRT = 1;               
//      CLK = 1; CLK = 0;

    for(i=0;i<16;i++) {
        for(j=0;j<16;j++) {
            mdata(uMat,i,j);
            CLK = 1;
            CLK = 0;
        }              
        BRT = 0;
        showtime();
        BRT = 1;       
    }
    BRT = 0; SEL = 0;
    timer0_init();
}

void timer0_init(void) {
    TMOD &= 0xF0;   /* Timer 0 mode 0 with hardware gate */
    TMOD |= 0x0A;   /* GATE0=1; C/T0#=0; M10=1; M00=0; */
    TL0 = reload_value; /* init values */
    TH0 = reload_value; /* reload value */
    ET0=1;  /* enable timer0 interrupt */
    EA=1;   /* enable interrupts */
    TR0=1;  /* timer0 run */
}

void timer0_end(void) {
    ET0=0; /* enable timer0 interrupt */
    EA=0; /* enable interrupts */
    TR0=0; /* timer0 run */
}

void it_timer0(void) interrupt 1 using 1 /* interrupt address is 0x000b */
{
    TF0 = 0;     /* reset interrupt flag (already done by hardware)*/
    CLK = !CLK;  /* CLK toggle when interrupt. */
    iTime++;
}

void main(void){

    u08 uTime=0;
    iTime = 0;

    init_brt();

    timer0_init();

    while(1) {
        if(iTime > 20000) {
            P1_2 = !(P1_2);
            iTime = 0;
            uTime++;
            if(uTime>5) { init_led(); uTime=0; }
            }
    }

}

Comment +0

(보다 큰 그림을 원하시는 분은 그림을 클릭하시면 원래 크기로 보입니다.)

들고다니는 투명한 비닐같은 핸디파일안에 도트매트릭스를 넣어보았다.

어디 들고가서 8051로 할수 있는 것을 보여주려고 하는데 아무래도 이 도트매트릭스를 한번 보여주는게 나을 듯 하여 TY52 보드에 16*16 짜리 도트매트릭스를 결합하고, 전원은 아무래도 이동용이어야 하니까 전원아답타 12V 짜리에 내부에서 5V 로 만들어주는 것을 사용했다. ^^


책상이 지저분하다. ^^;

워낙에 정리 하고는 거리가 먼 성격이라... 대충~ 산다... ^^

그래도 할건 다 하니까... 가끔 책상 정리도 해야 하는데... 에구... 잘 보면 화면 오른쪽 아래에 돈도 찍혀 있다. ^^;

도트매트릭스 SLM1606M 이 박혀있고(나사로 고정), 그 바로 위에 TY52 보드를 작은 만등기판위에 붙여서 역시 나사로 고정시켜두었다. 만능기판에는 7805를 사용해서 아답타의 전압을 5V 로 바꾸는 회로가 들어있다. 이 회로 역시 게시판에 공개된 바로 그 회로다... ^^


조금 더 가까이에서 찍어 보았다. 디카라 흔들림에 주의해야 하는데, 삼각대를 사용하니 괜찮긴 한데, 매일 밤에 사진을 찍다보니 아무래도 색이 살지 않는다... ^^


아답타를 꼽으면... 바로 작동한다. 이번에는 지난번과 약간 내용을 달리해보았다. 쓸데 없는 그림 조금 넣고.. 한글폰트를 조금 집어 넣었다. 아래쪽에 한글 출력도 된다. 물론 플래시롬이 8K 로 제한되어 있으니 한글 코드를 다 넣을수 없다. 그냥 내고 보고 싶은 것만 몇글자 넣으면 된다. ^^


이건 지난번에 보았던 것과 갈은 사인이다. 사실은 PC의 파워서플라이를 쓸때는 흔들림이 없었는데 아답타전원을 사용하니 LED 점등 수에 따라 약간의 흔들림이 발생한다. 아무래도 아답타의 전류가 부족한 듯 싶다. 그리고 시간이 조금 경과하면 7805가 상당히 뜨거워진다. 예상하고 방열판을 달아두기는 했지만 7805로 도트매트릭스 구동에 필요한 전류를 안정적으로 공급하기는 무리인 듯 싶다.

7805가 많이 사용되는 일반적인 5V 생성용 방법이기는 하지만 전문가들 사이에서는 그 효율성으로 인해 그다지 대우받지 못하고 있는 녀석이긴하다. 우선은 간단하니까 이걸로 만들어봤지만, 혹시 전류를 충분히 소비하는 회로를 만들게 된다면 그때는 7805 대신 다른 녀석을 사용해야 한다.


한글이 나온다. 인터넷에 잘 찾아보니 한글 폰트 추출기라는 것이 있었다. 그걸 사용해서 폰트를 얻고 그걸로 다시 도트매트릭스에서 사용할 수 있게 손으로 직접 (ㅜ.ㅜ) 코드를 수정했다... 귀찮은 작업이었다. 나중에 폰트 생성용 프로그램을 하나 만들까도 생각해 봤지만... (그럴려면 시간이 필요하다.. ^^;) 역시 해야 할 일이 많은 관계로 그건 다른 사람들이 할수 있도록 게으름을 부리기로 했다...


역시 하트는 언제봐도...^ ^  하지만 왠지 내가 만든 하트는 뭔가 부족한 느낌이 항상 .... ㅜ.ㅜ


한글 폰트 하나 더 보자...


이번에 꽃 모양...


이곳을 잘 보면 이제 TY52 보드와 도트매트릭스의 연결 부위가 보인다.

잘보면 전원은 잭으로 들어오고 있고, 두개의 플랫케이블이 TY52 보드와 1606M 매트릭스를 연결해 주고 있다. 오른쪽 전원선은 매트릭스로 들어가는 전원단자이다.


뚜껑을 닫고 밖에서 찍은 사진이다. 투명한 파일을 선택한 이유는 불투명화일인 경우 또 도트매트릭스의 크기에 맞게 창을 잘라서 만들어야 하는데, 그게 귀찮아서다... ^^

혹시 나중에 여자친구한테 이런거 선물하려면 (이런거 선물하는 것도 나쁘지는 않을듯.. 안에 자신만의 사랑의 고백을 넣어두면.... 집에 가서 아답타 꼽는 순간.... [우리 헤어져]이런 글 나오게 한번 해보면 어떨까? ^^; )


투명이라 TY52 보드의 불빛이 밖에서도 보인다. 누드PC도 있는데, 누드8051 이런건 어떨까? ^^


잘 보면 위쪽, 오른편에 잭이 있고, 그 앞에 4개의 다이오드가 보인다. 그리고 그 앝에 방열판에 장착된 7805가 있다. 콘덴서 말고는 특별한 것은 없고, 바로 TY52에서 나온 선을 박스에서 뽑아서 SLM1606M 으로 보내준다.

전원은 TY52 외에도 SLM1606M 으로 바로 간다. 오른쪽 아래편에 있는 단자는 SLM1606M 용 전원공급단자이다.


책상위에 세워두고 한컷... 반투명하니까 왠지 ... 차라리 완전 투명하거나 했으면 더 좋았을텐데...
그래도 우선은 이걸로 만족하자.. ^^
나중에 더 재미있는 장난감을 만들어보자.... ^^

Comment +0

간단하게 이렇게 설명을시작해 보자...

예전에 필자는 286 컴퓨터를 사용했다. 그 컴퓨터는 당시로서는 (1990년) 고급 사양의 PC 였다. 최고급 PC가 386이던 시절이고, 학교내 전산실에는 XT 에 플로피 두장을 끼워넣고 프로그램하던 시절이었으니 286 에 하드 20메가면, 아주 부러워할만한 PC 였다.

하지만 세월이 지나고 지금은 286은 골동품상점에나 가야 볼수 있을 시절이 되었다. 사실 8051 이 8비트 컴퓨터라고 생각해도 된다. 그러면 XT 라고 불리던 것과 별로 차이가 없는 프로세서이기도 하다.

286에 윈도우XP를 설치한다고 생각해보자. 가능할까? ^^

우선 CPU가 지원을 못하니 설치가 안될것이고, 된다고 하더라도 워낙 느린 CPU (당시로는 빨랐겠지만, 지금의 관점에서 보면 굉장히 느린 놈이 되었다..) 다 보니 설치가 되도 프로그램 실행하는데 한시간쯤 걸릴게다.

결국은 XP 라는 운영체가가 가진 성능을 발휘하지 못하는 CPU라는 이야기다.

왜 이런말을 하는고 하니 도트 매트릭스로 전광판 같은 것을 만들어 보고 싶어하는 마음을 안고 8051로 프로그램해서 전광판을 보이고 싶다. 하지만 기본적으로 도트 매트릭스는 16*16 인 경우 256개의 LED를 순차적으로 하나씩(혹은 한 행씩) 켜고 끄는 작업을 반복해야만 한다. 그리고 그 간격이 매우 짧아야 256개의 LED가 한꺼번에 켜지고 꺼지는 것처럼 보일수 있는 것이다. 그 간격이 조금이라도 늘어지면 눈에 깜박이는 것이 보이게 된다.
 

이미지를 클릭하시면 원본크기로 보실수 있습니다.

 편의상 인터넷에서 구한 5*&짜리 도트 매트릭스이다. 8*8 짜리나 16*16 짜리도 이와 동일하다.

기본적으로 위와 같은 구조로 되어 있고, 여기에 불을 켜기 위해서는 .... (회발유를 붓고 성냥을 댕긴다? ^^;)

가로축 1-5 사이에 있는 1번에 +5V 를 넣고, 세로축 1-7 에 각각 0 또는 +5V 를 넣어서 첫번째 줄 1-7까지의 LED에 불을 켜면 된다. 그 다음 가로2번에 =5V, 세로 1-7에 0 또는 =5V를 각각 넣는다(물론 세로축에 달든 아니면 가로축에 달든 저항을 집어넣어줘야한다... 이건 당연한 거니까 설명안한다. 만약 이것도 잘 모르겠으면 도트 매트릭스로 뭘 해보겠다는 생각은 잠시 접어라.... 조금 더 공부한 다음에 다시 시도하는 것이 스스로의 정신건강에 좋다. ^^)

결론은 16*16 짜리 도트를 구동시키려면 16줄을 순차적으로 반복해서 신호를 넣어줘야 한다는 말이다. 만약 16*16 짜리 6개를 구동하겠다면? 역시 그에 합당한 회로를 설계할 수 있어야 하고(이거 해달라는 사람은 문제있는거다. ^^ 직접하든지 아니면 할수 있는 사람에게 설계를 맡기고 돈을 지불하든지 해야 하는 거다 ^^. 물론 간단한 회로들은 이미 책이나 인터넷에 많이 공개되서 돌아다니니 인터넷 검색을 잘해보면 원하는 정도의 회로는 쉽게 찾을수 있을 것이다), 프로그램할수 있어야 한다.

그리고 요즘 나오는 16*16 정도의 도트매트릭스는 보통 드라이브모듈을 장착하고 있는 경우가 많다. 필자가 만들어봤던 것도 드라이버모듈이 내장된 것이다. 물론 각각의 드라이버모듈은 다 틀리니까 자신이 구입한 것을 데이타시트를 보고 구동방법을 익혀야만 한다.

드라이버내장된 도트매트릭스는 아무래도 사용이 간편한다. 필자가 사용한 SLM1606M 의 경우 16*16 에 2 color 짜리 도트매트릭스다. 이건 LED 256개에 하나씩 정보를 전달한 다음 한꺼번에 켜고 끌수 있게 되어 있다. 그래서 필자는 별 어려움없이, 드라이버 사용법만 조금 더 신경을 쓰고 그냥 프로그램할수 있었다. 256개 LED에 들어갈 정보를 전달하는 동안 이전 정보에 따라 LED는 켜져 있다. 그리고 256개의 정보가 다 전달되면 다시 새로운 정보로 LED를 켜라는 명령을 주면 LED는 무리없이 새로운 정보로 불을 켜준다.

이정도면 8051로도 충분히 도트매트릭스를 여러개 구동할수도 있다. 여러개 구동하기 위해서는 역시 데이타이트를 잘 보면 뒷부분에 어떻게 해야 하는지가 잘 나온다. ^^

결론은...

8051로 도트 매트릭스를 구동해보고 싶다면, 속도가 조금 느린 프로세서이므로 가능하면 드라이버 모듈이 장착된 도트매트릭스를 구동해볼 것을 권한다. 두번째로 그래도 16*16짜리 핀이 나온것을 써야 한다면... 그나마 TY52 보드는 24MHz 의 크리스탈을 사용하므로 11.05.. 짜리보다 두배이상의 속도가 나온다. 1개 정도는 무리없이 C로도 프로그램할 수 있을 것이다. 2개 이상의 모듈을 사용하고 싶다면, 우선 C로 프로그램해보고, 혹시 깜박이는 것이 느껴지면 구동부분의 어셈블러를 사용해서 최적화해야한다. 사실 이부분은 조금 힘든 부분이 될 것이다. 어셈블러는 계속 사용하는 사람의 입장에서는 별것이 아니지만 처음 써 보는 사람에게는 워낙 생소한 것이 되어놔서 말이다... ^^

Comment +0

LEGO Mindstorms NXT 의 전화선같이 생긴 케이블을 직접 만들어보고자 한다.
Cable 은 다음과 같은 모양이다.

사용자 삽입 이미지

왼편은 만들어진 것이고 오른편은 판매되고 있는 것이다. 생각보다 구별이 되지 않을 정도로 잘 만들었다.
그리고 전화에 사용되는 것중 RJ12-6P6C 의 모습은 다음과 같다.

사용자 삽입 이미지
사용자 삽입 이미지


이걸 대충 깍아서 위의 모양이 되도록 만들어야 한다. 사실 위의 커넥터는 2007년 부터 출시된 새로운 NXT 에서는 더 이상 사용되지 않을 모양이다. 하지만 가지고 있는 것이 초기모형이므로 이 작업을 해야 한다. 한편으로는 이 커넥터와 잭을 사용해서 다른 센서보드를 구성할 수 있으므로 개인적으로는 조금 불편하더라도 이 잭과 커넥터가 마음에 든다.

커넥터와 잭은 케이블을 판매하는 곳을 뒤져보니 곧 구입할 수 있었다. 단, 6P 짜리 전화선을 구하기가 어려웠다. 그래서 대용으로 플랫케이블을 대신 사용했다. 긴 거리의 신호라면 몰라도 가까운 거리의 신호정도라면 플랫케이블을 사용해도 그렇게 큰 무리는 없으리라는 판단이다. 플랫케이블의 선 간격은 딱 들어맞아서 마치 이 커넥터를 위한 선 같아 보일 정도다.

사용자 삽입 이미지


한쪽은 센서를 부착하는 PCB에 연결할 부분이다. 그 쪽은 위에 달린 후크를 제거할 필요는 없다. 반대쪽은 NXT Intelligent Brick 에 연결할 부분이고, 그 부분의 후크는 제거한다. 가능하다면 후크를 변형시켜서 다시 붙여주고 싶지만 시간상, 게으름상 그렇게 하지는 않았다. 제거된 후크에도 불구하고 연결부위는 헐겁지 않게 맞아들어간다. 왠만한 힘으로 억지로 꺼내지 않는 한 쉽게 제거될 것 같지는 않다.

다음은 실제 제작과정이다.


참조 : [Philo]

Mindstorms NXT 케이블 특징
http://electoy.tistory.com/6
JelicleLim (2007.11.09)

Comment +0

 
마인드스톰 프로그램 언어에 관한 기본자료


사용자 삽입 이미지

클릭하면 크게 볼수 있습니다.



사용자 삽입 이미지

클릭하면 크게 볼수 있습니다.


현재 이 외에도 MIT 에서 별도의 로봇프로그램을 위한 새로운 개념의 연구가 진행되고 있다고 한다. 현재 가능한 것들과 앞으로 얼마나 더 발전된 모습으로 로봇이라는 매카니즘에 적합한 프로그램 툴이 나올지 기대를 가져 본다.

P.S. 참고로 현재 C언어를 사용할 프로그램이 가능하면 다양한 개발툴들이 하나씩 개발자들에 의해서 드러나고 있는 상태이다. 위에 나온 도표는 공식적인 프로그램 툴에 관한 사항이며, 이 외에 일반 개발자들에 의한 다양한 형태의 프로그램 툴들이 나올 것으로 기대된다.


마인드스톰 NXT : 로봇 프로그램 툴
http://electoy.tistory.com/5
JelicleLim (2007.11.09)

Comment +0

사용자 삽입 이미지

마인드스톰의 센서들은 다양한 것을 측정할 수 있다. 왼편에서부터 Light Sensor, Ultrasonic Sensor, Sound Sensor, Touch Sensor 순서로 보여진다. 물론 이 외에도 또 다른 센서들을 구입할 수도 있으며, 필요에 따라 스스로 자작할 수도 있다. 필자는 여기에 적외선 센서를 추가하여 라인트레이서를 만들려고 하고 있다. 물론 Light Sensor 하나만으로도 라인트레이서가 가능하다. (어떻게 가능한지는 직접 마인드스톰 내부에 포함된 프로그램과 만드는 법을 참고하기 바란다). 다만 보다 정밀한 제어를 위해서는 보다 많은 정보를 가져와야 하고, 그것은 보다 많은 센서 입력을 필요로 한다는 것을 의미한다.

초음파 센서나 소리감지 센서등은 NXT 에서 처음 선보인 것이다. 사용 용도는 무척 많은 것으로 보이며, 여기에 적외선 센서를 추가하고, 또 카메라를 이용한 영상 센서를 추가해 보고자 한다.

또한 별도 구매 가능한 것으로 두가지 중요한 것이 있다. 하나는 블루투스 모듈이고, 또 다른 하나는 충전가능한 배터리 팩이다.

사용자 삽입 이미지
사용자 삽입 이미지


이제는 더 이상 건전지때문에 발을 구를 필요가 없다. 배터리팩을 구입해서 사용하면 충분히 비용 절감의 효과와 함께 안정적인 전원공급이 가능할 것이다. 또한 블루투스는 PC와의 연계된 제어나 네트웍이 가능해진다. NXT 간 통신도 가능하다. 즉, 여러개의 NXT 를 사용한 서브 모듈로 구성된 로봇들의 네트웍을 통해 어떠한 작업을 하는 것을 구성해 볼수 있다는 뜻이 된다.

아직 이 배터리팩과 블루투스는 없지만, 구입해서 사용해보려고 한다.

마인드스톰 NXT : Sensors + a
http://electoy.tistory.com/4
JelicleLim (2007.11.09)

Comment +0

사용자 삽입 이미지

HARDWARE (#9842) : Interactive Servo Motor

마인드스톰에는 회전센서(인코더)가 내장된 DC Interactive Servo Motor 가 사용된다. 이전의 RIS 에서는 별도로 회전센서가 있어야 했기에 다소 모터구동및 제어가 어려웠다. 하지만 회전센서가 내장된 모터는 제어프로그램을 훨씬 쉽게 만들수 있게 해 준다. 출력 1 포트와 입력 1 포트가 필요했던 RIS 에 비해 NXT 는 출력포트만으로 모터제어가 가능하게 한다. 단, 기어 유격으로 인해 정밀제어는 어렵다는 지적이 있다.
마인드스톰 자체가 정밀한 제어를 위한 로봇 매카니즘은 아닌 상태에서 정밀제어까지 바라는 것은 무리이다. 완구와 교구로서 사용 가능한 부분에 집중한다면 이 정도로도 상당한 발전을 보였다는 것이 개인적인 평이다.
사용자 삽입 이미지

사용자 삽입 이미지

")//]]>

사용자 삽입 이미지





마인드스톰 NXT : DC Servo Motor
http://electoy.tistory.com/3
JelicleLim (2007.11.09)

Comment +0

사용자 삽입 이미지
사용자 삽입 이미지

마인드스톰 Intelligent Brick 의 특징은 다음과 같다.

Technical specifications

32-bit ARM7 microcontroller
256 Kbytes FLASH, 64 Kbytes RAM
8-bit AVR microcontroller
4 Kbytes FLASH, 512 Byte RAM
Bluetooth wireless communication (Bluetooth Class II V2.0 compliant)
USB full speed port (12 Mbit/s)
4 input ports, 6-wire cable digital platform (One port includes a IEC 61158 Type 4/EN 50 170 compliant expansion port for future use)
3 output ports, 6-wire cable digital platform
100 x 64 pixel LCD graphical display
Loudspeaker - 8 kHz sound quality. Sound channel with 8-bit resolution and 2-16 KHz sample rate.
Power source: 6 AA batteries


위에서 보듯이 RIS 이후 NXT 로 업그레이드 되면서 8비트 마이크로프로세서가 32비트 ARM7 프로세서로 업그레이드 되었다. 이는 로봇을 사용하여 무엇을 하고자 하는 이들에게는 무척 고마운 일이다. 왠만한 연산은 감당이 된다. 플래시 메모리 256K 는 프로그램에 대해서 현재까지는 전혀 부족하지 않으며, 램 역시 64K 바이트의 크기라면 적당하다, 아니 충분하다!! AVR 을 보조 프로세서로 붙여서 두 프로세서를 통해 연산과 통신등을 나눠 하게 되어 있다. 또 적외선통신을 사용하던 RIS 와는 달리 이제 불루투스를 사용할 수 있게 되었다. USB 로 PC 와 연결이 되며, 4개의 입력포트와 3개의 모터 출력 포트를 가지고 있다. LCD 나 스피커도 사용하고자 하면 상당히 유용하게 사용할 수 있다. 기본으로 내장된 6AA 배터리 대신 옵션으로 추가할 수 있는 충전가능한 배터리팩을 이용하면 건전지 걱정을 하지 않아도 된다.

사용자 삽입 이미지


그리고 내부 회로를 아예 공개함으로 누구든지 프로그램이나 심지어 펌웨어등을 고쳐서 사용하고자 할때 가능하도록 되어 있다. 이는 지난 RIS 때의 내부 회로와 펌웨어를 Reverse Engineering 으로 추적해내고 그것을 기반으로 다양한 컴파일러와 펌웨어, 기타 어플리케이션을 만들어 내었던 경우를 고려한 것으로 보인다. 내부 회로도와 펌웨어를 공개함으로 오히려 고급 사용자층에 대해 용이한 접근을 가능하게 한 것으로 보인다. 다행이 회로도가 공개됨으로 센서들을 추가하거나 하는 일이 쉬워졌으며, 프로그램 및 제어등의 작업이 용이해 졌다.


마인드스톰 동영상 - LEGO Mindstorms NXTway-G Balancing Robot


마인드스톰 NXT : Intelligent Brick
http://electoy.tistory.com/2
JelicleLim (2007.11.09)

Comment +0

새롭게 나온 마인드스톰 NXT(Mindstorms NXT) 를 교구를 사용하는 방안을 생각하고 있다.
대학 혹은 고등학교에서의 로봇교육을 위해서 마인드스톰을 사용하는 것과 기타 다른 방안으로 마인드스톰을 사용하는 것을 함께 생각해 보도록 한다.

우선 마인드스톰 NXT 의 기본 정보를 올린다.

사용자 삽입 이미지


기본적으로 마인드스톰 NXT 는 레고에서 출시한 대단한 로봇교육용 키트다. 이것을 사용해서 이미 많은 대학들에서 교육을 위한 기본 도구로 사용하고 있다. 초중고등학교에서도 마인드스톰을 사용한 대회들이 열린다.

사용자 삽입 이미지


LEGO에서 출시된 로봇개발키트용 완구로 "무한한 창작성과 로봇공학의 매커니즘"이라는 광고문구가 붙어 있기도 하다. 마인드스톰 NXT는 블록과 로봇 컨트롤러로 이루어진 로봇 개발 킷(kit) 로2006년 새롭게 출시되어, 북미지역에 8월 1일 판매를 시작하였으며, 국내에서도 여러 곳을 통해 구할수 있다.

다양한 로봇 구현
519개의 각종 부품으로 구성된
마인드스톰 NXT를 활용하면 다양한
형태의 로봇을 직접 만들 수 있다.

32비트 ARM7 프로세서 사용
인텔리전트 브릭은 로봇의 두뇌 역할을 담당하는
핵심 부품으로 32비트 ARM7 마이크로프로세서로 동작한다

인텔리전트 브릭
인텔리전트 브릭(intelligent brick)이라 부르는 로봇 컨트롤러 블록은 로봇의 두뇌 역할을 담당하는 부분으로 프로그래밍된 내용에 따라 로봇의 행동을 제어하고, 각종 센서에서 수집된 정보를 분석한다.

인텔리전트 브릭에는 32비트의 ARM7 마이크로프로세서, 램과 플래시 메모리가 탑재되어 있다. 동작상태를 확인할 수 있는 모노 액정과 조작 버튼, 스피커 등도 들어가 있다. 센서 등을 연결하는 4개의 입력포트와 모터를 연결할 수 있는 3개의 출력포트도 인텔리전트 브릭의 일부분이다.

마인드스톰을 사용한 재미있는 동영상 하나


마인드스톰 NXT : 리뷰를 시작하며
http://electoy.tistory.com/1
JelicleLim (2007.11.09)

Comment +0