2010년. 🍗(0.5/5점)

게시판에서 '마지막 10분을 위한 영화'라는 평을 보고, 보자! 결심.

고스트 4명이 모였을 때 이미 알아버렸다.

시간 낭비인 영화.

' > 볼것' 카테고리의 다른 글

헬로우 고스트  (0) 2020.08.30
엑스 마키나  (0) 2020.07.31
박재동 화백의 김어준  (0) 2020.07.20
[펌] 똥꼬털 많은 여고생 고민  (0) 2020.07.18
Zodiac  (0) 2020.07.12
The Manchurian Candidate  (0) 2020.07.11

이 책을 최대한 활용하기 위해

이 책의 예제를 다양한 사람들이 가능한 한 쉽게 작업할 수 있도록 모든 노력을 기울였습니다. 예제를 경험하므로써 이 책을 최대한 활용하기 위해서는 다음과 같은 하드웨어가 필요합니다.

  • 인터넷에 액세스할 수 있는 Windows, MacOS 또는 Linux PC

  • STM32 Nucleo-F767ZI 개발 보드

  • 두 개의 Micro-USB 케이블

  • 점퍼선—20~22AWG(~0.65mm)

사용된 여러 도구에 대한 자세한 설정은 각 장에 설명되어 있습니다.

 

이 책의 디지털 버전을 사용하는 경우 직접 코드를 입력하거나 GitHub를 통해 코드에 접근 가능합니다. 이렇게 하면 코드의 복사 및 붙여넣기와 관련된 잠재적인 오류를 방지할 수 있습니다.

 

이 책은 저수준의 임베디드 시스템 프로그래밍을 목표로 하기 때문에, 우리는 C언어를 사용할 것입니다. 데이터시트를 읽을 수 있는 능력과 마이크로컨트롤러에 대한 지식이 있다고 가정합니다. C언어(또는 C++)에 대해 잘 알고 있다면 이 책을 쉽게 읽을 수 있습니다. RTOS의 선지식은 필요하지 않습니다. 임베디드 시스템의 MCU를 가지고 작업하게 되므로, 주로 MCU와 개발 보드의 기능을 다루는 하드웨어 측면에 대해서도 몇 가지 논의가 있을 것입니다. 이 항목에 대해서는 하드웨어 지식이 거의 없는 사람이라도 별 어려움 없이 따라갈 수 있도록 자세히 다룹니다. 실제 조립이 필요하지는 않지만 개발 하드웨어를 다루고 처리하는 것에 불편함이 없어야 합니다.

 

예제 코드 파일 다운로드

https://github.com/PacktPublishing/Hands-On-RTOS-with-Microcontrollers

 

이 책이 다루고 있는 내용은 무엇입니까?

이 책은 총 17장으로 구성되어 있으며, 4개의 섹션으로 나뉩니다. 이미 익숙한 내용이 있다면 이 책을 처음부터 읽을 필요는 없습니다. 예를 들어, RTOS 기본 개념과 실시간 시스템에 이미 익숙하다면, 4장 "적절한 MCU 선택"으로 바로 가셔도 좋습니다. 다음은 각 장에 대한 간략한 설명입니다.

 

1장 “실시간 시스템 소개”에서는 RTOS가 무엇이며, 언제 그리고 왜 RTOS를 사용해야 하는지에 대한 간단한 소개입니다. MCU 기반 RTOS를 대체할 수 있는 하드웨어 및 소프트웨에 대해서도 논의합니다.

 

2장 “RTOS의 Task 이해”에서는 RTOS Task와 슈퍼 루프를 비교하고, 두 가지를 모두 사용하여 병렬 작업을 수행할 수 있는 다양한 방법을 제공합니다.

 

3장 “Task 신호 및 통신 메커니즘”은 많은 다이어그램과 함께 RTOS 개념을 간략하게 소개합니다. 이 장에서는 2장에 이어 RTOS Task 관련 개념 및 용어에 대한 레퍼런스 및 재교육으로 유용하게 활용할 수 있습니다.

 

4장 “적절한 MCU 선택”은 MCU를 선택할 때 고려해야 할 사항을 이해하는 데 도움이 됩니다. 하드웨어와 펌웨어의 상호 의존성을 평가한 후 하드웨어와 펌웨어 엔지니어가 모두 시스템 설계에 관여하는 것이 왜 중요한지 살펴봅니다.

 

