'Hardware'에 해당되는 글 4건

  1. 2010.11.10 아두이노에서 AVR 사용하기 2
  2. 2010.10.23 아두이노 리눅스에서 사용하기 7
  3. 2010.09.13 NEXT-510UHP USB허브 구입기 10
  4. 2010.08.01 모니터를 사자 #1 6

아두이노에서 AVR 사용하기

Arduino를 조금 써보니깐 왠지 직접 못건드리니 찝찝하다....

C로 직접 건들여보면 더 좋을것 같아서  "AVR 처럼 사용가능하게 하는 방법" 을

구글에서 찾으니깐 다음과 같은 글이 나왔다...
http://www.javiervalcarce.eu/wiki/Program_Arduino_with_AVR-GCC
http://symbolx.org/robotics/107-arduinoavr-command-line-dev-environment

2번쩨 링크를 보면....예제소스도 있고, Makefile도 있겠다 싶어서 바로

#make;make upload

해봤으나 실패...

다음과 같은 오류가 떠버리고 더이상 진행되지 않는다.

avrdude: stk500_recv(): programmer is not responding

에러를 또 구글에서 찾아보니깐 다름과 같이 하면 된다구 하네. (역시 구글신은 모르는게 없엉....)

http://www.neuraladvance.com/2010/04/08/using-avrdude-with-the-arduino-duemilanove/

응? 거의 비슷한데.... 하다가 좀더 자세히 보니 upload할때 -b 플래그가 빠져있는것을 확인했다..

man페이지 보니깐 baudrate라고 한다...  업로드 속도 관련된듯하다 (이것도 구글이 갈켜줌...ㅋ)

그래서 최종으로 만들어진 Makefile.... 첫번째 링크의  Makefile과 유사하다.

CC=avr-gcc
CFLAGS=-Wall -Os -DF_CPU=$(F_CPU) -mmcu=$(MCU)
MCU=atmega168
F_CPU=16000000UL

OBJCOPY=avr-objcopy
BIN_FORMAT=ihex

# 통신포트 는 개인마다 다를수 있으므로 수동으로 설정 (arduino 의 그 통신포트를 그대로 사용)
PORT=/dev/ttyACM0
BAUD=19200
PROTOCOL=stk500v1
PART=$(MCU)

# 당연히 avrdude 가 설치되어 있어야 한다.
AVRDUDE=avrdude -F -V

RM=rm -f

.PHONY: all
all: main.hex

main.hex: main.elf

main.elf: main.s

# 소스파일명이 다르다면 변경해 주도록 한다.
main.s: main.c

.PHONY: clean
clean:
        $(RM) main.elf main.hex main.s

.PHONY: upload
upload: main.hex
        $(AVRDUDE) -c $(PROTOCOL) -p $(PART) -P $(PORT) -U flash:w:$<

%.elf: %.s ; $(CC) $(CFLAGS) -s -o $@ $<

%.s: %.c ; $(CC) $(CFLAGS) -S -o $@ $<

%.hex: %.elf ; $(OBJCOPY) -O $(BIN_FORMAT) -R .eeprom $< $@

그리고 다음 소스를 복사해서...

(첫번째 링크에 있는 소스와 같은 소스, 왔다가따 하기 귀찮아서 그냥 따로 붙여 넣었다)
/*
* LED 껌벅 껌벅 소스
*/

#include <avr/io.h>
#include <util/delay.h>

int main (void)
{
/* set PORTB for output*/
DDRB = 0xFF;

while (1) {
/* set PORTB.6 high */
PORTB = 0x20;

_delay_ms(1000);

/* set PORTB.6 low */
PORTB = 0x04;

_delay_ms(1000);
}

return 1;
}

실행하면... 뭐라고 메세지가 쭉 나오고 Arduino 보드에 반응이 나타날것이다

제대로 확인하고 싶으면 딜레이 속도를 조절해서 LED의 깜박임 속도를 보면 된다~

아 그리구 Arduino랑 AVR랑 핀 배열에 조금 차이가 있으니깐 꼭 한번 보자.

