한백전자교육사업부 AndroX Studio 로배우는임베디드프로그래밍 - 한백전자 - 본문서의저작권은 한백전자에있으며, 허락없이무단복제및전제를불허합니다.

Size: px
Start display at page:

Download "한백전자교육사업부 AndroX Studio 로배우는임베디드프로그래밍 - 한백전자 - 본문서의저작권은 한백전자에있으며, 허락없이무단복제및전제를불허합니다."

Transcription

1 한백전자교육사업부 AndroX Studio 로배우는임베디드프로그래밍 - 한백전자 -

2 실습용장비 ; SM7-S4412 프로세서와주변장치직접연결 GPIO, 인터럽트, SPI, I2C 인터페이스사용 FPGA 모듈을거치지않음! 마이컴개발을위한아두이노 (Arduino Mega 2560) 탑재 ADK 2011 지원 안드로이드장치와아두이노보드연동가능 2

3 타깃주요명칭 HBE-SM7-S4412 Tablet 우측 1 전원SM7 Tablet 2 USB 호스트포트1 3 USB 호스트포트2 4 USB-to-Serial 포트 5 HDMI 포트 6 OTG 포트 7 오디오출력포트 8 전원잭 9 전원스위치 3

4 타깃주요명칭 HBE-SM7-S4412 Tablet 좌측 1 카메라포트 2 리셋키 3 볼륨UP키 4 볼륨DOWN키 5 확장포트 / 블루투스모듈 6 Wi-Fi 모듈 7 T-Flash 슬롯 4

5 타깃주요명칭 HBE-SM7-S4412 Tablet 뒷면 1 스태킹커넥터 2 카메라 3 배터리 4 NFC모듈 5 확장포트 / 블루투스모듈 6 Wi-Fi 모듈 7 T-Flash 슬롯 5

6 타깃주요명칭 HBE-SM7-S4412 Tablet 앞면 1 프로세서 2 emmc 3 부팅저장소선택스위치 4 바이브레이터 5 내장스피커 6

7 타깃주요명칭 HBE-SM7-S4412 베이스보드 베이스보드를이용하면 SM7- 테블릿을다른커스텀모듈과결합가능 오른쪽과왼쪽양끝에는확장커넥터들이위치함 7

8 타깃주요명칭 HBE-SM7-S4412 베이스보드우측면 1 JTAG 포트 2 전원잭 3 USB 호스트포트 4 버스확장버스 5 이더넷확장포트 8

9 타깃주요명칭 HBE-SM7-S4412 베이스보드좌측면 1 시리얼포트 2 확장포트 9

10 ADB 드라이버설치 장비와 PC 가 USB 케이블로연결되면다음과같이내컴퓨터속성의장치관리자내기타장치에서 SM7S4412 를확인할수있음 10

11 ADB 드라이버설치 SM7S4412 에서마우스오른쪽버튼을클릭하여팝업메뉴를열고, 드라이버소프트웨어업데이트를선택 11

12 ADB 드라이버설치 드라이버를설치하기위한대화상자가실행되면 C:\AndroXStudio\legacy\sdk\extras\google\usb_driver 폴더를지정 12

13 안드로이드응용프로그램개발툴 JDK Eclipse for Java ADT(Android Development Tool) Android SDK 13

14 Android Studio By Google (2013.5) IDE for Java App 14

15 AndroX Studio By Hanback Elec. IDE for Java App IDE for Embedded Programming ARM Assembly ANSI C Embedded Linux System Programming Linux Device Driver Linux Kernel Programming Java Native Interface(JNI LINUX env. X 15

16 AndroX Studio - IDE Integrated Development Environment 해당아이콘클릭으로 IDE 실행 16

17 AndroX Studio - Remote Explorer 17

18 AndroX Studio - 원격쉘 Remote Shell 18

19 AndroX Studio - 원격뷰어 Remote Viewer 19

20 AndroX Studio - Debug Monitor 20

21 AndroX Studio - Decompile 21

22 AndroX Studio - 역컴파일러 - Decompile 안드로이드앱 (.apk) 에서자바바이너리파일 à 소스파일로변환 (check!) 코드난독화 22

23 AndroX Studio - 이미지설치 Image Installer 23

24 AndroX Studio - 이미지설치 Image Installer System Recovery 기능 (bootloader, kernel, file-system) 공장초기화모드 ; 갤럭시 S2 공장초기화방법은? 24

25 AndroX Studio - Command 25

26 ARM 어셈블리실습 ; [step1] IDE 실행 IDE 실행 26

27 ARM 어셈블리실습 ; [step2] C/C++ Perspective 변경 화면오른쪽상단의 C/C++ Perspective 아이콘클릭 27

28 ARM 어셈블리실습 ; [step3] 프로젝트생성 [File] >> [New] >> [C Project] 28

29 ARM 어셈블리실습 ; [step3] 프로젝트생성 프로젝트생성 Project name : asm_hello Project Type : Makefile project >> Empty Project Toolchains : -- Other Toolchain -- 29

30 ARM 어셈블리실습 ; [step4] 소스코드생성 Project Explorer 에서 asm_hello 프로젝트선택 아이콘선택후, Assembly Executable 항목선택 30

31 ARM 어셈블리실습 ; [step4] 소스코드생성 OK 버튼선택 결과 asm_hello.s Makefile 31

32 ARM 어셈블리실습 ; [step5] 파일분석 ; asm_hello.s 001:.syntax unified 002: 003:.global main 004: main: The prolog saves the state of the registers r4 through r11 typically Push 8 "longs" on the stack and subtracts sp beforehand 007: push {ip, lr} 008: Load the argument and perform the call. This is like 'printf()' in C. 010: ldr r0, =message 011: bl printf 012: Exit from 'main'. This is like 'return 0' in C. 014: mov r0, Return : Pop the dummy ip to reverse our alignment fix, and pop the original value directly into pc - the Program Counter - to return. 017: pop {ip, pc} 018: Data for the printf calls. The GNU assembler's ".asciz" directive automatically adds a NULL character termination. 021: message: 022:.asciz "Hello, ARM!\n" 023: 32

33 ARM 어셈블리실습 ; [step5] 파일분석 ; Makefile 001:.SILENT: 002: 003: include C:/AndroXStudio/Tools/make_comm 004: 005: all: $(ASM_OBJECTS) 006: $(CC) $(CFLAGS) $(LDFLAGS) -march=armv7-a -o asm_hello $(ASM_OBJECTS) 007: 008: echo 009: echo "**** Install:" /data/local/tmp/asm_hello "****" 010: $(ADB) push asm_hello /data/local/tmp 011: $(ADB) shell chmod 755 /data/local/tmp/asm_hello 012: echo 013: echo "**** Run ****" 014: $(ADB) shell TIMEFORMAT="" time /data/local/tmp/asm_hello 015: 016: clean: 017: rm -f *.o 018: rm -f asm_hello 019: 33

34 ARM 어셈블리실습 ; [step6] Project Build 아이콘을클릭하면 Project 가빌드된다. 빌드결과 34

35 ANSI C 실습 ; [step1] 프로젝트생성 프로젝트생성 Project name : c_hello Project Type : Makefile project >> Empty Project Toolchains : -- Other Toolchain -- 35

36 ANSI C 실습 ; [step2] 소스코드생성 Project Explorer 에서 c_hello 프로젝트선택 아이콘선택후, C Executable 항목선택 OK 버튼선택 36

37 ANSI C 실습 ; [step2] 소스코드생성 OK 버튼선택 결과 c_hello.c Makefile 37

38 ANSI C 실습 ; [step3] 파일작성하기 c_hello.c 001: #include <unistd.h> 002: #include <stdlib.h> 003: #include <stdio.h> 004: 005: int main(int argc, char * argv[]) { 006: printf("hello, hanback!\n"); 007: exit(0); 008: } 009: 38

39 ANSI C 실습 ; [step3] 파일분석하기 Makefile 001:.SILENT: 002: 003: include C:/AndroXStudio/Tools/make_comm 004: 005: all: $(OBJECTS) 006: $(CC) $(CFLAGS) $(LDFLAGS) -save-temps -march=armv7-a -O2 -o c_hello $(OBJECTS) \ 007: $(LLIB)/libgcc.a 008: 009: echo 010: echo "**** Install:" /data/local/tmp/c_hello "****" 011: $(ADB) push c_hello /data/local/tmp 012: $(ADB) shell chmod 755 /data/local/tmp/c_hello 013: echo 014: echo "**** Run ****" 015: $(ADB) shell TIMEFORMAT="" time /data/local/tmp/c_hello 016: 017: clean: 018: rm -f *.o 019: rm -f *.i 020: rm -f *.s 021: rm -f c_hello 022: 39

40 ANSI C 실습 ; [step4] Project Build 아이콘을클릭하면 Project 가빌드된다. 빌드결과 40

41 ARM C 공유라이브러리 함수를여러개의프로세스에서동시에사용 Windows 의 DLL 메모리절약 41

42 ARM C 공유라이브러리 ; [step1] 프로젝트생성 [tree_engine] 42

43 ARM C 공유라이브러리 ; [step2] 소스파일 (tree_engine.h) [tree_engine] 프로젝트선택후마우스오른쪽버튼 ( 팝업메뉴 ) tree_engine.h 파일생성 43

44 ARM C 공유라이브러리 ; [step2] 소스파일 (tree_engine.h) 001: #ifndef TREE_ENGINE_H_ 002: #define TREE_ENGINE_H_ 003: 004: #include <sys/stat.h> 005: #include <dirent.h> 006: #include <string.h> 007: 008: typedef void (*callback_search_dir)(char *, int, unsigned int); 009: 010: void search_dir(char * dir, int depth, callback_search_dir csd); 011: 012: #endif /* TREE_ENGINE_H_ */ 013: 44

45 ARM C 공유라이브러리 ; [step2] 소스파일 (tree_engine.c) 001: #include <unistd.h> 002: #include <stdlib.h> 003: 004: #include "tree_engine.h" 005: 006: void search_dir(char *dir, int depth, callback_search_dir csd) 007: { 008: DIR * ptr_dir; 009: struct dirent *ptr_dirent; 010: struct stat curr_stat; 011: 012: if ((void *)(ptr_dir = opendir(dir)) == NULL) 013: return ; 014: 015: chdir(dir); 016: while ( (void *)(ptr_dirent = readdir(ptr_dir))!= NULL) 017: { 018: lstat(ptr_dirent->d_name, &curr_stat); 019: 45

46 ARM C 공유라이브러리 ; [step2] 소스파일 (tree_engine.c) 020: if(s_isdir(curr_stat.st_mode)) 021: { 022: if (strncmp(".", ptr_dirent->d_name, 1) == 0 023: strncmp("..", ptr_dirent->d_name, 2) == 0) 024: continue; 025: csd(ptr_dirent->d_name, depth, curr_stat.st_mode & S_IFMT); 026: search_dir(ptr_dirent->d_name, depth + 4, csd); 027: } else { 028: csd(ptr_dirent->d_name, depth, curr_stat.st_mode & S_IFMT); 029: } 030: } 031: chdir(".."); 032: closedir(ptr_dir); 033: } 034: 46

