전자의료시스템 및 실습 C-언어 구 환 경희대학교 전자정보대학 동서의료공학과.

Slides:



Advertisements
Similar presentations
- 1 - IT COOKBOOK 컴퓨터 기술 IT COOKBOOK Chapter 01. 서론.
Advertisements

컴퓨터프로그래밍 I 강원대학교 컴퓨터학부 2012 년 1 학기 담당교수 : 정충교 1. 강사진 강사 : 정충교 교수 연구실 : 공 호 조교 : 3 분반 이남세 연구실 : 공
C 언어 Sun Moon University 1 of 25 C 언어 : 강의소개 강의실 : 산 211 담당교수 : 고경철 ( 정보통신공학과 ) 사무실 : 산학협력관 105B 면담시간 : 수업후 1 시간
YES C 제 1 장 C 언어의 개요 1/34 제 1 장 C 언어의 개요 문봉근. YES C 제 1 장 C 언어의 개요 2/34 제 1 장 C 언어의 개요 1.1 프로그램과 C 언어의 특징 1.2 C 언어의 프로그램 구성 1.3 비주얼 C++ 통합 환경 들어가기.
2.1 컴퓨터 시스템의 구성 2.2 컴퓨터 시스템의 정보 표현 2.3 중앙처리장치 2.4 저장장치 2.5 컴퓨터 주변기기
Understanding of Ubiquitous & Computers Plus
마이크로 컨트롤러 Microcontroller.
C++ Tutorial 1 서강대학교 데이터베이스 연구실.
쉽게 풀어쓴 C언어 Express 제11장 포인터 C Express.
마이크로프로세서(Microprocessor,µP)
1장. 이것이 C 언어다.. 1장. 이것이 C 언어다. 1-1 C 언어의 개론적 이야기 프로그래밍 언어란 무엇인가? 컴파일이란 무엇인가? 사람과 컴파일러가 이해할 수 있는 약속된 형태의 언어 C 언어도 프로그래밍 언어 중 하나이다. 컴파일이란 무엇인가? 프로그래밍.
컴퓨터 과학 개론 √ 원리를 알면 IT가 맛있다 컴퓨터 과학도를 위한 첫 전공서 ehanbit.net.
2014 ITA 8월 강의 C Programming -1주차- C언어 기초 정대진 ( )
-Part3- 제3장 콘솔 입출력과 파일 입출력.
C 프로그래밍 소개 숙명여대 창병모 2011 가을.
3.1 기억장치와 저장장치의 구분 3.2 기억장치 3.3 자기 저장장치 3.4 광 저장장치 3.5 백업의 중용성
임베디드 하드웨어 Lecture #6.
컴퓨터 구조학 정보보호학과.
제3장 추가 실습 3장 관련 C 언어 프로그래밍 실습.
컴퓨터 구조론 2001년 10월 22일 발표자 황영선.
Kasimov C언어 세미나 1st.
제5장 제어명령
6장. printf와 scanf 함수에 대한 고찰
6장. 기 억 장 치 Lecture #6.
Introduce to ATmega128 & Codevision
컴퓨터 구조.
컴퓨터 중앙처리장치, 기억장치, 입력장치 및 출력장치를 알아보자.
4장. 컴퓨터 시스템의 구성과 기능 다루는 내용 컴퓨터 분해를 통한 본체 살펴보기 컴퓨터 구성요소 컴퓨터의 기능
직업 형태 변화 과정 일자리의 변화 ERP (Enterprise Resource Planning) 구분 18~19 세기
버퍼 오버플로우 시스템보안 인터넷공학전공 권영락.
변수와 자료형.
제 1 장 C 언어의 개요 Google 공동 창업자, 래리 페이지와 세르게이 브린.
1 마이크로프로세서의 원리 마이크로컨트롤러 AVR ATmega128.
윤성우의 열혈 C 프로그래밍 윤성우 저 열혈강의 C 프로그래밍 개정판 Chapter 02. 프로그램의 기본구성.
DSP 소개 및 TMS320LF2407A 6th hyaoo.
정보(information) 데이터(data) 어떤 사물에 대한 소식이나 자료 가공된 데이터
제15장 전처리 및 비트연산.
프로그래밍 서울대학교 통계학과 2009년 2학기 컴퓨터의 개념 및 실습 (
변수와 자료형.
1장. 프로그래밍 언어, C 프로그래밍.
3주 컴퓨터구조.
8086 프로세서의 구조 및 동작 방식 시스템 프로그래밍 - Lecture #2 신라대학교 컴퓨터공학과 시스템 프로그래밍.
아날로그 VS 디지탈 -. Analog Vs Digital -. 디지털 논리에 대하여 -. 메모리에 대하여
1주차: 프로그래밍언어란 무엇인가? C 언어란? C 프로그래밍을 위한 준비
쉽게 풀어쓴 C언어 Express 제1장 프로그래밍의 개념 C Express.
컴퓨터 시스템 개관 시스템 프로그래밍 - Lecture #1 신라대학교 컴퓨터공학과 시스템 프로그래밍.
제1장 프로그래밍 기초
제4강 PC정비사 1급(필기) Lee Hoon Copyright(c) 2008 LeeHoon All rights reserved.
자전거를 배우려면 안장에 올라가 페달을 밟아라.
자전거를 배우려면 안장에 올라가 페달을 밟아라.
쉽게 풀어쓴 C언어 Express 제15장 전처리 및 비트연산 C Express Slide 1 (of 29)
제어문 & 반복문 C스터디 2주차.
많은 자료가 있을 때는 배열을 사용한다. 아래는 배열을 사용하는 경우의 예시이다. 상황에 따라 1차원 또는 다차원 배열 필요.
Lecture #6 제5장 기억장치 (1).
누구나 즐기는 C언어 콘서트 제2장 기초 사항 IT응용시스템공학과 김형진 교수.
제1장 정리 컴퓨터소프트웨어과 2-A반 주세호.
-Part1- 제8장 조건문이란 무엇인가 (교재 199페이지 ~ 224페이지)
쉽게 풀어쓴 C언어 Express 제1장 프로그래밍의 개념 C Express.
C언어 개론.
뇌를 자극하는 C 프로그래밍.
Name Title Company Name
1학기 정리 지난 학기에 배운 내용을 복습해 본다..
반복문의 기능 반복문 반복문 특정 영역을 특정 조건이 만족하는 동안에 반복 실행하기 위한 문장 while문
A Book on C, 3rd Ed. Al Kelley and Ira Pohl
강의교안 이용 안내 *이 책에 딸린 강의자료는 교수님의 효율적인 수업진행을 돕기 위해 만들어졌습니다.
컴퓨터 프로그램 제 1장 공학문제 해결 김 문 기.
어서와 C언어는 처음이지 제16장.
C.
임베디드 하드웨어 Lecture #6.
Lecture 7 7-Segment LED controller using u-controller
Presentation transcript:

전자의료시스템 및 실습 C-언어 구 환 경희대학교 전자정보대학 동서의료공학과

Study Plan 기간 장소 내용 목표 준비물 - 7/2 – 7/20 - 동서의료 공학과 실험실(207) - C language - Orcad(Schematic) - TMS320LF2407A 목표 준비물 2007 Summer Seminar

Contents C language Introduction to DSP - History - Characteristics - Structure - Compile & Execute - Basic functions - Example Introduction to DSP 2007 Summer Seminar

C language: Why? 2007 Summer Seminar

C language: History A language B language C language - UNIX: Assembly - 기계 의존적 -> 호환성 대두 B language - Ken Thompson에 의해서 개발 C language - B language를 기초로 하여 개발 - 1972, Dennis Ritchie에 의해서 개발(Bell Institute, USA) - DEC 사의 PDP-11 컴퓨터에서 구현된 다중 프로그래밍 언어 - 가장 많이 사용됨 - 활용: 운영체제 개발, 게임, 그래픽, 영상처리, 애니메이션 개발 등 2007 Summer Seminar

C language: Characteristics High- or middle level language 시스템 프로그래밍이 가능 구조적 프로그래밍이 가능하고 모듈화된 설계 가능, 유지 보수 용이 소문자를 기본으로 하는 자유 형식 많은 자료 형과 다양한 연산자. Portability Pointer Preprocessor로 인해서 효율적인 프로그래밍이 가능 입출력 기능이 없어서, library function을 통해서 이루어짐 고급 언어와 어셈블리 언어의 장점만을 가진 중간 수준의 언어 반드시 하나 이상의 함수가 있어야 함, 재귀적 호출 가능 단순하고 예약어가 적기 때문에 배우기 쉽다. 2007 Summer Seminar

C language: Structure(1) 파일 포함(header file) 매크로 정의 사용자 정의 함수 선언 main() { 내부 변수 선언; 명령문 기술; } 함수명(가인수 리스트, …) 가인수 선언; 머리부(Header) 몸체부(Body) 사용자 정의 함수부 2007 Summer Seminar

C language: Structure(2) #include <stdio.h> #define PI 3.1415926 int add(int a, int b); main() { int a, b, sum; a = 2; b = 3; sum = 0; sum = add(a, b); printf(“%d\n”, sum); } int add(int a, int b) return a+b; 머리부(Header) 몸체부(Body) 사용자 정의 함수부 2007 Summer Seminar

C language: Compile & Execute Compiler? - 간단하게 말하면 해독기 - 기계가 이해할 수 있는 언어로 바꿔 주는 도구 Preprocessor? - 프로그래머와 컴파일러 사이에서 매개 역할을 수행 - C 프로그램을 컴파일 하기 전에 프로그래머가 작성한 원시 프로그램에 특정하게 정의된 각종 내용을 삽입시키는 기능을 하는 처리기 - #define, #include, #undef, … Assembler? - 엄격하게 말하면 어셈블리어를 기계어로 바꿔주는 해독기 2007 Summer Seminar

C language: Compile & Execute 프로그램 작성 단계 결과 확인 실행(execution) 파일 생성(*.exe) 링커(linker) 어셈블러(assembler) C 컴파일러(C compiler) C 선행 처리기(C preprocessor) 원시 프로그램의 편집(editor) C 원시 코드 작성(*.c, *.cpp) 및 저장 확장 된 C 원시 코드 프로그램 컴파일 단계 어셈블리 언어 코드 목적 코드(object code) 생성(*.obj) 프로그램 실행 단계 2007 Summer Seminar

C language: Basic functions 표준 입출력 함수 - printf(), scanf(), getchar(), … 제어문 - if~else, switch~case, case, for, while, do~while 배열 포인터 구조체와 공용체 라이브러리 함수 - strlen(), strcpy(), malloc(), … 파일 입출력 함수 - fopen(), fclose(), … 2007 Summer Seminar

C language: Firmware? Firmware? - 롬에 기록 된 하드웨어를 제어하는 마이크로 프로그램들의 집합 2007 Summer Seminar

C language: Our goal & Tips - 하드웨어에 대한 이해(구조, 동작) - 주어진 목표에 맞는 specific한 프로그램 작성 - 주어진 하드웨어를 최대한으로 활용하는 것 Tips - 시스템은 항상 동작 중 -> while(1) {}을 사용 - 하드웨어적으로 생각하는 것이 성능 향상 - 작성 전에 미리 그림을 그릴 것 2007 Summer Seminar

C language: Structure 파일 포함(header file) 매크로 정의 사용자 정의 함수 선언 main() { 내부 변수 선언; 하드웨어 구성 제어; 명령문 기술; } 함수명(가인수 리스트, …) 가인수 선언; 머리부(Header) 몸체부(Body) 사용자 정의 함수부 2007 Summer Seminar

C language: Example #include “F2407_C.H” #define TIME 10000 void Delay(int time) { int i; for(i=1;i<time;i++); } void main(void) while(1) *PCDATDIR = 0xFF; Delay(TIME); *PCDATDIR = 0x00; Delay(TIME); 2007 Summer Seminar

C language: Example void main(void) { /*** Configure the System Control and Status registers ***/ *SCSR1 = 0x0001; *SCSR2 = (*SCSR2 | 0x000B) & 0x000F; /*** Configure All IO pins as outputs ; check the program ***/ *PADATDIR = 0xFF00; *PBDATDIR = 0xFF00; *PCDATDIR = 0xFF00; *PDDATDIR = 0x0100; *PEDATDIR = 0xFF00; *PFDATDIR = 0xFF00; … 2007 Summer Seminar

Introduction to DSP(활용분야) 범용 마이크로 프로세서(Microprocessor) - Intel Pentium - OS(Operating System)가 필요 - 실시간 제어용으로는 부적합 마이크로 컨트롤러(Microcontroller) - 주로 기기의 제어 용도로 사용되는 프로세서 - A/D 변환기, PWM 발생기, 타이머 등을 내장하고 있는 경우가 많음 - 하드웨어 단계에서 개발자가 접근이 용이, 외부 장치의 부착이 용이 - 가전기기의 제어, 의료 기기의 제어 DSP(Digital Signal Processor) - 빠른 연산 속도 - 신호처리나 고속 연산에 유리하도록 특별히 제작한 프로세서 2007 Summer Seminar

Introduction to DSP(명령어 구조) CISC(Complex Instruction Set Computer) - 어떤 필요한 기능이 있을 때 그 기능을 수행하기 위한 명령어가 프로세서에 지속적으로 추가 - 복잡하고 명령어가 많음 - 짧은 프로그램 코드 - 프로세서 설계가 복잡함 - 기존의 일반적인 프로세서의 구조 RISC(Reduced Instruction Set Computer) - 개발자들이 주로 사용하는 명령어가 국한되어 있음 - 자주 쓰이는 간단한 명령어들만 남겨두고, 대신 이러한 명령어들이 보다 빨리 수행될 수 있도록 프로세서를 설계 2007 Summer Seminar

Introduction to DSP(응용) 제어분야 - 모터 제어, 미사일 자세 제어 등 신호 처리 분야 - 능동 소음 제어, 디지털 필터링 등 멀티미디어 분야 - HDTV, MP3P 등 통신 분야 - ADSL 모뎀, 광통신 등 기타 분야 - 배터리 충전기, LCD 모니터 등 2007 Summer Seminar

Introduction to DSP(응용) 2007 Summer Seminar

Introduction to DSP(기초 지식) 주소 표현 - 이진수 표현: 숫자 뒤에 ‘b’ ex) 10b - 16진수 표현: 숫자 뒤에 ‘h’ ex) 1234h 비트, 바이트, 워드 - 비트: 한 자리에 해당 하는 단위, 0 또는 1 ‘b’ - 바이트: 8비트를 한 묶음 ‘B’ - 워드: 16bits -> 16 bits, 32 bits -> 32bits, 주의 2007 Summer Seminar

Introduction to DSP(기초 지식) ROM(Read Only Memory) - 전원이 끊어져도 기록된 정보가 없어지지 않는 비휘발성 기억장치 RAM(Random Access Memory) - 정보를 기록, 읽어내는 것이 가능 - 장점: 염가, 소형, 낮은 소비 전력, 고속 동작 - 단점: 전원이 나가면 기억되어 있던 모든 데이터가 지워짐 - DRAM(Dynamic RAM): 주기적으로 refresh - SRAM(Static RAM): 전원만 연결되면 OK, 집적용이 Flash ROM - 썼다 지웠다 하는 것이 가능 - Mask Programmable ROM, PROM, EPROM, EEPROM 2007 Summer Seminar