PowerPoint Presentation

Size: px
Start display at page:

Download "PowerPoint Presentation"

Transcription

1 개발환경과 C 프로그래밍 마이크로컨트롤러 AVR ATmega128 저자 : 이상설 (slee@wku.ac.kr) 소속 : 원광대학교전기 정보통신공학부

2 학습목표 2/88 마이크로컨트롤러를이용한디지털시스템의구성과개발과정을 이해할수있다. 통합개발환경에서다운로드파일이생성되기까지컴파일과 링크가진행되는과정을이해할수있다. 통합개발환경에서툴체인 (AVR GCC) 의역할과최적화, make 와 Makefile 에대하여알수있다. AVR 툴체인, AVR Studo 4 를설치하는방법을실험할수있다.

3 학습목표 3/88 ATmega128 프로그래밍을위한기본적인 C 언어문법을이해할수 있다. AVR Studio 4 에서여러파일로구성된 LCD 디스플레이와 float( 부동소수점실수형숫자 ) 를출력하는프로젝트를실험할수 있다.

4 목차 4/88 1. 마이크로컨트롤러를이용한디지털시스템개발 2. 다운로드파일생성과교차컴파일러 3. 통합개발환경과 make, Makefile 4. 컴파일러최적화옵션과라이브러리링크 5. 개발환경구축 6. 프로그램개발과실행 ( 동영상 ) 7. ATmega128을위한 C 언어 8. LCD 디스플레이와 float 출력프로젝트 ( 동영상 ) 9. 하드웨어환경구축

5 Section 01 마이크로컨트롤러를이용한디지털시스템개발 5/88 마이크로컨트롤러와디지털시스템 디지털시스템 아날로그시스템과상대되는용어 마이크로컨트롤러가포함된디지털회로로, 사용자의목적에맞게장치를제어하기위한시스템

6 Section 01 마이크로컨트롤러를이용한디지털시스템개발 6/88 디지털시스템동작 ❶ 제어프로그램은장치제어를위해명령신호를출력 ❷ 장치는명령신호를입력받아명령에대한동작을수행 ❸ 마이크로컨트롤러를포함한디지털회로는아래신호를입력 명령신호에따라장치가작동되면서출력되는장치신호 외부상황을측정하는장치에서출력되는장치신호 사람이시스템동작을위해인가하는신호 ❹ 마이크로컨트롤러는입력신호를받아제어프로그램의진행상태를변경하면서장치제어를위해필요한출력을결정

7 Section 01 마이크로컨트롤러를이용한디지털시스템개발 7/88 장치 제품이거나전자소자또는부품으로만든장치 디지털회로에서명령신호가인가되면작동 디지털회로 마이크로컨트롤러를포함한 IC 및인터페이스소자들이연결된회로 제어프로그램이수행되면서만들어진명령신호는장치를작동시킴 마이크로컨트롤러 제어프로그램을수행하면서위의작업단계를수행시키는핵심제어부 IC 및인터페이스소자 외부장치를인터페이스하려면, IC를추가하거나인터페이스회로를설계하여장치와연결

8 Section 01 마이크로컨트롤러를이용한디지털시스템개발 8/88 ATmega128 을이용한디지털시스템개발과정

9 Section 01 마이크로컨트롤러를이용한디지털시스템개발 9/88 ❶ 요구분석 디지털시스템의요구사항정의 개발될디지털시스템이해결할수있는범위결정 ❷ 디지털시스템구성결정 요구사항을만족시키기위해디지털시스템구성 규격, 성능, 가격등을고려하여사용할장치또는부품결정 ❸ 디지털시스템회로설계 정보전달과장치구동을위해적합한전기신호가전달될수있도록회로설계 작성된회로도에따라준비된부품을사용하여하드웨어완성

10 Section 01 마이크로컨트롤러를이용한디지털시스템개발 10/88 ❹ 상태도를기반으로둔 ASM 차트를이용한제어프로그램설계및제작 제어부의동작을개략적인상태도로표현 ❸ 단계에서 ( 결정된회로에서 ) 마이크로컨트롤러와연결된출력및입력신호선으로장치에적절한명령신호를전달하거나정보를입력하도록구체적인상태도 구체적인상태도를 ASM(Algorithmic State Machine) 차트로변환 ASM 차트를 while(1) 반복문에포함된 switch( )-case 문으로변환하여제어프로그램완성 ❺ 통합개발환경에서컴파일, 링크에의한다운로드파일생성 AVR Studio 에서프로젝트생성 교차컴파일러 avr_gcc 를사용하여목적파일과다운로드파일생성

11 Section 01 마이크로컨트롤러를이용한디지털시스템개발 11/88 ❻ 다운로드파일을플래시프로그램메모리에다운로드 SPI(Serial Pheriperal Interface) 인터페이스로, ISP(In-System Programming) 다운로드 JTAG 인터페이스로다운로드 ❼ 하드웨어와소프트웨어디버깅 JTAG 에뮬레이터 ( 하드웨어디버거 ) 를사용하여프로그램동작상태를점검하면서소프트웨어디버깅 외부장치에오실로스코프또는테스터기등을이용하여신호를측정하며, 하드웨어디버깅 디버깅과정에서오류가발견되면, 이전과정에서오류를수정하면서디지털시스템완성

12 Section 02 다운로드파일생성과교차컴파일러 12/88 다운로드파일생성과교차컴파일러

13 Section 02 다운로드파일생성과교차컴파일러 13/88 번역 C 언어로작성한원시프로그램은컴파일러에의해, 컴파일과정을거쳐기계어로번역하여목적파일생성 어셈블리언어로작성한원시프로그램은어셈블러에의해, 어셈블과정을거쳐기계어로번역하여목적파일생성 자주사용되는 printf( ), scanf( ) 와같은함수는미리기계어로번역된목적파일의집합인라이브러리에제공 링크 링커는링크과정에서라이브러리를포함한여러개의목적파일을탐색하여같은이름의함수와변수를찾아주소를확정하여연결

14 Section 02 다운로드파일생성과교차컴파일러 14/88 다운로드파일 플래시프로그램메모리, EEPROM에다운로드될파일은 AVR Studio에서인텔 ( 사 ) 의 HEX 파일형식사용» : 로구분된시작코드» 각레코드에는다운로드될 byte 수 ( 데이터크기 )» 다운로드될주소» 레코드타입» 다운로드될데이터» 체크섬 ELF(Executable and Linkable Format) 파일형식은실행코드, 목적코드, 공유라이브러리를포함하는표준파일형식 JTAG 인터페이스로 AVR Studio 에서디버깅할때, ELF 형식의파일사용

15 Section 02 다운로드파일생성과교차컴파일러 15/88

16 Section 02 다운로드파일생성과교차컴파일러 16/88 2 의보수와 2 의보수수체계 2 진수 X 의 2 의보수 (2's complement) ( 예시 ) 16 진수 58 을 8 비트크기에서 2 의보수로표현 2 의보수수체계 (2's complement number system)» 음수를같은크기의양수에대한 2의보수로나타내는숫자체계» 대부분컴퓨터와통신에서정수는 2의보수수체계사용

17 Section 02 다운로드파일생성과교차컴파일러 17/88 툴체인과교차컴파일러 툴체인 작업중인컴퓨터에서, 다른 CPU 에실행될기계어프로그램을생성하기위한프로그래밍툴의집합

18 Section 02 다운로드파일생성과교차컴파일러 18/88 교차컴파일러 보통 C 언어로 ATmega128에다운로드될프로그램을 PC에서개발 펜티엄 CPU을가진 PC에서, 타깃 CPU인 ATmega128로교차시켜컴파일하는교차컴파일러 (Cross Compiler) 필요 WinAVR 에포함된 C 언어교차컴파일러 avr-gcc.exe 파일 C++ 언어로프로그래밍할경우 avr-gcc++.exe 파일

19 Section 03 통합개발환경과 make, Makefile 19/88 make 여러개의소스파일로부터자동으로목적파일을만들수있도록의존관계와파일갱신시간정보로특정프로그램의실행지정 make 는 Makefile 에나열된파일간의존관계에따라, 조건이만족되었을때실행할프로그램수행 통합개발환경에서는 make 와 Makefile 을이용하여변경된소스프로그램을자동으로찾아필요한컴파일러, 어셈블러, 링커등의프로그램실행 Makefile Makefile 의구조는타깃, 선행조건, 명령으로구성 Makefile 의실행규칙은타깃파일과선행조건파일의갱신시간비교 선행조건이더최근이면아래줄에서 < 탭 > 문자뒤에있는명령실행

20 Section 03 통합개발환경과 make, Makefile 20/88 예시 main.c, foo.c, def.h 가모두최근에갱신된파일이라고가정 깊이우선탐색방법으로명령실행

21 Section 03 통합개발환경과 make, Makefile 21/88 타깃을찾아가며명령이실행되는흐름 프로그램실행순서

22 22/88 Section 04 컴파일러최적화옵션과라이브러리링크 최적화옵션과 volatile 지시어 프로그래머가작성한원시프로그램이타깃코드로변환될때 컴파일러에의해같은기능을유지하고, 크기는작게빠르게실행될수있게변환되는것이바람직함 이과정을최적화라하며, 옵션에따라크기와실행속도가달라짐 ( 예시 ) avr_gcc -Os main.c 생성되는타깃코드의크기를작게하는것을우선으로함

