ARM Cortex-M3 시스템 프로그래밍 완전정복 2

ARM Cortex-M3 시스템 프로그래밍 완전정복 2

$33.58
Description
ARM Cortex-M3 (STM32F10x) 테스트 보드를 통해 실제 개발에 활용할 수 있는 지침서『ARM Cortex-M3 시스템 프로그래밍 완전정복.2』. Cortex-M3 MCU의 장착된 각종 주변 장치와 외장 센서를 다루는 것에 대해 심도 있게 설명하였습니다. “완정정복 I”과 같이 모든 코드와 회로는 직접 만들고 실전에서 검증하여 실제 응용에 바로 활용할 수 있도록 하였습니다. 특히, MCU 응용에서 자주 사용되는 가속도센서와 CAN 보드를 따로 만들어 이들에 대해 실습해 볼 수 있도록 하여 좀 더 실질적인 MCU 응용 프로그래밍을 체험 할 수 있도록 하였습니다.
저자

박선호

저자박선호는
서울대학교컴퓨터공학과학사
서울대학교컴퓨터공학과석사
현대전자주식회사중대형컴퓨터개발
VK주식회사GSM핸드폰개발
코아로직사업본부장
현)씨알지테크놀러지대표이사
네이버embeddedcrazyboys카페필명"설렁설렁"

목차

서언
Unit0-라이브러리작업및BaseProgram구축
1. STM32LibraryUpdate작업
1.1. Library다운로드
1.2. Library수정작업
1.3. 연습문제

2. BaseProgram작업
2.1. 디렉토리구조
2.2. 프로젝트환경구축
2.3. BaseProgram분석
2.4. FlashLoaderDemonstration버전에따른차이
2.5. BaseProgram확인
2.6. 연습문제

Unit1-Cortex-M3심화학습
3. LibraryDebug
3.1. lib_dbg.c설명
3.2. 빌드환경설정
3.3. USE_FULL_ASSERTdefine&assert_failed
3.4. AssertTestCode
3.5. 실행결과
3.6. 결론
3.7. 연습문제

4. BitBanding
4.1. BitBanding복습
4.2. BitBandingTest매크로분석
4.3. BitBandingTestCode분석및실행결과
4.4. 결론
4.5. 연습문제

5. ModePrivilege
5.1. Processormode&Privilegelevel
5.2. Stacks
5.3. StackPointer-Full-Descending
5.4. SpecialRegister-CONTROLregister
5.5. 빌드환경구성
5.6. Cortexmicrocontrollersoftwareinterfacestandard(CMSIS)
5.7. 소스코드분석및실행결과
5.8. 연습문제

6. USBDeviceFirmwareUpgrade
6.1. UM0412.DfuSeUSBdevicefirmwareupgrade
6.2. DfuSeUSBupgrade프로그램변경
6.3. DfuSeUSBupgrade프로그램내용분석
6.4. 프로그램실행및드라이버설치
6.5. DFUDownloadFile만들기
6.6. DFU파일다운로드작업
6.7. 실행결과
6.8. 결론
6.9. 연습문제

7. USB회로및Disconnect복습
7.1. USB회로도분석
7.2. USB_DISCONNECT설정코드분석
7.3. USB부분하드웨어개요
7.4. USBDisconnect동작원리
7.5. 결론
7.6. 연습문제

8. InterruptPriorityTest
8.1. Cortex-M3Prioritygroup
8.2. Prioritygroupvs.Subpriority
8.3. SCB_AIRCR레지스터VECTKEYSTAT
8.4. PriorityTest1-PriorityGroup
8.5. PriorityTest2-SubPriority
8.6. PriorityTest3-동작중Priority변경
8.7. 결론
8.8. 연습문제

9. GPIOJTAGRemap
9.1. Remap개요
9.2. STM32&Cortex-M3Debug
9.3. 회로도분석
9.4. 예제코드시나리오
9.5. 예제코드분석
9.6. 실행결과및결론
9.7.연습문제

10. PowerControl(PWR)
10.1.망고M32,Z1Power공급
10.2.STM32F103xxLow-powermodes
10.3.PWR예제1-STOPmode설정
10.4.PWR예제2-RTCAlarm설정
10.5.PWR예제3-STANDBYmode
10.6.연습문제

