임베디드 시스템을 위한 C프로그래밍 기법 3.7 ~ 4.5 장 2014. 2. 5 Raphael.

Slides:



Advertisements
Similar presentations
조문수 최성현 정장일 최봉건 청소년 성착취.
Advertisements

10장. 시기별 학급경영 11조 염지수 이 슬 권용민 신해식.
일본 근세사. (1) 에도막부의 개창 ( ㄱ ) 세키가하라의 전투 (1600) - 히데요시의 사후 다섯 명의 다이로 ( 大老 ) 가운데 최대 영지 (250 만석 ) 를 보유하고 있던 도쿠가와 이에야스가 급부상. 이에 이에야스와 반목해 온 이시다 미쓰나리 ( 石田三成 ),
아니마 / 아니무스 송문주 조아라. 아니마 아니마란 ? 남성의 마음속에 있는 여성적 심리 경향이 인격화 한 것. 막연한 느낌이나 기분, 예견적인 육감, 비합리적인 것에 대 한 감수성, 개인적인 사랑의 능력, 자연에 대한 감정, 그리.
대구가톨릭대학교 체육교육과 06 학번 영안중학교 체육교사 신웅섭 반갑습니다. 반야월초등학교 축구부 대륜중학교 축구부 대륜고등학교 대구가톨릭대학교 차석 입학 대구가톨릭대학교 수석 졸업 2014 년 경북중등임용 체육 차석 합격 영안중학교 체육교사 근무 소개.
03 변수와 자료형 세종대학교 최옥경 교수 참고 : 한빛미디어 뇌를 자극하는 C, INFINITY Perfect C.
중등특수교육과 엄승현 이영재 이지수 속요에 대하여.
일장 - 1 일 24 시간 중의 명기 ( 낮 ) 의 길이 ( 밤은 암기, 낮은 명기 ) 광주기성 - 하루 중 낮의 길이의 장단에 따라 식물의 꽃눈 형성이 달라지는 현상 일장이 식물의 개화현상을 조절하는 중요한 요인 단일식물 - 단일조건에서 개화가 촉진되는 식물 장일식물.
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 학년 6 반 1 조 고은수 구성현 권오제 김강서.  해당 언어에 본디부터 있던 말이나 그것에 기초하여 새로 만들어진 말  어떤 고장 고유의 독특한 말  Ex) 아버지, 어머니, 하늘, 땅.
2014년도 교원 및 기간제교사 성과상여금 전달교육 개 회 국기에 대한 경례 - 인사말
프로그래밍1 및 실습 (C언어) - 3장 기본자료형 (3.6부터 끝까지) -
선진 고양교육 “유아교육 행정 업무 연수” 유치원 회계실무 및 유아학비 연수 경기도고양교육청.
쯔쯔가무시 예방수칙을 실천하세요! 한국산업안전보건공단 광주지역본부.
제 3 장 변수와 자료형.
묵자 겸애, 비명, 비공, 상현, 상동, 천지, 명귀, 삼표 법.
교재:C언어로 쉽게 풀어 쓴 자료구조 (생능출판사, 천인국저)
제 11 장 구조체.
C 언어 기초 2 위덕대학교 에너지전기공학부 이 수 형 2009년 2학기.
내 아이를 위한 구강관리.
제16장 원무통계 • 분석 ☞ 통계란 특정의 사실을 일정한 기준에 의하여 숫자로 표시한 것을 말한다.통계로서 활용할 수 있는 조건으로는 ① 동질성을 지녀야 하고 ② 기준이 명확하고 ③ 계속성이 지속되어야 하며 ④ 숫자로 표시하여야 한다 경영실적의.
2014 ITA 8월 강의 C Programming -1주차- C언어 기초 정대진 ( )
서울지방세무사회 부가세 교육 사진클릭-자료 다운 세무사 김재우.
사외내방객 사이트매뉴얼.
치매의 예방 김 은민 윤금 노인요양원 치매의.
제3장 추가 실습 3장 관련 C 언어 프로그래밍 실습.
4장: 자료형과 수식.
쉽게 풀어쓴 C언어 Express 제4장 변수와 자료형 C Express.
1. 화면 및 메뉴소개 ▣ 온라인사업지원시스템 소개 ▶ 온라인사업지원시스템이란
변수와 자료형.
AVR - Chapter 15 황 지 연.
Chapter 4 – 연 산 자 Outline 4.1 산술 연산자 4.2 관계 연산자 4.3 동등 연산자 4.4 논리 연산자
Socket Address Structure and Byte Ordering Functions
Socket Address Structure and Byte Ordering Functions
변수와 자료형.
제 2 장 변수와 상수.
제 3 장 상수와 변수
마산에 대하여 만든이 : 2204 김신우, 2202 권성헌.
쉽게 풀어쓴 C언어 Express 제4장 변수와 자료형 C Express.
제주닷컴 매뉴얼 (실시간 예약시스템) 2013년 10월.
4주차: Data Types and Functions
5장. 상수와 기본 자료형. 5장. 상수와 기본 자료형 5-1 C 언어가 제공하는 기본 자료형 자료형(data type) 기본 자료형 사용자 정의 자료형 int val; "선언할 변수의 특징을 나타내기 위한 키워드" 기본 자료형 기본적으로 제공이 되는 자료형 사용자.
쉽게 풀어쓴 C언어 Express 제4장 변수와 자료형 C Express.
1. 화면 및 메뉴소개 ▣ 온라인사업지원시스템 소개 ▶ 온라인사업지원시스템이란
2017년 1학기 국가근로장학금 장학생 교육 1.
컴퓨터의 기초 제 2강 - 변수와 자료형 , 연산자 2006년 3월 27일.
제 3 장 연산자 (Operators).
컴퓨터 프로그래밍 기초 - 4th : 수식과 연산자 -
윤성우의 열혈 C 프로그래밍 윤성우 저 열혈강의 C 프로그래밍 개정판 Chapter 05. 상수와 기본 자료형.
Chapter 04 자료 유형.
3장. 변수와 연산자. 3장. 변수와 연산자 3-1 연산자, 덧셈 연산자 연산자란 무엇인가? 연산을 요구할 때 사용되는 기호 ex : +, -, *, / 3-1 연산자, 덧셈 연산자 연산자란 무엇인가? 연산을 요구할 때 사용되는 기호 ex : +, -, *, /
Chapter 04. 데이터의 표현과 연산(Ⅱ).
Chapter 05. 입출력 함수.
1 [100인의 멘토] 학교로 찾아가는 진로교육 □ 목적 인천지역 자유학기제 대상 청소년에게 건설관련 전문분야에 대한 진로탐색을 통해 체계적인 진로교육을 실시 □ 개요 ○ 참가대상: 18개 학교(학교당 1학급 기준) *협의가능 ○ 활동장소 : 각 선정 학교.
2 배열과 구조.
속요 국어국문학과 김보민 국어국문학과 조나현 제목 창의적으로 바꿔야 함.
6장 마케팅 조사 박소현, 김중호, 박기찬.
자바 5.0 프로그래밍.
한밭대학교 창업경영대학원 회계정보학과 장 광 식
포인터와 배열 조 병 규 한 국 교 통 대 학 교 SQ Lab..
음양오행과 물리학 조 원 : 김용훈, 양범길, 박수진, 윤진희, 이경남, 박미옥, 박지선 (11조)
C언어 프로그래밍의 이해 Ch03. 기본 자료형, 변수와 상수.
컴퓨터 프로그래밍 기초 - 11th : 파일 입출력 및 구조체 -
이야기 치료에 대하여 <8조 학문적 글쓰기 발표> 주희록 최은지
▶서류관리 프로그램 1. 로그인….2 2. 서류등록 … 서류도착 서류스티커발행
3주차: Control Flow and Others
박성진 컴퓨터 프로그래밍 기초 [03] 변수와 자료형 박성진
printf("Global Korea\n");
개정판 누구나 즐기는 C언어 콘서트 제3장 변수와 자료형 출처: pixabay.
중국문학개론 한부와 겅건안문학 중어중국학과 ㅇ이진원 한부와 건안문학.
Presentation transcript:

