'Study'에 해당되는 글 31건

Study/Raspberry Pi2

[라즈베리파이] wiringPi 설치 및 예제



이번에는 라즈베리파이에서 C언어를 이용하여 프로그램을 작성할때 많이 쓰이는 wiringPi 설치방법에 대해 포스팅하려고 해요.

wiringPi는 C언어로 GPIO핀을 제어할 수 있는 기능을 제공하는 라이브러리. 정도로 설명할 수 있겠네요.


wiringPi를 github를 통해 다운받기 때문에, git-core 가 설치되어 있어야하는데요.

sudo apt-get install git-core 를 입력하여 설치하면 되요.


그다음 git clone git://git.drogon.net/wiringPi 를 입력하면 아래 그림과 같이 다운받아져요.

대소문자 구분을 하기 때문에, 주의해주세요.



위의 명령어로 다운받으면 해당 폴더를 통째로 복사해오기 때문에 홈디렉토리에 wiringPi 디렉토리가 생겨있는데요.

cd wiringPi 후 ./build 를 해주시면 자동으로 설치하게 되요.




제대로 설치가 된것을 확인하기 위해서

gpio -v

gpio readall

을 입력하여 아래와 같이 뜨는지 확인해보면 되겠습니다.




이렇게 wiringPi 설치는 끝!

cd ~ 를 입력해서 홈디렉토리로 돌아가면 되요.


이번엔 wiringPi를 이용하여 간단한 프로그램을 작성해보았어요.

2개의 GPIO 단자를 OUTPUT으로 설정하여, 1초 간격으로 ON/OFF 를 반복하는 예제인데요.



gcc -o test test-wiringPi.c -lwiringPi 를 입력하시면 test라는 이름으로 실행파일이 생성되요.

-lwiringPi는 라이브러리 링크..라고 하면 되려나 ㅎ


sudo ./test 를 입력하면 test 파일이 실행!


결과 사진은.. 없네요 ㅎㅎㅎㅎ;;;;

아무튼 이렇게 wiringPi도 설치하고 테스트 해보았습니다~


,
Study/Raspberry Pi2

[라즈베리파이] mysql 설치하기



라즈베리파이를 통해 데이터베이스를 사용하는 일이 많은데요.

보통 많은분들이 mysql을 사용하시더라구요.


전반기에 oracle 11g를 통해 데이터베이스 공부를 했던터라 그대로 써볼까.. 했지만

mysql을 쓰는분들이 많은듯해서 mysql을 설치해보기로 했어요.


패키지 정보 업데이트 : sudo apt-get update

패키지 설치 : sudo apt-get install 패키지명

패키지 제거 : sudo apt-get remove 패키지명

최신버전으로 업데이트 : sudo apt-get upgrade

앞에서 xrdp 설치를 할때 설명드렸던거지만, 한번 더 ㅋㅋ..

1) sudo apt-get update

2) sudo apt-get install mysql-server mysql-client

기존에 업데이트를 해두셨다면 2번 명령어만 실행하시면 되요.



약 90MB 사용한다는 군요.. 디스크 여유 공간을 확인하신 뒤에 설치를 계속~



root 계정의 비밀번호를 설정해줍니다.

OK 또는 Enter를 누르시면 한번 더 비밀번호를 입력해달라고 해요.



이렇게 설치가 다 되었네요. ^^

설치가 잘 되었는지 확인해봅시다.


mysql -u root -p

를 입력하시면 mysql의 root 계정으로 실행이 되요.

패스워드는 앞에서 설치할때 설정한 값이고, 

입력할 때 자신이 입력한 값이 보이지 않으니 당황하지 마세요. ㅎ



mysql > 이라고 표시되면 로그인 성공!


※ mysql 설정파일 수정 방법 ※

sudo nano /etc/mysql/my.cnf


※ mysql 시작 및 종료, 재시작 명령어 ※

service mysql start

service mysql stop

service mysql restart


※ mysql 설치 제거 명령어 ※