23 23/88 Section 04 컴파일러최적화옵션과라이브러리링크 최적화옵션의특징 -O0 최적화를하지않음 컴파일에걸리는시간을줄이고, 소스프로그램을대응되는명령어로변환 JTAG 인터페이스를사용하여디버깅할때는, 예측된값을정확히관찰할수있어야하므로, 최적화하지않는것이바람직함 -O 또는 -O1 가장기본적인최적화옵션 컴파일시간과컴파일할때사용되는메모리는더많이필요 -O2 -O1 옵션보다더욱많은최적화 gcc 컴파일러는메모리 - 속도절충은하지않지만, 가능한모든최적화기법수행 컴파일과정시간은더많이소요되지만, 코드크기는줄어듦 실행코드를배포하기위해서는이옵션이바람직함

24 Section 04 컴파일러최적화옵션과라이브러리링크 24/88 -O3 최고의최적화옵션 모든최적과옵션을활성화하고, 최적화진행 inline 기능을수행하여간단한함수호출은없애고, 프로그램내부로포함 크기는커질수있지만, 속도를높이기위해시도하는최적화옵션 마이크로컨트롤러에서는다운로드파일크기가너무커져바람직하지않음 -Os 코드의크기를줄이는목적으로수행 코드의크기를줄이면속도도향상될수있음 대부분마이크로컨트롤러는한정된크기의플래시프로그램메모리를사용하므로, 이옵션을사용하는것이바람직함

25 Section 04 컴파일러최적화옵션과라이브러리링크 25/88 ( 예시 ) 다운로드될프로그램크기비교

26 Section 04 컴파일러최적화옵션과라이브러리링크 26/88 volatile 지시어선언으로최적화제외 최적화가항상바람직한것은아님 최적화는속도를빠르게하고메모리사용량을줄일수있지만, 인터럽트를사용하는경우에는자칫원하지않는최적화실행 프로그램이설계와다르게작동할수있음 이러한오류를막기위해서는인터럽트서비스루틴에서사용할변수에 volatile 지시어를선언해서사용

27 Section 04 컴파일러최적화옵션과라이브러리링크 27/88 ( 예시 ) count 변수의 volatile 지시어사용 선언여부에따른컴파일결과 volatile unsigned char count=0; unsigned char count=0;

28 volatile unsigned char count=0;

29 unsigned char count=0;

30 Section 04 컴파일러최적화옵션과라이브러리링크 30/88 라이브러리와링커옵션 라이브러리 라이브러리는미리컴파일된목적파일의집합 라이브러리파일명은보통 lib로시작하고확장자는.a 일반프로그래머도아카이버 ar 명령으로라이브러리를만들어사용

31 Section 04 컴파일러최적화옵션과라이브러리링크 31/88 sin( ), tan( ), printf( ) 등과같은함수 GNU 에서컴파일된형태로묶어라이브러리모듈로제공 수학함수라이브러리사용방법 원시프로그램앞부분에 #include <math.h> 포함 : math.h 파일을열어주프로그램에서수학함수호출을위한프로토타입포함 링커옵션에 -lm 추가 링크과정에서 libm.a 라이브러리탐색 주프로그램에서호출한수학함수라이브러리를기계어와연결

32 Section 04 컴파일러최적화옵션과라이브러리링크 32/88 printf( ), scanf( ) 함수의부동소수점사용 printf( ) 함수 vfprintf( ) 함수를기본으로변형된함수 vfprintf( ) 함수는 % 문자뒤에 d, c, u, f, o, x 등매우다양한출력기능 타깃코드의크기를위한 3가지링커옵션

33 Section 04 컴파일러최적화옵션과라이브러리링크 33/88 scanf( ) 함수 vfscanf( ) 함수를기본으로변형된함수 vfscanf( ) 함수는 % 문자뒤에 d, c, u, f, o, x 등매우다양한입력기능 타깃코드의크기를위한 3 가지링커옵션

34 Section 05 개발환경구축 34/88 통합개발환경 AVR Studio 4 8 비트 AVR 을지원하는통합개발환경 프로그램편집 컴파일 링크 ISP 다운로드 디버깅

35 Section 05 개발환경구축 35/88 AVR Studio 5 8비트 AVR과 32비트 AVR을모두지원하는통합개발환경 Visual C++ 프로그래밍개발환경과유사하게작업할수있도록개선

36 Section 05 개발환경구축 36/88 다운로딩가능장비 AVR Dragon AVR ONE! JTAGICE mkii AVRISP mkii STK600 QT600 STK500 AVRISP JTAG ICE 디버깅가능장비 AVR Dragon AVR ONE! ICE200 ICE40 ICE50 JTAG ICE JTAGICE mkii AVR Studio 4 통합개발환경구축절차

37 Section 05 개발환경구축 37/88 AVR 툴체인과 AVR Studio 4 설치 AVR 툴체인설치 WinAVR 툴체인설치 다운로드» ATMEL 사의 AVR 시리즈의 RISC 형마이크로컨트롤러와 AVR32 시리즈를위한개방형소스소프트웨어툴의모음» WinAVR 설치가종료되면 C:\WinAVR 폴더에실행파일과다양한파일의툴체인이설치됨

38 Section 05 개발환경구축 38/88 AVR Studio 4 설치 에서 AVR Studio 4 다운로드 클릭하여설치

39 Section 05 개발환경구축 39/88 ISP 다운로더 / 디버거설치 SPI 채널을이용한다운로더 MOSI, MISO, SCK 의 3 가지신호선을이용한시리얼통신방식 6 핀또는 10 핀의다운로드핀으로구성

40 Section 05 개발환경구축 40/88 ISP 다운로드가진행되는동안, 신호가 SPI 신호와충돌유의

41 Section 05 개발환경구축 41/88 JTAG 인터페이스방식을이용한디버거 ICE 또는디버거라고도함 바운더리스캔 (Boundary Scan) 방식을이용하여 IC 내부를모니터링하고, 내용을변경할수있음 플래시프로그램메모리에다운로드기능은물론명령어진행을정지시키고내부레지스터및 SRAM 데이터를관찰할수있음 PF4(TCK), PF5(TMS), PF6(TDO), PF7(TDI) 을포함한 10핀인터페이스 10핀 SPI용 ISP 커넥터와혼돈되지않도록주의필요

42 Section 06 프로그램개발과실행 42/88 실험목적 (1) 프로젝트생성절차를알아본다. (2) 컴파일러, 링커의환경설정을알아본다. (3) 다운로드파일생성과정을알아본다. (4) 다운로더를설정하고, 연결하는방법을알아본다. (5) 디버깅방법을알아본다.

43 Section 06 프로그램개발과실행 43/88 실험절차 WinAVR 툴체인 WinAVR install.exe 또는그이후버전을클릭하여설치 AVR Studio 4( 버전 : 4.18) 에해당되는 AvrStudio4Setup.exe 을더블클릭하여 AVR Studio 4 설치 ISP 다운로더또는 JTAG 디버거디바이스드라이버설치만일 USB 를이용한 STK500 또는 JTAG ICE 호환제품을사용한다면, 설치된 USB 시리얼포트번호를기억 실험회로구성

44 Section 06 프로그램개발과실행 44/88 새로운프로젝트작성 계속 1 AVR GCC 선택, 프로젝트이름 2 프로젝트마다폴더생성 3 Location 영역에서저장폴더 4 [Finish] 버튼클릭

45 Section 06 프로그램개발과실행 45/88 Project Configuration Options 1 Device : atmega128 2 Frequencey : ATmega128 보드 주파수값입력 3 최적화 : -Os 선택 Project Options : Libraries sin( ), cos( ) 수학함수는 libm.a

46 Section 06 프로그램개발과실행 46/88 Project Options: Custom Options 추가옵션빈영역에입력후 [Add] WinAVR 툴체인설치시, External Tools 영역에표시

47 Section 06 프로그램개발과실행 47/88 편집창에서간단히프로그램작성

48 Section 06 프로그램개발과실행 48/88 Build Build Build 메뉴클릭혹은메뉴아이콘클릭 Makefile 규칙에따라, 앞에서설정한컴파일과링크수행 지정폴더에생성한파일확인 test.hex : 타깃인 ATmega128에다운로드될파일 test.elf : 디버깅에사용될파일 test.lss : 어셈블리코드와주소가포함된파일 test.map : 함수, 변수, 인터럽트서비스루틴의위치정보포함파일

49 Section 06 프로그램개발과실행 49/88 다운로드프로그래밍 Tools Program AVR Connect... 메뉴클릭 STK500 호환다운로더를이용하여, SPI 채널 ISP 다운로드사례 Port 는 Auto 또는설정된포트번호선택후 Connect

50 Section 06 프로그램개발과실행 50/88 ISP mode 다운로드 다운로드할 Input HEX File 탐색선정 보드연결케이블을 ISP 커넥터에연결 [Program] 버튼클릭 창아래쪽영역에 다운로드절차출력 단계별동작이 OK! 이면, 성공적인프로그래밍

51 Section 06 프로그램개발과실행 51/88 JTAG mode 디바이스로디버깅사례 Tools Program AVR Connect... Platform 과 Port 를선택하고 [Connect...] 버튼클릭 JTAG ICE 호환장치사례

52 Section 06 프로그램개발과실행 52/88 퓨즈비트의 JTAGEN 비트가활성화되지않은경우메시지창 SPI 핀을사용하는 ISP 다운로더로 JTAGEN 비트를활성화하여사용, 성공적인 JTAG mode 메시지창

53 Section 06 프로그램개발과실행 53/88 JTAG 인터페이스를이용하여디버깅 Debug Start Debugging 메뉴를클릭하여디버거선택창출현 Debug platform 과 Device 선택

