상세정보
미리보기
임베디드 엔지니어 교과서
- 저자
- 와타나베 노보루,마키노 신지 공저/정인식 역
- 출판사
- 제이펍
- 출판일
- 2022-06-22
- 등록일
- 2024-11-21
- 파일포맷
- PDF
- 파일크기
- 14MB
- 공급사
- 예스이십사
- 지원기기
-
PC
PHONE
TABLET
웹뷰어
프로그램 수동설치
뷰어프로그램 설치 안내
책소개
임베디드의 기초 원리부터 다양한 활용까지 한 권에 모두 담았다!임베디드 기술을 처음 접하는 분이나 임베디드 엔지니어를 목표로 하는 분을 위해 쉽고 친절하게 집필된 『임베디드 교과서』는 사물인터넷 분야와 모바일 기기, 각종 전자 장비에서 빼놓을 수 없는 임베디드 소프트웨어 기술에 관해 설명한다. 또한, 임베디드 개발환경에서 많이 사용하는 아두이노와 라즈베이 파이를 다루며, 임베디드 시스템 개발에 참여할 엔지니어가 알아 두어야 할 필수 지침과 자세 등을 저자의 경험적 측면과 소프트웨어 개발 원칙에 따라 설명한다.
저자소개
전자 제품 제조사에서 통신 시스템의 개발 및 프로세스 개선 업무를 진행하였고, IPA(독립행정법인정보처리추진기구) 연구원으로서 임베디드 기술자 육성 업무를 담당하였다. 2010년부터는 주식회사 아프렐에서 레고 마인드스톰을 이용한 인재 육성을 기획하였으며, 현재는 NPO 법인 임베디드 소프트웨어 관리자이며, 기술자 육성 연구회 이사로 재직 중이다. 또한, 합동회사 와타나베 기술연구소 및 주식회사 ‘for Our Kids’를 창업하여 자체 제작한 교재용 로봇의 개발, 영업 등의 업무를 맡고 있다.
목차
<b>CHAPTER 1 임베디드 소프트웨어 엔지니어의 업무 1</b></br>01 임베디드 시스템이란? 3</br> 임베디드 시스템의 중요성 3</br> 임베디드 시스템과 PC, 서버는 어떻게 다른가? 4</br>02 임베디드 시스템의 특징 5</br> Nature: 자연 법칙의 취급 6</br> Time: 실시간성의 요구 7</br> Constraint: 엄격한 제약 사항 8</br> Reliability: 높은 신뢰성 9</br> 제품별 NTCR 요구사항의 특징 9</br>03 임베디드 소프트웨어란? 10</br> 소프트웨어의 종류 10</br>04 임베디드 소프트웨어 엔지니어의 업무 13</br> 임베디드 소프트웨어 엔지니어가 속하는 조직 13</br> 임베디드 소프트웨어의 규모에 따라 조직은 변한다 13</br> 하청이 아닌 프로 서비스 14</br>05 임베디드 소프트웨어 엔지니어의 직종 16</br></br><b>CHAPTER 2 마이크로컴퓨터 하드웨어 19</b></br>06 임베디드 시스템의 구성 21</br>07 임베디드 마이크로컴퓨터의 구성 23</br> 하드웨어의 종류 23</br> CPU와 마이크로컴퓨터 24</br> 메모리 25</br> 메모리의 종류 27</br> 버스의 구성 29</br> 메인 버스의 용도 29</br> 로컬 버스 31</br> 주변장치 34</br> 주변장치의 제어 방식 36</br>08 CPU란? 38</br> CPU의 명령 실행 40</br> 인터럽트 43</br></br><b>CHAPTER 3 임베디드 소프트웨어 47</b></br>09 임베디드 시스템의 소프트웨어 49</br> 임베디드 소프트웨어의 종류 49</br>10 임베디드 소프트웨어를 개발하는 흐름 51</br> 실제 빌드의 흐름 확인하기 53</br>11 어셈블리 언어로부터 알 수 있는 것 59</br> 스타트업 루틴 61</br> main 함수가 호출될 때까지의 흐름 추적 61</br> 메모리 맵 63</br> 스택 64</br> 스택과 인터럽트 65</br>12 임베디드 소프트웨어의 테스트 환경 68</br> ICE 68</br>13 임베디드 시스템 프로그래밍에서의 C언어 71</br> 최적화 옵션의 장점과 단점 71</br> volatile 선언 71</br> unsigned와 signed 72</br> pragma 73</br> 포인터와 배열 73</br> 인터럽트 핸들러 74</br></br><b>CHAPTER 4 임베디드 시스템을 사용한 C언어 프로그래밍 77</b></br>14 아두이노의 하드웨어 확인하기 79</br> 아두이노란? 79</br> 아두이노 우노의 하드웨어 구성 80</br> 마이크로컴퓨터의 데이터 시트 조사하기 82</br> 데이터 시트와 보드 맞춰 보기 84</br> ATmega328P의 내부 구성과 커넥터와의 관계 88</br>15 LED를 ON/OFF하는 실험 93</br> LED 실험의 개요 93</br> LED 접속 94</br> 점멸 프로그램 작성하기 96</br> 동작 확인 101</br>16 LED 실험 프로그램 이해하기 103</br> CPU의 관점에서 바라본 레지스터 제어 103</br> 어셈블러에서 확인 103</br>17 LED 점멸 시간 지정하기 109</br> 타이머의 이용 111</br></br><b>CHAPTER 5 실시간 운영체제 113</b></br>18 임베디드 시스템의 운영체제 115</br> 운영체제란? 115</br> 임베디드 운영체제가 필요한 이유 116</br> 임베디드 운영체제를 사용할 때의 단점 121</br>19 임베디드 운영체제 사용해 보기 123</br> 임베디드 운영체제의 동작 123</br>20 FreeRTOS 동작 배우기 128</br> FreeRTOS의 구성 128</br> FreeRTOS의 기본 동작 129</br> 소스 코드의 실제 동작 131</br>21 임베디드 운영체제의 역사 136</br> 임베디드 운영체제의 역사 136</br> 임베디드 운영체제의 종류와 시대 배경 138</br>22 임베디드 운영체제의 선택 방법 142</br>임베디드 운영체제의 선정 포인트 142</br></br><b>CHAPTER 6 스마트 디바이스 145</b></br>23 데이터 주도 사회 147</br> 데이터의 활용 147</br>24 스마트 디바이스 149</br> 스마트 디바이스란? 149</br> 스마트 디바이스의 사용 예 150</br> 스마트 디바이스의 구성 152</br></br><b>CHAPTER 7 임베디드 리눅스 161</b></br>25 임베디드 리눅스 163</br> 리눅스 운영체제를 사용하는 이유 163</br> 리눅스 운영체제가 동작하는 하드웨어 구성 164</br> 리눅스 운영체제가 동작하는 소프트웨어 구성 168</br>26 임베디드 리눅스 소프트웨어의 개요 170</br> 프로세스 170</br> 스레드 171</br> IPC 171</br> 커널 172</br> 시스템 콜 인터페이스 175</br>27 임베디드 리눅스의 빌드와 기동 179</br> 이용할 하드웨어 179</br> 라즈베리 파이 3B+의 리눅스 배포판 181</br> 라즈베리 파이 3B+에서 Yocto를 기동하기까지의 흐름 183</br> Yocto에서의 빌드 실행 183</br>28 임베디드 리눅스의 동작 확인 187</br> Yocto 재빌드에 의한 자체 개발환경의 도입 187</br> sysfs의 이용 196</br> 오픈 소스 소프트웨어의 이용 198</br> 임베디드 리눅스 개발에서 주의해야 할 포인트 203</br></br><b>CHAPTER 8 임베디드 소프트웨어의 개발 프로세스 207</b></br>29 임베디드 시스템의 라이프사이클 209</br>30 임베디드 시스템의 개발 방법 211</br> 동시 개발 211</br> 프런트 로딩 212</br> 임베디드 소프트웨어 개발 프로세스의 V자 모델 213</br> 임베디드 소프트웨어 개발 프로세스 214</br>31 시스템 요구 정의 216</br>32 시스템 아키텍처 설계 218</br>33 소프트웨어 요구 정의 223</br>34 소프트웨어 아키텍처 설계 225</br>35 소프트웨어 상세 설계 228</br>36 구현, 단위 테스트 229</br>37 소프트웨어 결합, 통합 테스트 232</br>38 소프트웨어 타당성 확인 테스트 235</br>39 시스템 결합, 통합 테스트와 시스템 타당성 확인 테스트 236</br>40 제품 출하 237</br></br><b>CHAPTER 9 사물인터넷/인공지능 시대의 임베디드 소프트웨어 개발 239</b></br>41 산업혁명과 임베디드 시스템 241</br> 제1차 산업혁명 241</br> 제2차 산업혁명 242 </br> 제3차 산업혁명 243</br> 제4차 산업혁명 245</br>42 DX 시대의 임베디드 시스템 개발 247</br> 기능 배치의 변화 247</br>43 임베디드 엔지니어의 학습방법 253</br> 수파리 이론 253</br> 표준적인 개발 방법 배우기 254</br> 자신이 직접 정보를 제공하면 다른 정보도 수집된다 255</br></br><b>APPENDIX A Arduino IDE/Yocto의 설치 257</b></br>44 Arduino IDE를 윈도우 10에서 설치하기 259</br> Arduino IDE의 입수 259</br> Arduino IDE의 설치 262</br> AVR 명령의 동작 확인 266</br>45 Yocto 빌드 환경의 준비 267</br> dash의 전환 267</br> 빌드에 필요한 패키지 설치 267</br> 프록시의 설정이 필요할 때 268</br>46 라즈베리 파이 3의 Yocto 환경 구축 271</br> Yocto의 버전 271</br> Yocto의 환경 구축 271</br> Yocto 환경의 셋업 272</br></br>찾아보기 276