5장 “IDE(통합개발환경) 선택”에서는 특정 IDE(Integrated Development Environment)를 선택해야 하는 이유를 포함하여 다양한 유형의 IDE를 소개하고 논의합니다. STM32CubeIDE를 설정하고 예제 코드를 불러들이는 방법을 설명합니다.

 

6장 “실시간 시스템을 위한 디버깅 도구”에서는 책 전체에서 사용할 SEGGER Ozone 및 SEGGER SystemView 시각화 디버깅 소프트웨어 도구를 포함하여 임베디드 시스템을 디버깅하는 도구에 대해 다룹니다. 하드웨어 기반 테스트 장비와 임베디드 시스템 개발 워크플로우를 위한 기타 유용한 도구도 포함되어 있습니다.

 

7장 “FreeRTOS 스케쥴러”에서는 FreeRTOS를 사용하여 작업을 생성하는 다양한 방법과 시작 오류를 해결하는 방법을 설명합니다. Task 상태와 성능을 최적화할 수 있는 다양한 방법을 이해할 수 있습니다.

 

8장 “데이터 보호 및 태스크 동기화”에서는 세마포어를 사용한 작업 동기화 및 뮤텍스를 사용한 데이터 보호, 레이스 조건 및 우선 순위 역전을 방지하는 방법에 대해 다룹니다. 소프트웨어 타이머에 대한 내용도 포함됩니다.

 

제9장 “태스크간 통신"에서는 값이나 참조의 방법으로 큐를 사용한 서로 다른 예제를 이용하여 태스크간 정보를 전달하는 방법을 살펴보고, 두 방법의 장점과 고려사항에 대해 논의합니다. 또한 태스크 알림 및 큐의 비교를 포함한 직접 작업 알림인 경량 태스크간 통신 메커니즘에 대해서도 알아봅니다.

 

10장 “드라이버 및 ISR”에서는 세마포어, 큐 및 스트림 버퍼를 포함한 다양한 FreeRTOS 기본 기능으로 효율적인 드라이버를 구현하는 방법에 대한 몇 가지 자세한 예를 살펴보겠습니다. 또한 DMA와 같은 MCU 하드웨어와 함께 FreeRTOS를 사용하여 CPU 효율성이 매우 높은 드라이버 구현을 제공하는 방법도 알아보겠습니다. 이 장에서는 MCU 주변장치 레지스터와 함께 STM32 HAL 코드와 작업합니다.

 

11장 “작업 간에 하드웨어 주변기기 공유”에서는 하드웨어 자원을 공유하면서 여러 작업에서 안전하게 사용할 수 있는 드라이버를 만드는 방법을 설명합니다. 우리는 여러 태스크에 걸쳐서 안전하게 사용할 수 있도록 뮤텍스와 큐에 집중하면서 사용자 친화적이고 효율적이기 위해 STM이 제공하는 USB CDC를 채택할 것입니다.

 

제12장 “잘 추상화된 아키텍처 생성에 대한 조언”에서는 코드 재사용성, 유연성 및 하드웨어 이식성을 다루며, 작업을 보다 쉽게 해주는 추상화를 생성하는 방법에 대해 설명합니다. 재사용을 촉진하는 소스 코드 조직화에 대한 몇 가지 제안 사항도 다룹니다.

 

13장 “큐를 이용한 느슨한 커플링 생성”은 이 책에서 다룬 모든 개념중 정점에 해당합니다. 여기에는 적절하게 추상화되고 엔드-투-엔드 애플리케이션을 만드는 데 사용되는 느슨하게 결합된 아키텍처의 완전히 다듬어진 예가 포함되어 있습니다. 앞에서 개발한 USB CDC 가상 통신 포트와 LED 추상화를 이용하여, 명령큐를 사용한 느슨하게 결합되고 완전히 재사용 가능한 LED 시퀀서를 만들 것입니다. 이 임베디드 프로그램은 Python으로 작성된 크로스 플랫폼 UI를 프로그램이 실행되는 PC에서 제어할 수 있습니다.

 