임베디드 시스템을 위한 C프로그래밍 기법 3.7 ~ 4.5 장 2014. 2. 5 Raphael

목차 3.7 리얼타임 운영체제 4. 임베디드 프로그램의 관용구 비트제어 버퍼제어 메모리 배치 포트로의 액세스

리얼타임 운영체제 임베디드 소프트웨어 산업 실태조사(일본) 추천 도서 전체 시스템 중 75% 이상이 특정 운영체제 사용 절반 이상이 리얼타임 운영체제 사용 추천 도서 임베디드 소프트웨어 엔지니어를 마스터하자 리얼타임 운영체제와 임베디드 기술의 기초(TECH I vol.17) 책 315 쪽 참조

리얼타임 운영체제 운영체제를 사용하는 장점(운영체제의 역할) 멀티태스킹(병행 처리)를 쉽게 실현할 수 있다. 재사용성의 향상이 기대된다. 멀티태스킹을 실현할 수 있다는 점에서 단순한 기능을 가진 태스크의 집합으로 구현할 수 있기 때문 운영체제는 하드웨어를 추상화한다.

리얼타임 운영체제 운영체제를 사용하는 단점 CPU 오버헤드가 발생한다. 메모리 풋프린터가 소비된다. 비용이 발생한다. 구매비용, 런타임 라이선스 비용, 유지보수 비용 등 시스템에 블랙박스 부분이 생기게 된다.