sudo apt-get remove --purge mysql-client mysql-server


,
Study/AVR ATmega128 Easy Processor Kit

5. AVR 개요 및 Easy Processor Kit 조사 및 LED 이론

이번 시간에는 AVR에 대한 간략한 개요와 실험장비인 Easy Processor Kit에 대해서 조사해 보겠습니다!!!



 - AVR에 대한 개요


AVR 시리즈 마이크로 컨트롤러는 1997년도에 처음 발표된 8비트 마이크로컨트롤러로서, Atmel사의 대표적인 컨트롤러입니다.


AVR은 Advanced Virtual RISC(Reduced Instruction Set Computer)의 약자이며, RISC 구조의 저전력 CMOS 8bit 마이크로 컨트롤러를 의미합니다.


- 마이크로 컨트롤러 구조

 - AVR의 주요특징

  • 각각 프로그램 메모리와 저장되는 데이터를 갖는 하버드 구조를 갖습니다. 프로그램을 영구적 또는 반 영구적인 메모리에 저장하고, 전압 스파크나 다른 악조건의 환경 요소에 의해 프로그램 메모리에 있는 프로그램이 지워지는 것으로부터 보호 가능하여 제어용 마이크로컨트롤러에서 많이 사용됩니다.
  • 명령어는 16비트 버스 폭의 하드웨어로 처리되지만, 데이터는 8비트 길이 기반으로 처리합니다.
  • CISC 마이크로 컨트롤러보다 10배 이상의 빠른 속도로 실행이 이루어지는 마이크로 컨트롤러입니다.
  • C언어로 제어하기에 코드 집적도가 높습니다.
  • 플래시 메모리와 파라메터 저장용의 EEPROM, 일반 데이터 변수 저장을 위한 SRAM 등이 집적되어 효율성이 높습니다.
  • ISP라는 기법을 통해 시스템 자체 내에 프로그래밍, 디버깅, 검증 등의 편리한 기능을 포함합니다.
  • 1.8 ~ 5.5V의 동작이 가능하며, 저전력 소모에 적합한 다양한 동작 모드를 제공합니다.

- AVR 구조


- 참고용 사진 ATmega128 블락도


더욱더 자세한 내용은 AVR Atmega128 마이크로컨트롤러 프로그래밍과 인터페이싱 책을 참고하세요!!



저는 우선 이책을 참고로 공부하고 있습니다!! 


이렇게 조사를 했으니 이제 실험해볼 LED에 대해서 간략하게 조사해 보겠습니다~~



 - LED에 대한 간단한 이론

 LED는 Light Emitting Diode의 약자로 발광 다이오드를 뜻하며, 반도체로 된 다이오드의 일종입니다. 다이오드는 양전극 단자에 전압을 걸면 한 방향으로만 전류가 주입되고 전자와 정공이 재결합해서 그 일부의 에너지를 빛으로 변환하는 다이오드입니다.


- LED 그림


자 이제 그렇다면 우리가 실험하게 될 Easy Processor Kit에 대해서 조사해 보도록 하죠!


 - Easy Processor Kit 이란?


  • 32bit, 8bit 마이크로프로세서 교육 및 실습용 시스템
  • Cortex-M3, AVR, 8051 프로세서 모듈의 선택 장착
  • Cortex-M3, AVR, 8051의 구조, 어셈블러 및 펌웨어 교육 실습
  • Keil MDK-ARM , WinAVR 컴파일러를 이용한 초기화 코드 분석 실습
  • Assembler 및 C 언어기반 Cortex-M3, AVR, 8051용 프로그램 실습교재 제공
  • 다양한 주변장치 제공(I/O Port, Dot Matrix, Step Motor, LCD, FND, Audio, Keypad, ADC/DAC, etc)

- Easy Processor Kit


- Easy Processor Kit 프로세서 모듈 및 구성도


- Easy Processor Kit 블락도