Arduino 소스를 AVR로 만들어볼때 유용할듯... 해봐야지...ㅋ

사용자 삽입 이미지
http://www.arduino.cc/en/Hacking/PinMapping168
http://techblog.textcube.com/156

어... 근데 이거 적다보니깐 다 어디서 배껴온거네 ㅋㅋㅋㅋ 내가 만든건 뭐냑 ㅋㅋㅋ



ps1; Makefile로 하는거니깐.... vim에서 이제 편하게 코딩이 가능하다 -_-v 자바 안녕~ 스케치 안녕~

ps2; avrdude로 하니깐 부트로더 툴체인 어쩌고 신경 안써서 편한거 같다.

3학년 임베디드 시간에 툴체인 설정하는거 생각하면 이건 축복이나 다름없다 (뭐 다르긴하다만)

ps3; 위에 적힌대로 말고, 그냥 Arduino Code를 외부 에디터로 사용하려면

다음과 같은 방법을 사용 하면 된다.

http://www.arduino.cc/en/uploads/Hacking/Makefile

난 시도는 해봤는데 이상하게 컴파일은 안되서 때려치웠음 -_-.....

'Hardware' 카테고리의 다른 글

아두이노 리눅스에서 사용하기  (7) 2010.10.23
NEXT-510UHP USB허브 구입기  (10) 2010.09.13
모니터를 사자 #1  (6) 2010.08.01

아두이노 리눅스에서 사용하기

내용과는 아무 상관없는 아두아노 IDE스샷... 그림이 있어야 좀 눈에 띄지 않겠어요? :D

사용자 삽입 이미지

1 장치를 켜고 USB에 연결, 다시한번 회로도에 맞게 되어있는지 확인


2 커널에서 다음을 모듈/커널에 장착해 넣는다 (어지간해선 일반유저는 이거 안건들여도 됨)

Device Drivers ---> [*]USB support --> [*/M] USB Modem (CDC ACM) support

Device Drivers ---> [*]USB support --> <*/M>USB Serial Coverter support --->

[*/M] USB FTDI Single Port Serial Driver

첫번째껀 아두아노에서  usb serial 통신을하기 위한 시리얼포드 설정이다

(윈도우의 COM PORT - 옛날에 모뎀쓸때 쓰던 포트)

보통 메뉴얼에 보면 /dev/ttyUSB*가 나온다고 하는데 다 그런건 아니다

/dev/ttyACM*이 나와도 정상이니깐 신경쓰지말고

뒤에 preferences.txt 파일 설정할때 조심만 하도록 하자

두번째껀 그냥 간단하게 아두이노 에서 사용하는 USB드라이버의 한 종류(FTDI) 라고 생각하면 된다

- 어쨋던 모듈에 신경쓰기 싫다고 하면 나처럼 다 커널안에 넣어버리는것도 한 방법이다.....

3. arduino 설치

- 보통 어지간한 배포판에는 거의다 포함 되어있기 때문에 별 걱정없이 걍 설치해주면 된다...

(적어도 아치, 우분투, 데비안엔 있는것은 확인했다)

아! 그리고 꼭 "32비트용 패키지 인지 64비트용 패키지인지" 확인하고 설치하도록 하자.

(이거때문에 내 황금같은 일요일을 날렸단 말이오!!! 겨우 이거가지고 ㅠㅠ)

이 비트는 지금 운영체제의 비트를 의미하는것이 아니다 - CPU임

32비트 CPU를 가진 컴퓨터라면, 32비트 패키지를 설치해주고,

64비트 CPU를 가진 컴퓨터라면 64비트를 설치하도록 하자

3. uucp그룹에 사용자를 추가히켜 준다.
gpasswd -a <YourID> uucp
4. ~/.arduino/preferences.txt에서

serial.port = /dev/ttyACM0 # 뭐 ttyUSB* 라면 그걸로 맞춰주면 된다

로 설정한다

5. arduino (스케치) 를 실행