비트제어 MSB(Most Significant Bit) LSB(Least Significant Bit)

비트제어 논리곱(AND) 특정 비트를 마스킹 또는 제로 클리어 특정 비트가 0인지, 1인지 체크 특정 비트만 클리어 /* 0x02 == 0000 0010 */ Ex1) data = cdata & 0xFF00; Ex2) if(cdata & 0x02){ ; } Ex3) cdata &= (~0x02);

비트제어 논리합(OR) 특정 비트만 1로 만든다 Ex1) cdata |= 0x02; Ex2) 비트필드 사용

비트제어 배타적 논리합(EX-OR) 특정 비트의 반전 체크 변수의 값을 0/1 토글 Ex1) if(cdata ^ cdata_save) & 0x02){ ; } Ex2) cdata ^= 1;

비트제어 비트 시프트 2의 거듭제곱의 곱셈 2의 거듭제곱의 나눗셈 정수 데이터를 1비트 왼쪽으로 이동시키면 2배(2^1) 정수 데이터를 2비트 왼쪽으로 이동시키면 4배(2^2) 2의 거듭제곱의 나눗셈 정수 데이터를 오른쪽으로 이동(시프트)

비트제어 비트 시프트 (Cont.) 부동 소수점 데이터의 경우 내부 표현 형식 때문에 ‘시프트=2의 곱셈/나눗셈’이 안됨 부호 있는(signed) 정수형의 시프트에서는 부호비트의 움직임 주의

버퍼제어 사이클링 버퍼 버퍼의 마지막 다음이 버퍼의 선두가 되는 버퍼 통신버퍼, 기록버퍼(Log) 등에 자주 사용

버퍼제어 사이클링 버퍼 (Cont.) 버퍼의 크기를 2의 거듭제곱의 크기로 하면 첨자(포인터)의 처리가 간단함 2의 거듭제곱이 아닌 경우 오버플로우를 처리하기 위해 반드시 if문을 처리해야 함 Ex) #define BUFSIZE (1024) unsigned char buff[BUFSIZE], cval; short int bufpnt=0; buff[bufpnt++] = cval; bufpnt &= (BUFSIZE-1);

버퍼제어 캐스트로 버퍼의 초기화를 고속화 1바이트 정수 배열을 4바이트 정수 배열로 캐스트 하여 초기화 하면 처리량 ¼ 단, 배열이 워드 얼라인먼트가 확립되어 있지 않은 어드레스에 배치된 경우 정상적으로 동작하지 않는 경우가 있음 Ex) #define BUFSIZE (1024) signed char buff[BUFSIZE]; short int i; long int *p; p = (long int *)buff; for(i=0; i<BUFSIZE/sizeof(long int)); i++) { *p++ = 0; }

메모리 배치 워드 얼라인먼트 변수를 워드 크기의 정수배 어드레스에 배치 배열이나 구조체의 크기가 CPU 처리 단위 보다 작을 경우 사용 union을 사용하여 강제로 배치 할 수 있음 배열의 전체 크기는 얼라인먼트에 사용하는 변수보다 크게 설정 Ex) union name { char id[10]; long int dummy; }

포트로의 액세스 포트 입출력 Ex) /* 어드레스 0xff00의 8비트 폭의 포트 */ unsigned char cdata, *p_port; p_port = (volatile unsigned char *)0xff00; cdata = *p_port; // 읽기 *p_port = cdata; // 쓰기

Q&A 감사합니다.