14장 “RTOS API 선택"에서는 FreeRTOS 기능에 액세스하는 데 사용할 수 있는 3가지 API, 즉 기본 FreeRTOS API, ARM의 CMSIS-RTOS 및 POSIX에 대한 개요와 함께 고급 아키텍처에 관한 논의를 계속합니다. 논의 항목에는 각 기능들의 비교와 각기 다른 프로젝트에 대해 하나의 API를 선택해야하는 이유가 포함됩니다.

 

15장 “FreeRTOS 메모리 관리”에서는 FreeRTOS에서 메모리 관리를 위한 몇 가지 다른 옵션을 자세히 살펴봅니다. 정적 할당과 동적 할당을 비롯하여 MPU(Memory Management Unit) 또한 알아봅시다.

 

16장 “멀티프로세서 및 멀티코어 시스템”에서는 멀티프로세서 및 멀티코어 시스템을 다양한 이유로 어떻게 사용하는지, 즉 멀티프로세서 및 멀티코어 시스템이 무엇인지, 시스템의 다양한 부분이 어떻게 통신하는지 설명합니다.

 

17장 “문제 해결 팁 및 다음 단계”에서는 스택오버플로를 방지하는 방법과 중단된 시스템(hung system)의 문제를 해결하는 방법을 포함한 시스템 문제 해결을 위한 팁을 다룹니다. 다음 단계를 위한 몇 가지 권장 사항도 다룹니다.

서문

본 실습 가이드는 마이크로컨트롤러(MCU)에서 실시간 운영 체제(RTOS)를 실행하는데 있어 가장 중요한 기능적 지식을 제공합니다. 실제 하드웨어를 사용하는 실습 예제를 통해 RTOS 응용프로그램을 어떻게 구현하는지, 그리고 일반적인 성능과 개발 소요 시간 사이의 절충하는 방법에 대한 논의에 관심 있다면 이 책을 잘 선택한 것입니다.

 

우리는 FreeRTOS 커널을 사용하여 코드를 구현하고, 저가의 STM Neucleo 개발 보드에 실장된, 인기있는 STM32 ARM MCU를 활용하며, SEGGER 디버그 도구를 사용하여 코드를 디버깅하고 분석할 것입니다. 이 책에 사용된 모든 도구들은 취미 활동가나 전문가가 프로젝트를 시작할 때 쉽게 접근할 수 있고 실제 프로팀에서도 많이 사용하기 때문에 선택되었습니다. 이 책의 내용과 예제를 통해 얻은 지식과 경험은 실제 전문적인 환경에서 개발시에 직접적으로 적용될 수 있습니다.

 

어떤 사람을 위한 책일까요?

RTOS 프로그래밍은 초보자의 주제가 아니며 임베디드 시스템에 대한 학습을 위한 적절한 출발점이 아닙니다. MCU나 C언어에 생소하다면, 이보다 발전된 주제에 접근하기 전에 기초부터 다루고 실제 경험을 쌓는 것으로 시작하는 것이 좋습니다.

 

그렇다면, 이 책은 어떤 사람에게 가장 필요한 것일까요?

 

전문 프로그래머 : 지금까지는 베어메탈(OS 없음)의 프로그래밍 경험만 있으면서, RTOS를 사용하여 엄격한 타이밍 요구 사항을 충족하고 동시 운영의 균형을 얻으며 모듈화된 코드를 작성하는 방법을 배워서 MCU 프로그래밍 기술을 향상하려는 프로그래머.

 

학생 : 이론을 다루고, 강의를 듣고, 실험실에서 연습문제를 코딩하는 등의 활동을 해왔지만, 물리적으로 만지고 상호작용할 수 있는 것을 시작할 수 있도록 도와주는 완벽한 가이드를 찾고 있는 학생.

 

보다 고급스러운 주제로 넘어가려는 메이커 : 스케치나 스크립트 코드를 몇 가지 코딩했지만 다음 과제를 찾고 있고, 기초부터 완전한 MCU 기반 시스템을 만들고 싶다면 여기에 나와 있는 정보는 프로그래밍 측면의 본궤도에 오르는 데 도움이 될 것입니다. 프로젝트에 사용할 MCU를 선택할 때 무엇을 고려해야 하는지에 대한 조언도 얻을 수 있습니다.

요즘엔 롯데 불매를 하는지라 농심 제품은 전혀 먹질 않고 있는데, 편의점에서 먹을 땐 다른 대안이 없더군요.