Tools -> Board ->에 자신의 arduino모델을 선택

Tools -> Serial Port -> /dev/ttyACM0를 선택한다 (아마 선택되어 있을수도 있다)

- 이제 코드를 집어넣고 upload를 해보자. 스케치에서 작업하는 것은 여기까지

다시한번........Trubleshooting

1. 아두아노 스케치에서 Tool -> Serial Port가 회색인데?, 당근 /dev에 장치도 안올라오구 왜이럼?
- FTDI 모듈이 안잡혔거나, 커널에서 USB 시리얼 포트 설정이 안되서 그럼, 2번을 보셈

2. 컴파일은 잘되는데 업로드가 안되는?
- 다시한번 확인해보셈, 과연 패키지랑 님 시퓨랑 맞나.

ps; 참고로 내 모델은 Uno

이후에 외부 에디터(아마 Vim)에서 아두아노를 컴파일해서 업로드 하는 방법을 포스팅 할 예정
(솔까말 저기 아두이노 스케치로 에디팅하기 정말 불편하다...... 그래서......)


근데 그건 언제일까.......

'Hardware' 카테고리의 다른 글

아두이노에서 AVR 사용하기  (2) 2010.11.10
NEXT-510UHP USB허브 구입기  (10) 2010.09.13
모니터를 사자 #1  (6) 2010.08.01

NEXT-510UHP USB허브 구입기


사용자 삽입 이미지

이 모델... 이상하게 구글에서 쳐도 모델평이 별루 나온게 없군여..

그래서 제가 함써봄니다....

구입기먼저 시작합니다......

사실 요즘에 어지간한 컴터 제품들은 다 USB랑 통신을하게 만들어져 나오기때문에,

저도 사용하고 있는 장치가 많네요, 키보드, 마우스 부터 시작해서, 쿨러, 외장하드, 스피커, 외장 사운드 카드

가 기본적으로 물려있고.. 게다가 PMP도 있구여.. 가끔씩 아주 가끔씩 "USB  저장장치" 도 사용하기도 합니다.

그라다 보니 안그레도 노트북이라서 꽂을 영역(......) 이 적어서 4포트짜리 허브를 사용하고 있었는데...

사용하다보니, 소리가 적을떄 해드폰에서 화이트노이즈가 좀 많이........ 나더라구요....

다이렉트로 연결하면 소리가 제대로 나는걸로 봐서, USB전력 공급문제가 있다고 판단....

게다가 키보드도 바로 반응하지 않고...딜레이 생기는......

설상가상으로 허브도 선이 짧은거라 짜증나서 막 땡겨버렸더니만, 접촉불량이 되어버렸답니다.

그래서 머... "이번엔 외장 전원이 지원되는! 포트 많은! 허브를 골랐" 는데 그중에서 고른게 이넘입니다.

특징을 간단히 정리하자면

1. 10 포트!
설명이 필요 없죠?

2. 강한(?) 전원공급력 !!!!
6개만 사용할때는, 2.5인치 외장하드 3개 2개 연결해도 잘 작동된다는 포스팅을 본적이 있습니다.
그런데 과연 10개 다 사용하면 어떨까? ㅋㅋㅋㅋㅋㅋ

3.  변환 스위치가 달려있다!!!!
- 변환스위치가 뭐냐믄.... 포트 6개사용 <-> 포트 10개 사용 이렇게 모드(?)를 조절할수 있는 스위치에요.

위에서 칭찬(?)해 줬으니까, 자 이제 본격 제품까기에 들어갑니다.

강한(?) 전원공급력 (????), 변환 스위치가 달려있다 (????)

진실을 공개 합니당.
-10개 사용시에는 각 포트에  0.4A 전원공급,
- 6개  사용시에는 각 포트에  0.6A 전원공급
- 즉 10개 다 사용할때는, "2.5 외장하드", "헤드폰" 같이 전력 많이 먹는 장치를 사용하는데 문제가
있고,다른장치들(PMP 라던가)을 USB충전할때 시간이 꽤나 걸립니다
.
그니깐, 10개 사용할때는 외장 전원끌어오는 USB 허브 의미가 퇴색된다는......