47 ARM C 공유라이브러리 ; [step2] 소스파일 ; Makefile 001:.SILENT: 002: 003: include C:/AndroXStudio/Tools/make_comm 004: 005: all: 006: $(CC) $(CFLAGS) -save-temps -march=armv7-a -O2 -fpic -c $(wildcard *.c) 007: $(CC) $(LLDFLAGS) -shared -o libtree_engine.so $(wildcard *.o) \ 008: $(LLIB)/libgcc.a 009: 010: echo 011: echo "**** Install:" /system/lib/libtree_engine.so "****" 012: $(ADB) push libtree_engine.so /system/lib/ 013: $(ADB) shell chmod 644 /system/lib/libtree_engine.so 014: echo 015: 016: clean: 017: rm -f *.o 018: rm -f *.i 019: rm -f *.s 020: rm -f libtree_engine.so 021: 47

48 ARM C 공유라이브러리 ; [step3] 실행파일 tree.c ; main() 001: #include <unistd.h> 002: #include <stdlib.h> 003: #include <stdio.h> 004: 005: #include "../tree_engine/tree_engine.h" 006: 007: void do_search_dir(char *dir, int depth, unsigned int stat) 008: { 009: char *ptr_format; 010: 011: switch (stat) { 012: case S_IFBLK: 013: ptr_format = "%*s<b>%s\n"; 014: break; 015: case S_IFCHR: 016: ptr_format = "%*s<c>%s\n"; 017: break; 018: case S_IFDIR: 019: ptr_format = "%*s%s\n"; 020: break; 48

49 ARM C 공유라이브러리 ; [step3] 실행파일 tree.c ; main() 021: case S_IFIFO: 022: ptr_format = "%*s<f>%s\n"; 023: break; 024: case S_IFLNK: 025: ptr_format = "%*s<l>%s\n"; 026: break; 027: case S_IFREG: 028: ptr_format = "%*s<s>%s\n"; 029: break; 030: case S_IFSOCK: 031: ptr_format = "%*s<s>%s\n"; 032: break; 033: default: 034: ptr_format = "%*s<?>%s\n"; 035: break; 036: } 037: 038: printf(ptr_format, depth, " ", dir); 039: 040: } 49

50 ARM C 공유라이브러리 ; [step3] 실행파일 tree.c ; main() 041: 042: int main(int argc, char * argv[]) { 043: char *dir; 044: 045: if (argc == 1) 046: dir = "."; 047: else 048: dir = argv[1]; 049: 050: printf("directory scan of %s\n", dir); 051: search_dir(dir, 0, do_search_dir); 052: exit(0); 053: } 054: 50

51 ARM C 공유라이브러리 ; [step4] 실행 Makefile 수정 < 기존 > $(CC) $(CFLAGS) $(LDFLAGS) -save-temps -march=armv7-a -O2 -o tree tree.c < 변경 > $(CC) $(CFLAGS) $(LDFLAGS) -save-temps -march=armv7-a -O2 -o tree tree.c -ltree_engine -L../tree_engine 프로젝트를빌드 51

52 ARM C 공유라이브러리 ; [step4] 실행 Remote Shell / # cd /data/local/tmp /data/local/tmp #./tree /system/etc 52

53 커널빌드 리눅스커널빌드 컴파일대상을선별하는과정 + 선별된대상들을컴파일 리눅스커널은다양한아키텍쳐와많은디바이스드라이버를지원 자신의타깃에맞는아키텍처와디바이스드라이버선별과정이필요 커널빌드시스템 (Kernel Build System) 53

54 커널빌드시스템 54

55 타깃에커널설치 새로컴파일한커널을 SM7 타깃에설치하려면부트로더의 fastboot 서비스를사용 새로운커널을설치하기위해 SM7 태블릿과호스트를 USB 케이블로연결한상태에서안드로엑스스튜디오의런처에서 Image Installer 를실행 SM7 태블릿을부트로드의 fastboot 모드로부팅 전원버튼을누른후빠른시간내에 volume up 키를누른다. 정상부팅으로넘어가버리면, 전원을끄고다시시도 SM7 태블릿이부트로더의 fastboot 모드로부팅되면 Image Installer 는자동으로 fastboot 부팅상태를인식해상태표시줄에는 "Connected..." 가표시되고 [Start] 버튼이활성화됨 55

56 타깃에커널설치 [KERNEL] 버튼을눌러파일선택대화상자가실행되면다음경로에서커널이미지를불러옴 C:/AndroXStudio/legacy/cygwin/platform/linux/arch/arm/boot/zImage zimage 를 KERNAL 항목에불러왔으면 [Start] 버튼을눌러 SM7 태블릿에설치 56

57 리눅스커널프로젝트 57

58 리눅스커널프로젝트 Kernel Configuration 창이실행되면 SM7 태블릿용참조파일을새로적용할지묻는데 [yes + 엔터키 ] 를입력하면새로적용하고 [no + 엔터키 ] 를입력하면기존.config 파일을사용 커널구성편집기 58

59 이클립스에서커널소스트리작업 이클립스를실행하기위해안드로엑스스튜디오의런처에서 [IDE] 를선택 이클립스가실행되면 [C 퍼시펙티브 ] 를선택한후메인메뉴에서 [File > Makefile Project with Existing Code] 를선택 프로젝트설정대화상자가실행되면 "Project Name" 에 [sm7s4412_kernel] 을입력한후 "Existing Code Location" 에서 [Browse...] 버튼을눌러 SM7 태블릿의커널소스경로를선택하고 [Finish] 버턴을눌러완료 59

60 이클립스에서커널소스트리작업 정상적으로커널경로를인식하면리눅스커널소스트리전체가표시 60