54 Section 06 프로그램개발과실행 54/88 디버깅창 명령어단위로프로그램수행가능 Processor 영역, I/O View 영역, 메모리영역의데이터관찰및수정가능

55 Section 06 프로그램개발과실행 55/88 JTAG 인터페이스를이용한디버깅 특정위치에서프로그램수행이논리동작에서벗어나는경우, 원인을알아내는데유용 의심나는프로그램위치의명령어를하나씩추적하면서, 레지스터값, 프로그램카운터의동작, 외부입출력상황등을모니터링하고, 원인찾아디버깅

56 Section 07 ATmega128 을위한 C 언어 56/88 C 언어프로그램의구성

57 Section 07 ATmega128 을위한 C 언어 57/88 전역변수와지역변수, 변수는사용하기전에선언 전역변수» 함수밖에서선언된변수» 선언위치아래에있는함수에서만사용가능» 프로그램이종료될때까지유효 지역변수» 중괄호로내부에해당되는블록에선언된변수» 프로그램의실행위치가블록안으로진입될때자동으로생성» 블록을벗어나면소멸 함수는선언또는정의한후에사용 함수를호출하려면, 그파일앞에서반드시선언또는정의한후사용» ➊ 위치에서 LCD_str_write( ) 함수호출» main.c 파일내부에 LCD_str_write( ) 함수의동작이미리정의되어있음

58 Section 07 ATmega128 을위한 C 언어 58/88 #include 지시어는그위치에파일내용을펼쳐놓은것과같음 #include "lcd.h 는그위치에 lcd.h 파일을끼워펼쳐놓은것과같음 ➋, ➌ 위치에서 LCD_init( ) 와 LCD_data_write( ) 함수호출 lcd.h 파일내용중, ➏ 위치에함수 LCD_init( ) 와 LCD_data_write( ) 의반환자료형과매개변수에대한자료형선언 #include <stdio.h> 는 stdio.h 파일을라이브러리헤더폴더에서탐색 " " 안에적힌파일은현재작업폴더에서탐색 < > 안에적힌파일은이미정해진라이브러리헤더폴더에서탐색 sprintf( ) 함수는라이브러리헤더폴더의 stdio.h 파일에서프로토타입선언 _delay_ms( ) 함수는라이브러리헤더폴더의하위폴더인 util/delay.h 파일에서프로토타입선언

59 Section 07 ATmega128 을위한 C 언어 59/88 링크할때다른파일에서선언또는정의된변수와함수의주소가연결 링크가진행될때 main.o, lcd.o, libc.a( 라이브러리 ) 가같이결합 호출하는함수의시작주소를알아낼수있음 다른파일에서정의된변수의위치주소를알아낼수있음 함수와변수의주소를연결하여다운로드파일생성 #define 매크로로, 상수또는복잡한식을레이블로대응하여사용 #define MAX_LCD_STRING 0x40 MAX_LCD_STRING 레이블이등장하면 0x40 으로대치

60 Section 07 ATmega128 을위한 C 언어 60/88

61 Section 07 ATmega128 을위한 C 언어 61/88 타깃이 ATmega128 인 AVR GCC 컴파일러자료형 타깃프로세서를 ATmega128 로하는 AVR GCC 와펜티엄 CPU 로하는 Visual C++ 컴파일러에서각자료형의 byte 크기비교

62 Section 07 ATmega128 을위한 C 언어 62/88 부호지시어 char, int와같은정수형변수에부호지시어사용 부호지시어를표시하지않으면, signed로간주 Project Configuration Options» -funsigned-char 를선택하였다면 char 를 unsigned char 로간주 기타지시어

63 Section 07 ATmega128 을위한 C 언어 63/88 숫자상수표현 특이사항 : AVR GCC 는 2 진수표현을위해 0bxxx 형식사용가능 PC 의 Visual C++ 에서는사용할수없음

64 Section 07 ATmega128 을위한 C 언어 64/88 printf() 함수에서출력을위한 % 포맷

65 Section 07 ATmega128 을위한 C 언어 65/88 printf() 함수에서 float 와 double 데이터를출력하는설정 Project Configuration Options Custom Options Linker Options 아래옵션내용추가 -Wl,-u,vfprintf -lprintf_flt scanf( ) 함수에서 float와 double형데이터를입력하는설정 Project Configuration Options Custom Options Linker Options 아래옵션내용추가 -Wl,-u,vfscanf -lscanf_flt -lm

66 Section 07 ATmega128 을위한 C 언어 66/88 enum 열거자료형 ( 사례 1)» 각레이블에할당되는값은왼쪽부터 0, 1,» READY 값은 0, WAIT 값은 1,

67 Section 07 ATmega128 을위한 C 언어 67/88 프로그램흐름제어명령어 if( ) 조건문 ( 사례 1)» 조건식 a > b» 참이면 max=a; 명령실행» 거짓이면 max=b; 명령실행

68 Section 07 ATmega128 을위한 C 언어 68/88 삼항조건연산자? : 조건식» 참이면 1 위치의연산값을변수에할당» 거짓이면 2 위치의연산값을변수에할당 ( 사례 1)» a 와 b 중큰값을 max 변수에대입하는명령

69 Section 07 ATmega128 을위한 C 언어 69/88 while( ) 반복문 조건식 A 순서로반복 반복을중단하기위해서는반드시조건식이거짓 ( 사례 1) 10 회반복한후, while( ) 문종료 ( 사례 2) 무한반복

70 Section 07 ATmega128 을위한 C 언어 70/88 for(;;) 반복문 1 위치를처음 1 회실행하고난후, 조건식 A 2 순서를반복 break 명령이실행되면, 조건식에관계없이즉시 for(;;) 문종료 ( 사례 1) while() 반복문의 ( 사례 1) 과동일 ( 사례 2) 무한반복

71 Section 07 ATmega128 을위한 C 언어 71/88 switch( 식 )-case 분기문 식의연산결과와정수값이일치하는위치의 case 부분이수행 식의결과값과 case 정수 n 의일치값이없을때 default : 위치수행 break 명령 switch( 식 )-case 분기문종료, 그렇지않으면계속실행 ( 사례 1) A 와 B 를번갈아실행함

72 Section 07 ATmega128 을위한 C 언어 72/88 비트연산 비트 OR 연산자 동일한위치의비트끼리 OR 연산수행 둘중하나가 1 이면결과는 1, 다시말해서둘다 0 일때만 0 a control 연산 : control 비트값에따라통과혹은 1 로매스킹

73 Section 07 ATmega128 을위한 C 언어 73/88 비트 XOR 연산자 ^ 동일한위치의비트끼리 XOR 연산수행 둘이서로다르면결과는 1, 둘다같으면 0 a ^ control 연산 : control 비트값에따라통과혹은반전

74 Section 07 ATmega128 을위한 C 언어 74/88 비트 AND 연산자 & 동일한위치의비트끼리 AND 연산수행 둘중하나가 0 이면결과는 0, 둘다 1 일때만 1 a & control 연산 : control 비트값에따라통과혹은 0 으로매스킹

75 Section 07 ATmega128 을위한 C 언어 75/88 왼쪽비트천이연산자 << 변수를좌측으로 n 비트만큼천이 천이되면서우측비트는 0 값이채워짐 1 비트왼쪽으로천이할때, MSB 값이변하지않으면 2 를곱한결과

76 Section 07 ATmega128 을위한 C 언어 76/88 오른쪽비트천이연산자 >> 변수를좌측으로 n 비트만큼천이 천이되면서채워지는 MSB 비트값» signed int 또는 signed char 같은부호가있는정수는부호값유지» unsigned int 또는 unsigned char 의경우는 0 1 비트오른쪽으로천이하면 2 로나눈결과 ( 사례 1) 부호를유지하면서, 오른쪽으로천이되어 2 로나눈값 -32 ( 사례 2) 1 비트우측으로이동할때 MSB 는 0 이되고, 결과는 32

77 Section 07 ATmega128 을위한 C 언어 77/88 연산자의우선순위 우선순위에따라연산순서가정해짐 <<, >> 은같은우선순위이지만, 왼쪽에서오른쪽으로수행 1 연산결과는 4, 2 연산결과는 1, 3 연산결과는 5, 4 마지막연산결과대입 x 값은 5

78 Section 07 ATmega128 을위한 C 언어 78/88 연산자우선순위및연산방향

79 Section 08 LCD 디스플레이와 float 출력프로젝트 79/88 실험목적 (1) 여러개의파일로구성된프로젝트의컴파일과링크에의한다운로드파일생성 (2) 변수와함수는참조와호출에앞서선언또는정의확인 (3) LCD 디스플레이에 sprintf( ) 함수를이용하여변수값출력 (4) double형출력을위해링커옵션을변경하는방법확인 (5) sizeof( ) 명령으로자료형크기확인

80 Section 08 LCD 디스플레이와 float 출력프로젝트 80/88 실험회로

81 Section 08 LCD 디스플레이와 float 출력프로젝트 81/88 실험절차 부동소수점출력을위해링커옵션추가 -Wl,-u,vfprintf -lprintf_flt

82 Section 08 LCD 디스플레이와 float 출력프로젝트 82/88 실험결과 여러개의파일을 AVR Studio 에서연결하여컴파일하는방법 (video.zip 참고 / 3-8-1)

83 Section 08 LCD 디스플레이와 float 출력프로젝트 83/88 X, Y 값은부동소수점 %-5.1f 로출력 (video.zip 참고 / 3-8-2) A, B 는정수형 %-5d 로출력