스위치 이거 왜 달았는지 모르겠군여...

차리리 걍 8포트 풀전원으로 하지 외장전원 끌어오는데도, 전체 포트에 풀전원(0.5A) 지원이 안된다니.

이런 반 고자 USB 포트라늬... 말도 안된다고 어허허헣

아마 장삿속.... 인것 같다는 생각밖에는 안듭니다..

아무래도 사람들이 8포트! 보다는 "우리껀 10포트라는!" 이렇게 광고하면 더 혹할테니까요.

(그러니까, 과연 일반 유저가 10포트짜리 살까요?
이거 사는사람들이 다 어느정도 컴퓨터에 대해서 그나마 많이 아는 사람인데.....
어떻게 보면, 결국은 자기 꾀에 자기가 넘어간 꼴이 되버린 제품)

고로 파워유저들에가는 좀 않좋은말 좀 들을듯...  그냥 걍 풀전원 8포트 팔지............ 이게뭐임...

10포트 쓰게하려고 정상으로 더 쓸수있는 포트도 버려놨음....

머 그래도 깔끔해져서 보기는 좋네요~






PS: 원래 전 아무리 좋은 제품이라도 항상까니깐..... 어느정도 참고하시기 바랍니다.
이 제품도 저렇게 반 고자(......) 되는거만 빼면 그럭저럭...... 인가..? 배송비 합쳐서 3마넌 나갔는데; 가성비가?

PS2: 당근 USB허브는 OS관련없이 다 됩니다... 대체 USB허브에 "지원하는 OS" 적어 놓는 이유가 뭘까요?
설마 아직도 USB지원이 애매한 win98, ME 유저를 위해서?

PS3: 사실 이거 주문한지는 저번주 목요일인데.. 오늘 왔어요 -_-.... 추석기간이라서 바쁜가 봅니다.....

'Hardware' 카테고리의 다른 글

아두이노에서 AVR 사용하기  (2) 2010.11.10
아두이노 리눅스에서 사용하기  (7) 2010.10.23
모니터를 사자 #1  (6) 2010.08.01

모니터를 사자 #1

음.. 시간도 나고 해서...

저번달에 했던... 모니터 구하기 후기를 한번 적어보자 합니다...

뭐... 간단하게 "사면서 고려해야 할점" 을 한번 천천히 살펴보기로 하겠습니다.

크게 나눠보자면 다음정도 되겠네요.

1 어디에 사용할건가요?

2 TN패널 VS IPS 패널

3 대기업 VS 중소기업 (서비스 VS 저렴한 가격)

4 모니터 크기, 화면 비율 (16:9 ? 16:10?)

5 밝기 / 명암비 / 응답속도 / 소비전력 / 도트피치

6 부가기능 ( 틸딩 / 스위블 / 엘리베이터기능 / TV기능)

7 지원 포트 (HDMI, DVI, D-USB(RGB) ......)

8 어디서 사는지? 그리고 사고 나서는?

그럼 ......

1 어디에 사용할건가요?

이걸 왜 젤 먼저 적었나고 하면... "이게 제일 종요하기 때문입니다"

확실히 어디에 사용할지를 명확히 정해야.... 후회 하지 않으실겁니다..