11. RTCCalendar
11.1. RTC(Real-timeclock)개요
11.2. 예제코드시나리오및분석
11.3. 빌드및실행결과
11.4. 연습문제

12. Independentwatchdog(IWDG)
12.1. IWDG개요
12.2. 예제코드시나리오
12.3. 예제코드분석
12.4. 실행결과
12.5. 결론
12.6. 연습문제

13. WindowWatchdog(WWDG)
13.1. WWDG개요
13.2. 예제코드시나리오
13.3. 예제코드분석
13.4. 실행결과
13.5. 결론
13.6. 연습문제

14. FLASHProgram
14.2. FlashReadoperation
14.3. Flashprogram&erasecontroller(FPEC)
14.4. 예제프로그램시나리오
14.5. 예제프로그램분석
14.6. 실행결과
14.7. 결론
14.8. 연습문제

15. FLASHWriteProtection
15.1. Optionbyte
15.2. Optionbyteprogramming
15.3. 예제프로그램시나리오
15.4. 예제프로그램분석
15.5. 실행결과
15.6. 연습문제

Unit2-다양한통신프로토콜연구
16. USART통신PollingUART2&3
16.1. UART2,UART3Pin배정
16.2. UART2,UART3PinRemapping
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. USART3InterruptEnable
17.3. UART3수신버퍼구현-CircularQueue
17.4. WordLength&Parity
17.5. 데이타송수신처리부분
17.6. 실행결과
17.7. 연습문제

18. USART통신-SynchronouswithSPI
18.1. USARTsynchronousmode
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통신-FullDuplex(망고M32)
19.1. Serialperipheralinterface(SPI)
19.2. SPI1<->SPI2연결
19.3. SPI1,SPI2클럭&GPIO설정
19.4. SPI초기화및enable설정
19.5. 1차전송시험-SPI1master,SPI2slave
19.6. 2차전송시험-SPI2master,SPI1slave
19.7. 실행결과
19.8. 연습문제

20. SPI통신-SoftwareSPI(망고Z1)
20.1. MotorolaSPI&CC2520
20.2. spi_sw.c구현내용
20.3. 기타구현내용
20.4. 실행결과
20.5. 연습문제

21. TIMIRQChannels
21.1. STM32TIMTimer
21.2. TIM2,1초updateinterrupt예제
21.3. TIM2,TIM3,TIM4,updateinterrupt예제
21.4. 연습문제

22. TIMTimeBase
22.1. CCxInterruptOutputmode
22.2. 예제코드시나리오
22.3. 망고보드연결
22.4. 예제소스코드분석과실행결과
22.5. 오실로스코프파형
22.6. 연습문제

23. TIMPWMOutput
23.1. PWM(PulseWidthModulation)
23.2. 예제코드시나리오
23.3. 예제소스코드분석
23.4. 오실로스코프파형
23.5. 연습문제

24. TIMInputCapture&PWMInput
24.1. Inputcapturemode
24.2. PWMinputmode
24.3. InputCapture예제코드시나리오
24.4. InputCapture망고보드연결
24.5. InputCapture예제소스코드분석
24.6. 빌드시의유의사항
24.7. InputCapture실행결과
24.8. PWMInput예제코드시나리오
24.9. PWMInput망고보드연결
24.10. PWMInput예제소스코드분석
24.11. PWMInput실행결과
24.12. 연습문제

25. TIMDMA
25.1. Directmemoryaccess(DMA)
25.2. 예제코드시나리오및망고보드연결
25.3. 예제소스코드분석
25.4. 오실로스코프파형
25.5. 연습문제

26. ADCDMA
26.1. ADC(analog-to-digitalconverter)
26.2. InjectedChannel&RegularChannel
26.3. Dataalignment
26.4. Scanmode
26.5. Calibration
26.6. 예제코드시나리오및망고보드시험환경
26.7. 라이브러리변경사항
26.8. 예제소스코드분석
26.9. 실행결과
26.10. 연습문제

27. ADCTemperatureSensor
27.1. STM32TemperatureRange
27.2. TemperatureSensor
27.3. 온도측정과정
27.4. 예제소스코드분석
27.5. 수행결과
27.6. 연습문제

28. ADCAnalogWatchdog
28.1. An

출판사 서평

ARMCortex-M3(STM32F10x)테스트보드를통해
실제개발에활용할수있는가장완벽한지침서