61 이클립스에서커널소스트리작업 이클립스의 "Make Target" 창에서 [linux-s4412] 를선택하고 Make Target 의도구모음에서 [New Make Target] 을선택 Makefile 의목표를설정하는대화상자가실행되면 "Target name" 에 [zimage] 를입력한후 [OK] 버튼을눌러완료 61

62 이클립스에서커널소스트리작업 "Make Target" 창에서 "linux-s4412" 하위폴더를열고새로생성한 [zimage] 목표를더블클릭하거나 [zimage] 목표가선택된상태에서 Make Target 도구모음의 "Build Make Target" 을선택해커널을빌드 62

63 모듈작성 코드구성은리눅스커널에서제공하는헤더를사용하며다음과같은모듈초기화및해제등록매크로를통해커널영역에삽입되거나제거될때사용자가정의한함수가실행되도록해야함 -module_init(): 매크로함수로모듈이커널에적재될때호출되는 사용자함수를등록한다. -module_exit(): 매크로함수로모듈이커널에서제거될때호출되는사용자함수를등록 -MODULE_LICENSE(): 모듈의라이선스를기술 -MODULE_DESCRIPTION(): 모듈에대한설명을기술 -MODULE_AUTHOR(): 모듈에대한소유권을기술 63

64 모듈적재및해제 모듈적재및해제 64

65 모듈구현 [File] [C Project] - khello MISC Device Driver 65

66 모듈구현 khello.c 001: #include <linux/module.h> 002: #include <linux/kernel.h> 003: #include <linux/init.h> 004: 005: static int khello_init(void){ 006: printk("khello_init, \n"); 007: 008: return 0; 009: } 010: 011: static void khello_exit(void){ 012: printk("khello_exit, \n"); 013: 014: } 015: 016: module_init(khello_init); 017: module_exit(khello_exit); 018: 019: MODULE_LICENSE("GPL"); 020: MODULE_AUTHOR("khello"); 021: 66

67 모듈구현 Makefile 003: include C:/AndroXStudio/Tools/make_adb 004: 005: export ARCH=arm 006: export CROSS_COMPILE=arm-linux-androideabi- 007: 008: ifneq ($(KERNELRELEASE),) 009: obj-m := khello.o 010: else 011: KDIR := /platform/linux 012: all: 013: $(MAKE) -C $(KDIR) M=$(shell pwd) modules 014: 015: echo 016: echo "**** Install:" /system/lib/modules/khello.ko "****" 017: $(ADB) push khello.ko /system/lib/modules/ 018: $(ADB) shell chmod 644 /system/lib/modules/khello.ko 019: echo 020: echo "**** Load Module:" /system/lib/modules/khello.ko "****" 021: $(ADB) shell toolbox rmmod khello > /dev/null 022: $(ADB) shell insmod /system/lib/modules/khello.ko 023: $(ADB) shell lsmod grep khello 024: echo 025: 026: endif 67

68 모듈빌드 68

69 모듈결과확인 결과확인 69

untitled

untitled Step Motor Device Driver Embedded System Lab. II Step Motor Step Motor Step Motor source Embedded System Lab. II 2 open loop, : : Pulse, 1 Pulse,, -, 1 +5%, step Step Motor (2),, Embedded System Lab. II

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 Network Programming Jo, Heeseung Network 실습 네트워크프로그래밍 멀리떨어져있는호스트들이서로데이터를주고받을수있도록프로그램을구현하는것 파일과는달리데이터를주고받을대상이멀리떨어져있기때문에소프트웨어차원에서호스트들간에연결을해주는장치가필요 이러한기능을해주는장치로소켓이라는인터페이스를많이사용 소켓프로그래밍이란용어와네트워크프로그래밍이랑용어가같은의미로사용

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 KeyPad Device Control - Device driver Jo, Heeseung HBE-SM5-S4210 에는 16 개의 Tack Switch 를사용하여 4 행 4 열의 Keypad 가장착 4x4 Keypad 2 KeyPad 를제어하기위하여 FPGA 내부에 KeyPad controller 가구현 KeyPad controller 16bit 로구성된

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 Text-LCD Device Control - Device driver Jo, Heeseung M3 모듈에장착되어있는 Tedxt LCD 장치를제어하는 App 을개발 TextLCD 는영문자와숫자일본어, 특수문자를표현하는데사용되는디바이스 HBE-SM5-S4210 의 TextLCD 는 16 문자 *2 라인을 Display 할수있으며, 이 TextLCD 를제어하기위하여

More information

임베디드시스템설계강의자료 4 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과

임베디드시스템설계강의자료 4 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과 임베디드시스템설계강의자료 4 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과 Outline n n n n n n 보드개요보드연결필수패키지, Tool-Chain 설치 Kernel, file system build Fastboot 및 Tera Term설치 Kernel, file system 이미지전송및설치 - 2 - Young-Jin Kim X-Hyper320TKU

More information

교육지원 IT시스템 선진화

