실전! ARM Cortex-M3 시스템 프로그래밍 완전정복 2
도서+교보Only(교보배송)을 함께 15,000원 이상 구매 시 무료배송
15,000원 미만 시 2,500원 배송비 부과
20,000원 미만 시 2,500원 배송비 부과
15,000원 미만 시 2,500원 배송비 부과
1Box 기준 : 도서 10권
알림 신청하시면 원하시는 정보를
받아 보실 수 있습니다.
해외주문/바로드림/제휴사주문/업체배송건의 경우 1+1 증정상품이 발송되지 않습니다.
패키지
북카드
키워드 Pick
키워드 Pick 안내
관심 키워드를 주제로 다른 연관 도서를 다양하게 찾아 볼 수 있는 서비스로, 클릭 시 관심 키워드를 주제로 한 다양한 책으로 이동할 수 있습니다.
키워드는 최근 많이 찾는 순으로 정렬됩니다.
작가정보
저자 박선호는
서울대학교 컴퓨터공학과 학사
서울대학교 컴퓨터공학과 석사
현대전자주식회사 중대형컴퓨터 개발
VK주식회사 GSM 핸드폰 개발
코아로직 사업본부장
현) 씨알지테크놀러지 대표이사
네이버 embeddedcrazyboys 카페 필명 "설렁설렁"
저자(글) 오영환
저자 오영환은
고려대학교 전산과학과 학사
현대전자주식회사 CDMA 시스템 개발
한테크 기지국 RF Test 장비 개발
뉴젠텔레콤 GSM 핸드폰 개발
코아로직 AP FAE 개발 팀장
현) 씨알지테크놀러지 수석연구원
네이버 embeddedcrazyboys 카페 필명 "푸우"
주요 공저 저술
망고스토리1, S3C2443/S3C6410/JTAG Embedded Board를 통한 ARM9/ARM11 Embedded 환경 체험
망고스토리2, 실전! ARM Cortex-M3 시스템 프로그래밍 완전정복 1
망고스토리3, 실전! ARM Cortex-M3 시스템 프로그래밍 완전정복 2
망고스토리4, 실전! Windows CE 시스템 프로그래밍 완전정복
망고스토리5, 실전! 안드로이드 (Android) 시스템 프로그래밍 완전정복
목차
- 서언
Unit 0 - 라이브러리 작업 및 Base Program 구축
1. STM32 Library Update 작업
1.1. Library 다운로드
1.2. Library 수정 작업
1.3. 연습 문제
2. Base Program 작업
2.1. 디렉토리 구조
2.2. 프로젝트 환경 구축
2.3. Base Program 분석
2.4. Flash Loader Demonstration 버전에 따른 차이
2.5. Base Program 확인
2.6. 연습 문제
Unit 1 - Cortex-M3 심화 학습
3. Library Debug
3.1. lib_dbg.c 설명
3.2. 빌드 환경 설정
3.3. USE_FULL_ASSERT define & assert_failed
3.4. Assert Test Code
3.5. 실행 결과
3.6. 결론
3.7. 연습 문제
4. Bit Banding
4.1. Bit Banding 복습
4.2. Bit Banding Test 매크로 분석
4.3. Bit Banding Test Code 분석 및 실행 결과
4.4. 결론
4.5. 연습 문제
5. Mode Privilege
5.1. Processor mode & Privilege level
5.2. Stacks
5.3. Stack Pointer - Full-Descending
5.4. Special Register - CONTROL register
5.5. 빌드 환경 구성
5.6. Cortex microcontroller software interface standard (CMSIS)
5.7. 소스 코드 분석 및 실행 결과
5.8. 연습 문제
6. USB Device Firmware Upgrade
6.1. UM0412. DfuSe USB device firmware upgrade
6.2. DfuSe USB upgrade 프로그램 변경
6.3. DfuSe USB upgrade 프로그램 내용 분석
6.4. 프로그램 실행 및 드라이버 설치
6.5. DFU Download File 만들기
6.6. DFU 파일 다운로드 작업
6.7. 실행 결과
6.8. 결론
6.9. 연습 문제
7. USB 회로 및 Disconnect 복습
7.1. USB 회로도 분석
7.2. USB_DISCONNECT 설정 코드 분석
7.3. USB 부분 하드웨어 개요
7.4. USB Disconnect 동작 원리
7.5. 결론
7.6. 연습 문제
8. Interrupt Priority Test
8.1. Cortex-M3 Priority group
8.2. Priority group vs. Sub priority
8.3. SCB_AIRCR 레지스터 VECTKEYSTAT
8.4. Priority Test 1 - Priority Group
8.5. Priority Test 2 - Sub Priority
8.6. Priority Test 3 - 동작 중 Priority 변경
8.7. 결론
8.8. 연습 문제
9. GPIO JTAG Remap
9.1. Remap 개요
9.2. STM32 & Cortex-M3 Debug
9.3. 회로도 분석
9.4. 예제 코드 시나리오
9.5. 예제 코드 분석
9.6. 실행 결과 및 결론
9.7. 연습 문제
10. Power Control (PWR)
10.1. 망고 M32, Z1 Power 공급
10.2. STM32F103xx Low-power modes
10.3. PWR 예제 1 - STOP mode 설정
10.4. PWR 예제 2 - RTC Alarm 설정
10.5. PWR 예제 3 - STANDBY mode
10.6. 연습 문제
11. RTC Calendar
11.1. RTC (Real-time clock) 개요
11.2. 예제 코드 시나리오 및 분석
11.3. 빌드 및 실행 결과
11.4. 연습 문제
12. Independent watchdog (IWDG)
12.1. IWDG 개요
12.2. 예제 코드 시나리오
12.3. 예제 코드 분석
12.4. 실행 결과
12.5. 결론
12.6. 연습 문제
13. Window Watchdog (WWDG)
13.1. WWDG 개요
13.2. 예제 코드 시나리오
13.3. 예제 코드 분석
13.4. 실행 결과
13.5. 결론
13.6. 연습 문제
14. FLASH Program
14.2. Flash Read operation
14.3. Flash program & erase controller (FPEC)
14.4. 예제 프로그램 시나리오
14.5. 예제 프로그램 분석
14.6. 실행 결과
14.7. 결론
14.8. 연습 문제
15. FLASH Write Protection
15.1. Option byte
15.2. Option byte programming
15.3. 예제 프로그램 시나리오
15.4. 예제 프로그램 분석
15.5. 실행 결과
15.6. 연습 문제
Unit 2 - 다양한 통신 프로토콜 연구
16. USART 통신 Polling UART2 & 3
16.1. UART2, UART3 Pin 배정
16.2. UART2, UART3 Pin Remapping
16.3. Polling 방식 사용
16.4. 예제 코드 1 분석
16.5. 망고 M32를 이용한 시험
16.6. 망고 Z1을 이용한 시험
16.7. 망고 M32와 Z1 간의 연결을 통한 시험 - 예제 코드 2
16.8. 결론
16.9. 연습 문제
17. USART 통신 - Interrupt
17.1. 망고 Z1과 망고 M32의 연결
17.2. USART3 Interrupt Enable
17.3. UART3 수신 버퍼 구현 - Circular Queue
17.4. Word Length & Parity
17.5. 데이타 송수신 처리 부분
17.6. 실행 결과
17.7. 연습 문제
18. USART 통신 - Synchronous with SPI
18.1. USART synchronous mode
18.2. 망고 M32 보드 연결 - USART3, SPI1
18.3. 망고 Z1 보드 연결 - USART2, SPI2
18.4. 초기화 설정 작업
18.5. USART & SPI 통신 방식 설정 작업
18.6. USART 송신 -> SPI 수신 통신 작업
18.7. SPI 송신 -> USART 수신 통신 작업
18.8. 실행 결과
18.9. 오실로스코프 파형 검사
18.10. 연습 문제
19. SPI 통신 - Full Duplex (망고 M32)
19.1. Serial peripheral interface (SPI)
19.2. SPI1 <-> SPI2 연결
19.3. SPI1, SPI2 클럭 & GPIO 설정
19.4. SPI 초기화 및 enable 설정
19.5. 1차 전송 시험 - SPI1 master, SPI2 slave
19.6. 2차 전송 시험 - SPI2 master, SPI1 slave
19.7. 실행 결과
19.8. 연습 문제
20. SPI 통신 - Software SPI (망고 Z1)
20.1. Motorola SPI & CC2520
20.2. spi_sw.c 구현 내용
20.3. 기타 구현 내용
20.4. 실행 결과
20.5. 연습 문제
21. TIM IRQ Channels
21.1. STM32 TIM Timer
21.2. TIM2, 1초 update interrupt 예제
21.3. TIM2, TIM3, TIM4, update interrupt 예제
21.4. 연습 문제
22. TIM Time Base
22.1. CCx Interrupt Output mode
22.2. 예제 코드 시나리오
22.3. 망고 보드 연결
22.4. 예제 소스 코드 분석과 실행 결과
22.5. 오실로스코프 파형
22.6. 연습 문제
23. TIM PWM Output
23.1. PWM (Pulse Width Modulation)
23.2. 예제 코드 시나리오
23.3. 예제 소스 코드 분석
23.4. 오실로스코프 파형
23.5. 연습 문제
24. TIM Input Capture & PWM Input
24.1. Input capture mode
24.2. PWM input mode
24.3. Input Capture 예제 코드 시나리오
24.4. Input Capture 망고 보드 연결
24.5. Input Capture 예제 소스 코드 분석
24.6. 빌드 시의 유의 사항
24.7. Input Capture 실행 결과
24.8. PWM Input 예제 코드 시나리오
24.9. PWM Input 망고 보드 연결
24.10. PWM Input 예제 소스 코드 분석
24.11. PWM Input 실행 결과
24.12. 연습 문제
25. TIM DMA
25.1. Direct memory access (DMA)
25.2. 예제 코드 시나리오 및 망고 보드 연결
25.3. 예제 소스 코드 분석
25.4. 오실로스코프 파형
25.5. 연습 문제
26. ADC DMA
26.1. ADC (analog-to-digital converter)
26.2. Injected Channel & Regular Channel
26.3. Data alignment
26.4. Scan mode
26.5. Calibration
26.6. 예제 코드 시나리오 및 망고 보드 시험 환경
26.7. 라이브러리 변경 사항
26.8. 예제 소스 코드 분석
26.9. 실행 결과
26.10. 연습 문제
27. ADC Temperature Sensor
27.1. STM32 Temperature Range
27.2. Temperature Sensor
27.3. 온도 측정 과정
27.4. 예제 소스 코드 분석
27.5. 수행 결과
27.6. 연습 문제
28. ADC Analog Watchdog
28.1. Analog watchdog
28.2. 예제 코드 시나리오 및 망고 보드 시험 환경
28.3. 예제 소스 코드 분석
28.4. 실행 결과
28.5. 연습 문제
29. ADC Dual Mode
29.1. Dual ADC mode
29.2. Regular Simultaneous Mode
29.3. VREFINT internal channel
29.4. 예제 코드 시나리오 및 망고 보드 시험 환경
29.5. 예제 소스 코드 분석
29.6. 시험 결과
29.7. 연습 문제
30. I2C 개념 및 Software I2C
30.1. I2C 통신 개념
30.2. Pull-up 저항 & Open-Drain
30.3. 망고 보드 연결 작업
30.4. 예제 소스 코드 분석
30.5. 시험 결과
30.6. Software I2C 소스 코드 분석
30.7. 연습 문제
31. I2C (in board) I2C1 & I2C2 - (M) Polling (S) IT
31.1. STM32 Hardware I2C
31.2. Master Slave 모드 선택
31.3. 예제 코드 시나리오
31.4. Pull-up 저항 연결 작업
31.5. 망고 보드 연결 작업
31.6. 예제 코드 분석
31.7. 시험 결과
31.8. 연습 문제
32. CAN Loop Back
32.1. CAN 통신 개요
32.2. CAN Frame Structure
32.3. STM32 CAN
32.4. Silent & Loopback mode
32.5. 예제 코드 분석
32.6. 실행 결과
32.7. 연습 문제
Unit 3 - 각종 센서 보드 활용
33. BH1600 Light Sensor - 분석
33.1. 조도 센서 모듈 개요
33.2. BH1600 조도 센서
33.3. BH1600 조도 센서 모듈 커넥터
33.4. BH1600 조도 센서 모듈 회로도
33.5. 조도 센서(BH1600FVC) 1번 PIN 위치
33.6. 연습 문제
34. BH1600 Light Sensor - ADC
34.1. 망고 보드 연결
34.2. 소스 코드 분석
34.3. 시험 결과
34.4. 조도 값 계산
34.5. 연습 문제
35. BMA150 3-Axis Accelerometer Sensor - 분석
35.1. BMA150 3축 가속도 센서 모듈
35.2. BMA150 가속도 센서 모듈의 구조
35.3. BMA150 가속도 센서 모듈 회로도
35.4. SMB380 & BMA150
35.5. 연습 문제
36. BMA150 3-Axis Accelerometer Sensor - SW SPI
36.1. 4-Wire SPI 사용을 위한 연결 방식
36.2. 망고 보드 연결
36.3. 소스 코드 분석
36.4. 실행 결과
36.5. 연습 문제
37. BMA150 3-Axis Accelerometer Sensor - HW SPI
37.1. NSS (NCS) 제어
37.2. 소스 코드 분석
37.3. 실행 결과
37.4. 연습 문제
38. BMA150 3-Axis Accelerometer Sensor - SW I2C
38.1. I2C 사용을 위한 연결 방식
38.2. 망고 보드 연결
38.3. BMA150 I²C protocol:
38.4. 예제 코드 분석
38.5. 실행 결과
38.6. 연습 문제
39. BMA150 3-Axis Accelerometer Sensor - HW I2C
39.1. STM32 I2C Master Receiver
39.2. 소스 코드 분석
39.3. 실행 결과
39.4. 연습 문제
40. BMA150 3-Axis Accelerometer Sensor - SPI & I2C 통합
40.1. 망고 보드 연결
40.2. 예제 코드 분석
40.3. 실행 결과
40.4. 연습 문제
41. SN65HVD231 CAN Transceiver 모듈 분석
41.1. 보드 개요 및 구조
41.2. Connector 핀 배치 및 기능
41.3. 회로도
42. SN65HVD231 CAN Transceiver - CAN Normal
42.1. CAN Remap
42.2. CAN Interrupt
42.3. Identifier filtering
42.4. 망고 보드 연결
42.5. 예제 코드 분석
42.6. 실행 결과
42.7. 연습 문제
맺음말
색 인
출판사 서평
ARM Cortex-M3 (STM32F10x) 테스트 보드를 통해
실제 개발에 활용할 수 있는 가장 완벽한 지침서
l ARM Cortex-M3 시스템 프로그램 개발 실전 가이드
l 입문에서 전문가 수준까지 친절한 안내서
l Cortex-M3 MCU를 활용한 펌웨어 개발 실전 코드 제공
l 단순 제어에서 무선통신까지 광범위한 체험
l 조도 센서, 가속도 센서, CAN 트랜시버 보드 제어
Cortex-M3 시스템 개발자의 고민을 한번에 해결하는
완벽! ARM Cortex-M3 실전 바이블
Unit 0 - 라이브러리 작업 및 Base Program 구축
STM32 Library Update 작업
Base Program 작업
Unit 1 - Cortex-M3 심화 학습
Library Debug, Bit Banding, Mode Privilege, USB Device Firmware Upgrade
USB 회로 및 Disconnect 복습, Interrupt Priority Test
GPIO JTAG Remap, Power Control (PWR), RTC Calendar
Independent watchdog (IWDG), Window Watchdog (WWDG)
FLASH Program, FLASH Write Protection
Unit 2 - 다양한 통신 프로토콜 연구
USART 통신 - Polling UART2 & 3, Interrupt, Synchronous with SPI
SPI 통신 - Full Duplex (망고 M32), Software SPI (망고 Z1)
TIM IRQ Channels, TIM Time Base, TIM PWM Output
TIM Input Capture & PWM Input, TIM DMA
ADC DMA, ADC Temperature Sensor, ADC Analog Watchdog
ADC Dual Mode, I2C 개념 및 Software I2C
I2C (in board) I2C1 & I2C2 - (M) Polling (S) IT, CAN Loop Back
Unit 3 - 각종 센서 보드 활용
BH1600 Light Sensor - 분석 및 ADC 제어
BMA150 3-Axis Accelerometer Sensor - 분석 및 SPI, I2C 통합 제어
SN65HVD231 CAN Transceiver 모듈 분석 및 CAN Normal 통신
“실전! ARM Cortex-M3 시스템 프로그래밍 완정정복 I”에서 Cortex-M3 MCU의 특성과 프로그래밍에 대해 기초부터 각종 내장 주변장치 활용에 이르기까지 폭넓게 다루었습니다. 가능한 많은 것들을 다루려 노력했지만 지면에 제약이 있어 Cortex-M3 MCU를 속속들이 파헤치지 못한 아쉬움이 남았습니다.
이제 “실전! ARM Cortex-M3 시스템 프로그래밍 완전정복 II”에서 지난 책에서 다루지 못했던 부분들을 더욱 심도 있게 보충했습니다. Cortex-M3 MCU의 가능성이 너무나 크기 때문에 아직도 미진한 부분이 많지만 이 2권의 책이 Cortex-M3 MCU를 활용하는데 많은 도움이 될 것입니다.
이번 “완전정복 II”는 Cortex-M3 MCU의 장착된 각종 주변 장치와 외장 센서를 다루는 것에 대해 심도 있게 설명하였습니다. “완정정복 I”과 같이 모든 코드와 회로는 직접 만들고 실전에서 검증하여 실제 응용에 바로 활용할 수 있도록 하였습니다. 특히, MCU 응용에서 자주 사용되는 가속도센서와 CAN 보드를 따로 만들어 이들에 대해 실습해 볼 수 있도록 하여 좀 더 실질적인 MCU 응용 프로그래밍을 체험 할 수 있도록 하였습니다.
또한, 이 책으로 공부하면서 만나게 될 많은 문제점들은 커뮤니티(http://cafe.naver.com/embeddedcrazyboys)를 통해 저자와 이 책의 저작에 많은 도움을 준 고수님들 그리고 기타 같은 문제로 고민하고 있는 엔지니어들과 묻고 대답하며 해결할 수 있도록 하였습니다. 이 책의 독자들도 커뮤니티에서 적극적으로 정보를 공유하여 함께 발전할 수 있기를 기원합니다.
책은 4개의 Unit으로 구성되어 있습니다.
[Unit 0]
STM 라이브러리를 최신의 것으로 갱신하는 방법에 대한 부분과 향후 책에 사용하게 될 모든 예제 코드의 베이스가 될 프로그램에 대해서 설명합니다.
[Unit 1]
디버그, Bit Band, Mode Privilege, USB FW Upgrade, Priority, Power mode, RTC, Watchdog, Flash 등 MCU 자체에서 필수적으로 알아야 할 부분들에 대해서 설명합니다.
[Unit 2]
USART, SPI, Timer, ADC, I2C, CAN에 대해서 상세한 설명을 하고 있습니다. 각각은 여러 장에 걸쳐서 자세하게 다루고 있습니다.
[Unit 3]
두 개의 센서 보드와 하나의 CAN Transceiver 보드를 추가로 제작하여 이 보드들을 실제로 활용하는 부분을 설명하고 Unit 2에서 배운 각종 통신 방식을 이용해서 실제적인 활용이 될 수 있도록 구성하였습니다.
커뮤니티를 꾸리고 이끌어 나가는데 도움을 주신 많은 분들과 함께 집필하며 고락을 함께한 멤버들에게 깊이 감사 드립니다.
기본정보
ISBN | 9791195792702 ( 1195792700 ) | ||
---|---|---|---|
발행(출시)일자 | 2016년 05월 30일 | ||
쪽수 | 646쪽 | ||
크기 |
189 * 258
mm
/ 1313 g
|
||
총권수 | 1권 | ||
시리즈명 |
Mango Story
|
||
이 책의 개정정보 |
가장 최근에 출시된 개정판입니다.
구판보기
|
Klover
e교환권은 적립 일로부터 180일 동안 사용 가능합니다.
리워드는 작성 후 다음 날 제공되며, 발송 전 작성 시 발송 완료 후 익일 제공됩니다.
리워드는 리뷰 종류별로 구매한 아이디당 한 상품에 최초 1회 작성 건들에 대해서만 제공됩니다.
판매가 1,000원 미만 도서의 경우 리워드 지급 대상에서 제외됩니다.
일부 타인의 권리를 침해하거나 불편을 끼치는 것을 방지하기 위해 아래에 해당하는 Klover 리뷰는 별도의 통보 없이 삭제될 수 있습니다.
- 도서나 타인에 대해 근거 없이 비방을 하거나 타인의 명예를 훼손할 수 있는 리뷰
- 도서와 무관한 내용의 리뷰
- 인신공격이나 욕설, 비속어, 혐오발언이 개재된 리뷰
- 의성어나 의태어 등 내용의 의미가 없는 리뷰
리뷰는 1인이 중복으로 작성하실 수는 있지만, 평점계산은 가장 최근에 남긴 1건의 리뷰만 반영됩니다.
구매 후 리뷰 작성 시, e교환권 200원 적립
문장수집
e교환권은 적립 일로부터 180일 동안 사용 가능합니다. 리워드는 작성 후 다음 날 제공되며, 발송 전 작성 시 발송 완료 후 익일 제공됩니다.
리워드는 한 상품에 최초 1회만 제공됩니다.
주문취소/반품/절판/품절 시 리워드 대상에서 제외됩니다.
구매 후 리뷰 작성 시, e교환권 100원 적립