
임종수의 STM32 Cortex-M 완벽 활용서 Vol.1
Description
책소개
1차 초판을 출간하고, 2년 반이 넘어서 개정판을 출간하게 되었다.
처음 3권의 책을 시리즈로 출간할 계획이었고, 2024년 10월 Vol.2를 출간하였다.
이번 개정판에서는 초판과 비교하여 다음과 같은 내용이 추가되고 수정되었다.
주요 개발 도구인 KEIL Inc.의 MDKARM과 IAR Inc.의 Embedded Workbench에 대한 license 변동이 있어서 이들에 대한 내용을 수정하고 추가하였다.
전반적인 예제 코드들과 흐름은 그대로 유지하여 기존의 41개 동영상 강좌를 보며, 따라하고 실습하는데 문제가 없도록 하였다.
그러므로, 계속해서 Vol.1.
개정판을 학습하기 위해서는 기본적으로 SJ_MCUBook_M3 보드를 사용해야 하지만, Vol.1, Vol.2, 그리고 앞으로 출간될 Vol.3에서 공통으로 사용될 SJ_MCUBook_M4 보드를 사용할 것을 추천한다.
자세한 내용은 10.2.
단원을 참조하기 바란다.
몇몇 내용들을 수정 보완하였다(예를 들면, 14.3.
단원, Chapter 16.
등등).
처음 3권의 책을 시리즈로 출간할 계획이었고, 2024년 10월 Vol.2를 출간하였다.
이번 개정판에서는 초판과 비교하여 다음과 같은 내용이 추가되고 수정되었다.
주요 개발 도구인 KEIL Inc.의 MDKARM과 IAR Inc.의 Embedded Workbench에 대한 license 변동이 있어서 이들에 대한 내용을 수정하고 추가하였다.
전반적인 예제 코드들과 흐름은 그대로 유지하여 기존의 41개 동영상 강좌를 보며, 따라하고 실습하는데 문제가 없도록 하였다.
그러므로, 계속해서 Vol.1.
개정판을 학습하기 위해서는 기본적으로 SJ_MCUBook_M3 보드를 사용해야 하지만, Vol.1, Vol.2, 그리고 앞으로 출간될 Vol.3에서 공통으로 사용될 SJ_MCUBook_M4 보드를 사용할 것을 추천한다.
자세한 내용은 10.2.
단원을 참조하기 바란다.
몇몇 내용들을 수정 보완하였다(예를 들면, 14.3.
단원, Chapter 16.
등등).
- 책의 일부 내용을 미리 읽어보실 수 있습니다.
미리보기
목차
제1장 STM32 MCU 소개 19
■ 학습 목표 20
1.1 STM32 MCU 종류와 특징 21
1.2 STM32 MCU 내부 구성도 25
1.3 STM32F MCU 관련 개발 도구들 소개 29
■ 연구 과제 44
제2장 CubeIDE, CubeMX, IAR, 그리고, KEIL 설치 방법 45
■ 학습 목표 46
2.1 CubeIDE 설치 방법 소개 47
2.2 CubeMX 설치 방법 소개 51
2.3 IAR Embedded Workbench 설치 방법 소개 52
2.4 KEIL MDK-ARM 설치 방법 소개 59
2.5 그 밖에 필요한 소프트웨어 소개 64
2.5.1 TERA Term 설치 방법 64
2.5.2 SJ_MCUBook_Apps 설치 방법 66
■ 연구 과제 75
제3장 GPIO 사용 방법 77
■ 학습 목표 79
3.1 GPIO 내부 구조와 전기적 특성 분석 80
3.2 GPIO port 제어 방법 90
■ 연구 과제 106
제4장 Interrupt 소개와 외부 interrupt 처리 방법 107
■ 학습 목표 109
4.1 KEIL을 이용한 외부 interrupt 사용 방법 110
4.2 GPIO 외부 인터럽트 사용 실례 129
■ 연구 과제 133
제5장 전원과 Clock 설정 방법 135
■ 학습 목표 136
5.1 전원 공급과 감시 체계 137
5.2 STM32 MCU의 전력 mode 140
5.3 Clock 설정 방법 145
5.3.1 HSI clock 소개 149
5.3.2 PLL(Phase locked loop) 소개 150
5.3.3 LSE clock 소개 151
5.3.4 그 밖의 clock 소개 152
■ 연구 과제 154
제6장 Timer와 WatchDog Timer 사용 방법 155
■ 학습 목표 156
6.1 Timer 동작 원리 상세 분석 158
6.2 예제를 통한 Timer 사용 방법 166
6.3 Watchdog Timer 사용 방법 175
6.4 ADM8613(WatchDog) 사용 방법 181
6.5 Timer를 이용한 micro second delay 함수 구현 방법 188
■ 연구 과제 191
제7장 PWM 생성 및 사용 방법 193
■ 학습 목표 194
7.1 PWM 소개와 사용 방법 195
7.2 여러 Timer들을 동기화하는 방법 204
7.2.1 Timer들 동기화를 위한 Reset Mode 208
7.2.2 Timer들 동기화를 위한 Gated Mode 210
7.2.3 Timer들 동기화를 위한 Trigger Mode 212
■ 연구 과제 220
제8장 UART 사용 방법과 전송 규격 작성 방법 221
■ 학습 목표 222
8.1 STM32 Library 구조 소개 223
8.2 CubeIDE를 이용한 UART 사용 방법 231
8.3 Windows Program과 UART 통신 방법 250
8.4 전용 UART2USB 부품 사용시 주의사항 262
■ 연구 과제 264
제9장 RTC 사용 방법 265
■ 학습 목표 266
9.1 RTC 소개와 CubeMX에 대한 자세한 설명 267
9.2 RTC 사용 방법과 PC 사이의 통신 방법 278
9.3 L476 RTC project를 F103, F303과 L496에 적용 방법 292
9.3.1 L476 RTC code를 F103에 적용 방법 292
9.3.2 L476 RTC code를 F303에 적용 방법 300
9.3.3 L476 RTC code를 L496에 적용 방법 302
9.4 RTC 관련 HAL 함수들 사용 방법 304
■ 연구 과제 314
제10장 I2C 사용 방법과 관련 소자들 사용 방법 315
■ 학습 목표 316
10.1 I2C 통신 소개 317
10.2 SJ_MCUBook_M3 교육용 보드 소개 321
10.3 AT24C256C EEPROM 사용 방법 324
10.4 AT24C256C EEPROM Coding 방법 331
10.5 SJ_MCUBook_M3 UART port 사용 344
10.6 M24M02-DR EEPROM 사용 방법 346
10.7 ADP5062 Li-Ion Battery Charger 사용 방법 348
10.8 DS3231M RTC 사용 방법 352
10.9 STM32F10xxC/D/E I2C bug 및 기타 주의 사항 359
■ 연구 과제 363
제11장 SPI 사용 방법과 관련 소자들 사용 방법 365
■ 학습 목표 366
11.1 SPI 사용 방법 소개 367
11.2 TLV5638 DAC 사용 방법 377
11.3 TLV5638 DAC Coding 방법 385
11.4 Timer를 이용한 TLV5638 DAC 출력 방법 394
11.5 AD5687R과 AD5689R DAC 사용 방법 401
■ 연구 과제 418
제12장 DMA 사용 방법 419
■ 학습 목표 420
12.1 STM32 MCU의 DMA 소개 421
12.2 UART DMA와 IDLE interrupt 사용 방법 430
12.3 Buffer의 필요성과 double buffering 소개 446
12.4 DMA 전송과 Circular Queue(Ring Buffer) 구현 방법 453
12.5 본격적인 UART DMA 구현 방법 461
12.6 SPI DMA Coding 방법 480
12.7 DMA Coding 관련 주의 사항 489
■ 연구 과제 493
제13장 ADC와 내부 온도센서, 그리고, NTC 사용 방법 495
■ 학습 목표 496
13.1 ADC의 개념과 종류 497
13.2 ADC 관련 datasheet 보는 방법 503
13.3 CubeMX를 이용한 기본적인 ADC 설정 방법 509
13.4 CubeMX를 이용한 ADC 사용 방법 529
13.5 그 밖의 ADC 설정 방법 544
13.6 온도 측정 방법 553
13.6.1 NTC를 이용한 온도 측정 방법 554
13.6.2 STM32F MCU 내부 온도 sensor를 이용한 온도 측정 방법 559
■ 연구 과제 564
제14장 DAC 사용 방법과 Interrupt 우선순위 565
■ 학습 목표 566
14.1 STM32 MCU DAC 특징 정리 567
14.2 DAC 사용 방법 578
14.3 Interrupt 우선순위 588
■ 연구 과제 606
제15장 RS-485와 LCD 사용 방법 607
■ 학습 목표 608
15.1 RS-485 통신에 대한 소개와 사용 방법 609
15.2 LCD 16×2 사용 방법 618
제16장 IAR, KEIL, CubeIDE, 그리고, CubeMX 사용 방법 정리 623
■ 학습 목표 624
16.1 IAR Embedded Workbench 사용 방법 정리 625
16.1.1 임의의 외부 header file including 방법 625
16.1.2 CMSIS error가 발생하는 경우 626
16.1.3 Debugging 동작에서 빠져나올 때 주의 사항 626
16.1.4 예상했던 데이터의 개수보다 적개 데이터가 생성되는 경우 627
16.1.5 MCU 자원 사용 현황 확인 방법 629
16.1.6 source file 경로 불일치 error가 발생한 경우 632
16.1.7 임의의 source files를 project에서 제외하는 방법 633
16.1.8 bootloader와 application image를 하나로 만드는 방법 634
16.1.9 2 image들에 대한 debugging 방법과 CubeIDE 주의 사항 650
16.1.10 Project Active로 변경하는 방법과 파일 수정에 따른 붉은 점 656
16.1.11 CSTACK overflow Error 657
16.1.12 IAR C-STAT 사용 방법 정리 658
16.1.13 새로운 project 추가 방법 661
16.1.14 Breakpoint에서 실행이 멈추지 않는 경우 662
16.1.15 부분적으로 최적화를 설정하는 방법 663
16.1.16 가변 크기를 가지는 배열 정의를 위한 option 665
16.1.17 hex file이 안 만들어 지는 경우 666
16.1.18 전역 변수가 live watch window에서 사용할 수 없는 경우 667
16.1.19 CubeMX에서 생성된 linker script file *.icf에 오류가 있어요! 668
16.1.20 현재 IAR Debugging 환경을 다른 Project에서 사용하는 방법 671
16.2 KEIL MDK-ARM 사용 방법 관련 정리 672
16.2.1 임의의 MCU를 위해 새로운 Project 생성 방법 673
16.2.2 Project 이름 변경 방법 680
16.2.3 hex file만 downloading 방법 680
16.2.4 외부에서 얻은 파일과 library files가 일치하지 않은 경우 683
16.2.5 uint32_t에 음수 값을 할당하면 무조건 “0” 686
16.2.6 Cortex Core에 따른 C 언어 사용상 주의 사항 - IAR도 관련됨 686
16.3 CubeMX와 CubeIDE 사용시 주의 사항 694
16.3.1 IAR Project를 CubeIDE로 불러들이는 방법 694
16.3.2 CubeMX와 ST-Link emulator 설정 방법 702
16.3.3 새로운 *.c file 추가 할 때 주의 사항 705
16.3.4 Floating Point Unit(FPU) Enabling 705
16.3.5 필요한 HAL 함수 이름이 기억나지 않는 경우 706
16.3.6 개발 tool을 IAR로 바꾸었더니 Error 발생 707
16.4 Nucleo 보드 사용시 주의 사항 708
16.4.1 Nucleo 보드에 있는 emulator로 다른 보드 debugging하는 방법 708
16.4.2 Nucleo 보드에서 제공하는 UART 통신이 잘 안 되는 경우 710
16.4.3 Leakage Current 개념 정리 711
부록 1 SJ_MCUBook_M0/3/4 보드 소개 713
찾아보기 721
■ 학습 목표 20
1.1 STM32 MCU 종류와 특징 21
1.2 STM32 MCU 내부 구성도 25
1.3 STM32F MCU 관련 개발 도구들 소개 29
■ 연구 과제 44
제2장 CubeIDE, CubeMX, IAR, 그리고, KEIL 설치 방법 45
■ 학습 목표 46
2.1 CubeIDE 설치 방법 소개 47
2.2 CubeMX 설치 방법 소개 51
2.3 IAR Embedded Workbench 설치 방법 소개 52
2.4 KEIL MDK-ARM 설치 방법 소개 59
2.5 그 밖에 필요한 소프트웨어 소개 64
2.5.1 TERA Term 설치 방법 64
2.5.2 SJ_MCUBook_Apps 설치 방법 66
■ 연구 과제 75
제3장 GPIO 사용 방법 77
■ 학습 목표 79
3.1 GPIO 내부 구조와 전기적 특성 분석 80
3.2 GPIO port 제어 방법 90
■ 연구 과제 106
제4장 Interrupt 소개와 외부 interrupt 처리 방법 107
■ 학습 목표 109
4.1 KEIL을 이용한 외부 interrupt 사용 방법 110
4.2 GPIO 외부 인터럽트 사용 실례 129
■ 연구 과제 133
제5장 전원과 Clock 설정 방법 135
■ 학습 목표 136
5.1 전원 공급과 감시 체계 137
5.2 STM32 MCU의 전력 mode 140
5.3 Clock 설정 방법 145
5.3.1 HSI clock 소개 149
5.3.2 PLL(Phase locked loop) 소개 150
5.3.3 LSE clock 소개 151
5.3.4 그 밖의 clock 소개 152
■ 연구 과제 154
제6장 Timer와 WatchDog Timer 사용 방법 155
■ 학습 목표 156
6.1 Timer 동작 원리 상세 분석 158
6.2 예제를 통한 Timer 사용 방법 166
6.3 Watchdog Timer 사용 방법 175
6.4 ADM8613(WatchDog) 사용 방법 181
6.5 Timer를 이용한 micro second delay 함수 구현 방법 188
■ 연구 과제 191
제7장 PWM 생성 및 사용 방법 193
■ 학습 목표 194
7.1 PWM 소개와 사용 방법 195
7.2 여러 Timer들을 동기화하는 방법 204
7.2.1 Timer들 동기화를 위한 Reset Mode 208
7.2.2 Timer들 동기화를 위한 Gated Mode 210
7.2.3 Timer들 동기화를 위한 Trigger Mode 212
■ 연구 과제 220
제8장 UART 사용 방법과 전송 규격 작성 방법 221
■ 학습 목표 222
8.1 STM32 Library 구조 소개 223
8.2 CubeIDE를 이용한 UART 사용 방법 231
8.3 Windows Program과 UART 통신 방법 250
8.4 전용 UART2USB 부품 사용시 주의사항 262
■ 연구 과제 264
제9장 RTC 사용 방법 265
■ 학습 목표 266
9.1 RTC 소개와 CubeMX에 대한 자세한 설명 267
9.2 RTC 사용 방법과 PC 사이의 통신 방법 278
9.3 L476 RTC project를 F103, F303과 L496에 적용 방법 292
9.3.1 L476 RTC code를 F103에 적용 방법 292
9.3.2 L476 RTC code를 F303에 적용 방법 300
9.3.3 L476 RTC code를 L496에 적용 방법 302
9.4 RTC 관련 HAL 함수들 사용 방법 304
■ 연구 과제 314
제10장 I2C 사용 방법과 관련 소자들 사용 방법 315
■ 학습 목표 316
10.1 I2C 통신 소개 317
10.2 SJ_MCUBook_M3 교육용 보드 소개 321
10.3 AT24C256C EEPROM 사용 방법 324
10.4 AT24C256C EEPROM Coding 방법 331
10.5 SJ_MCUBook_M3 UART port 사용 344
10.6 M24M02-DR EEPROM 사용 방법 346
10.7 ADP5062 Li-Ion Battery Charger 사용 방법 348
10.8 DS3231M RTC 사용 방법 352
10.9 STM32F10xxC/D/E I2C bug 및 기타 주의 사항 359
■ 연구 과제 363
제11장 SPI 사용 방법과 관련 소자들 사용 방법 365
■ 학습 목표 366
11.1 SPI 사용 방법 소개 367
11.2 TLV5638 DAC 사용 방법 377
11.3 TLV5638 DAC Coding 방법 385
11.4 Timer를 이용한 TLV5638 DAC 출력 방법 394
11.5 AD5687R과 AD5689R DAC 사용 방법 401
■ 연구 과제 418
제12장 DMA 사용 방법 419
■ 학습 목표 420
12.1 STM32 MCU의 DMA 소개 421
12.2 UART DMA와 IDLE interrupt 사용 방법 430
12.3 Buffer의 필요성과 double buffering 소개 446
12.4 DMA 전송과 Circular Queue(Ring Buffer) 구현 방법 453
12.5 본격적인 UART DMA 구현 방법 461
12.6 SPI DMA Coding 방법 480
12.7 DMA Coding 관련 주의 사항 489
■ 연구 과제 493
제13장 ADC와 내부 온도센서, 그리고, NTC 사용 방법 495
■ 학습 목표 496
13.1 ADC의 개념과 종류 497
13.2 ADC 관련 datasheet 보는 방법 503
13.3 CubeMX를 이용한 기본적인 ADC 설정 방법 509
13.4 CubeMX를 이용한 ADC 사용 방법 529
13.5 그 밖의 ADC 설정 방법 544
13.6 온도 측정 방법 553
13.6.1 NTC를 이용한 온도 측정 방법 554
13.6.2 STM32F MCU 내부 온도 sensor를 이용한 온도 측정 방법 559
■ 연구 과제 564
제14장 DAC 사용 방법과 Interrupt 우선순위 565
■ 학습 목표 566
14.1 STM32 MCU DAC 특징 정리 567
14.2 DAC 사용 방법 578
14.3 Interrupt 우선순위 588
■ 연구 과제 606
제15장 RS-485와 LCD 사용 방법 607
■ 학습 목표 608
15.1 RS-485 통신에 대한 소개와 사용 방법 609
15.2 LCD 16×2 사용 방법 618
제16장 IAR, KEIL, CubeIDE, 그리고, CubeMX 사용 방법 정리 623
■ 학습 목표 624
16.1 IAR Embedded Workbench 사용 방법 정리 625
16.1.1 임의의 외부 header file including 방법 625
16.1.2 CMSIS error가 발생하는 경우 626
16.1.3 Debugging 동작에서 빠져나올 때 주의 사항 626
16.1.4 예상했던 데이터의 개수보다 적개 데이터가 생성되는 경우 627
16.1.5 MCU 자원 사용 현황 확인 방법 629
16.1.6 source file 경로 불일치 error가 발생한 경우 632
16.1.7 임의의 source files를 project에서 제외하는 방법 633
16.1.8 bootloader와 application image를 하나로 만드는 방법 634
16.1.9 2 image들에 대한 debugging 방법과 CubeIDE 주의 사항 650
16.1.10 Project Active로 변경하는 방법과 파일 수정에 따른 붉은 점 656
16.1.11 CSTACK overflow Error 657
16.1.12 IAR C-STAT 사용 방법 정리 658
16.1.13 새로운 project 추가 방법 661
16.1.14 Breakpoint에서 실행이 멈추지 않는 경우 662
16.1.15 부분적으로 최적화를 설정하는 방법 663
16.1.16 가변 크기를 가지는 배열 정의를 위한 option 665
16.1.17 hex file이 안 만들어 지는 경우 666
16.1.18 전역 변수가 live watch window에서 사용할 수 없는 경우 667
16.1.19 CubeMX에서 생성된 linker script file *.icf에 오류가 있어요! 668
16.1.20 현재 IAR Debugging 환경을 다른 Project에서 사용하는 방법 671
16.2 KEIL MDK-ARM 사용 방법 관련 정리 672
16.2.1 임의의 MCU를 위해 새로운 Project 생성 방법 673
16.2.2 Project 이름 변경 방법 680
16.2.3 hex file만 downloading 방법 680
16.2.4 외부에서 얻은 파일과 library files가 일치하지 않은 경우 683
16.2.5 uint32_t에 음수 값을 할당하면 무조건 “0” 686
16.2.6 Cortex Core에 따른 C 언어 사용상 주의 사항 - IAR도 관련됨 686
16.3 CubeMX와 CubeIDE 사용시 주의 사항 694
16.3.1 IAR Project를 CubeIDE로 불러들이는 방법 694
16.3.2 CubeMX와 ST-Link emulator 설정 방법 702
16.3.3 새로운 *.c file 추가 할 때 주의 사항 705
16.3.4 Floating Point Unit(FPU) Enabling 705
16.3.5 필요한 HAL 함수 이름이 기억나지 않는 경우 706
16.3.6 개발 tool을 IAR로 바꾸었더니 Error 발생 707
16.4 Nucleo 보드 사용시 주의 사항 708
16.4.1 Nucleo 보드에 있는 emulator로 다른 보드 debugging하는 방법 708
16.4.2 Nucleo 보드에서 제공하는 UART 통신이 잘 안 되는 경우 710
16.4.3 Leakage Current 개념 정리 711
부록 1 SJ_MCUBook_M0/3/4 보드 소개 713
찾아보기 721
출판사 리뷰
1차 초판을 출간하고, 2년 반이 넘어서 개정판을 출간하게 되었다.
처음 3권의 책을 시리즈로 출간할 계획이었고, 2024년 10월 Vol.2를 출간하였다.
이번 개정판에서는 초판과 비교하여 다음과 같은 내용이 추가되고 수정되었다.
① 주요 개발 도구인 KEIL Inc.의 MDKARM과 IAR Inc.의 Embedded Workbench에 대한 license 변동이 있어서 이들에 대한 내용을 수정하고 추가하였다.
② 전반적인 예제 코드들과 흐름은 그대로 유지하여 기존의 41개 동영상 강좌를 보며, 따라하고 실습하는데 문제가 없도록 하였다.
그러므로, 계속해서 Vol.1.
개정판을 학습하기 위해서는 기본적으로 SJ_MCUBook_M3 보드를 사용해야 하지만, Vol.1, Vol.2, 그리고 앞으로 출간될 Vol.3에서 공통으로 사용될 SJ_MCUBook_M4 보드를 사용할 것을 추천한다.
자세한 내용은 10.2.
단원을 참조하기 바란다.
③ 몇몇 내용들을 수정 보완하였다.
예를 들면, 14.3.
단원, Chapter 16.
등등.
이 책은 여러분을 STM32 MCU Coding 전문가로 만들어 줄 선물과 같은 책이다.
누구나 살아가면서 하고 싶은 일이 있을 것이고, 그리고 정렬적으로 그 일을 쟁취해 나가면서 성공한 자신의 모습을 상상해 본 경험이 있을 것이다.
비록, 그것이 당장은 꿈일지라도 언젠가는 삶의 무대에서 당당히 주인공이 되는 자신의 모습을 상상해 보고, 행복해 한 경험이 있을 것이다.
이 책은 MCU Coding 방법에 대한 여러 선물들을 잔뜩 포함하고 있다.
여러분이 Embedded Coding이라는 무대에서 당당히 주인공이 되어 여러분의 꿈을 실현하는 데 분명히 도움이 될 귀한 선물들로 가득하다.
무엇보다도 이 책은 여러분에게 단편적인 STM32 MCU에 대한 잔재주를 다루지 않는다.
또한, 이 책은 독자의 편의나 안락함을 고려하지 않는다.
오로지, 정렬과 인내심을 가지고, 자신이 꿈꾸는 제품 즉, 전자 회로를 설계하고, 그리고, 그 설계된 보드에 소프트웨어를 불어 넣어서 완전체를 만드는데 필요한, 그 무대의 시작에 해당하는 MCU에 대한 많은 내용을 수록하고 있다.
여러분은 이 책을 통하여 STM32 MCU에 대한 사용 방법뿐만 아니라 다양한 부품들에 대한 특성과 사용 방법, 그리고 회로적인 내용도 학습하게 될 것이다.
또한, 상용 제품에서 사용되고 있는 PC의 Windows Program과 여러분의 MCU가 어떻게 서로 데이터를 주고 받으며 통신하는지 그 전송 규약에 대해서 직접 개발하고, MCU에서 제공하는 데이터를 실시간으로 그래프와 데이터로 시각화하는 방법도 학습하게 될 것이다.
이 책에서 다루는 모든 source 파일을 포함한 자료들은 항상 그러하듯이 필자의 naver cafe인 http://cafe.naver.com/limjongsulab를 참조하면 되고, 필자의 email address는 limjongsulab@naver.com이다.
필자가 저술한 Matlab, Simulink와 같은 기존의 책자들뿐만 아니라 앞으로 출간될 책자들, 그리고, 필자의 회사에서 추진하는 여러 교육 과정들과 최신 정보들에 대한 모두 사항들을 앞서 언급한 naver cafe에서 관리하고 있다.
이곳에서 여러분과 함께 질문과 답변을 통한 토론을 하였으며 한다.
그리고 유용한 자료들을 많이 등록하여 공유하였으면 한다.
또한, 이 책에서 사용하는 SJ_MCUPro, SJ_MCUFree windows program뿐만 아니라 SJ_MCUBook_M0, SJ_MCUBook_M3 그리고, SJ_MCUBook_M4 보드를 포함한 다양한 제품들에 대한 자료와 동영상 강좌에 대한 구매는 필자의 homepage인 https://www.sujinpub.com/shop/ 를 참조하면 된다.
처음 3권의 책을 시리즈로 출간할 계획이었고, 2024년 10월 Vol.2를 출간하였다.
이번 개정판에서는 초판과 비교하여 다음과 같은 내용이 추가되고 수정되었다.
① 주요 개발 도구인 KEIL Inc.의 MDKARM과 IAR Inc.의 Embedded Workbench에 대한 license 변동이 있어서 이들에 대한 내용을 수정하고 추가하였다.
② 전반적인 예제 코드들과 흐름은 그대로 유지하여 기존의 41개 동영상 강좌를 보며, 따라하고 실습하는데 문제가 없도록 하였다.
그러므로, 계속해서 Vol.1.
개정판을 학습하기 위해서는 기본적으로 SJ_MCUBook_M3 보드를 사용해야 하지만, Vol.1, Vol.2, 그리고 앞으로 출간될 Vol.3에서 공통으로 사용될 SJ_MCUBook_M4 보드를 사용할 것을 추천한다.
자세한 내용은 10.2.
단원을 참조하기 바란다.
③ 몇몇 내용들을 수정 보완하였다.
예를 들면, 14.3.
단원, Chapter 16.
등등.
이 책은 여러분을 STM32 MCU Coding 전문가로 만들어 줄 선물과 같은 책이다.
누구나 살아가면서 하고 싶은 일이 있을 것이고, 그리고 정렬적으로 그 일을 쟁취해 나가면서 성공한 자신의 모습을 상상해 본 경험이 있을 것이다.
비록, 그것이 당장은 꿈일지라도 언젠가는 삶의 무대에서 당당히 주인공이 되는 자신의 모습을 상상해 보고, 행복해 한 경험이 있을 것이다.
이 책은 MCU Coding 방법에 대한 여러 선물들을 잔뜩 포함하고 있다.
여러분이 Embedded Coding이라는 무대에서 당당히 주인공이 되어 여러분의 꿈을 실현하는 데 분명히 도움이 될 귀한 선물들로 가득하다.
무엇보다도 이 책은 여러분에게 단편적인 STM32 MCU에 대한 잔재주를 다루지 않는다.
또한, 이 책은 독자의 편의나 안락함을 고려하지 않는다.
오로지, 정렬과 인내심을 가지고, 자신이 꿈꾸는 제품 즉, 전자 회로를 설계하고, 그리고, 그 설계된 보드에 소프트웨어를 불어 넣어서 완전체를 만드는데 필요한, 그 무대의 시작에 해당하는 MCU에 대한 많은 내용을 수록하고 있다.
여러분은 이 책을 통하여 STM32 MCU에 대한 사용 방법뿐만 아니라 다양한 부품들에 대한 특성과 사용 방법, 그리고 회로적인 내용도 학습하게 될 것이다.
또한, 상용 제품에서 사용되고 있는 PC의 Windows Program과 여러분의 MCU가 어떻게 서로 데이터를 주고 받으며 통신하는지 그 전송 규약에 대해서 직접 개발하고, MCU에서 제공하는 데이터를 실시간으로 그래프와 데이터로 시각화하는 방법도 학습하게 될 것이다.
이 책에서 다루는 모든 source 파일을 포함한 자료들은 항상 그러하듯이 필자의 naver cafe인 http://cafe.naver.com/limjongsulab를 참조하면 되고, 필자의 email address는 limjongsulab@naver.com이다.
필자가 저술한 Matlab, Simulink와 같은 기존의 책자들뿐만 아니라 앞으로 출간될 책자들, 그리고, 필자의 회사에서 추진하는 여러 교육 과정들과 최신 정보들에 대한 모두 사항들을 앞서 언급한 naver cafe에서 관리하고 있다.
이곳에서 여러분과 함께 질문과 답변을 통한 토론을 하였으며 한다.
그리고 유용한 자료들을 많이 등록하여 공유하였으면 한다.
또한, 이 책에서 사용하는 SJ_MCUPro, SJ_MCUFree windows program뿐만 아니라 SJ_MCUBook_M0, SJ_MCUBook_M3 그리고, SJ_MCUBook_M4 보드를 포함한 다양한 제품들에 대한 자료와 동영상 강좌에 대한 구매는 필자의 homepage인 https://www.sujinpub.com/shop/ 를 참조하면 된다.
GOODS SPECIFICS
- 발행일 : 2024년 11월 22일
- 쪽수, 무게, 크기 : 728쪽 | 1,552g | 188*257*38mm
- ISBN13 : 9791197772726
You may also like
카테고리
한국어
한국어