1. vnc, ๊ฐ์ ๋คํธ์ํฌ ์ปดํจํ
์ฒจ์ธ : ๋ณดํต ํฌํธ ํฌ์๋ฉ... vnc ๋ฑ์ ์ด์ฉํด์ ๋ผ์ฆ๋ฒ ๋ฆฌํ์ด ์ฐ๊ฒฐํด์ ์ฌ์ฉํ๋๋ฐ,
๊ธฐ๋ณธ์ ์ผ๋ก ์๋ฒ ๋๋ ๊ด๋ จ ์์ง๋์ด๋ ์ ๋ฌธ์ ์ผ๋ก ํ๋ ค๊ณ ํ๋ ์ฌ๋๋ค์
ssh ๋ฅผ ํ์ฉํ๋ค๊ณ ํ๋ค.
์ค์ ๋ก xshell ์ ์ฌ์ฉํด์ ์ค์ตํ์๋ค.
์ด๊ฒ์ ์ด์ฉํด๋ณผ ์ ์๋ค.
Virtual Network Computing ์ผ๋ก์, ์๊ฒฉ์ผ๋ก ๋ค๋ฅธ ์ปดํจํฐ๋ฅผ ์ ์ดํ ๋ ์ฃผ๋ก ์ฌ์ฉํ๋ ๊ณต์ ์์คํ ์ด๋ค.
A ------- B (VNC๋ก ์ฐ๊ฒฐ)
๋ผ์ฆ๋ฒ ๋ฆฌํ์ด์์ Configuration ํญ์์ VNC ๊ฐ๋ฅ ์ผ๋๊ธฐ
ํด๋น SW: RealVNC ๋ผ๋ ํ๋ก๊ทธ๋จ์ธ๋ฐ, www.realvnc.com/en/connect/download/viewer
Download VNC Viewer | VNCยฎ Connect
VNCยฎ Connect consists of VNCยฎ Viewer and VNCยฎ Server Download VNCยฎ Viewer to the device you want to control from, below. Make sure you've installed VNCยฎ Server on the computer you want to control. Frequently asked questions How do I install VNCยฎ View
www.realvnc.com
์๋ก ์ฐ๊ฒฐํ๋ ค๋ฉด, ์ฐ๊ฒฐํ ๋์์ด ๋๋ PC์ IP์ฃผ์๋ฅผ ์์์ผ ํ๋ค.
์ฐธ๊ณ ๋ก, ip์ฃผ์๋ ์คํ์ฐฝ์์ "ifconfig" ์ด๋ค.
์ ์ , ๋ฌด์ ์ ๋ฐ๋ผ ํ์ ํ์์ด ๋ฌ๋ผ์ง๋ฏ๋ก, eth0 ์ ์ ์ ์ฐ๊ฒฐ์ด๊ณ , wlan0 ์ ๋ฌด์ ์ฐ๊ฒฐ์ด๋ค.
์ฐ๊ฒฐํ๊ธฐ์ ์, ๋ผ์ฆ๋ฒ ๋ฆฌํ์ด os๋ฅผ ์ค์นํ๊ณ , ํ๋ฒ ๋ชจ๋ํฐ์ ๋์๋ด์ผํ๋ค.
๊ทธ๋ฆฌ๊ณ ID, PW๋ฅผ ์ค์ ํด์, ํด๋น ์ ๋ณด๋ฅผ ์์งํ๊ณ ์์ด์ผ ํ๋ค.
์๋ํ๋ฉด, VNC ์ฐ๊ฒฐ์์ ์ฌ์ฉ๋ ๊ฒ์ด๊ธฐ ๋๋ฌธ์ด๋ค.
์ด์ VNC๋ก ์ฐ๊ฒฐ์ด ๋์ด ์์ผ๋ฉด, PC์ ๋ผ์ฆ๋ฒ ๋ฆฌํ์ด ๊ฐ ํ์ผ ์ ์ก์ ํ ์ ์๋ค.
2. ๋ฆฌ๋ ์ค๋ก, xshell์์ ๋ด๊ฐ ์ป๋ ์ฝ๋, ๋ค๋ฅธ ์ฌ๋๋ค์๊ฒ ๊ณต์ ํ๋ ๋ฐฉ๋ฒ
cp fileMake.c /var/www/html
fileMake๋ฅผ ํตํด ํ์ผ์ ์์ฑํ๋๋ฐ, ์ฃผ์๋ var ํด๋์ www์ html์ด๋ค.