농심 김치 큰사발면이 계속 먹어도 물리지 않고 맛있습니다. 대안 제품 좀 추천해주세요.

' > 먹을것' 카테고리의 다른 글

인생에일  (0) 2020.09.22
리스토란테 냉동피자  (0) 2020.09.11
농심 김치 큰사발  (0) 2020.08.16
모란역 '부산자매 돼지국밥'  (0) 2020.08.15
생활맥주  (0) 2020.08.15
순대실록 대학로본점  (0) 2020.08.07

Building real-time embedded systems using FreeRTOS, STM32 MCUs, and SEGGER debug tools

 

임베디드 하드웨어/펌웨어 설계자로서 괜찮은 책을 찾은 것같아 공부해보려 합니다. 책에서 사용하고 있는 테스트 보드는 ST사의 ⟪NUCLEO-F767ZI⟫이니 준비하고 따라해 봅시다.

 

NUCLEO-F767ZI

 

저자 Brian Amos에 대해

2012년부터 FreeRTOS를 기반으로한 임베디드 시스템 엔지니어입니다. 현재 통신 업계의 수석 펌웨어 엔지니어로, 위성 통신 분야의 지상에서 사용되는 임베디드 시스템을 개발하고 있습니다. 이전에는 고정밀 테스트 장비를 신속하게 개발하기 위해 유연한 아키텍처를 만드는 엔지니어 팀을 이끌었습니다. 이에 앞서, 그는 산업용 기계의 유지보수 시기를 예측하는 데 사용되는 메쉬 네트워크 에너지 수집 센서를 이용한 작업을 수행해 왔습니다.

 

 

차례

스마트폰이 다양한 하드웨어를 잡아 먹고 있음은 일반적으로 인식되고 있는 사실일터. 카메라, 캠코더, 라디오, MP3 플레이어, 게임기, 시계, 지갑 등등... 디지털 데이터로 표현할 수 있는 모든 것들이 손 안으로 수렴하고 있다.

 

난 필기구를 좋아한다. 이에 수반되는 종이, 글씨체(폰트)에도 관심있다. 중학생 때부터는 펜텔에서 출시한 중성펜 Hybrid 팬이었고 성인이후 만년필을 좋아하게 됐는데, 언제부턴가... 10년 전부터였을꺼다... 필기를 할 일이 없어졌다. 컴퓨터로 타이핑하는게 훨씬 유용하게 됐으니까 말이다.

 

그러다 가끔이지만 와콤 타블렛 장치를 사용하다 얼마 전부터 애플 펜슬을 사용하고 있는데, 이젠 펜도 스위스 시계 메이커처럼 많은 자리를 내줘야할 것으로 보인다.

모란역 8번 출구 근처에 위치한 '부산자매 돼지국밥'집. 실은 소머리국밥을 먹으러 갔다가 문이 닫혀 우연히 찾게된 국밥집이다.

 

나는 돼지국밥을 시켜 먹었지만, 옆 테이블 단골로 보이는 분들은 모두 수육백반을 드시더라.

무엇보다 혜자인 점은 돼지국밥이 6천원.

 

🍖🍖🍖 (3/5점)

' > 먹을것' 카테고리의 다른 글

리스토란테 냉동피자  (0) 2020.09.11
농심 김치 큰사발  (0) 2020.08.16
모란역 '부산자매 돼지국밥'  (0) 2020.08.15
생활맥주  (0) 2020.08.15
순대실록 대학로본점  (0) 2020.08.07
맛김치 맛있게 익히기  (0) 2020.07.31

https://sci-hub.tw/

 

 

' > 링크' 카테고리의 다른 글

논문 공짜로 보기 SCI-HUB  (0) 2020.08.15
eBook 다운로드 사이트  (0) 2019.12.13
'종의 기원 On the Origin of Species' 초판본 다운로드  (0) 2019.11.10
몸문화연구소  (0) 2019.11.05
중간 블로그 링크  (0) 2019.06.20
모두를 위한 머신러닝과 딥러닝의 강의  (0) 2019.06.12

VSC 테마로 검정 또는 파란색 계열의 다크 테마를 사용해 왔었는데요, 이번에 아주 괜찮은 'Remedy'라는 테마를 찾았습니다.

주황색과 밤색 계열인듯. 눈이 아주 편하고 좋네요.

+ Recent posts