lARMCortex-M3시스템프로그램개발실전가이드
l입문에서전문가수준까지친절한안내서
lCortex-M3MCU를활용한펌웨어개발실전코드제공
l단순제어에서무선통신까지광범위한체험
l조도센서,가속도센서,CAN트랜시버보드제어

Cortex-M3시스템개발자의고민을한번에해결하는
완벽!ARMCortex-M3실전바이블

Unit0-라이브러리작업및BaseProgram구축
STM32LibraryUpdate작업
BaseProgram작업

Unit1-Cortex-M3심화학습
LibraryDebug,BitBanding,ModePrivilege,USBDeviceFirmwareUpgrade
USB회로및Disconnect복습,InterruptPriorityTest
GPIOJTAGRemap,PowerControl(PWR),RTCCalendar
Independentwatchdog(IWDG),WindowWatchdog(WWDG)
FLASHProgram,FLASHWriteProtection

Unit2-다양한통신프로토콜연구
USART통신-PollingUART2&3,Interrupt,SynchronouswithSPI
SPI통신-FullDuplex(망고M32),SoftwareSPI(망고Z1)
TIMIRQChannels,TIMTimeBase,TIMPWMOutput
TIMInputCapture&PWMInput,TIMDMA
ADCDMA,ADCTemperatureSensor,ADCAnalogWatchdog
ADCDualMode,I2C개념및SoftwareI2C
I2C(inboard)I2C1&I2C2-(M)Polling(S)IT,CANLoopBack

Unit3-각종센서보드활용
BH1600LightSensor-분석및ADC제어
BMA1503-AxisAccelerometerSensor-분석및SPI,I2C통합제어
SN65HVD231CANTransceiver모듈분석및CANNormal통신

“실전!ARMCortex-M3시스템프로그래밍완정정복I”에서Cortex-M3MCU의특성과프로그래밍에대해기초부터각종내장주변장치활용에이르기까지폭넓게다루었습니다.가능한많은것들을다루려노력했지만지면에제약이있어Cortex-M3MCU를속속들이파헤치지못한아쉬움이남았습니다.

이제“실전!ARMCortex-M3시스템프로그래밍완전정복II”에서지난책에서다루지못했던부분들을더욱심도있게보충했습니다.Cortex-M3MCU의가능성이너무나크기때문에아직도미진한부분이많지만이2권의책이Cortex-M3MCU를활용하는데많은도움이될것입니다.

이번“완전정복II”는Cortex-M3MCU의장착된각종주변장치와외장센서를다루는것에대해심도있게설명하였습니다.“완정정복I”과같이모든코드와회로는직접만들고실전에서검증하여실제응용에바로활용할수있도록하였습니다.특히,MCU응용에서자주사용되는가속도센서와CAN보드를따로만들어이들에대해실습해볼수있도록하여좀더실질적인MCU응용프로그래밍을체험할수있도록하였습니다.

또한,이책으로공부하면서만나게될많은문제점들은커뮤니티(http://cafe.naver.com/embeddedcrazyboys)를통해저자와이책의저작에많은도움을준고수님들그리고기타같은문제로고민하고있는엔지니어들과묻고대답하며해결할수있도록하였습니다.이책의독자들도커뮤니티에서적극적으로정보를공유하여함께발전할수있기를기원합니다.

책은4개의Unit으로구성되어있습니다.
[Unit0]

STM라이브러리를최신의것으로갱신하는방법에대한부분과향후책에사용하게될모든예제코드의베이스가될프로그램에대해서설명합니다.

[Unit1]
디버그,BitBand,ModePrivilege,USBFWUpgrade,Priority,Powermode,RTC,Watchdog,Flash등MCU자체에서필수적으로알아야할부분들에대해서설명합니다.

[Unit2]
USART,SPI,Timer,ADC,I2C,CAN에대해서상세한설명을하고있습니다.각각은여러장에걸쳐서자세하게다루고있습니다.

[Unit3]
두개의센서보드와하나의CANTransceiver보드를추가로제작하여이보드들을실제로활용하는부분을설명하고Unit2에서배운각종통신방식을이용해서실제적인활용이될수있도록구성하였습니다.

커뮤니티를꾸리고이끌어나가는데도움을주신많은분들과함께집필하며고락을함께한멤버들에게깊이감사드립니다.