임종수의 STM32 Cortex-M 완벽 활용서 Vol. 1 (개정판)

임종수의 STM32 Cortex-M 완벽 활용서 Vol. 1 (개정판)

$43.48
Description
임종수의 『임종수의 STM32 Cortex-M 완벽 활용서 Vol. 1』은 〈STM32 MCU 소개〉, 〈CubeIDE, CubeMX, IAR, 그리고, KEIL 설치 방법〉, 〈GPIO 사용 방법〉 등에 대한 기초적이고 전반적인 내용이 수록된 책이다.
저자

임종수

건국대학교전자공학과졸업
건국대학교대학원신호처리전공및졸업
국립한경대학교공과대학원박사
현대전자정보통신연구소근무
삼성전자네트워크사업부근무
AnalogdeviceKorea근무

목차

제1장STM32MCU소개 19
■학습목표 20
1.1STM32MCU종류와특징 21
1.2STM32MCU내부구성도 25
1.3STM32FMCU관련개발도구들소개 29
■연구과제 44

제2장CubeIDE,CubeMX,IAR,그리고,KEIL설치방법 45
■학습목표 46
2.1CubeIDE설치방법소개 47
2.2CubeMX설치방법소개 51
2.3IAREmbeddedWorkbench설치방법소개 52
2.4KEILMDK-ARM설치방법소개 59
2.5그밖에필요한소프트웨어소개 64
2.5.1TERATerm설치방법 64
2.5.2SJ_MCUBook_Apps설치방법 66
■연구과제 75

제3장GPIO사용방법 77
■학습목표 79
3.1GPIO내부구조와전기적특성분석 80
3.2GPIOport제어방법 90
■연구과제 106

제4장Interrupt소개와외부interrupt처리방법 107
■학습목표 109
4.1KEIL을이용한외부interrupt사용방법 110
4.2GPIO외부인터럽트사용실례 129
■연구과제 133

제5장전원과Clock설정방법 135
■학습목표 136
5.1전원공급과감시체계 137
5.2STM32MCU의전력mode 140
5.3Clock설정방법 145
5.3.1HSIclock소개 149
5.3.2PLL(Phaselockedloop)소개 150
5.3.3LSEclock소개 151
5.3.4그밖의clock소개 152
■연구과제 154

제6장Timer와WatchDogTimer사용방법 155
■학습목표 156
6.1Timer동작원리상세분석 158
6.2예제를통한Timer사용방법 166
6.3WatchdogTimer사용방법 175
6.4ADM8613(WatchDog)사용방법 181
6.5Timer를이용한microseconddelay함수구현방법 188
■연구과제 191

제7장PWM생성및사용방법 193
■학습목표 194
7.1PWM소개와사용방법 195
7.2여러Timer들을동기화하는방법 204
7.2.1Timer들동기화를위한ResetMode 208
7.2.2Timer들동기화를위한GatedMode 210
7.2.3Timer들동기화를위한TriggerMode 212
■연구과제 220

제8장UART사용방법과전송규격작성방법 221
■학습목표 222
8.1STM32Library구조소개 223
8.2CubeIDE를이용한UART사용방법 231
8.3WindowsProgram과UART통신방법 250
8.4전용UART2USB부품사용시주의사항 262
■연구과제 264

제9장RTC사용방법 265
■학습목표 266
9.1RTC소개와CubeMX에대한자세한설명 267
9.2RTC사용방법과PC사이의통신방법 278
9.3L476RTCproject를F103,F303과L496에적용방법 292
9.3.1L476RTCcode를F103에적용방법 292
9.3.2L476RTCcode를F303에적용방법 300
9.3.3L476RTCcode를L496에적용방법 302
9.4RTC관련HAL함수들사용방법 304
■연구과제 314

제10장I2C사용방법과관련소자들사용방법 315
■학습목표 316
10.1I2C통신소개 317
10.2SJ_MCUBook_M3교육용보드소개 321
10.3AT24C256CEEPROM사용방법 324
10.4AT24C256CEEPROMCoding방법 331
10.5SJ_MCUBook_M3UARTport사용 344
10.6M24M02-DREEPROM사용방법 346
10.7ADP5062Li-IonBatteryCharger사용방법 348
10.8DS3231MRTC사용방법 352
10.9STM32F10xxC/D/EI2Cbug및기타주의사항 359
■연구과제 363