84 Section 09 하드웨어환경구축 84/88 실험실습을위한하드웨어환경 핵심부품 ATmega128 보드, 5[V] 전원어댑터, 브레드보드, ISP 다운로더

85 Section 09 하드웨어환경구축 85/88 실험실습에필요한공구및부품을담을수있는보관가방 2~3명이함께팀을이루어실험 실습을수행하는것이바람직함

86 Section 09 하드웨어환경구축 86/88 핵심부품 : ATmega128 프로그래밍과실행에꼭필요한부품 기본부품 : 기타실험실습작업을쉽게할수있도록도와주는부품

87 Section 09 하드웨어환경구축 87/88 PWR B/D 책뒷면에 PCB 로제공 콘덴서, 저항, LED, 핀헤더를연결하여제작사용 5[V] 전원어댑터를연결하여, 브레드보드에꽂아배선하여사용

88 Section 09 하드웨어환경구축 88/88 작품제작을위한 PCB 여러종류의 PCB 를제공하여다양한프로젝트에활용지원 PCB 는 V- 컷팅되어있어, 필요한보드를잘라부품을조립한후사용

89 Section 09 하드웨어환경구축 89/88 실험준비를위한브레드보드배선과 PWR B/D 연결 (video.zip 참고 / 3-0)

90 IT CookBook, 마이크로컨트롤러 AVR ATmega128

PowerPoint Presentation

PowerPoint Presentation 개발환경과 C 프로그래밍 마이크로컨트롤러 AVR ATmega128 학습목표 2/76 마이크로컨트롤러를이용한디지털시스템의구성과개발과정을 이해할수있다. 통합개발환경에서다운로드파일이생성되기까지컴파일과 링크가진행되는과정을이해할수있다. 통합개발환경에서툴체인 (AVR GCC) 의역할과최적화, make 와 Makefile 에대하여알수있다. AVR 툴체인, AVR Studo

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

OCW_C언어 기초

OCW_C언어 기초 초보프로그래머를위한 C 언어기초 4 장 : 연산자 2012 년 이은주 학습목표 수식의개념과연산자및피연산자에대한학습 C 의알아보기 연산자의우선순위와결합방향에대하여알아보기 2 목차 연산자의기본개념 수식 연산자와피연산자 산술연산자 / 증감연산자 관계연산자 / 논리연산자 비트연산자 / 대입연산자연산자의우선순위와결합방향 조건연산자 / 형변환연산자 연산자의우선순위 연산자의결합방향

More information

Microsoft PowerPoint - chap04-연산자.pptx