์ด๋ค ํด๋์ ์ฃผ์๋ฅผ ์ค๋ช ํ๋ ค๋ ๊ฒฝ์ฐ '/home/rick' ์ด๋ฐ์์ผ๋ก ์ค๋ช ํด ์ฃผ๋ฉด ๋ฉ๋๋ค.
์์ฃผ ์ฐ๋ ์ฉ์ด ์ค์ '. (์ )' ์ ํ์ฌ ๋๋ ํ ๋ฆฌ, '.. (์ ์ )'์ ๋ฐ๋ก ์ (์์) ๋๋ ํ ๋ฆฌ๋ฅผ ์๋ฏธํฉ๋๋ค.
๋ฆฌ๋ ์ค ์ต์์ ๋๋ ํ ๋ฆฌ
/bin | ls, mount, rm ๋ฑ๊ณผ ๊ฐ์ ๊ธฐ๋ณธ์ ์ธ ๋ฆฌ๋ ์ค ๋ช ๋ น์ด๋ค์ด๋ ์คํ ํ์ผ์ด ์์น. binary์ ์ฝ์ |
/boot | ๋ฆฌ๋ ์ค ์ปค๋, ๋ถํธ๋ก๋ ์ค์ ํ์ผ๊ณผ ๊ฐ์ด ์์คํ ์ด๊ธฐํ์ ํ์ํ ํ์ผ ์์น |
/dev | ๋ฆฌ๋ ์ค์์ ํ๋์จ์ด ์ฅ์น๋ค์ ๋์ ํ๋ ๋๋ฐ์ด์ค ํ์ผ๋ค์ด ์์น. developer์ ์ฝ์ |
/etc | ์์คํ ๋ชจ์๊ณผ ๋์์ ๊ฒฐ์ ํ๋ ๊ฐ์ข ์์คํ ์ค์ ํ์ผ๋ค์ด ์์น |
/home | ์ฌ๋ฌ ์ฌ์ฉ์๋ค์ ํ ๋๋ ํฐ๋ฆฌ๋ค์ด ์์น (์ฃผ๋ก ๋ฉ์ธ์ด ๋จ) |
/lib | ์ค์ํ ๋์ /๊ณต์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ์ปค๋ ๋ชจ๋๋ค์ด ์์นํจ. library์ ์ฝ์ |
/lost+found | ํ์ผ ์์คํ ์ ์ค๋ฅ๋ก ์ธํ ๋น์ ์์ ์ธ ํ์ผ์ด ์์น. fsck ๋ช ๋ น์ด ์ฌ์ฉ ํจ |
/media | ์ธ์ฅํ๋, ํ๋กํผ๋์คํฌ, CD ์ ๊ฐ์ด ์ธ๋ถ ์ฅ์น๊ฐ ์๋์ผ๋ก ๋ง์ดํธ ๋๋ ์์น |
/mnt | ๋คํธ์ํฌ ํ์ผ ์์คํ ๊ณผ ๊ฐ์ ์์ ๋ง์ดํธ ์ฅ์น๋ฅผ ์ํ ๋ง์ดํธ ์์น. mount์ ์ฝ์ |
/opt | ์์คํ ์ ์ต์ ์ผ๋ก ์ถ๊ฐํ๋ ํจํค์ง๋ค์ ์ ์ฅํ๋ ๊ณณ. option์ ์ฝ์ |
/proc | ์ปค๋์ด ํ๋ก์ธ์ค์๊ฒ ์ ๋ณด๋ฅผ ์ ๋ฌํ ์ ์๋๋ก ๋ง๋ค์ด์ง ๊ฐ์ ํ์ผ ์์คํ . /process |
/root | ์์คํ ๊ด๋ฆฌ์์ธ ์ํผ ์ ์ ์ ํ ๋๋ ํ ๋ฆฌ |
/sbin | ์ํผ ์ ์ ๊ฐ ์ฌ์ฉํ ์ ์๋ ์ค์ํ ๊ด๋ฆฌ ๋ช ๋ น์ด๋ค์ด ์์น. system binary |
/srv | HTTP ๋๋ FTP์ ๊ฐ์ ์๋น์ค๋ค์ ๋ฐ์ดํฐ ๋๋ ํฐ๋ฆฌ. service์ ์ฝ์ |
/sys | ์ปค๋ ๊ด์ ์์ ์์คํ ์ ๋ณด๋ฅผ ํ๋ํ๊ฑฐ๋ ์ค์ ํ ์ ์๋ ๊ฐ์ ํ์ผ ์์คํ . system์ ์ฝ์ |
/tmp | ์์ฉ ํ๋ก๊ทธ๋จ์ด ์ฌ์ฉํ๋ ์์ ํ์ผ๋ค์ด ์์น. temporary์ ์ฝ์ |
/usr | ๋๋ถ๋ถ์ ์ ํธ๋ฆฌํฐ, ์์ฉ ํ๋ก๊ทธ๋จ ๋ฐ ์ค์ ํ์ผ, ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๋ฑ์ด ์์นํจ. (/usr/bin: ์์ฉํ๋ก๊ทธ๋จ, /usr/lib: ๋ผ์ด๋ธ๋ฌ๋ฆฌ, /usr/share: ๊ฐ์ข ๊ด๋ จ ์์ ํ์ผ, /usr/local: ๊ธฐํ ์ถ๊ฐ ์ค์น ํ์ผ)/ user์ ์ฝ์ |
/var | ๋น ๋ฅด๊ฒ ๊ฐฑ์ ๋๊ฑฐ๋ ๋ณํํ๋ ๊ฐ๋ณ ๋ฐ์ดํฐ๋ค์ด ์์นํจ(/var/log: ์์คํ ๋ก๊ทธ ํ์ผ๋ค, /var/maili: ๋ฉ์ผ, /var/www: ์น ์๋ฒ ํ์ผ). variable์ ์ฝ์ |
๋ฆฌ๋ ์ค ๋ช ๋ น์ด
๋ฆฌ๋ ์ค์ ๊ธฐ๋ณธ์ ์ผ๋ก ํฐ๋ฏธ๋์ฐฝ(ctrl + alt + t)์ ์ด๊ณ ์๋์ ๊ฐ์ด ๋ช ๋ น์ด๋ฅผ ์นฉ๋๋ค.
๋ช
๋ น์ด (์ต์
) ๋งค๊ฐ๋ณ์
๋ช ๋ น์ด ๋ค์ ์ต์ ์ ์น๊ณ >> ๋ค์ ๋งค๊ฐ๋ณ์ ์
3. GPS ์ฃผ์ ๋ฐ์์ค๊ธฐ
ํฌ์ธํฐ๋ฅผ ์ด์ฉํด ๊ฐ์ ๊ฐ์ ธ์์ผํจ
*
if(n >0) {
]n = fake_uart_gets(fd,temp);
if( n > 0){
if(getGPSInfo(temp,x,y)){
printf("%s
4. ์ ์ฒด ๋์ ๋ฉ์ปค๋์ฆ
์ข์ธก ์ ๋ฐ - Main Character
์ฐ์ธก ์๋จ - ์ํ ๋ฉ์์ง ( ํ์ด๋ฆฌ~, ๊ผฌ๋ถ์ด~)
์ฐ์ธก ํ๋จ - ์ขํ ํ์
#defien
#include <stdio.h>
#include
typedef struct unitP{
int x;
int y;
} unitP;
void gotoxy(int, int);
void cursorReset(){
gotoxy(100,15);
}
void movePositionI(int x, int y){
I.x = I.x + x;
I.y = I.y + y;
}
void movePositionI(int x, int y){
I.x = I.x + x;
I.y = I.y + y;
printI();
}
int main(){
clear();
makeBoundary();
makeMsgBox();
printGameMsg("ํผ์นด์ธ๊ฐ ๋์ด.");
printXY(28323,123542);
sleep(1);
printGameMsg("๋ผ์ด์ธ๊ฐ ๋์ด2.");
printXY(14223,123123);
sleep(1);
printGameMsg("ํ์ด๋ฆฌ๊ฐ ๋์ด.");
printXY(14223,123123);
char input = 0;
char gameMsg[100] = "";
setPositionI(MAP_MAX_X / 2, MAP_MAX_Y / 2);
movePosition(1,0);
sleep(1);
... // to be continue
////
// ์๋ฌ๊ฐ ๋๋ ์ํฉ์์
else{
printGameMsg("get fall");
printGameMsg("get fall");
printGameMsg("get fall");
printGameMsg("get fall");
5. ์ฝ๋ ๋ช ๋ น์ด!
gcc map.c // map.c ์ฝ๋๋ฅผ ์คํ
./a.out c
vi main.c // main.c๋ฅผ ๋ง๋๋ ๊ฒ
ls // ํ์ผ ๊ตฌ์ฑ ๋ณด๊ธฐ
mkdir include // ํด๋ ๋ง๋ค๊ธฐ
mv *.h ./include // move(์ด๋)์ ์ฝ์๋ก์ ๋ชจ๋ ํ์ผ๋ค์ include ํด๋์ ๋ฃ๊ธฐ
wget http://ojware.com/Makefile // ํ์ผ์ ๋ค์ด๋ฐ๋ ๋ฐฉ๋ฒ
root@raspberrypi: // ์์ ์คํํ๋ ค๋ ๋๋ ํ ๋ฆฌ์์ ์์ ์ฝ๋๋ฅผ ์คํํ๋ฉด ๋๋ค
size_t ??
static size_t ?? static์ ์๊ธฐ ํ์ผ ์์์๋ง ์ฌ์ฉ ๊ฐ๋ฅํ๋ค!! ๋ฒ์ฉ ๋ถ๊ฐ!
tar -cvf pocket.tar.gz ./pokentMonGo/ //์์ถ์ ํ์ฌ
tar -cvf poketMonGo uart
cp pocket.tar.gz /var/www/html
tar -cvf pocket
vi make
6. gps ๋ ๋ผ์ฆ๋ฒ ๋ฆฌํ์ด์ ํต์ ๋ฐฉ๋ฒ : UART ( Universal asynchronous receiver/transmitter)
๋ฒ์ฉ ๋น๋๊ธฐํ ์ก์์ ๊ธฐ ์ ๋๋ค.
8๋นํธ = 1๋ฐ์ดํธ
1์ด 9600๋นํธ ๋ณด๋ผ ์ ์์
1200๋ฐ์ดํธ ๋ณด๋ผ ์ ์์
์บ๋ฆญํฐ๊ฐ 1๋ฐ์ดํธ๋๊น
1์ด์ 1200 ๊ธ์๋ฅผ ๋ณด๋ผ ์ ์๋ ์ ๋(๋๋ฆฌ๋ค!)
๋์ปค
ํ๋์ ์์์ ๋ชจ๋ํฐ, ์ด๋๋ท ์ฌ๋ฌ ๊ฐ ๋ฑ์ ๊ผฝ๋๋ค..
ํจ๋ฆฌํฐ
์๋ฆฌ์ผ ํต์ - ์ค๋ฅ๊ฐ ๋๋ค
์ด๋๋ท- ์ค๋ฅ์จ์ด ๋์ง๋ง, ํ๋์จ์ด์ ์ผ๋ก ์ฒ๋ฆฌํ๊ณ ์์
์์ดํ์ด
์ค๋ฅ๊ฐ ์์ฒญํฌ๋ค - ์ฃผ๊ณ ๋ฐ์ผ๋ฉด์, ๊ฒ์ฆ ์์
=ํจ๋ฆฌํฐ
ํ๋ก ์ปจํธ๋กค -
char str[100]
๋ฐ์ด๋๋ฆฌ
์คํธ๋ง ๋ฑ๋ฑ
์คํธ๋ง์ ๋์ ธ์ฃผ๋ฉด ์ฌ๋์ด ๋ณด๊ธฐ ํธํ๋ค
๋ฐ์ด๋๋ฆฌ๋ก ๋ณด๋ด๋ฉด ํจ์จ์ ์
1๋ฐ์ดํธ 8๋นํธ๋๊น 0๋ถํฐ 256๊น์ง ํํ์ด ๊ฐ๋ฅํ๋ค
65-122
http ํ๋กํ ์ฝ
gps nmea( gprmc, gpgsv, gpgga)