제11장SPI사용방법과관련소자들사용방법 365
■학습목표 366
11.1SPI사용방법소개 367
11.2TLV5638DAC사용방법 377
11.3TLV5638DACCoding방법 385
11.4Timer를이용한TLV5638DAC출력방법 394
11.5AD5687R과AD5689RDAC사용방법 401
■연구과제 418

제12장DMA사용방법 419
■학습목표 420
12.1STM32MCU의DMA소개 421
12.2UARTDMA와IDLEinterrupt사용방법 430
12.3Buffer의필요성과doublebuffering소개 446
12.4DMA전송과CircularQueue(RingBuffer)구현방법 453
12.5본격적인UARTDMA구현방법 461
12.6SPIDMACoding방법 480
12.7DMACoding관련주의사항 489
■연구과제 493

제13장ADC와내부온도센서,그리고,NTC사용방법 495
■학습목표 496
13.1ADC의개념과종류 497
13.2ADC관련datasheet보는방법 503
13.3CubeMX를이용한기본적인ADC설정방법 509
13.4CubeMX를이용한ADC사용방법 529
13.5그밖의ADC설정방법 544
13.6온도측정방법 553
13.6.1NTC를이용한온도측정방법 554
13.6.2STM32FMCU내부온도sensor를이용한온도측정방법 559
■연구과제 564

제14장DAC사용방법과Interrupt우선순위 565
■학습목표 566
14.1STM32MCUDAC특징정리 567
14.2DAC사용방법 578
14.3Interrupt우선순위 588
■연구과제 606

제15장RS-485와LCD사용방법 607
■학습목표 608
15.1RS-485통신에대한소개와사용방법 609
15.2LCD16×2사용방법 618

제16장IAR,KEIL,CubeIDE,그리고,CubeMX사용방법정리 623
■학습목표 624
16.1IAREmbeddedWorkbench사용방법정리 625
16.1.1임의의외부headerfileincluding방법 625
16.1.2CMSISerror가발생하는경우 626
16.1.3Debugging동작에서빠져나올때주의사항 626
16.1.4예상했던데이터의개수보다적개데이터가생성되는경우 627
16.1.5MCU자원사용현황확인방법 629
16.1.6sourcefile경로불일치error가발생한경우 632
16.1.7임의의sourcefiles를project에서제외하는방법 633
16.1.8bootloader와applicationimage를하나로만드는방법 634
16.1.92image들에대한debugging방법과CubeIDE주의사항 650
16.1.10ProjectActive로변경하는방법과파일수정에따른붉은점 656
16.1.11CSTACKoverflowError 657
16.1.12IARC-STAT사용방법정리 658
16.1.13새로운project추가방법 661
16.1.14Breakpoint에서실행이멈추지않는경우 662
16.1.15부분적으로최적화를설정하는방법 663
16.1.16가변크기를가지는배열정의를위한option 665
16.1.17hexfile이안만들어지는경우 666
16.1.18전역변수가livewatchwindow에서사용할수없는경우 667
16.1.19CubeMX에서생성된linkerscriptfile*.icf에오류가있어요! 668
16.1.20현재IARDebugging환경을다른Project에서사용하는방법 671
16.2KEILMDK-ARM사용방법관련정리 672
16.2.1임의의MCU를위해새로운Project생성방법 673
16.2.2Project이름변경방법 680
16.2.3hexfile만downloading방법 680
16.2.4외부에서얻은파일과libraryfiles가일치하지않은경우 683
16.2.5uint32_t에음수값을할당하면무조건“0” 686
16.2.6CortexCore에따른C언어사용상주의사항-IAR도관련됨 686
16.3CubeMX와CubeIDE사용시주의사항 694
16.3.1IARProject를CubeIDE로불러들이는방법 694
16.3.2CubeMX와ST-Linkemulator설정방법 702
16.3.3새로운*.cfile추가할때주의사항 705
16.3.4FloatingPointUnit(FPU)Enabling 705
16.3.5필요한HAL함수이름이기억나지않는경우 706
16.3.6개발tool을IAR로바꾸었더니Error발생 707
16.4Nucleo보드사용시주의사항 708
16.4.1Nucleo보드에있는emulator로다른보드debugging하는방법 708
16.4.2Nucleo보드에서제공하는UART통신이잘안되는경우 710
16.4.3LeakageCurrent개념정리 711

부록1SJ_MCUBook_M0/3/4보드소개 713
찾아보기 721