Microsoft PowerPoint - chap04-연산자.pptx int num; printf( Please enter an integer: "); scanf("%d", &num); if ( num < 0 ) printf("is negative.\n"); printf("num = %d\n", num); } 1 학습목표 수식의 개념과 연산자, 피연산자에 대해서 알아본다. C의 를 알아본다. 연산자의 우선 순위와 결합 방향에

More information

슬라이드 1

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

More information

슬라이드 1

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

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

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

< 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

Microsoft PowerPoint - chap06-2pointer.ppt

Microsoft PowerPoint - chap06-2pointer.ppt 2010-1 학기프로그래밍입문 (1) chapter 06-2 참고자료 포인터 박종혁 Tel: 970-6702 Email: jhpark1@snut.ac.kr 한빛미디어 출처 : 뇌를자극하는 C프로그래밍, 한빛미디어 -1- 포인터의정의와사용 변수를선언하는것은메모리에기억공간을할당하는것이며할당된이후에는변수명으로그기억공간을사용한다. 할당된기억공간을사용하는방법에는변수명외에메모리의실제주소값을사용하는것이다.

More information

[ 마이크로프로세서 1] 2 주차 3 차시. 포인터와구조체 2 주차 3 차시포인터와구조체 학습목표 1. C 언어에서가장어려운포인터와구조체를설명할수있다. 2. Call By Value 와 Call By Reference 를구분할수있다. 학습내용 1 : 함수 (Functi

[ 마이크로프로세서 1] 2 주차 3 차시. 포인터와구조체 2 주차 3 차시포인터와구조체 학습목표 1. C 언어에서가장어려운포인터와구조체를설명할수있다. 2. Call By Value 와 Call By Reference 를구분할수있다. 학습내용 1 : 함수 (Functi 2 주차 3 차시포인터와구조체 학습목표 1. C 언어에서가장어려운포인터와구조체를설명할수있다. 2. Call By Value 와 Call By Reference 를구분할수있다. 학습내용 1 : 함수 (Function) 1. 함수의개념 입력에대해적절한출력을발생시켜주는것 내가 ( 프로그래머 ) 작성한명령문을연산, 처리, 실행해주는부분 ( 모듈 ) 자체적으로실행되지않으며,

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

슬라이드 1 마이크로컨트롤러 2 (MicroController2) 2 강 ATmega128 의 external interrupt 이귀형교수님 학습목표 interrupt 란무엇인가? 기본개념을알아본다. interrupt 중에서가장사용하기쉬운 external interrupt 의사용방법을학습한다. 1. Interrupt 는왜필요할까? 함수동작을추가하여실행시키려면? //***

More information

Microsoft PowerPoint - additional01.ppt [호환 모드]

Microsoft PowerPoint - additional01.ppt [호환 모드] 1.C 기반의 C++ part 1 함수 오버로딩 (overloading) 디폴트매개변수 (default parameter) 인-라인함수 (in-line function) 이름공간 (namespace) Jong Hyuk Park 함수 Jong Hyuk Park 함수오버로딩 (overloading) 함수오버로딩 (function overloading) C++ 언어에서는같은이름을가진여러개의함수를정의가능

More information

untitled

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

More information

프로그래밍개론및실습 2015 년 2 학기프로그래밍개론및실습과목으로본내용은강의교재인생능출판사, 두근두근 C 언어수업, 천인국지음을발췌수정하였음

프로그래밍개론및실습 2015 년 2 학기프로그래밍개론및실습과목으로본내용은강의교재인생능출판사, 두근두근 C 언어수업, 천인국지음을발췌수정하였음 프로그래밍개론및실습 2015 년 2 학기프로그래밍개론및실습과목으로본내용은강의교재인생능출판사, 두근두근 C 언어수업, 천인국지음을발췌수정하였음 CHAPTER 9 둘중하나선택하기 관계연산자 두개의피연산자를비교하는연산자 결과값은참 (1) 아니면거짓 (0) x == y x 와 y 의값이같은지비교한다. 관계연산자 연산자 의미 x == y x와 y가같은가? x!= y

More information

Microsoft PowerPoint - C프로그래밍-chap03.ppt [호환 모드]

Microsoft PowerPoint - C프로그래밍-chap03.ppt [호환 모드] Chapter 03 변수와자료형 2009 한국항공대학교항공우주기계공학부 (http://mercury.kau.ac.kr/sjkwon) 1 변수와자료유형 변수 프로그램에서자료값을임시로기억할수있는저장공간을변수 (variables) 변수 (Variables) 는컴퓨터의메모리인 RAM(Random Access Memory) 에저장 물건을담는박스라고생각한다면박스의크기에따라담을물건이제한됨

More information

A Dynamic Grid Services Deployment Mechanism for On-Demand Resource Provisioning

A Dynamic Grid Services Deployment Mechanism for On-Demand Resource Provisioning C Programming Practice (I) Contents 변수와상수 블록과변수의범위 수식과연산자 제어문과반복문 문자와문자열 배열, 포인터, 메모리관리 구조체 디버거 (gdb) 사용법 2/17 Reference The C Programming language, Brian W. Kernighan, Dennis M. Ritchie, Prentice-Hall

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

<4D F736F F F696E74202D203137C0E55FBFACBDC0B9AEC1A6BCD6B7E7BCC72E707074>

<4D F736F F F696E74202D203137C0E55FBFACBDC0B9AEC1A6BCD6B7E7BCC72E707074> SIMATIC S7 Siemens AG 2004. All rights reserved. Date: 22.03.2006 File: PRO1_17E.1 차례... 2 심벌리스트... 3 Ch3 Ex2: 프로젝트생성...... 4 Ch3 Ex3: S7 프로그램삽입... 5 Ch3 Ex4: 표준라이브러리에서블록복사... 6 Ch4 Ex1: 실제구성을 PG 로업로드하고이름변경......

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

Microsoft PowerPoint - chap-02.pptx

Microsoft PowerPoint - chap-02.pptx 쉽게풀어쓴 C 언어 Express 제 2 장프로그램개발과정 컴퓨터프로그래밍기초 프로그램작성과정 에디터 (editer) 컴파일러 (compiler) 링커 (linker) 로더 (loader) 소스파일 test.c 오브젝트파일 test.obj 실행파일 test.exe 통합개발환경 (IDE) 컴퓨터프로그래밍기초 2 프로그램작성단계 편집 (edit) 에디터를이용하여원하는작업의내용을기술하여소스코드작성

More information

Microsoft PowerPoint - [2009] 02.pptx

Microsoft PowerPoint - [2009] 02.pptx 원시데이터유형과연산 원시데이터유형과연산 원시데이터유형과연산 숫자데이터유형 - 숫자데이터유형 원시데이터유형과연산 표준입출력함수 - printf 문 가장기본적인출력함수. (stdio.h) 문법 ) printf( Test printf. a = %d \n, a); printf( %d, %f, %c \n, a, b, c); #include #include

More information

Microsoft Word - PLC제어응용-2차시.doc

Microsoft Word - PLC제어응용-2차시.doc 과정명 PLC 제어응용차시명 2 차시. 접점명령 학습목표 1. 연산개시명령 (LOAD, LOAD NOT) 에대하여설명할수있다. 2. 직렬접속명령 (AND, AND NOT) 에대하여설명할수있다. 3. 병렬접속명령 (OR, OR NOT) 에대하여설명할수있다. 4.PLC의접점명령을가지고간단한프로그램을작성할수있다. 학습내용 1. 연산개시명령 1) 연산개시명령 (LOAD,

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

C언어 및 실습 C Language and Practice

C언어 및 실습  C Language and Practice C언어 및 실습 C Language and Practice Chap. 2 : 변수의 영역 동국대학교 멀티미디어공학과 Young-Sik Jeong C 언어메모리구조 지역변수들이저장되는곳. 정확히는지역변수와그에따른환경이같이저장된다. 복귀주소와호출함수의환경이저장된다. 동적기억장소를위한공간. 프로그램이실행되는중간에필요에의해서할당받는메모리영역을통칭한다. 크기가정해져있지않고유동적이다.

More information

Microsoft PowerPoint - chap03-변수와데이터형.pptx

Microsoft PowerPoint - chap03-변수와데이터형.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

<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

<4A4B49542D D312DBBE7BFEBC0DABCB3B8EDBCAD2E646F63>

<4A4B49542D D312DBBE7BFEBC0DABCB3B8EDBCAD2E646F63> JKIT-128-1 개발/ 실습키트 사용자설명서 제이씨넷 www.jcnet.co.kr 1 1. JKIT-128-1 개요 1.1 JKIT-128-1 소개 은 atmega128 MCU를비롯하여 LED, FND, 스위치, 부저, 온도센서, 광감지센서, 모터제어드라이버등의부품을실장하여, 다양한기능을시험해볼수있는개발/ 실습키트입니다. 소형키트로는국내최초로

More information

금오공대 컴퓨터공학전공 강의자료

금오공대 컴퓨터공학전공 강의자료 C 프로그래밍프로젝트 Chap 14. 포인터와함수에대한이해 2013.10.09. 오병우 컴퓨터공학과 14-1 함수의인자로배열전달 기본적인인자의전달방식 값의복사에의한전달 val 10 a 10 11 Department of Computer Engineering 2 14-1 함수의인자로배열전달 배열의함수인자전달방식 배열이름 ( 배열주소, 포인터 ) 에의한전달 #include

More information

Microsoft PowerPoint - chap05-제어문.pptx

Microsoft PowerPoint - chap05-제어문.pptx int num; printf( Please enter an integer: "); scanf("%d", &num); if ( num < 0 ) printf("is negative.\n"); printf("num = %d\n", num); 1 학습목표 제어문인,, 분기문에 대해 알아본다. 인 if와 switch의 사용 방법과 사용시 주의사항에 대해 알아본다.

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

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 Chapter 06 반복문 01 반복문의필요성 02 for문 03 while문 04 do~while문 05 기타제어문 반복문의의미와필요성을이해한다. 대표적인반복문인 for 문, while 문, do~while 문의작성법을 알아본다. 1.1 반복문의필요성 반복문 동일한내용을반복하거나일정한규칙으로반복하는일을수행할때사용 프로그램을좀더간결하고실제적으로작성할수있음.

More information

비트와바이트 비트와바이트 비트 (Bit) : 2진수값하나 (0 또는 1) 를저장할수있는최소메모리공간 1비트 2비트 3비트... n비트 2^1 = 2개 2^2 = 4개 2^3 = 8개... 2^n 개 1 바이트는 8 비트 2 2

비트와바이트 비트와바이트 비트 (Bit) : 2진수값하나 (0 또는 1) 를저장할수있는최소메모리공간 1비트 2비트 3비트... n비트 2^1 = 2개 2^2 = 4개 2^3 = 8개... 2^n 개 1 바이트는 8 비트 2 2 비트연산자 1 1 비트와바이트 비트와바이트 비트 (Bit) : 2진수값하나 (0 또는 1) 를저장할수있는최소메모리공간 1비트 2비트 3비트... n비트 2^1 = 2개 2^2 = 4개 2^3 = 8개... 2^n 개 1 바이트는 8 비트 2 2 진수법! 2, 10, 16, 8! 2 : 0~1 ( )! 10 : 0~9 ( )! 16 : 0~9, 9 a, b,

More information

1. 제품소개및특징 1.1 제품소개 < 그림 1.1> AVRISP MK2 USB 개발장비 AVR ISP(In System Programmer)MK2 USB 란 Atmel 사의 AVR 마이크로컨트롤러의내부플래쉬와 EEPROM 에프로그램메모리및데이터를써 (Write, Re

1. 제품소개및특징 1.1 제품소개 < 그림 1.1> AVRISP MK2 USB 개발장비 AVR ISP(In System Programmer)MK2 USB 란 Atmel 사의 AVR 마이크로컨트롤러의내부플래쉬와 EEPROM 에프로그램메모리및데이터를써 (Write, Re 매뉴얼 (P/N: LK-AVRISP mkii USB) 이경남 L K 임베디드 2017 LK EMBEDDED User Guide Version 0.3 페이지 1 1. 제품소개및특징 1.1 제품소개 < 그림 1.1> AVRISP MK2 USB 개발장비 AVR ISP(In System Programmer)MK2 USB 란 Atmel 사의 AVR 마이크로컨트롤러의내부플래쉬와

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

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

<4D F736F F F696E74202D20B8B6C0CCC5A9B7CEC7C1B7CEBCBCBCAD202834C1D6C2F7207E2038C1D6C2F729>

<4D F736F F F696E74202D20B8B6C0CCC5A9B7CEC7C1B7CEBCBCBCAD202834C1D6C2F7207E2038C1D6C2F729> 8주차중간고사 ( 인터럽트및 A/D 변환기문제및풀이 ) Next-Generation Networks Lab. 외부입력인터럽트예제 문제 1 포트 A 의 7-segment 에초시계를구현한다. Tact 스위치 SW3 을 CPU 보드의 PE4 에연결한다. 그리고, SW3 을누르면하강 에지에서초시계가 00 으로초기화된다. 동시에 Tact 스위치 SW4 를 CPU 보드의

More information

JMOD : ATmega128 기본모듈 사용자설명서 제이씨넷

JMOD : ATmega128 기본모듈 사용자설명서 제이씨넷 JMOD-128-1 : ATmega128 기본모듈 사용자설명서 제이씨넷 www.jcnet.co.kr 1. JMOD-128-1 개요 1.1 JMOD-128-1 소개 은 ATmega128 MCU를이용하여, 다양한기능을구현하거나시험해볼수있도록모듈형태로개발된마이크로콘트롤러모듈입니다. 개발자의편의를위하여소형모듈에서는국내최초로프로그램 (ISP)

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

*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

(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

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. 매뉴얼안내 운영체제 (OS) 환경 윈도우드라이버준비 윈도우드라이버설치 Windows XP/Server 2003 에서설치 Serial 또는 Parallel 포트의경우.

목차 윈도우드라이버 1. 매뉴얼안내 운영체제 (OS) 환경 윈도우드라이버준비 윈도우드라이버설치 Windows XP/Server 2003 에서설치 Serial 또는 Parallel 포트의경우. 소프트웨어매뉴얼 윈도우드라이버 Rev. 3.03 SLP-TX220 / TX223 SLP-TX420 / TX423 SLP-TX400 / TX403 SLP-DX220 / DX223 SLP-DX420 / DX423 SLP-DL410 / DL413 SLP-T400 / T403 SLP-T400R / T403R SLP-D220 / D223 SLP-D420 / D423

More information

Microsoft PowerPoint - e pptx

Microsoft PowerPoint - e pptx Import/Export Data Using VBA Objectives Referencing Excel Cells in VBA Importing Data from Excel to VBA Using VBA to Modify Contents of Cells 새서브프로시저작성하기 프로시저실행하고결과확인하기 VBA 코드이해하기 Referencing Excel Cells

More information

Microsoft Word - EastSocket매뉴얼_ _.doc

Microsoft Word - EastSocket매뉴얼_ _.doc USB 전원을이용한 SMD 패키지라이팅지원보드 저가의라이팅장비를사용하여 SMD 패키지마이컴을라이팅할수있도록지원하는장비입니다. 각종제품개발시마이컴을 SMD로사용하는추세로이를양산에적용시고가의장비를사용해야했습니다. 아니면보드에다운로더를사용하여마이컴라이팅을했습니다. 그에따른생산속도의저하및고가의장비구입에따른경제적부담이컸습니다. 이를대처하기위해저가및기존개발에사용한장비를그대로사용하여라이팅을할수있는지원장비를개발했습니다.

More information

<4D F736F F F696E74202D20BBB7BBB7C7D15F FBEDFB0A3B1B3C0B05FC1A634C0CFC2F72E BC8A3C8AF20B8F0B5E55D>

<4D F736F F F696E74202D20BBB7BBB7C7D15F FBEDFB0A3B1B3C0B05FC1A634C0CFC2F72E BC8A3C8AF20B8F0B5E55D> 뻔뻔한 AVR 프로그래밍 The 4 th Lecture 유명환 ( yoo@netplug.co.kr) 1 시간 (Time) 에대한정의 INDEX 2 왜타이머 (Timer) 와카운터 (Counter) 인가? 3 ATmega128 타이머 / 카운터동작구조 4 ATmega128 타이머 / 카운터관련레지스터 5 뻔뻔한노하우 : 레지스터비트설정방법 6 ATmega128

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

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 실습 1 배효철 th1g@nate.com 1 목차 조건문 반복문 System.out 구구단 모양만들기 Up & Down 2 조건문 조건문의종류 If, switch If 문 조건식결과따라중괄호 { 블록을실행할지여부결정할때사용 조건식 true 또는 false값을산출할수있는연산식 boolean 변수 조건식이 true이면블록실행하고 false 이면블록실행하지않음 3

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

Microsoft PowerPoint - 3ÀÏ°_º¯¼ö¿Í »ó¼ö.ppt

Microsoft PowerPoint - 3ÀÏ°_º¯¼ö¿Í »ó¼ö.ppt 변수와상수 1 변수란무엇인가? 변수 : 정보 (data) 를저장하는컴퓨터내의특정위치 ( 임시저장공간 ) 메모리, register 메모리주소 101 번지 102 번지 변수의크기에따라 주로 byte 단위 메모리 2 기본적인변수형및변수의크기 변수의크기 해당컴퓨터에서는항상일정 컴퓨터마다다를수있음 short

More information

Section 03 트랜지스터를이용한스위칭동작 16/45 트랜지스터의직류특성 활성 직류상황에서전류 I C 는전류 I B 보다 h FE 배만큼더많은전류가흐름» 베이스와이미터가순방향으로바이어스» 컬렉터와베이스가역방향으로바이어스 차단 만일 I B 가 0[A] 이면컬렉터전류

Section 03 트랜지스터를이용한스위칭동작 16/45 트랜지스터의직류특성 활성 직류상황에서전류 I C 는전류 I B 보다 h FE 배만큼더많은전류가흐름» 베이스와이미터가순방향으로바이어스» 컬렉터와베이스가역방향으로바이어스 차단 만일 I B 가 0[A] 이면컬렉터전류 Section 03 트랜지스터를이용한스위칭동작 15/45 스위치 ON/OFF 의전기적특성 트랜지스터와기계적인스위치를이용한 LED ON/OFF 동작비교 LED 를켜기위한회로 ([ 그림 5-6]) Section 03 트랜지스터를이용한스위칭동작 16/45 트랜지스터의직류특성 활성 직류상황에서전류 I C 는전류 I B 보다 h FE 배만큼더많은전류가흐름» 베이스와이미터가순방향으로바이어스»

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 Chapter 08 함수 01 함수의개요 02 함수사용하기 03 함수와배열 04 재귀함수 함수의필요성을인식한다. 함수를정의, 선언, 호출하는방법을알아본다. 배열을함수의인자로전달하는방법과사용시장점을알아본다. 재귀호출로해결할수있는문제의특징과해결방법을알아본다. 1.1 함수의정의와기능 함수 (function) 특별한기능을수행하는것 여러가지함수의예 Page 4 1.2

More information

Studuino소프트웨어 설치

Studuino소프트웨어 설치 Studuino 프로그래밍환경 Studuino 소프트웨어설치 본자료는 Studuino 프로그래밍환경설치안내서입니다. Studuino 프로그래밍 환경의갱신에따라추가 / 수정될수있습니다. 목차 1. 소개... 1 2. Windows... 2 2.1. 프로그래밍환경설치... 2 2.1.1. 웹설치버전설치방법... 2 2.2. Studuino 프로그래밍환경실행...

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

Microsoft Word - MAI-ISP-STK500_매뉴얼_Ver25.docx

Microsoft Word - MAI-ISP-STK500_매뉴얼_Ver25.docx MAI-ISP-STK500 사용자매뉴얼 Manual Ver. 2.5 엠에이아이 (M.A.I) www.maicom.co.kr http://cafe.naver.com/at128mai [ 모델이름 ]: MAI-ISP-STK5000 [ 용도 ]: AVR MCU의내부 Flash Memory 및 EEPROM 에 HEX 파일을 Write W / Readd 할수있는기능을하는프로그래머로써,

More information

Microsoft Word - AVRISP mkII 장비 운용.doc

Microsoft Word - AVRISP mkII 장비 운용.doc AVRISP mkii 장비운용 기술연구소이진용대리 ( jylee@mamiel.com ) 1. AVRISP mkⅡ 개요 AVRISP mkⅡ 장비운용 1) AVRISP mkⅡ란? 기존의 AVRISP의단점을보충해서 Atmel에서새롭게출시된 ISP 장비이다기존에 AVRISP는전원을 Target System에서공급을받아야했기에사용하기에불편한점이많았지만이번에새롭게출시된

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> AVR-ATmega128 확장형 DEV 보드사진 1.1 제품소개 ATMEL사의 8비트프로세서인 AVR-ATmega128 MCU를이용하여학습및개발을할수있는 AVR 개발보드입니다. 초보자를세심하게배려하기위하여모든부품의부품이름및부품정

1. 제품사진및보드설명 < 그림 1.1> AVR-ATmega128 확장형 DEV 보드사진 1.1 제품소개 ATMEL사의 8비트프로세서인 AVR-ATmega128 MCU를이용하여학습및개발을할수있는 AVR 개발보드입니다. 초보자를세심하게배려하기위하여모든부품의부품이름및부품정 (Model: ET-128DM) 이경남 L K 임베디드 2014 LK EMBEDDED version 1.0 페이지 1 1. 제품사진및보드설명 < 그림 1.1> AVR-ATmega128 확장형 DEV 보드사진 1.1 제품소개 ATMEL사의 8비트프로세서인 AVR-ATmega128 MCU를이용하여학습및개발을할수있는 AVR 개발보드입니다. 초보자를세심하게배려하기위하여모든부품의부품이름및부품정보가개발보드에기록되어있으며,

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 자바-기본문법(Ch2).pptx

Microsoft PowerPoint 자바-기본문법(Ch2).pptx 자바기본문법 1. 기본사항 2. 자료형 3. 변수와상수 4. 연산자 1 주석 (Comments) 이해를돕기위한설명문 종류 // /* */ /** */ 활용예 javadoc HelloApplication.java 2 주석 (Comments) /* File name: HelloApplication.java Created by: Jung Created on: March

More information

Microsoft PowerPoint - 1C언어소개0.PPT

Microsoft PowerPoint - 1C언어소개0.PPT 의용프로그래밍실습 의료공학과이기영 교육목표수업방법주교재참고도서 의용프로그래밍실습 - 의료공학엔지니어로서컴퓨터에접근하는기초적인방법으로프로그래밍을익힌다. - 프로그램은논리나알고리즘을설계하고, 원시코드를작성하는것 - 초보자가접근하기쉬우면서막강한언어인 C 를익힘으로써 - 알고리즘의이해와문법 : 엔지니어적으로접근하는기초지식을쌓고자한다. - Visual C++ 를이용하여객체지향형에접근하는기초를마련

More information

Microsoft PowerPoint - chap-02.pptx

Microsoft PowerPoint - chap-02.pptx 쉽게풀어쓴 C 언어 Express 제 2 장프로그램개발과정 컴퓨터프로그래밍기초 프로그램작성과정 에디터 (editer) 컴파일러 (compiler) 링커 (linker) 로더 (loader) 소스파일 test.c 오브젝트파일 test.obj 실행파일 test.exe 통합개발환경 (IDE) 컴퓨터프로그래밍기초 2 프로그램작성단계 편집 (edit) 에디터를이용하여원하는작업의내용을기술하여소스코드작성

More information

Microsoft Word - Ahram_ISP_V15_Manual_V20.doc

Microsoft Word - Ahram_ISP_V15_Manual_V20.doc Ahram ISP V1.5 사용자매뉴얼 Manual Ver 2.0 Ahramsoft CO.LTD www.ahramsoft.com Contents 1. 모델이름 ------------------------------------------------------- 3 2. 용 도 -------------------------------------------------------

More information

정보보안 개론과 실습:네트워크

정보보안 개론과 실습:네트워크 ` 마이크로프로세서설계및실습 2 주차강의자료 2/31 Contents 학습목표 다양한 AVR 패밀리와소자특징을알아보고, 제어환경에따라 AVR 소자를선택하여개발할수있는융통성을이해할수있다. ATmega128 내부구조에서특수레지스터, 범용레지스터의역할을이해할수있다. ATmega128 내부에포함된명령어인출과실행절차를알아보고, 명령어유형을통해동작을이해할수있다. 내용

More information

Microsoft PowerPoint - 1장 C 프로그래밍 시작하기 pptx

Microsoft PowerPoint - 1장 C 프로그래밍 시작하기 pptx C 프로그래밍및실습 1. C 프로그래밍시작하기 세종대학교 목차 1) 프로그래밍개요 3) 첫프로그램분석 4) 출력기초 5) 입력기초 2 1) 프로그래밍개요 프로그램과프로그래밍 프로그램 운동회의순서나음악회의연주곡목순서등미리짜놓은것 예 ) TV 프로그램 컴퓨터프로그램 (program) 컴퓨터에게해야할일의순서와방법을지시하는명령어의집합 프로그래밍 프로그래밍언어를이용하여프로그램을만드는행위

More information

<4D F736F F F696E74202D20B8B6C0CCC5A9B7CEC7C1B7CEBCBCBCAD202839C1D6C2F7207E203135C1D6C2F >

<4D F736F F F696E74202D20B8B6C0CCC5A9B7CEC7C1B7CEBCBCBCAD202839C1D6C2F7207E203135C1D6C2F > 10주차 문자 LCD 의인터페이스회로및구동함수 Next-Generation Networks Lab. 5. 16x2 CLCD 모듈 (HY-1602H-803) 그림 11-18 19 핀설명표 11-11 번호 분류 핀이름 레벨 (V) 기능 1 V SS or GND 0 GND 전원 2 V Power DD or V CC +5 CLCD 구동전원 3 V 0 - CLCD 명암조절

More information

Section 03 인터럽트활성화와인터럽트서비스루틴연결 34/82 장치에대한인터럽트설정과활성화 내부장치에대한특수레지스터존재 장치의특성을반영한동작설정용또는상태관찰용비트로구성 인터럽트사건의발생패턴을설정해야함 인터럽트활성화비트를 1 로셋하여, 인터럽트발생을허락» 전제, 전역

Section 03 인터럽트활성화와인터럽트서비스루틴연결 34/82 장치에대한인터럽트설정과활성화 내부장치에대한특수레지스터존재 장치의특성을반영한동작설정용또는상태관찰용비트로구성 인터럽트사건의발생패턴을설정해야함 인터럽트활성화비트를 1 로셋하여, 인터럽트발생을허락» 전제, 전역 Section 03 인터럽트활성화와인터럽트서비스루틴연결 33/82 Section 03 인터럽트활성화와인터럽트서비스루틴연결 34/82 장치에대한인터럽트설정과활성화 내부장치에대한특수레지스터존재 장치의특성을반영한동작설정용또는상태관찰용비트로구성 인터럽트사건의발생패턴을설정해야함 인터럽트활성화비트를 1 로셋하여, 인터럽트발생을허락» 전제, 전역인터럽트활성화비트가 1 로셋되었을때

More information

11장 포인터

11장 포인터 누구나즐기는 C 언어콘서트 제 9 장포인터 이번장에서학습할내용 포인터이란? 변수의주소 포인터의선언 간접참조연산자 포인터연산 포인터와배열 포인터와함수 이번장에서는포인터의기초적인지식을학습한다. 포인터란? 포인터 (pointer): 주소를가지고있는변수 메모리의구조 변수는메모리에저장된다. 메모리는바이트단위로액세스된다. 첫번째바이트의주소는 0, 두번째바이트는 1, 변수와메모리

More information

슬라이드 1

슬라이드 1 5. 표준입력 : scanf scanf 의기본사용법 키보드로값을입력받아지정한변수에저장함 scanf( %d, &i ); 키보드로정수를입력받아, i 변수에저장함 scanf( %d %d, &i, &j ); 키보드로정수두개를입력받아, 각각 i, j 변수에저장함 scanf( %d %f, &i, &f ); 키보드로정수와실수를각각입력받아, 정수형변수 i, 실수형변수 f

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

Microsoft PowerPoint - ch07 - 포인터 pm0415

Microsoft PowerPoint - ch07 - 포인터 pm0415 2015-1 프로그래밍언어 7. 포인터 (Pointer), 동적메모리할당 2015 년 4 월 4 일 교수김영탁 영남대학교공과대학정보통신공학과 (Tel : +82-53-810-2497; Fax : +82-53-810-4742 http://antl.yu.ac.kr/; E-mail : ytkim@yu.ac.kr) Outline 포인터 (pointer) 란? 간접참조연산자

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

<4D F736F F F696E74202D20BBB7BBB7C7D15F FBEDFB0A3B1B3C0B05FC1A638C0CFC2F72E BC8A3C8AF20B8F0B5E55D>

<4D F736F F F696E74202D20BBB7BBB7C7D15F FBEDFB0A3B1B3C0B05FC1A638C0CFC2F72E BC8A3C8AF20B8F0B5E55D> 뻔뻔한 AVR 프로그래밍 The Last(8 th ) Lecture 유명환 ( yoo@netplug.co.kr) INDEX 1 I 2 C 통신이야기 2 ATmega128 TWI(I 2 C) 구조분석 4 ATmega128 TWI(I 2 C) 실습 : AT24C16 1 I 2 C 통신이야기 I 2 C Inter IC Bus 어떤 IC들간에도공통적으로통할수있는 ex)

More information

USBJTAG_V30_manual.hwp

USBJTAG_V30_manual.hwp USBJTAG USBJTAG V3.0 User Manual AVRMALL http://www.avrmall.com/ June 12, 2007 Copyright (c) 2003-2007 AVRMALL All Rights Reserved. USBJTAG User Manual June 12, 2007 Page 2 of 11 Contents 1. 소개 (Introduction)

More information

Microsoft Word - codevision사용법_pdf버전.docx

Microsoft Word - codevision사용법_pdf버전.docx CodevisionAVR 설치와 기본사용법 민경학 ( hak@anycalluser.net) 인하대학교 IT 공과대학전자공학과멀티미디어연구실 ( 하이테크센터 916 호 ) 2008.9.7.001 들어가며 AVR 에서쓸수있는컴파일러종류에는 CodeVisionAVR, AVR Edit, IAR, AVRStudio 등이있습니다. CodeVisionAVR 과 IAR 은상용이고

More information

PowerPoint Presentation

PowerPoint Presentation #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

C 프로그래밊 개요

C 프로그래밊 개요 구조체 2009 년 5 월 19 일 김경중 강의계획수정 일자계획 Quiz 실습보강 5 월 19 일 ( 화 ) 구조체 Quiz ( 함수 ) 5 월 21 일 ( 목 ) 구조체저녁 6 시 5 월 26 일 ( 화 ) 포인터 5 월 28 일 ( 목 ) 특강 (12:00-1:30) 6 월 2 일 ( 화 ) 포인터 Quiz ( 구조체 ) 저녁 6 시 6 월 4 일 ( 목

More information

<4D F736F F F696E74202D C61645FB3EDB8AEC7D5BCBA20B9D720C5F8BBE7BFEBB9FD2E BC8A3C8AF20B8F0B5E55D>

<4D F736F F F696E74202D C61645FB3EDB8AEC7D5BCBA20B9D720C5F8BBE7BFEBB9FD2E BC8A3C8AF20B8F0B5E55D> VHDL 프로그래밍 D. 논리합성및 Xilinx ISE 툴사용법 학습목표 Xilinx ISE Tool 을이용하여 Xilinx 사에서지원하는해당 FPGA Board 에맞는논리합성과정을숙지 논리합성이가능한코드와그렇지않은코드를구분 Xilinx Block Memory Generator를이용한 RAM/ ROM 생성하는과정을숙지 2/31 Content Xilinx ISE

More information

금오공대 컴퓨터공학전공 강의자료

금오공대 컴퓨터공학전공 강의자료 C 프로그래밍프로젝트 Chap 13. 포인터와배열! 함께이해하기 2013.10.02. 오병우 컴퓨터공학과 13-1 포인터와배열의관계 Programming in C, 정재은저, 사이텍미디어. 9 장참조 ( 교재의 13-1 은읽지말것 ) 배열이름의정체 배열이름은 Compile 시의 Symbol 로서첫번째요소의주소값을나타낸다. Symbol 로서컴파일시에만유효함 실행시에는메모리에잡히지않음

More information

OCW_C언어 기초

OCW_C언어 기초 초보프로그래머를위한 C 언어기초 2 장 : C 프로그램시작하기 2012 년 이은주 학습목표 을작성하면서 C 프로그램의구성요소 주석 (comment) 이란무엇인지알아보고, 주석을만드는방법 함수란무엇인지알아보고, C 프로그램에반드시필요한 main 함수 C 프로그램에서출력에사용되는 printf 함수 변수의개념과변수의값을입력받는데사용되는 scanf 함수 2 목차 프로그램코드

More information

프로그램을 학교 등지에서 조금이라도 배운 사람들을 위한 프로그래밍 노트 입니다. 저 역시 그 사람들 중 하나 입니다. 중고등학교 시절 학교 도서관, 새로 생긴 시립 도서관 등을 다니며 책을 보 고 정리하며 어느정도 독학으르 공부하긴 했지만, 자주 안하다 보면 금방 잊어

프로그램을 학교 등지에서 조금이라도 배운 사람들을 위한 프로그래밍 노트 입니다. 저 역시 그 사람들 중 하나 입니다. 중고등학교 시절 학교 도서관, 새로 생긴 시립 도서관 등을 다니며 책을 보 고 정리하며 어느정도 독학으르 공부하긴 했지만, 자주 안하다 보면 금방 잊어 개나리 연구소 C 언어 노트 (tyback.egloos.com) 프로그램을 학교 등지에서 조금이라도 배운 사람들을 위한 프로그래밍 노트 입니다. 저 역시 그 사람들 중 하나 입니다. 중고등학교 시절 학교 도서관, 새로 생긴 시립 도서관 등을 다니며 책을 보 고 정리하며 어느정도 독학으르 공부하긴 했지만, 자주 안하다 보면 금방 잊어먹고 하더라구요. 그래서,

More information

Microsoft PowerPoint - Chapter_04.pptx

Microsoft PowerPoint - Chapter_04.pptx 프로그래밍 1 1 Chapter 4. Constant and Basic Data Types April, 2016 Dept. of software Dankook University http://embedded.dankook.ac.kr/~baeksj 이장의강의목표 2 기본자료형문자표현방식과문자자료형상수자료형변환 기본자료형 (1/8) 3 변수 (Variables)

More information

06 세상을 변화시키는 연산자

06 세상을 변화시키는 연산자 Part 06 세상을변화시키는연산자 1 이장의내용 대입문도사실은수식이다 대입연산자의변형 증감연산자 조건연산자 괄호도연산자인가? 우선순위와결합순서정리 2 6.1 대입문도사실은수식이다 3 대입문 변수에값을대입시키는문장 a = a + 1; "a 와 a+1 이같다 " 는뜻이아니라 "a+1 값을변수 a 에저장하라 " 는뜻 대입문동작과정 대입문수행전에변수 a 에 20

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

XDS100S V3 Entry-level JTAG Emulator. Revision XDS100S V3 ( 사용매뉴얼 ) Rev TEL , FAX , .

XDS100S V3 Entry-level JTAG Emulator. Revision XDS100S V3 ( 사용매뉴얼 ) Rev TEL , FAX ,  . Revision 12.01.31 XDS100S V3 ( 사용매뉴얼 ) Rev. 1.0.1 [1] page *Revision History 날짜 내용 2011. 12. 13. - Rev. 1.0 초판완성 2012. 01. 31. - Rev. 1.0.1 연결 Tip 추가 [2] page 목차 XDS100S V3... 1 1 제품구성... 4 2 XDS100S V3의특징...

More information

학습목표 2/33 마이크로프로세서와마이크로컨트롤러의차이를알수있다. 마이크로프로세서에서프로그램이수행되기위한명령어형식과명령어실행절차를알수있다. 프로그램을수행하려면어떤종류의명령어가필요한지알수있다. 현대컴퓨터의기본모델인저장형프로그램컴퓨터의한계점과그한계를완화하려는방법을알수있다.

학습목표 2/33 마이크로프로세서와마이크로컨트롤러의차이를알수있다. 마이크로프로세서에서프로그램이수행되기위한명령어형식과명령어실행절차를알수있다. 프로그램을수행하려면어떤종류의명령어가필요한지알수있다. 현대컴퓨터의기본모델인저장형프로그램컴퓨터의한계점과그한계를완화하려는방법을알수있다. 마이크로프로세서의원리 마이크로컨트롤러 AVR ATmega128 저자 : 이상설 (slee@wku.ac.kr) 소속 : 원광대학교전기 정보통신공학부 학습목표 2/33 마이크로프로세서와마이크로컨트롤러의차이를알수있다. 마이크로프로세서에서프로그램이수행되기위한명령어형식과명령어실행절차를알수있다. 프로그램을수행하려면어떤종류의명령어가필요한지알수있다. 현대컴퓨터의기본모델인저장형프로그램컴퓨터의한계점과그한계를완화하려는방법을알수있다.

More information

실험 5

실험 5 실험. OP Amp 의기초회로 Inverting Amplifier OP amp 를이용한아래와같은 inverting amplifier 회로를고려해본다. ( 그림 ) Inverting amplifier 위의회로에서 OP amp의 입력단자는 + 입력단자와동일한그라운드전압, 즉 0V를유지한다. 또한 OP amp 입력단자로흘러들어가는전류는 0 이므로, 저항에흐르는전류는다음과같다.

More information

1.2 자료형 (data type) 프로그램에서다루는값의형태로변수나함수를정의할때주로사용하며, 컴퓨터는선언된 자료형만큼의메모리를확보하여프로그래머에게제공한다 정수 (integer) 1) int(4 bytes) 연산범위 : (-2 31 ) ~ (2 31 /2)-

1.2 자료형 (data type) 프로그램에서다루는값의형태로변수나함수를정의할때주로사용하며, 컴퓨터는선언된 자료형만큼의메모리를확보하여프로그래머에게제공한다 정수 (integer) 1) int(4 bytes) 연산범위 : (-2 31 ) ~ (2 31 /2)- 1.2 자료형 (data type) 프로그램에서다루는값의형태로변수나함수를정의할때주로사용하며, 컴퓨터는선언된 자료형만큼의메모리를확보하여프로그래머에게제공한다. 1.2.1 정수 (integer) 1) int(4 bytes) 연산범위 : (-2 31 ) ~ (2 31 /2)-1 연산범위이유 : 00000000 00000000 00000000 00000000의 32

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

JAVA 프로그래밍실습 실습 1) 실습목표 - 메소드개념이해하기 - 매개변수이해하기 - 새메소드만들기 - Math 클래스의기존메소드이용하기 ( ) 문제 - 직사각형모양의땅이있다. 이땅의둘레, 면적과대각

JAVA 프로그래밍실습 실습 1) 실습목표 - 메소드개념이해하기 - 매개변수이해하기 - 새메소드만들기 - Math 클래스의기존메소드이용하기 (   ) 문제 - 직사각형모양의땅이있다. 이땅의둘레, 면적과대각 JAVA 프로그래밍실습 실습 1) 실습목표 - 메소드개념이해하기 - 매개변수이해하기 - 새메소드만들기 - Math 클래스의기존메소드이용하기 ( http://java.sun.com/javase/6/docs/api ) 문제 - 직사각형모양의땅이있다. 이땅의둘레, 면적과대각선의길이를계산하는메소드들을작성하라. 직사각형의가로와세로의길이는주어진다. 대각선의길이는 Math클래스의적절한메소드를이용하여구하라.

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

1. 제품사진및보드설명 그림. LK ATmega128 A2 트레이닝보드사진 제품소개 ATMEL사의 8비트프로세서인 AVR-ATmega128 MCU를이용하여학습및제품개발을핛수있는 AVR 트레이닝보드입니다. 초보자를세심하게배려하기위하여모든부품의부품이름및부품정보가트레이닝보드

1. 제품사진및보드설명 그림. LK ATmega128 A2 트레이닝보드사진 제품소개 ATMEL사의 8비트프로세서인 AVR-ATmega128 MCU를이용하여학습및제품개발을핛수있는 AVR 트레이닝보드입니다. 초보자를세심하게배려하기위하여모든부품의부품이름및부품정보가트레이닝보드 AVR ATmega128 트레이닝보드매뉴얼 (Model: LK-ATMEGA128 A2 V02) WWW.LKEMBEDDED.CO.KR 2011 LK EMBEDDED version 1.0 페이지 1 1. 제품사진및보드설명 그림. LK ATmega128 A2 트레이닝보드사진 제품소개 ATMEL사의 8비트프로세서인 AVR-ATmega128 MCU를이용하여학습및제품개발을핛수있는

More information

본 강의에 들어가기 전

본 강의에 들어가기 전 C 기초특강 변수, 타입, 정수, 실수 상수 상수 (constant) #define MAX_FLOOR 100 프로그램헤더나앞부분에존재 변수의이름 ( 식별자 ) 와같은규칙을따르지만, 일반적으로대문자와 _ 로만구성 프로그램가독성을높이고, 일관된수정을위해사용 프로그램중간에갑자기등장하는임의의숫자는이해도를떨어뜨림 -> 반드시의미있는상수를이용해야함 Preprocessor

More information

(SW3704) Gingerbread Source Build & Working Guide

(SW3704) Gingerbread Source Build & Working Guide (Mango-M32F4) Test Guide http://www.mangoboard.com/ http://cafe.naver.com/embeddedcrazyboys Crazy Embedded Laboratory www.mangoboard.com cafe.naver.com/embeddedcrazyboys CRZ Technology 1 Document History

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 System Software Experiment 1 Lecture 5 - Array Spring 2019 Hwansoo Han (hhan@skku.edu) Advanced Research on Compilers and Systems, ARCS LAB Sungkyunkwan University http://arcs.skku.edu/ 1 배열 (Array) 동일한타입의데이터가여러개저장되어있는저장장소

More information

4장.문장

4장.문장 문장 1 배정문 혼합문 제어문 조건문반복문분기문 표준입출력 입출력 형식화된출력 [2/33] ANSI C 언어와유사 문장의종류 [3/33] 값을변수에저장하는데사용 형태 : < 변수 > = < 식 > ; remainder = dividend % divisor; i = j = k = 0; x *= y; 형변환 광역화 (widening) 형변환 : 컴파일러에의해자동적으로변환

More information

가. 마이크로컨트롤러개발환경및설치준비 AVR Studio 에서지원하는운영체계는아래와같다. - Windows XP(32 비트, 64 비트 ), Windows vista(32 비트, 64 비트 ), Windows 7(32 비 트, 64 비트 ) NO 프로그램명내용배포사이트

가. 마이크로컨트롤러개발환경및설치준비 AVR Studio 에서지원하는운영체계는아래와같다. - Windows XP(32 비트, 64 비트 ), Windows vista(32 비트, 64 비트 ), Windows 7(32 비 트, 64 비트 ) NO 프로그램명내용배포사이트 CHAPTER 3 마이크로컨트롤러개발도구설치하기 가. 마이크로컨트롤러개발환경및설치준비나. WinAVR 설치다. AVR Studio 설치라. AVR Studio 사용방법 가. 마이크로컨트롤러개발환경및설치준비 AVR Studio 에서지원하는운영체계는아래와같다. - Windows XP(32 비트, 64 비트 ), Windows vista(32 비트, 64 비트 ),

More information

Microsoft PowerPoint - lec3.ppt

Microsoft PowerPoint - lec3.ppt 2008 학년도 1 학기 상지대학교컴퓨터정보공학부 고광만 강의내용 연산자 (operator) 연산자종류연산자우선순위자료형변환 문장 (statement) 배정문 혼합문 제어문조건문, 반복문, 분기문 표준입출력 2 연산자 식 (expression) 의의미를결정 식은연산자 (operator) 와피연자 (operand) 로구성식의값에따라산술식, 관계식, 논리식으로구분

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