현재 우리가 사용할 실험장비인 Easy Processor Kit에 대한 내용이었습니다. 이러한 내용은 휴인스 사이트에도 나와있는데요. 더욱더 자세히 살펴볼 분들은 들어가 보세요. 사이트가 http://huins.com/m13.php?m=rd&no=58#cnts 입니다~


전반적으로 이런 장비만 있다면 우리가 이것 저것 실험하는데 엄청 편리 하겠죠??


대학교에서 수업시간에 이러한 장비를 가지고 수업을 할 수도 있으니 참고하세요~!


저도 이 실험장비 가지고 실험을 해서 앞으로 포스팅 하겠습니다!! 물론 J-MOD-128인 ATmega128 모듈도 있으니 이것 가지고도 실험해 볼거에요~


그럼 다음번 포스팅 때 뵙죠!! 아직까지는 더운날씨 조심하시구요~ 안녕~


,
Study/Android

[Android] 안드로이드 스튜디오 - x86 emulation currently requires hardware acceleration 에러


emulator : ERROR: x86 emulation currently requires hardware acceleration!

처음 안드로이드 스튜디오를 설치하고, 어플리케이션을 동작시켰는데 주로 발생하는 에러에요.



잘 보이실지는 모르겠지만 요로코롬... 에러가 뜨는데 처음엔 무슨말인지도 모르겠고!

해결방법은 아래와 같습니당.



안드로이드 스튜디오 화면 상단에 있는 아이콘들 중 SDK Manager를 클릭해주세요.

만약 아이콘이 없다면 메뉴의 [Tools] > [Android] > [SDK Manager] 를 실행하시면 되요.



만약 이런 화면이 뜨신다면 빨간 박스 안의 [Launch Standalone SDK Manager] 를 클릭해주시면 아래와 같은 창이 떠요.



우선 SDK Manager를 실행하여 [Extra] > [Intel x86 Emulator Accelerator (MAXM installer)] 가 installed 인지 확인해주세요.

설치되어 있지 않다면 설치해주시구요.


그 다음은 설치를 하신 분들마다 다른데... 설명을 하기가 조금 애매하네요.

SDK를 설치한 폴더를 찾아가셔야 하는데요.

보통 경로가 C:\Users\사용자계정명\AppData\Local\Android\sdk 일거에요.

저 같은 경우엔 설치할때 sdk의 경로를 변경해두었기 때문에 경로가 다르네요.



sdk 폴더를 찾으셨다면 위와 같은 모습이 보이실텐데요.

여기서 [extras] 폴더로 들어갑니다.


계속해서 [intel] 폴더 내부의 [Hardware_Accelerated_Execution_Manager] 폴더로 들어가주세요.



그럼 이런 파일들이 보이는데, [intelhaxm-android.exe] 파일을 실행해서 설치해주시면 되요.




[This computer meets the requirements for HAXM, but Intel Virtualization Technology (VT-x) is not turned on. HAXM cannot be installed until VT-x is enabled. Please refer to the Intel HAXM documentation for more information.]


간혹 설치하다가 이런 에러창이 뜨는 경우가 있는데요. 

메인보드에서 CPU 가상화 기술을 허용하지 않음으로 설정해둔 상태이기 때문에 발생하는 경우에요.

BIOS 설정을 통해서 변경하거나, 다른 방법을 찾아서 가상화 기술을 사용하도록 설정해줍시다. 



[dism.exe /Onlien /Disable-Feature:Microsoft-Hyper-V]

이건 정확히 무슨 기능인건지 잘 모르겠네요.

구글링을 통해 해결방법을 찾다보니, 이런 명령어를 실행해보라고 적혀있어서 해보았는데 말이죠.

이걸 먼저 하고 재부팅을 해도 딱히 설치가 되거나 하지는 않아서 결국 BIOS 설정을 변경하였어요.



이렇게 활성화 시킨 뒤에 재부팅 후 다시 설치를 해보면~



드디어 설치가 완료되었네요. ㅎㅎㅎ 다시 어플리케이션을 구동시켜봅시다.