그래픽 작업 (ex> 사진편집용, PC 게임용,  콘솔 게임용, 일반 사무용(문서, 웹서핑, 코딩),

멀티미디어 사용(영화  and 에니메이션),  TV시청, 등 이 있겠네요... 더이상은 기억안나요 ㅠ

일단 저기서... "적어도 1개" 정도는 확실히 정해 놓기를 권고합니다.

특히 여러개 선택하지는 마시고.. 적으면 적을수록 좋습니다.

왜 이게 중요한가하면... 이걸루 아래 조건을 맞춰볼거거든요..


2 TN패널 VS IPS 패널

패널 구별법: "180도", "광시야각", 이 말이 없으면 걍 TN이라고 보시면 됩니다....

머.......... 어려운 이야기는 안하겠습니다..간단하게 가죠..

일단 제일 중요한 문제는 (다아시겠지만) "시 야 각" 문제 입니다..

좌우 시야각은 일단 제쳐두고..... 상하 시야각이 문제죠..

일단 지금 쓰고 계신 모니터를 일어서서 보고 누워서 한번 보시길 바랍니다

(아 난 IPS인데 ㅋㅋㅋ 하지마셈 -_-....)

위에서 보면 밝아보이고, 아래에서 보면 어두워 보입니다.....

이게 일반적인 경우라면 문제가 발생하지 않지만...

모니터가 크고

아래서 내려다 보는 상황이면

"민감한 분이시라면 굉장히 문제가 많이 발생합니다"

특히 그래픽 작업하시는분이나....

앉아서 플스 돌리는 분

IPS 패널 좀 써보신분 (한 2달이상?)

(대부분 TN 패널을 욕하시는 분은 저 부류에 해당한다는 사실을 아셨으면 합니다......)

절대 TN패널은 구입하지 마시기 바랍니다. 제가 장담하는데 아마 후회하실 겁니다.

그런데....

"난 침대에 누워서 TV(대형 모니터일 경우 상당수가 TV지원을 합니다), 애니메이션이랑 영화 볼테닷"

하시는 분은 TN 패널이라고 해도 그럭저럭 볼만 합니다....

왜냐면 제가 지금 그러고 있거든요...  (거리 2.5 미터뒤, 높이 50센티, 27인치)

틸드 따로 조절안해도 정말 볼만합니다... 색 반전 별로 없어요.....

이외에 아무것도 해당되지 않으신분은 걍 무조건 TN 패널을 선택합시다

아 그리고 IPS패널은 아래와 같은 장/단점도 있으니 한번 읽어보세요.

1 "일단 갸격이 TN패널의 2배이상은 먹고 들어갑니다"
- 총알없으면 무조건 버로우 타야합니다. 못삽니다 ㅠ

2 밝기가 높은 경우가 많습니다

3 덕분에 졸라 덥습니다
- 방에서 쓰면 평균기온이 한 2~3도 올라갑니다 -_-
- 얼굴이 화끈 화끈
- 8월이 한창더울때죠? 여름엔 더 심하겠죠? 뭐 겨울엔 난로(......) 라고 보시면 되겠구요

4 물론 그 덕분에 전기먹는 하마입니다.
- 전기소비력은 TN의 거의 2배
- 컴터를 많이 할거라면 전기요금의 누진세도 생각해 보심이?

5 대기업 신제품이 (거의)없습니다
- 대기업거 사시려면 차라리 Tv를 알아보시는게 나으실겁니다
- IPS는 죄다 중소기업꺼라고 보시면 됩니다..... (패널말고 모니터)

6 밝기때문인진 몰라도 체감상으로는 IPS가 더 색감이 좋습니다
- 기술상 별 차이 없다는 분도 계십니다
- 여튼 제 기분상으로는 좀 차이 납니다. 확실히 화사해요.

7 앞에서도 적었지만 "시 야 각" 걱정은 할 필요가 없어요.
- IPS를 구입하는 궁극적인 이유겠죠.
- 이하 생략 (다 아니깐)


3 대기업(삼성, LG, 알파스캔(?)) VS 중소기업 (기타..)

머 이것도 결론 부터 말하자면 "사후 서비스" 문제 입니다....

대기업 모니터 드는데 사는 비용 = 중소기업 모니터 사는데 드는 비용 + 서비스

라고 해도 과언이 아닐정도입니다..

근데 문제는 컴터처럼 자기맘대로 막 가지고 놀기가 좀 힘들죠 (뭐 아시는분은 오픈패널 이러시겠지만)

그리고 조립도 힘들고, 당연히 수리도 여의치가 않습니다.

(사용자가 인버터 바꾸고, AD보드 바꾸고, 패널 변경하고 그럴순 없자나요 ㅠㅠ 할줄알면 오픈패널 장사하지; )

특히 중소기업은 뽑기운이 좀 있어야 하는데....

없으면 정말 ㅠㅠㅠㅠㅠㅠㅠ 밖에 할수 밖에 없다는 사실!..


모니터 한번 고장나서 AS 보내면 근 4~5일은 못씁니다..

 제가 집이 수원인데도 서울까지 AS 보내면 이정돕니다; 지방이면 어련하시겠어요......... 상상이... 가시나요...

하지만 대겹은 사람이 오죠 -_- 아니면 가져가서 수리하는데.. 적어도 저렇게 오래는 안걸리겠죠. AS센터가 많으니

그리고 반품하기도 쉽고....(상대적으로)

물건의 완성도도 확실히 대기업제품이 높습니다.. 뭔가 세심히 생각한다라는 느낌이 들어요

반대로 중소기업제품은 싼맛에 기능은 그럭저럭 돌아가게 만든 제품이 대부분입니다.

(알아요 알아! 가뭄에 콩나듯이 안그런 회사 제품도 있다는거.....

하지만 대부분 그런경향이 있다는 사실이라는건 테클 못걸걸요? 맞잖아요???

머 회사 운영도 중소기업이다 보니깐 힘든것도 알아요....

그러다보니 돈이 없으니까 대충 만들수 밖에 없고 힘든거 알긴 아는데.

계속 이런식으로 만들면 가면 갈수록 소비자에게 외면 받을수 밖에 없겠죠)

완성도는 ........... 포기하세요......... 그냥 "싼맛" 임

그래도 "화면 품질" 에 대해서는 그다지 차이가 없을겁니다 어짜피 다 패널은 LG나 삼성패널 쓰는곳이 마느니까요

씁........... 그냥 "등가교환의 법칙" 이라고 생각하시면 편함 ㅠㅠ.


4 모니터 크기, 화면 비율 (16:9 ? 16:10?)


인치는...

일단 새로 구입하실거니깐 적어도 22인치이상 구입하시길 바라구요. 왠만하면 24인치 이상 구하시는게

정답이라고 생각합니다... 대세(?)가 24인치이기도 하구요... 구태여 모니터 작은거 쓸 필요는 없죠

웹서핑, 문서용으로 사용하실거면 24인치 모니터,

TV기능, 코딩용(뭐 듀얼이 낫다는 분도 계십니다만), 멀티미디어용도로 사용하실거라면 26,27인치 모니터도

좋을거라고 생각합니다.....

제 27인치 모니터로 애니보는데 정말 죽이더군여... YS-ORIGIN돌리니깐 입이 떡벌어지고......  

정말 안해보셧으면 말을 하지마세요.....

아 그리고 해상도도 좀 살펴보고 골라주세요... 가끔가다가 이상한 해상도를 가진녀석이 좀 있습니다...
--------

모니터는 이제 "와이드가 대세" 인고로.. 따로 와이드니 뭐니 라는 오래된 이야기는 겉어 치우구요

(와이드)비율 이야기로 바로 들어가겠습니다.

거창한 이야기는 아니고... 단지 동영상볼때 "화면이 꽉 차나 안차나" 이 문제라고 보면 됩니다.

<16:9  :아래위 화면 짤림 없음, 동영상 재생시 화면 꽉참
- 24인치 기준으로 1920x1080>

<16:10 : 아래 위 검은 바가 남음, 대신 해상도가 높은경우가 많아, 더 넓은 화면을 볼수 있음
- 24인치 기준으로 1920x1200 짜리 >

길이가 길므로...... 나머지는 다음포스팅에~

'Hardware' 카테고리의 다른 글

아두이노에서 AVR 사용하기  (2) 2010.11.10
아두이노 리눅스에서 사용하기  (7) 2010.10.23
NEXT-510UHP USB허브 구입기  (10) 2010.09.13
prev 1 next