교육지원 IT시스템 선진화 Module 16: ioctl 을활용한 LED 제어디바이스드라이버 ESP30076 임베디드시스템프로그래밍 (Embedded System Programming) 조윤석 전산전자공학부 주차별목표 ioctl() 을활용법배우기 커널타이머와 ioctl 을활용하여 LED 제어용디바이스드라이브작성하기 2 IOCTL 을이용한드라이버제어 ioctl() 함수활용 어떤경우에는읽는용도로만쓰고,

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 7-Segment Device Control - Device driver Jo, Heeseung HBE-SM5-S4210 의 M3 Module 에는 6 자리를가지는 7-Segment 모듈이아래그림처럼실장 6 Digit 7-Segment 2 6-Digit 7-Segment LED controller 16비트로구성된 2개의레지스터에의해제어 SEG_Sel_Reg(Segment

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 7-Segment Device Control - Device driver Jo, Heeseung HBE-SM5-S4210 의 M3 Module 에는 6 자리를가지는 7-Segment 모듈이아래그림처럼실장 6 Digit 7-Segment 2 6-Digit 7-Segment LED Controller 16비트로구성된 2개의레지스터에의해제어 SEG_Sel_Reg(Segment

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 7-SEGMENT DEVICE CONTROL - DEVICE DRIVER Jo, Heeseung 디바이스드라이버구현 : 7-SEGMENT HBE-SM5-S4210 의 M3 Module 에는 6 자리를가지는 7-Segment 모듈이아래그림처럼실장 6 Digit 7-Segment 2 디바이스드라이버구현 : 7-SEGMENT 6-Digit 7-Segment LED

More information

Microsoft PowerPoint - lab14.pptx

Microsoft PowerPoint - lab14.pptx Mobile & Embedded System Lab. Dept. of Computer Engineering Kyung Hee Univ. Keypad Device Control in Embedded Linux HBE-SM5-S4210 에는 16 개의 Tack Switch 를사용하여 4 행 4 열의 Keypad 가장착되어있다. 2 Keypad Device Driver

More information

슬라이드 1

슬라이드 1 CCS v4 사용자안내서 CCSv4 사용자용예제따라하기안내 0. CCS v4.x 사용자 - 준비사항 예제에사용된 CCS 버전은 V4..3 버전이며, CCS 버전에따라메뉴화면이조금다를수있습니다. 예제실습전준비하기 처음시작하기예제모음집 CD 를 PC 의 CD-ROM 드라이브에삽입합니다. 아래안내에따라, 예제소스와헤더파일들을 PC 에설치합니다. CD 드라이브 \SW\TIDCS\TIDCS_DSP80x.exe

More information

슬라이드 1

슬라이드 1 Delino EVM 용처음시작하기 - 프로젝트만들기 (85) Delfino EVM 처음시작하기앞서 이예제는타겟보드와개발홖경이반드시갖추어져있어야실습이가능합니다. 타겟보드 : Delfino EVM + TMS0F85 초소형모듈 개발소프트웨어 : Code Composer Studio 4 ( 이자료에서사용된버전은 v4..입니다. ) 하드웨어장비 : TI 정식 JTAG

More information

KEY 디바이스 드라이버

KEY 디바이스 드라이버 KEY 디바이스드라이버 임베디드시스템소프트웨어 I (http://et.smu.ac.kr et.smu.ac.kr) 차례 GPIO 및 Control Registers KEY 하드웨어구성 KEY Driver 프로그램 key-driver.c 시험응용프로그램 key-app.c KEY 디바이스드라이버 11-2 GPIO(General-Purpose Purpose I/O)

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 Sensor Device Jo, Heeseung Sensor 실습 HBE-SM5-S4210 에는근접 / 가속도 / 컴파스센서가장착 각센서들을사용하기위한디바이스드라이버와어플리케이션을작성 2 근접 (Proximity) 센서 HBE-SM5-S4210 Camera Module 근접센서디바이스 근접센서는사물이다른사물에접촉되기이전에가까이접근하였는지를검출할목적으로사용 일반적으로생활에서자동문이나엘리베이터,

More information

DE1-SoC Board

DE1-SoC Board 실습 1 개발환경 DE1-SoC Board Design Tools - Installation Download & Install Quartus Prime Lite Edition http://www.altera.com/ Quartus Prime (includes Nios II EDS) Nios II Embedded Design Suite (EDS) is automatically

More information

K&R2 Reference Manual 번역본

K&R2 Reference Manual 번역본 typewriter structunion struct union if-else if if else if if else if if if if else else ; auto register static extern typedef void char short int long float double signed unsigned const volatile { } struct

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 BOOTLOADER Jo, Heeseung 부트로더컴파일 부트로더소스복사및압축해제 부트로더소스는웹페이지에서다운로드 /working 디렉터리로이동한후, wget으로다운로드 이후작업은모두 /working 디렉터리에서진행 root@ubuntu:# cp /media/sm5-linux-111031/source/platform/uboot-s4210.tar.bz2 /working

More information

6주차.key

6주차.key 6, Process concept A program in execution Program code PCB (process control block) Program counter, registers, etc. Stack Heap Data section => global variable Process in memory Process state New Running

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 Web server porting 2 Jo, Heeseung Web 을이용한 LED 제어 Web 을이용한 LED 제어프로그램 web 에서데이터를전송받아타겟보드의 LED 를조작하는프로그램을작성하기위해다음과같은소스파일을생성 2 Web 을이용한 LED 제어 LED 제어프로그램작성 8bitled.html 파일을작성 root@ubuntu:/working/web# vi

More information

Mango220 Android How to compile and Transfer image to Target

Mango220 Android How to compile and Transfer image to Target Mango220 Android How to compile and Transfer image to Target http://www.mangoboard.com/ http://cafe.naver.com/embeddedcrazyboys Crazy Embedded Laboratory www.mangoboard.com cafe.naver.com/embeddedcrazyboys

More information

임베디드시스템설계강의자료 6 system call 2/2 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과

임베디드시스템설계강의자료 6 system call 2/2 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과 임베디드시스템설계강의자료 6 system call 2/2 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과 System call table and linkage v Ref. http://www.ibm.com/developerworks/linux/library/l-system-calls/ - 2 - Young-Jin Kim SYSCALL_DEFINE 함수

More information

Microsoft PowerPoint Android-SDK설치.HelloAndroid(1.0h).pptx

Microsoft PowerPoint Android-SDK설치.HelloAndroid(1.0h).pptx To be an Android Expert 문양세강원대학교 IT 대학컴퓨터학부 Eclipse (IDE) JDK Android SDK with ADT IDE: Integrated Development Environment JDK: Java Development Kit (Java SDK) ADT: Android Development Tools 2 JDK 설치 Eclipse

More information

슬라이드 1

슬라이드 1 전자정부개발프레임워크 1 일차실습 LAB 개발환경 - 1 - 실습목차 LAB 1-1 프로젝트생성실습 LAB 1-2 Code Generation 실습 LAB 1-3 DBIO 실습 ( 별첨 ) LAB 1-4 공통컴포넌트생성및조립도구실습 LAB 1-5 템플릿프로젝트생성실습 - 2 - LAB 1-1 프로젝트생성실습 (1/2) Step 1-1-01. 구현도구에서 egovframe>start>new

More information

Microsoft PowerPoint SDK설치.HelloAndroid(1.5h).pptx

Microsoft PowerPoint SDK설치.HelloAndroid(1.5h).pptx To be an Android Expert 문양세강원대학교 IT 대학컴퓨터학부 개발환경구조및설치순서 JDK 설치 Eclipse 설치 안드로이드 SDK 설치 ADT(Androd Development Tools) 설치 AVD(Android Virtual Device) 생성 Hello Android! 2 Eclipse (IDE) JDK Android SDK with

More information

지난시간에... 우리는 kernel compile을위하여 cross compile 환경을구축했음. UBUNTU 12.04에서 arm-2009q3를사용하여 간단한 c source를빌드함. 한번은 intel CPU를위한 gcc로, 한번은 ARM CPU를위한 gcc로. AR

지난시간에... 우리는 kernel compile을위하여 cross compile 환경을구축했음. UBUNTU 12.04에서 arm-2009q3를사용하여 간단한 c source를빌드함. 한번은 intel CPU를위한 gcc로, 한번은 ARM CPU를위한 gcc로. AR Configure Kernel Build Environment And kernel & root file system Build 2018-09-27 VLSI Design Lab 1 지난시간에... 우리는 kernel compile을위하여 cross compile 환경을구축했음. UBUNTU 12.04에서 arm-2009q3를사용하여 간단한 c source를빌드함.

More information

슬라이드 1

슬라이드 1 - 1 - 전자정부모바일표준프레임워크실습 LAB 개발환경 실습목차 LAB 1-1 모바일프로젝트생성실습 LAB 1-2 모바일사이트템플릿프로젝트생성실습 LAB 1-3 모바일공통컴포넌트생성및조립도구실습 - 2 - LAB 1-1 모바일프로젝트생성실습 (1/2) Step 1-1-01. 구현도구에서 egovframe>start>new Mobile Project 메뉴를선택한다.

More information

고급 프로그래밍 설계

고급 프로그래밍 설계 UNIT 13 라즈베리파이블루투스 광운대학교로봇 SW 교육원 최상훈 Bluetooth Module 2 Bluetooth Slave UART Board UART 인터페이스용블루투스모듈 slave/device mode 라즈베리파이 GPIO 3 < 라즈베리파이 B+ 의 P1 헤더핀 GPIO 배치도 > wiringpi 라이브러리 4 라즈베리파이 GPIO 라이브러리

More information

본 강의에 들어가기 전

본 강의에 들어가기 전 C 기초특강 종합과제 과제내용 구조체를이용하여교과목이름과코드를파일로부터입력받아관리 구조체를이용하여학생들의이름, 학번과이수한교과목의코드와점수를파일로부터입력 학생개인별총점, 평균계산 교과목별이수학생수, 총점및평균을계산 결과를파일에저장하는프로그램을작성 2 Makefile OBJS = score_main.o score_input.o score_calc.o score_print.o

More information

(Microsoft PowerPoint - AndroG3\306\367\306\303\(ICB\).pptx)

(Microsoft PowerPoint - AndroG3\306\367\306\303\(ICB\).pptx) w w w. g b t e c. c o. k r 6 안드로이드 App 적용하기 115 1. 안드로이드개요 모바일 OS 의종류 - 스마트폰 : 스마트폰운영체제탑재 애플의 IOS(iPhone OS) - 아이폰, 아이패드, 아이팟터치 구글의안드로이드 - Nexus, 갤럭시 A, S, 모토로이, 시리우스,... MS 의윈도우모바일 ( 윈도우폰 7) - 옴니아 2,

More information

untitled

untitled 시스템소프트웨어 : 운영체제, 컴파일러, 어셈블러, 링커, 로더, 프로그래밍도구등 소프트웨어 응용소프트웨어 : 워드프로세서, 스프레드쉬트, 그래픽프로그램, 미디어재생기등 1 n ( x + x +... + ) 1 2 x n 00001111 10111111 01000101 11111000 00001111 10111111 01001101 11111000

More information

Sena Technologies, Inc. HelloDevice Super 1.1.0

Sena Technologies, Inc. HelloDevice Super 1.1.0 HelloDevice Super 110 Copyright 1998-2005, All rights reserved HelloDevice 210 ()137-130 Tel: (02) 573-5422 Fax: (02) 573-7710 E-Mail: support@senacom Website: http://wwwsenacom Revision history Revision

More information

vi 사용법

vi 사용법 네트워크프로그래밍 6 장과제샘플코드 - 1:1 채팅 (udp 버전 ) 과제 서버에서먼저 bind 하고그포트를다른사람에게알려줄것 클라이언트에서알려준포트로접속 서로간에키보드입력을받아상대방에게메시지전송 2 Makefile 1 SRC_DIR =../../common 2 COM_OBJS = $(SRC_DIR)/addressUtility.o $(SRC_DIR)/dieWithMessage.o

More information

을풀면된다. 2. JDK 설치 JDK 는 Sun Developer Network 의 Java( 혹은 에서 Download > JavaSE 에서 JDK 6 Update xx 를선택하면설치파일을

을풀면된다. 2. JDK 설치 JDK 는 Sun Developer Network 의 Java(  혹은   에서 Download > JavaSE 에서 JDK 6 Update xx 를선택하면설치파일을 안드로이드설치및첫번째예제 안드로이드설치 안드로이드개발킷은안드로이드개발자사이트 (http://developer.android.com/) 에서다운로드받을수있으며현재 1.5 버전으로윈도우즈, 맥 OS X( 인텔 ), 리눅스플랫폼패키지가링크되어져있다. 안드로이드개발킷을설치하기위해서는다음과같은시스템환경이갖추어져있어야한다. 플랫폼 Windows Mac Linux 지원환경

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 DEVELOPMENT ENVIRONMENT 2 MAKE Jo, Heeseung MAKE Definition make is utility to maintain groups of programs Object If some file is modified, make detects it and update files related with modified one 2

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 (Host) set up : Linux Backend RS-232, Ethernet, parallel(jtag) Host terminal Target terminal : monitor (Minicom) JTAG Cross compiler Boot loader Pentium Redhat 9.0 Serial port Serial cross cable Ethernet

More information

강의10

강의10 Computer Programming gdb and awk 12 th Lecture 김현철컴퓨터공학부서울대학교 순서 C Compiler and Linker 보충 Static vs Shared Libraries ( 계속 ) gdb awk Q&A Shared vs Static Libraries ( 계속 ) Advantage of Using Libraries Reduced

More information

슬라이드 1

슬라이드 1 Subclipse 1. 도구개요 2. 설치및실행 3. 주요기능 4. 활용예제 1. 도구개요 도구명 Subclipse (http://subclipse.tigris.org/) 라이선스 Eclipse Public License v1.0 소개 Subversion( 이하 svn) 용 Eclipse 플러그인 SVN 을만든 Tigris.org 에서만든클라이언트툴 Java

More information

< E20C6DFBFFEBEEE20C0DBBCBAC0BB20C0A7C7D12043BEF0BEEE20492E707074>

< E20C6DFBFFEBEEE20C0DBBCBAC0BB20C0A7C7D12043BEF0BEEE20492E707074> Chap #2 펌웨어작성을위한 C 언어 I http://www.smartdisplay.co.kr 강의계획 Chap1. 강의계획및디지털논리이론 Chap2. 펌웨어작성을위한 C 언어 I Chap3. 펌웨어작성을위한 C 언어 II Chap4. AT89S52 메모리구조 Chap5. SD-52 보드구성과코드메모리프로그래밍방법 Chap6. 어드레스디코딩 ( 매핑 ) 과어셈블리어코딩방법

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 Development Environment 2 Jo, Heeseung make make Definition make is utility to maintain groups of programs Object If some file is modified, make detects it and update files related with modified one It

More information

슬라이드 1

슬라이드 1 개발홖경구축 시작하면서 2 목차 소프트웨어다운로드 JDK 설치및설정 안드로이드 SDK 설치및설정 이클립스설치및설정 안드로이드 SDK 둘러보기 소프트웨어다운로드 설치준비 4 필요한소프트웨어 JDK 5.0 이상 안드로이드 SDK 이클립스 다운로드할폴더생성 D:\android 폴더생성 D:\android\software 폴더생성 JDK 다운로드 5 JAVA 웹사이트접속

More information

C. KHU-EE xmega Board 에서는 Button 을 2 개만사용하기때문에 GPIO_PUSH_BUTTON_2 과 GPIO_PUSH_BUTTON_3 define 을 Comment 처리 한다. D. AT45DBX 도사용하지않기때문에 Comment 처리한다. E.

C. KHU-EE xmega Board 에서는 Button 을 2 개만사용하기때문에 GPIO_PUSH_BUTTON_2 과 GPIO_PUSH_BUTTON_3 define 을 Comment 처리 한다. D. AT45DBX 도사용하지않기때문에 Comment 처리한다. E. ASF(Atmel Software Framework) 환경을이용한프로그램개발 1. New Project Template 만들기 A. STK600 Board Template를이용한 Project 만들기 i. New Project -> Installed(C/C++) -> GCC C ASF Board Project를선택하고, 1. Name: 창에 Project Name(

More information

Microsoft PowerPoint - 10-EmbedSW-11-모듈

Microsoft PowerPoint - 10-EmbedSW-11-모듈 11. 개요 proc 파일시스템 순천향대학교컴퓨터학부이상정 1 개요 순천향대학교컴퓨터학부이상정 2 개요 커널프래그래밍 커널의일부변경시커널전체를다시컴파일해야하는번거로움 해당모듈만컴파일하고필요할때만동적으로링크시켜커널의일부로사용할수있어효율적 자주사용하지않는커널기능은메모리에상주시키지않아도됨 확장성과재사용성을높일수있음. 순천향대학교컴퓨터학부이상정 3 모듈 (module)

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 LED Device Control - mmap() Jo, Heeseung 디바이스제어 디바이스제어 HBE-SM5-S4210 에장착된 Peripheral 들은다양한인터페이스로연결되어있음 베이스보드에있는 LED 와 7-Segment 는 GPIO 로직접 CPU 에연결 M3 모듈인 FPGA 모듈은 FPGA 에의해서제어되며 CPU 와호스트버스로연결되어있어서프로그램에서는메모리인터페이스로인식

More information

iii. Design Tab 을 Click 하여 WindowBuilder 가자동으로생성한 GUI 프로그래밍환경을확인한다.

iii. Design Tab 을 Click 하여 WindowBuilder 가자동으로생성한 GUI 프로그래밍환경을확인한다. Eclipse 개발환경에서 WindowBuilder 를이용한 Java 프로그램개발 이예는 Java 프로그램의기초를이해하고있는사람을대상으로 Embedded Microcomputer 를이용한제어시스템을 PC 에서 Serial 통신으로제어 (Graphical User Interface (GUI) 환경에서 ) 하는프로그램개발예를설명한다. WindowBuilder:

More information

임베디드시스템설계강의자료 6 system call 1/2 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과

임베디드시스템설계강의자료 6 system call 1/2 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과 임베디드시스템설계강의자료 6 system call 1/2 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과 시스템호출개요 리눅스에서는사용자공간과커널공간을구분 사용자프로그램은사용자모드, 운영체제는커널모드에서수행 커널공간에대한접근은커널 ( 특권, priviledged) 모드에서가능 컴퓨팅자원 (CPU, memory, I/O 등 ) 을안전하게보호 커널수행을안전하게유지

More information

/chroot/lib/ /chroot/etc/

/chroot/lib/ /chroot/etc/ 구축 환경 VirtualBox - Fedora 15 (kernel : 2.6.40.4-5.fc15.i686.PAE) 작동 원리 chroot유저 ssh 접속 -> 접속유저의 홈디렉토리 밑.ssh의 rc 파일 실행 -> daemonstart실행 -> daemon 작동 -> 접속 유저만의 Jail 디렉토리 생성 -> 접속 유저의.bashrc 의 chroot 명령어

More information

MF5900 Series MF Driver Installation Guide

MF5900 Series MF Driver Installation Guide 한국어 MF 드라이버설치설명서 사용자소프트웨어 CD-ROM................................................ 1.................................................................... 1..............................................................................

More information

B.3 JDBC 설치 JDBC Java DataBase Connectivity 는자바에서 DBMS의종류에상관없이일관된방법으로 SQL을수행할수있도록해주는자바 API Application Program Interface 다. 이책에서는톰캣과 SQL Server 간의연결을위

B.3 JDBC 설치 JDBC Java DataBase Connectivity 는자바에서 DBMS의종류에상관없이일관된방법으로 SQL을수행할수있도록해주는자바 API Application Program Interface 다. 이책에서는톰캣과 SQL Server 간의연결을위 B.3 JDBC 설치 JDBC Java DataBase Connectivity 는자바에서 DBMS의종류에상관없이일관된방법으로 SQL을수행할수있도록해주는자바 API Application Program Interface 다. 이책에서는톰캣과 SQL Server 간의연결을위해서설치한다. http://www.microsoft.com/ko-kr/download에접속해

More information

Chapter #01 Subject

Chapter #01  Subject Device Driver March 24, 2004 Kim, ki-hyeon 목차 1. 인터럽트처리복습 1. 인터럽트복습 입력검출방법 인터럽트방식, 폴링 (polling) 방식 인터럽트서비스등록함수 ( 커널에등록 ) int request_irq(unsigned int irq, void(*handler)(int,void*,struct pt_regs*), unsigned

More information

ISP and CodeVisionAVR C Compiler.hwp

ISP and CodeVisionAVR C Compiler.hwp USBISP V3.0 & P-AVRISP V1.0 with CodeVisionAVR C Compiler http://www.avrmall.com/ November 12, 2007 Copyright (c) 2003-2008 All Rights Reserved. USBISP V3.0 & P-AVRISP V1.0 with CodeVisionAVR C Compiler

More information

1. 자바프로그램기초 및개발환경 2 장 & 3 장. 자바개발도구 충남대학교 컴퓨터공학과

1. 자바프로그램기초 및개발환경 2 장 & 3 장. 자바개발도구 충남대학교 컴퓨터공학과 1. 자바프로그램기초 및개발환경 2 장 & 3 장. 자바개발도구 충남대학교 컴퓨터공학과 학습내용 1. Java Development Kit(JDK) 2. Java API 3. 자바프로그래밍개발도구 (Eclipse) 4. 자바프로그래밍기초 2 자바를사용하려면무엇이필요한가? 자바프로그래밍개발도구 JDK (Java Development Kit) 다운로드위치 : http://www.oracle.com/technetwork/java/javas

More information

슬라이드 1

슬라이드 1 IntelliJ IDEA 1. 도구개요 2. 설치및실행 3. 주요기능 1. 도구개요 도구명 IntelliJ IDEA (http://www.jetbrains.com/idea/) 라이선스 Apache 2 소개 Java 용통합개발도구 요구사항을정의하고전체개발과정에서요구사항을추적할수있도록지원. 특징 Java IDE 환경제공 모바일및엔터프라이저개발을위한프레임워크제공

More information

Microsoft PowerPoint - chap02-C프로그램시작하기.pptx

Microsoft PowerPoint - chap02-C프로그램시작하기.pptx #include int main(void) { int num; printf( Please enter an integer "); scanf("%d", &num); if ( num < 0 ) printf("is negative.\n"); printf("num = %d\n", num); return 0; } 1 학습목표 을 작성하면서 C 프로그램의

More information

PA for SWE2007

PA for SWE2007 CSE3047-41: Operating System Practice (Spring 2016) Programming Assignment #2: 1. Introduction Due: 18th April. (Mon), 11:59 PM I-Campus 과제내용을필히확인하세요. 이번과제에서는 Linux kernel 에새로운 system call 을추가하고, Tizen

More information

(Microsoft PowerPoint - \270\266\300\314\305\251\267\316\304\250USB_Host_Device_\272\316\306\256\267\316\264\365\275\307\275\300_Philip.ppt)

(Microsoft PowerPoint - \270\266\300\314\305\251\267\316\304\250USB_Host_Device_\272\316\306\256\267\316\264\365\275\307\275\300_Philip.ppt) 마이크로칩 USB Host & Device 부트로더기능실습 한국마이크로칩서한석부장 (CAE) 2009-09-07 마이크로칩 16 비트 USB 데모보드세팅 Explorer 16 + USB PICtail Plus Daughter Board + USB PIMs Part #: DM240001 Part #: AC164131 Part #: MA240014(PIC24FJ256GB11)

More information

제1장 Unix란 무엇인가?

제1장  Unix란 무엇인가? 1 12 장파이프 2 12.1 파이프 파이프원리 $ who sort 파이프 3 물을보내는수도파이프와비슷 한프로세스는쓰기용파일디스크립터를이용하여파이프에데이터를보내고 ( 쓰고 ) 다른프로세스는읽기용파일디스크립터를이용하여그파이프에서데이터를받는다 ( 읽는다 ). 한방향 (one way) 통신 파이프생성 파이프는두개의파일디스크립터를갖는다. 하나는쓰기용이고다른하나는읽기용이다.

More information

<4D F736F F F696E74202D20B8AEB4AABDBA20BFC0B7F920C3B3B8AEC7CFB1E22E BC8A3C8AF20B8F0B5E55D>

<4D F736F F F696E74202D20B8AEB4AABDBA20BFC0B7F920C3B3B8AEC7CFB1E22E BC8A3C8AF20B8F0B5E55D> 리눅스 오류처리하기 2007. 11. 28 안효창 라이브러리함수의오류번호얻기 errno 변수기능오류번호를저장한다. 기본형 extern int errno; 헤더파일 라이브러리함수호출에실패했을때함수예 정수값을반환하는함수 -1 반환 open 함수 포인터를반환하는함수 NULL 반환 fopen 함수 2 유닉스 / 리눅스 라이브러리함수의오류번호얻기 19-1

More information

C 프로그래밍 언어 입문 C 프로그래밍 언어 입문 김명호저 숭실대학교 출판국 머리말..... C, C++, Java, Fortran, Python, Ruby,.. C. C 1972. 40 C.. C. 1999 C99. C99. C. C. C., kmh ssu.ac.kr.. ,. 2013 12 Contents 1장 프로그래밍 시작 1.1 C 10 1.2 12

More information

<4D F736F F F696E74202D205BBAB0C3B75D20B8AEB4AABDBA20B5F0B9D9C0CCBDBA20B5E5B6F3C0CCB9F620B8F0B5A82E >

<4D F736F F F696E74202D205BBAB0C3B75D20B8AEB4AABDBA20B5F0B9D9C0CCBDBA20B5E5B6F3C0CCB9F620B8F0B5A82E > 안드로이드환경에서의 리눅스디바이스드라이버 문자디바이스드라이버설명 Table of contents 디바이스드라이버구조 시스템구조 모듈의기본골격 드라이버 IO 제어 안드로이드환경에서의 한백전자교육사업부 리눅스디바이스드라이버 시스템구조 쉘 응용프로그램 표준라이브러리 시스템콜 가상파일시스템 (VFS) 버퍼캐시 네트워크시스템 문자디바이스드라이버 블럭디바이스드라이버 네트워크디바이스드라이버

More information

교육지원 IT시스템 선진화

교육지원 IT시스템 선진화 Module 11: 가상디바이스드라이버작성 ESP30076 임베디드시스템프로그래밍 (Embedded System Programming) 조윤석 전산전자공학부 주차별목표 디바이스드라이버의실행과정이해하기 크로스컴파일러를이용하여가상의디바이스드라이버생성하기 Kbuild 에대해이해하기 2 file_operations 구조체 struct file_operations {

More information

chap7.key

chap7.key 1 7 C 2 7.1 C (System Calls) Unix UNIX man Section 2 C. C (Library Functions) C 1975 Dennis Ritchie ANSI C Standard Library 3 (system call). 4 C?... 5 C (text file), C. (binary file). 6 C 1. : fopen( )

More information

Microsoft Word - ntasFrameBuilderInstallGuide2.5.doc

Microsoft Word - ntasFrameBuilderInstallGuide2.5.doc NTAS and FRAME BUILDER Install Guide NTAS and FRAME BUILDER Version 2.5 Copyright 2003 Ari System, Inc. All Rights reserved. NTAS and FRAME BUILDER are trademarks or registered trademarks of Ari System,

More information

_USB JTAG Ver1.0 User's Manual.hwp

_USB JTAG Ver1.0 User's Manual.hwp Table of Contents 1. Size... 1 2. 주요구성품... 2 3. Target Interface Connectors... 3 4. Install... 4 5. 동작설명... 7 1. Size 1.1 W H : 118mm 75mm 1.2 D : 25.2mm http://cafe.naver.com/seogarae 1 2. 주요구성품 2.1 USB

More information

Lab 3. 실습문제 (Single linked list)_해답.hwp

Lab 3. 실습문제 (Single linked list)_해답.hwp Lab 3. Singly-linked list 의구현 실험실습일시 : 2009. 3. 30. 담당교수 : 정진우 담당조교 : 곽문상 보고서제출기한 : 2009. 4. 5. 학과 : 학번 : 성명 : 실습과제목적 : 이론시간에배운 Singly-linked list를실제로구현할수있다. 실습과제내용 : 주어진소스를이용해 Singly-linked list의각함수를구현한다.

More information

61 62 63 64 234 235 p r i n t f ( % 5 d :, i+1); g e t s ( s t u d e n t _ n a m e [ i ] ) ; if (student_name[i][0] == \ 0 ) i = MAX; p r i n t f (\ n :\ n ); 6 1 for (i = 0; student_name[i][0]!= \ 0&&

More information

MPLAB C18 C

MPLAB C18 C MPLAB C18 C MPLAB C18 MPLAB C18 C MPLAB C18 C #define START, c:\mcc18 errorlevel{0 1} char isascii(char ch); list[list_optioin,list_option] OK, Cancel , MPLAB IDE User s Guide MPLAB C18 C

More information

Microsoft Word - Modelsim_QuartusII타이밍시뮬레이션.doc

Microsoft Word - Modelsim_QuartusII타이밍시뮬레이션.doc Modelsim 과 Quartus II 를이용한설계방법 퀀텀베이스연구개발실, 경기도부천시원미구상동 546-2, 두성프라자 1-606 TEL: 032-321-0195, FAX: 032-321-0197, Web site: www.quantumbase.com 최근 Modelsim은 PC에포팅되어있는것에힘입어많은설계자들이사용하고있습니다이에 Modelsim을이용하여설계하고,

More information

<4D F736F F D D31312D30312D53572D30312DBBE7BFEBC0DABCB3B8EDBCAD5FBFDCBACEB9E8C6F7BFEB2E646F63>

<4D F736F F D D31312D30312D53572D30312DBBE7BFEBC0DABCB3B8EDBCAD5FBFDCBACEB9E8C6F7BFEB2E646F63> SAM4S Printer Driver Installer 달리명시하지않은한, 인쇄또는복사된문서는통제하지않는문서임 목 차 1. 1. WINDOWS DRIVER INSTALLER 설치 설치...... 2 2. 프린터추가...... 5 3. 프린터제거...... 19 4. 프린터추가 / 제거선택...... 21 5. 프로그램추가 / 제거...... 21 SHC- 11-01-

More information

MF3010 MF Driver Installation Guide

MF3010 MF Driver Installation Guide 한국어 MF 드라이버설치설명서 사용자소프트웨어 CD-ROM................................................ 1.................................................................... 1..............................................................................

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 유니티와아두이노를활용한 VR 컨트롤러개발 Part 06 헬로앱스코딩교육 김영준 공학박사, 목원대학교겸임교수前 Microsoft 수석연구원 splduino@gmail.com http://www.helloapps.co.kr 키보드로물체생성하기 키보드로물체생성하기 public GameObject CubeObject; public GameObject MyCamera;

More information

슬라이드 1

슬라이드 1 -Part3- 제 4 장동적메모리할당과가변인 자 학습목차 4.1 동적메모리할당 4.1 동적메모리할당 4.1 동적메모리할당 배울내용 1 프로세스의메모리공간 2 동적메모리할당의필요성 4.1 동적메모리할당 (1/6) 프로세스의메모리구조 코드영역 : 프로그램실행코드, 함수들이저장되는영역 스택영역 : 매개변수, 지역변수, 중괄호 ( 블록 ) 내부에정의된변수들이저장되는영역

More information

untitled

untitled - -, (insert) (delete) - - (insert) (delete) (top ) - - (insert) (rear) (delete) (front) A A B top A B C top push(a) push(b) push(c) A B top pop() top A B D push(d) top #define MAX_STACK_SIZE 100 int

More information

Chapter_02-3_NativeApp

Chapter_02-3_NativeApp 1 TIZEN Native App April, 2016 Dept. of software Dankook University http://embedded.dankook.ac.kr/~baeksj 목차 2 Tizen EFL Tizen EFL 3 Tizen EFL Enlightment Foundation Libraries 타이젠핵심코어툴킷 Tizen EFL 4 Tizen

More information

5.스택(강의자료).key

5.스택(강의자료).key CHP 5: https://www.youtube.com/watch?v=ns-r91557ds ? (stack): (LIFO:Last-In First-Out):. D C B C B C B C B (element) C (top) B (bottom) (DT) : n element : create() ::=. is_empty(s) ::=. is_full(s) ::=.

More information

Microsoft PowerPoint - chap01-C언어개요.pptx

Microsoft PowerPoint - chap01-C언어개요.pptx #include int main(void) { int num; printf( Please enter an integer: "); scanf("%d", &num); if ( num < 0 ) printf("is negative.\n"); printf("num = %d\n", num); return 0; } 1 학습목표 프로그래밍의 기본 개념을

More information

Mango-E-Toi Board Developer Manual

Mango-E-Toi Board Developer Manual Mango-E-Toi Board Developer Manual http://www.mangoboard.com/ http://cafe.naver.com/embeddedcrazyboys Crazy Embedded Laboratory www.mangoboard.com cafe.naver.com/embeddedcrazyboys CRZ Technology 1 Document

More information

*Revision History 날짜 내용 최초작성 Tel Fax [2] page

*Revision History 날짜 내용 최초작성 Tel Fax [2] page MSP430-SDS100i 매뉴얼 V1.0 Tel. 031-781-2812 Fax. 031-706-2834 E-mail. dsptools@syncworks.co.kr [1] page *Revision History 날짜 내용 2013. 07. 010 최초작성 Tel. 031-781-2812 Fax. 031-706-2834 E-mail. dsptools@syncworks.co.kr

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 Web server porting 2 Jo, Heeseung Web 을이용한 LED 제어 Web 을이용한 LED 제어프로그램 web 에서데이터를전송받아타겟보드의 LED 를조작하는프로그램을작성하기위해다음과같은소스파일을생성 2 Web 을이용한 LED 제어 LED 제어프로그램작성 8bitled.html 파일을작성 root@ubuntu:/working/web# vi

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 Linux Kernel and Device Driver Jo, Heeseung 커널과의관계 시스템이지원하는하드웨어를응용프로그램에서사용할수있도록커널에서제공하는라이브러리 응용프로그램이하드웨어를제어하려면커널에자원을요청 - 응용프로그램에서는 C 라이브러리같은함수를호출 - 라이브러리내부에서는커널에게시스템콜을호출 - 커널로제어가넘어가게되면 ( 커널모드 ) 를통해서하드웨어를제어

More information

슬라이드 제목 없음

슬라이드 제목 없음 < > Target cross compiler Target code Target Software Development Kit (SDK) T-Appl T-Appl T-VM Cross downloader Cross debugger Case 1) Serial line Case 2) LAN line LAN line T-OS Target debugger Host System

More information

RealDSP UT 프로그램 메뉴얼

RealDSP UT 프로그램 메뉴얼 Motorola Programmer ( 모델명 : MDProg16) 사용설명서 UUU 리얼시스 (RealSYS) Web: www.realsys.co.kr Tel: 031-420-4326 Fax: 031-420-4329-1 - 1. Motorola Programmer 프로그램특징 A. JTAG & OnCE 기능을이용한 Motorola 의내부플래시메모리 Writing

More information

Mango-IMX6Q mfgtool을 이용한 이미지 Write하기

Mango-IMX6Q mfgtool을 이용한 이미지 Write하기 Mango-IMX6Q mfgtool 을 이용한이미지 Write 하기 http://www.mangoboard.com/ http://cafe.naver.com/embeddedcrazyboys Crazy Embedded Laboratory www.mangoboard.com cafe.naver.com/embeddedcrazyboys CRZ Technology 1 Document

More information

tut_modelsim(student).hwp

tut_modelsim(student).hwp ModelSim 사용법 1. ModelSim-Altera 를이용한 Function/RTL 시뮬레이션 1.1. 테스트벤치를사용하지않는명령어기반시뮬레이션 1.1.1. 시뮬레이션을위한하드웨어 A B S C 그림 1. 반가산기 1.1.2. 작업디렉토리 - File - Change Directory 를클릭하여작업디렉토리지정. 1.1.3. 소스파일작성 - 모델심편집기나기타편집기가능

More information

BMP 파일 처리

BMP 파일 처리 BMP 파일처리 김성영교수 금오공과대학교 컴퓨터공학과 학습내용 영상반전프로그램제작 2 Inverting images out = 255 - in 3 /* 이프로그램은 8bit gray-scale 영상을입력으로사용하여반전한후동일포맷의영상으로저장한다. */ #include #include #define WIDTHBYTES(bytes)

More information

Microsoft PowerPoint - chap13-입출력라이브러리.pptx

Microsoft PowerPoint - chap13-입출력라이브러리.pptx #include int main(void) int num; printf( Please enter an integer: "); scanf("%d", &num); if ( num < 0 ) printf("is negative.\n"); printf("num = %d\n", num); return 0; 1 학습목표 스트림의 기본 개념을 알아보고,

More information

Microsoft PowerPoint - 02-Development-Environment-1.ppt

Microsoft PowerPoint - 02-Development-Environment-1.ppt 개발환경 1 임베디드시스템소프트웨어 I 차례 개발환경 Host와 Target의연결 Host 및 target 사양 Toolchain이란, 설치방법 시험 Cross Compile Minicom 설정및사용방법 JTAG 설치및사용방법 Bootloader, kernel, file system flash 방법 개발환경 1 2 개발환경 Host 시스템 임베디드소프트웨어를개발하는시스템

More information

Microsoft PowerPoint - lab15.pptx

Microsoft PowerPoint - lab15.pptx Mobile & Embedded System Lab. Dept. of Computer Engineering Kyung Hee Univ. TextLCD Device Control in Embedded Linux M3 모듈에장착되어있는 Tedxt LCD 장치를제어하는 App을개발 TextLCD는영문자와숫자일본어, 특수문자를표현하는데사용되는디바이스 HBE-SM5-S4210의

More information

<4D F736F F F696E74202D20C1A632C0E520C7C1B7CEB1D7B7A5B0B3B9DFB0FAC1A4>

<4D F736F F F696E74202D20C1A632C0E520C7C1B7CEB1D7B7A5B0B3B9DFB0FAC1A4> 쉽게풀어쓴 C 언어 Express 제 2 장프로그램개발과정 통합개발환경 통합개발환경 (IDE: integrated development environment) 에디터 + 컴파일러 + 디버거 Visual C++: 이클립스 (eclipse): Dev-C++: 마이크로소프트제작 오픈소스프로젝트 오픈소스프로젝트 통합개발환경의종류 비주얼 C++(Visual C++)

More information

Microsoft PowerPoint - chap12-고급기능.pptx

Microsoft PowerPoint - chap12-고급기능.pptx #include int main(void) int num; printf( Please enter an integer: "); scanf("%d", &num); if ( num < 0 ) printf("is negative.\n"); printf("num = %d\n", num); return 0; 1 학습목표 가 제공하는 매크로 상수와 매크로

More information

목차 1. 시스템요구사항 암호및힌트설정 ( 윈도우 ) JetFlash Vault 시작하기 ( 윈도우 ) JetFlash Vault 옵션 ( 윈도우 )... 9 JetFlash Vault 설정... 9 JetFlash Vault

목차 1. 시스템요구사항 암호및힌트설정 ( 윈도우 ) JetFlash Vault 시작하기 ( 윈도우 ) JetFlash Vault 옵션 ( 윈도우 )... 9 JetFlash Vault 설정... 9 JetFlash Vault 사용자매뉴얼 JetFlash Vault 100 ( 버전 1.0) 1 목차 1. 시스템요구사항... 3 2. 암호및힌트설정 ( 윈도우 )... 3 3. JetFlash Vault 시작하기 ( 윈도우 )... 7 4. JetFlash Vault 옵션 ( 윈도우 )... 9 JetFlash Vault 설정... 9 JetFlash Vault 찾아보기... 10 JetFlash

More information

11장 포인터

11장 포인터 Dynamic Memory and Linked List 1 동적할당메모리의개념 프로그램이메모리를할당받는방법 정적 (static) 동적 (dynamic) 정적메모리할당 프로그램이시작되기전에미리정해진크기의메모리를할당받는것 메모리의크기는프로그램이시작하기전에결정 int i, j; int buffer[80]; char name[] = data structure"; 처음에결정된크기보다더큰입력이들어온다면처리하지못함

More information

À©µµ³×Æ®¿÷ÇÁ·Î±×·¡¹Ö4Àå_ÃÖÁ¾

À©µµ³×Æ®¿÷ÇÁ·Î±×·¡¹Ö4Àå_ÃÖÁ¾ P a 02 r t Chapter 4 TCP Chapter 5 Chapter 6 UDP Chapter 7 Chapter 8 GUI C h a p t e r 04 TCP 1 3 1 2 3 TCP TCP TCP [ 4 2] listen connect send accept recv send recv [ 4 1] PC Internet Explorer HTTP HTTP

More information

Microsoft PowerPoint - es-arduino-lecture-03

Microsoft PowerPoint - es-arduino-lecture-03 임베디드시스템개론 : Arduino 활용 Lecture #3: Button Input & FND Control 2012. 3. 25 by 김영주 강의목차 디지털입력 Button switch 입력 Button Debounce 7-Segment FND : 직접제어 7-Segment FND : IC 제어 2 디지털입력 : Switch 입력 (1) 실습목표 아두이노디지털입력처리실습

More information

윈도우시스템프로그래밍

윈도우시스템프로그래밍 데이터베이스및설계 MySQL 을위한 MFC 를사용한 ODBC 프로그래밍 2012.05.10. 오병우 컴퓨터공학과금오공과대학교 http://www.apmsetup.com 또는 http://www.mysql.com APM Setup 설치발표자료참조 Department of Computer Engineering 2 DB 에속한테이블보기 show tables; 에러발생

More information

03장.스택.key

03장.스택.key ---------------- DATA STRUCTURES USING C ---------------- 03CHAPTER 1 ? (stack): (LIFO:Last-In First-Out) 2 : top : ( index -1 ),,, 3 : ( ) ( ) -> ->. ->.... 4 Stack ADT : (LIFO) : init():. is_empty():

More information

Lab 4. 실습문제 (Circular singly linked list)_해답.hwp

Lab 4. 실습문제 (Circular singly linked list)_해답.hwp Lab 4. Circular singly-linked list 의구현 실험실습일시 : 2009. 4. 6. 담당교수 : 정진우 담당조교 : 곽문상 보고서제출기한 : 2009. 4. 12. 학과 : 학번 : 성명 : 실습과제목적 : 이론시간에배운 Circular Singly-linked list를실제로구현할수있다. 실습과제내용 : 주어진소스를이용해 Circular

More information

Microsoft Word - Armjtag_문서1.doc

Microsoft Word - Armjtag_문서1.doc ARM JTAG (wiggler 호환 ) 사용방법 ( IAR EWARM 에서 ARM-JTAG 로 Debugging 하기 ) Test Board : AT91SAM7S256 IAR EWARM : Kickstart for ARM ARM-JTAG : ver 1.0 ( 씨링크테크 ) 1. IAR EWARM (Kickstart for ARM) 설치 2. Macraigor

More information

망고100 보드로 놀아보자 -13

망고100 보드로 놀아보자 -13 리눅스디바이스드라이버개요 http://cafe.naver.com/embeddedcrazyboys http://www.mangoboard.com 디바이스드라이버개요 디바이스 (Device ) 네트워크어댑터, LCD 디스플레이, PCMCIA, Audio, 터미널, 키보드, 하드디스 크, 플로피디스크, 프린터등과같은주변장치들을말함 디바이스의구동에필요한프로그램, 즉디바이스드라이버가필수적으로요구

More information

1장. 유닉스 시스템 프로그래밍 개요

1장.  유닉스 시스템 프로그래밍 개요 Unix 프로그래밍및실습 7 장. 시그널 - 과제보충 응용과제 1 부모프로세스는반복해서메뉴를출력하고사용자로부터주문을받아자식프로세스에게주문내용을알린다. (SIGUSR1) ( 일단주문을받으면음식이완료되기전까지 SIGUSR1 을제외한다른시그널은모두무시 ) timer 자식프로세스는주문을받으면조리를시작한다. ( 일단조리를시작하면음식이완성되기전까지 SIGALARM 을제외한다른시그널은모두무시

More information

JDK이클립스

JDK이클립스 JDK 와이클립스설치 A. JDK 다운로드, 설치및환경설정 지금부터 JDK를다운로드받아설치하고 JDK를윈도우에서활용할수있도록환경을설정하는전과정을소개한다. 다운로드 www.oracle.com 사이트에접속하여 Downloads 메뉴를선택한후 [ 그림 1] 과같이 "Java for Developers" 를클릭한다. [ 그림 1] www.oracle.com 사이트

More information