부팅이 끝나고, 자동으로 어플리케이션이 실행됫네요.


이렇게 오류 해결 끝!! 

하.. 상쾌하네요. 다음번엔 이런 오류따위 금방 해결해버려야지...


,
Study/AVR ATmega128 Easy Processor Kit

4. 프로테우스 사용법 (ATmega128 이용)

안녕하세요~~


무더운 여름에 그나마 오늘은 비가와서 날씨가 좀 낫네요ㅎㅎ 날씨가 좋은관계로 이렇게 포스팅하고자 합니다.


이번에는 프로테우스 사용법에 대해서 배워볼껀데요 간단한 LED 예제를 가지고 해보겠습니다.


우선 처음에 저번시간에 깔았던 프로테우스를 실행시켜 주세요!


왼쪽화면에 보시게 되면 p와 L로 되어있는 칸이 보입니다.



자 확대해서 보도록 하죠 ㅎㅎ

여기서 P를 눌러주세요!


그러면 아래와 같은 화면이 뜨게 되는데 우선 Keywords에 ATmega128을 쳐주세요 ㅎㅎ 

그런 다음 해당하는 ATmega128을 더블클릭!


마찬가지로 LED도 검색해서 추가하면 됩니다. 참! LED는 그냥 LED보다는 LED-YELLOW, GREEN 다양하게 있는데 알아서 추가해 주세요 ㅎㅎ



밑의 그림처름 회로도를 구성해 주세요!



여기서 그라운드나 VCC의 위치를 모르겠다 하시는분은 다시 왼쪽 화면에서 빨갛게 표시된 5각형이라고 해야하나? ㅎㅎ 아래 그림에 표시된 아이콘을 눌러줍니다. 그럼 그림과 같은 화면이 뜨게 되는데 여기서 그라운드와 파워를 회로도에 포함시킬수 있어요!



그리고 이제 ATMEGA128에 마우스를 올려 오른쪽클릭 한번! 누르면 빨갛게 표시가 되는데 이제 왼쪽클릭을 해줍니다.


그러면 아래 그림과 같은 설정창이 뜨게 되는데요~ 여기서 Program File에다가 AVR studio에 컴파일했던 HEX 파일의 경로를 넣어줍니다!



이렇게 다 되고 OK!를 누르시고~ 화면 왼쪽 하단에 아래 그림과 같은 것이 있을겁니다.

이제 플레이 버튼을 눌러봅시다!



짠!!! 시뮬레이션이 동작되고 위의 두개 LED에만 불이들어오는 것을 확인할 수 있습니다.


여기서 정지버튼을 눌러야만 회로도를 수정할 수 있어요!!!



참고로 소스코드는

#include <avr/io.h>  // AVR 기본 입출력 관련 헤더파일 포함


int main(void)

{

unsigned char LED_ON; // 변수 LED_ON 선언


DDRB = 0xFF; /* DDRX는 X포트가 출력을 할 것인지 입력을 할 것인지 결정하는 것으로 1값이면 출력, 0값이면 입력. 즉, 이것은 B포트의 모든비트를 출력으로 설정 */

PORTB = 0xFF; // B포트 모든비트를 1로 초기화


while(1) // 반복루프

{

LED_ON = 0x03; // LED_ON이라는 변수에 0000 0011 값 지정

PORTB = LED_ON; // B포트의 LED가 0000 0011으로 변경되어 LED가 0,1번 LED 켜짐

}

}


요런 간단한 것입니다~~ㅎㅎ


이상 프로테우스 간단 사용법이었습니다!!








,
 [ 1 ]  [ 2 ]  [ 3 ]  [ 4 ]  [ 5 ]  [ 6 ]  [ 7 ] 

최근 댓글

최근 트랙백

알림

이 블로그는 구글에서 제공한 크롬에 최적화 되어있고, 네이버에서 제공한 나눔글꼴이 적용되어 있습니다.

링크

Yuria

카운터

Today :
Yesterday :
Total :