-- ·|­û / µù¥U -- ¡@
¡@±b¸¹¡G
¡@±K½X¡G
¡@ | µù¥U | §Ñ°O±K½X
3/26 ·s®Ñ¨ì¡I 3/19 ·s®Ñ¨ì¡I 3/14 ·s®Ñ¨ì¡I 12/12 ·s®Ñ¨ì¡I
ÁʮѬyµ{¡EQ & A¡E¯¸°È¯d¨¥ª©¡E«ÈªA«H½c
¢x 3ds Max¢x Maya¢x Rhino¢x After Effects¢x SketchUp¢x ZBrush¢x Painter¢x Unity¢x
¢x PhotoShop¢x AutoCad¢x MasterCam¢x SolidWorks¢x Creo¢x UG¢x Revit¢x Nuke¢x
¢x C#¢x C¢x C++¢x Java¢x ¹CÀ¸µ{¦¡¢x Linux¢x ´O¤J¦¡¢x PLC¢x FPGA¢x Matlab¢x
¢x Àb«È¢x ¸ê®Æ®w¢x ·j¯Á¤ÞÀº¢x ¼v¹³³B²z¢x Fluent¢x VR+AR¢x ANSYS¢x ²`«×¾Ç²ß¢x
¢x ³æ´¹¤ù¢x AVR¢x OpenGL¢x Arduino¢x Raspberry Pi¢x ¹q¸ô³]­p¢x Cadence¢x Protel¢x
¢x Hadoop¢x Python¢x Stm32¢x Cortex¢x Labview¢x ¤â¾÷µ{¦¡¢x Android¢x iPhone¢x
¥i¬d®Ñ¦W,§@ªÌ,ISBN,3dwoo®Ñ¸¹
¸Ô²Ó®ÑÄy¤ÀÃþ

´O¤J¦¡¨t²Î­ì²z¤ÎÀ³¥Î-°ò¤_ARM Cortex-M3¤º®ÖªºSTM32F103¨t¦C·L±±¨î¾¹

( ²Åé ¦r)
§@ªÌ¡G¤ý¯q²[Ãþ§O¡G1. -> ¹q¸£²Õ´»PÅé¨tµ²ºc -> ´O¤J¦¡¨t²Î -> Cortex
ĶªÌ¡G
¥Xª©ªÀ¡G²MµØ¤j¾Ç¥Xª©ªÀ´O¤J¦¡¨t²Î­ì²z¤ÎÀ³¥Î-°ò¤_ARM Cortex-M3¤º®ÖªºSTM32F103¨t¦C·L±±¨î¾¹ 3dWoo®Ñ¸¹¡G 45447
¸ß°Ý®ÑÄy½Ð»¡¥X¦¹®Ñ¸¹¡I

¡i¯Ê®Ñ¡j
¡i¤£±µ¨ü­qÁÊ¡j

¥Xª©¤é¡G10/1/2016
­¶¼Æ¡G596
¥úºÐ¼Æ¡G0
¯¸ªø±ÀÂË¡G
¦L¨ê¡G¶Â¥Õ¦L¨ê»y¨t¡G ( ²Åé ª© )
¡i¤£±µ¨ü­qÁÊ¡j
ISBN¡G9787302441352
§@ªÌ§Ç¡@|¡@ĶªÌ§Ç¡@|¡@«e¨¥¡@|¡@¤º®e²¤¶¡@|¡@¥Ø¿ý¡@|¡@§Ç
(²Åé®Ñ¤W©Ò­z¤§¤U¸ü³sµ²¯Ó®É¶O¥\, ®¤¤£¾A¥Î¦b¥xÆW, ­YŪªÌ»Ý­n½Ð¦Û¦æ¹Á¸Õ, ®¤¤£«OÃÒ)
§@ªÌ§Ç¡G

ĶªÌ§Ç¡G

«e¨¥¡G

¤º®e²¤¶¡G

¥Ø¿ý¡G

²Ä1½g¨t²Î½g
²Ä1³¹´O¤J¦¡¨t²Î·§­z3
1.1´O¤J¦¡¨t²Îªº©w¸q©M¯SÂI3
1.1.1´O¤J¦¡¨t²Îªº©w¸q3
1.1.2´O¤J¦¡¨t²Î©M³q¥Î¹q¸£¤ñ¸û4
1.1.3´O¤J¦¡¨t²Îªº¯SÂI5
1.2´O¤J¦¡¨t²ÎªºµwÅé6
1.2.1´O¤J¦¡³B²z¾¹7
1.2.2´O¤J¦¡°O¾ÐÅé15
1.2.3´O¤J¦¡I/O³]³Æ18
1.2.4´O¤J¦¡I/O¤¶­±18
1.3´O¤J¦¡¨t²Îªº³nÅé21
1.3.1µL§@·~¨t²Îªº´O¤J¦¡³nÅé22
1.3.2±a§@·~¨t²Îªº´O¤J¦¡³nÅé24
1.4´O¤J¦¡¨t²Îªº¤ÀÃþ27
1.4.1«öµwÅé(´O¤J¦¡³B²z¾¹)¹º¤À27
1.4.2«ö³nÅé½ÆÂø«×¹º¤À27
1.4.3«ö§Y®É©Ê¹º¤À28
1.4.4«ö¨Ï¥Îª«¥ó¹º¤À28
1.5´O¤J¦¡¨t²ÎªºÀ³¥Î28
1.5.1°ê¨¾­x¨Æ28
1.5.2¤u·~±±¨î29
1.5.3®ø¶O¹q¤l30
1.5.4¿ì¤½¦Û°Ê¤Æ²£«~30
1.5.5ºô¸ô©M³q«H³]³Æ30
1.5.6¨T¨®¹q¤l31¡»´O¤J¦¡¨t²Î­ì²z¤ÎÀ³¥Î¥Ø¿ý1.5.7ª÷¿Ä°Ó·~31
1.5.8¥Íª«Âå¾Ç32
1.5.9¸ê°T®a¹q32
1.6¥»³¹¤pµ²34
²ßÃD134
²Ä2³¹´O¤J¦¡¨t²Î¶}µo35
2.1´O¤J¦¡¨t²Îªº¶}µoÀô¹Ò¡B¶}µo¤u¨ã©M½Õ¸Õ¤è¦¡35
2.1.1´O¤J¦¡¨t²Îªº¶}µoÀô¹Ò35
2.1.2´O¤J¦¡¨t²Îªº¶}µo¤u¨ã37
2.1.3´O¤J¦¡¨t²Îªº½Õ¸Õ¤è¦¡43
2.2´O¤J¦¡¨t²Îªº¶}µo»y¨¥50
2.2.1´O¤J¦¡µwÅé¶}µo»y¨¥50
2.2.2´O¤J¦¡³nÅéµo®i»y¨¥51
2.3´O¤J¦¡¨t²Îªº¶}µo¹Lµ{53
2.3.1»Ý¨D¤ÀªR54
2.3.2¨t²Î³]­p55
2.3.3¨t²Î¹ê²{61
2.3.4¨t²Î´ú¸Õ70
2.3.5¨t²Îµo§G73
2.4´O¤J¦¡¶}µo¤uµ{®v¤§¸ô74
2.4.1´O¤J¦¡¦æ·~©M¤H¤~ªº²{ª¬¤ÀªR74
2.4.2´O¤J¦¡¶}µo¤uµ{®vªº¯à¤O­n¨D74
2.4.3´O¤J¦¡¶}µo¤uµ{®vªº¶i¶¥¤§¸ô75
2.5¥»³¹¤pµ²77
²ßÃD278
²Ä2½g¤º®Ö½g
²Ä3³¹ARM CortexúQM3³B²z¾¹81
3.1ARM CortexúQM3²Õ¦¨µ²ºc81
3.1.1CortexúQM3¤º®Ö82
3.1.2½Õ¸Õ¨t²Î84
3.2ARM CortexúQM3¶×¬y±Æ¬É­±86
3.2.1CortexúQM3¶×¬y±Æ¬É­±Ãþ«¬87
3.2.2CortexúQM3¶×¬y±Æ³s±µ¤è®×88
3.3ARM CortexúQM3µ{¦¡³]­p¼Ò«¬89
3.3.1¤u§@ª¬ºA89
3.3.2¸ê®ÆÃþ«¬89
3.3.3±H¦s¾¹89
3.3.4«ü¥O¨t²Î93
3.3.5¾Þ§@¼Ò¦¡©M¯SÅv¤À¯Å96
3.3.6²§±`©M¤¤Â_98
3.3.7Âù°ïÅ|¾÷¨î105
3.4ARM CortexúQM3°O¾ÐÅé¨t²Î107
3.4.1°O¾ÐÅé¬M®g107
3.4.2¦ì±a¾Þ§@110
3.4.3¦sÀx®æ¦¡112
3.5ARM CortexúQM3ªº§C¥\¯Ó¼Ò¦¡113
3.6¥»³¹¤pµ²114
²ßÃD3115
²Ä4³¹°ò©óARM CortexúQM3ªºSTM32·L±±¨î¾¹117
4.1±qCortexúQM3¨ì°ò©óCortexúQM3ªºMCU117
4.2°ò©óCortexúQM3ªºSTM32¨t¦C·L±±¨î¾¹·§­z118
4.2.1²£«~½u118
4.2.2©R¦W³W«h124
4.2.3¥ÍºA¨t²Î125
4.2.4¶}µo¤èªk131
4.2.5¾Ç²ß¤§¸ô134
4.3STM32F103·L±±¨î¾¹°ò¦136
4.3.1·§­z136
4.3.2¥D¨t²Îµ²ºc137
4.3.3¥\¯à¼Ò²Õ139
4.3.4¤Þ¸}©w¸q140
4.3.5°O¾ÐÅé²Õ´141
4.4STM32F103·L±±¨î¾¹ªº³Ì¤p¨t²Î145
4.4.1¹q·½¹q¸ô145
4.4.2®ÉÄÁ¹q¸ô148
4.4.3­«©w¹q¸ô149
4.4.4½Õ¸Õ©M¤U¸ü¹q¸ô150
4.4.5¨ä¥L151
4.5STM32F103·L±±¨î¾¹ªº®ÉÄÁ¨t²Î153
4.5.1¿é¤J®ÉÄÁ153
4.5.2¨t²Î®ÉÄÁ155
4.5.3¥Ñ¨t²Î®ÉÄÁ¤ÀÀW±o¨ìªº¨ä¥L®ÉÄÁ155
4.5.4STM32F10x®ÉÄÁ¨t²Î¬ÛÃö®w¨ç¼Æ157
4.6STM32F103·L±±¨î¾¹ªº§C¥\¯Ó¼Ò¦¡162
4.6.1ºÎ¯v¼Ò¦¡163
4.6.2°±¾÷¼Ò¦¡163
4.6.3«Ý¾÷¼Ò¦¡164
4.7STM32F103·L±±¨î¾¹ªº¦w¥þ¯S©Ê165
4.7.1¬Ýªùª¯165
4.7.2¹q·½ÀË´ú166
4.7.3®ÉÄÁ¦w¥þ¨t²Î166
4.8STM32F103·L±±¨î¾¹ªº±Ò°Ê¹Lµ{167
4.8.1±Ò°Ê¹Lµ{©M±Ò°Ê¥N½X·§­z167
4.8.2ARM±Ò°Ê¥N½X©Ò»Ý²Õ¦X»y¨¥°ò¦167
4.8.3STM32F103ªº±Ò°Ê¥N½X¤ÀªR171
4.8.4STM32F103ªº±Ò°Ê¹Lµ{¤ÀªR182
4.9«Ø¥ß²Ä¤@­ÓSTM32F103À³¥Î¤uµ{185
4.9.1STM32F10x¼Ð·Ç¥~³]®wªº¤U¸ü©M»{ª¾185
4.9.2´O¤J¦¡¶}µo¤u¨ãªº¤U¸ü©M¦w¸Ë198
4.9.3°t¸mSTM32F103¤uµ{198
4.9.4½s¼g¨Ï¥ÎªÌµ{¦¡­ì©lµ{¦¡½X206
4.9.5½sĶ©M³sµ²STM32F103¤uµ{207
4.9.6½Õ¸ÕSTM32F103¤uµ{208
4.9.7±N¥i°õ¦æµ{¦¡¤U¸ü¨ìSTM32F103¹B¦æ215
4.10¥»³¹¤pµ²217
²ßÃD4217
²Ä3½g¤ù¤º¥~³]½g
²Ä5³¹GPIO221
5.1GPIO·§­z221
5.2STM32F103ªºGPIO¤u§@­ì²z221
5.2.1¤º³¡µ²ºc222
5.2.2¤u§@¼Ò¦¡224
5.2.3¿é¥X³t«×224
5.2.4½Æ¥Î¥\¯à­«¬M®g225
5.2.5¥~³¡¤¤Â_¬M®g©M¨Æ¥ó¿é¥X228
5.2.6¥D­n¯S©Ê228
5.3STM32F10xªºGPIO¬ÛÃö®w¨ç¼Æ228
5.3.1GPIO_DeInit229
5.3.2GPIO_Init229
5.3.3GPIO_SetBits231
5.3.4GPIO_ResetBits231
5.3.5GPIO_Write232
5.3.6GPIO_ReadOutputDataBit232
5.3.7GPIO_ReadOutputData232
5.3.8GPIO_ReadInputDataBit233
5.3.9GPIO_ReadInputData233
5.3.10GPIO_EXTILineConfig233
5.3.11GPIO_PinRemapConfig234
5.4STM32F103ªºGPIO¶}µo¹ê¨Ò¡X¡XLED°{Ã{235
5.4.1¥\¯à­n¨D235
5.4.2µwÅé³]­p235
5.4.3³nÅé¬yµ{³]­p236
5.4.4³nÅé¥N½X¹ê²{236
5.4.5³nÅéÃþ¤ñ¼ÒÀÀ238
5.4.6¤U¸ü¨ìµwÅé¹B¦æ241
5.4.7¶}µo¸gÅç¤pµ²¡X¡XSTM32·L±±¨î¾¹¶}µoªº¤@¯ë¨BÆJ241
5.5STM32F103ªºGPIO¶}µo¹ê¨Ò¡X¡X«öÁä±±¨îLED«G·À241
5.5.1¥\¯à­n¨D241
5.5.2µwÅé³]­p241
5.5.3³nÅé¬yµ{³]­p242
5.5.4³nÅé¥N½X¹ê²{243
5.5.5³nÅéÃþ¤ñ¼ÒÀÀ244
5.5.6¤U¸ü¨ìµwÅé¹B¦æ246
5.5.7¶}µo¸gÅç¤pµ²¡X¡X¨Ï¥Î®w¨ç¼Æ¶}µoSTM32F103ªºGPIO246
5.6¥»³¹¤pµ²247
²ßÃD5248
²Ä6³¹­p®É¾¹249
6.1­p®É¾¹·§­z249
6.1.1©µ®Éªº¹ê²{249
6.1.2¥iµ{¦¡³]­p©w®É/­p¼Æ¾¹¥\¯à·§­z251
6.2STM32F103ªº­p®É¾¹·§­z252
6.3STM32F103ªº°ò¥»­p®É¾¹TIM6©MTIM7252
6.3.1¤º³¡µ²ºc253
6.3.2®ÉÄÁ·½253
6.3.3­p¼Æ¼Ò¦¡254
6.3.4¥D­n¯S©Ê254
6.4STM32F103ªº³q¥Î­p®É¾¹TIM2¡XTIM5254
6.4.1¤º³¡µ²ºc254
6.4.2®ÉÄÁ·½256
6.4.3­p¼Æ¼Ò¦¡257
6.4.4¿é¥X¤ñ¸û¼Ò¦¡259
6.4.5PWM¿é¥X¼Ò¦¡259
6.4.6¿é¤J®·Àò¼Ò¦¡262
6.4.7PWM¿é¤J¼Ò¦¡262
6.4.8³æ¯ß½Ä¼Ò¦¡263
6.4.9½s½X¾¹¤¶­±263
6.4.10¥D­n¯S©Ê263
6.5STM32F103ªº°ª¯Å­p®É¾¹TIM1©MTIM8264
6.5.1¤º³¡µ²ºc264
6.5.2®ÉÄÁ·½264
6.5.3¥\¯à´y­z266
6.5.4¥D­n¯S©Ê266
6.6STM32F10x­p®É¾¹¬ÛÃö®w¨ç¼Æ266
6.6.1TIM_DeInit267
6.6.2TIM_TimeBaseInit268
6.6.3TIM_OC1Init269
6.6.4TIM_OC2Init270
6.6.5TIM_OC3Init271
6.6.6TIM_OC4Init271
6.6.7TIM_OC1PreloadConfig272
6.6.8TIM_OC2PreloadConfig272
6.6.9TIM_OC3PreloadConfig272
6.6.10TIM_OC4PreloadConfig273
6.6.11TIM_ARRPreloadConfig273
6.6.12TIM_CtrlPWMOutputs274
6.6.13TIM_Cmd274
6.6.14TIM_GetFlagStatus275
6.6.15TIM_ClearFlag275
6.6.16TIM_ITConfig276
6.6.17TIM_GetITStatus276
6.6.18TIM_ClearITPendingBit277
6.7STM32F103­p®É¾¹¶}µo¹ê¨Ò¡X¡Xºë½T©w®ÉªºLED°{Ã{277
6.7.1¥\¯à­n¨D277
6.7.2µwÅé³]­p277
6.7.3³nÅé¬yµ{³]­p278
6.7.4³nÅé¥N½X¹ê²{279
6.7.5³nÅéÃþ¤ñ¼ÒÀÀ281
6.7.6¤U¸ü¨ìµwÅé¹B¦æ283
6.7.7¶}µo¸gÅç¤pµ²¡X¡X¨Ï¥Îprintf¦b½Õ¸Õµøµ¡¿é¥X284
6.8STM32F103­p®É¾¹¶}µo¹ê¨Ò¡X¡XPWM¿é¥X285
6.8.1¥\¯à­n¨D285
6.8.2µwÅé³]­p286
6.8.3³nÅé¬yµ{³]­p286
6.8.4³nÅé¥N½X¹ê²{288
6.8.5³nÅéÃþ¤ñ¼ÒÀÀ289
6.8.6¤U¸ü¨ìµwÅé¹B¦æ291
6.8.7¶}µo¸gÅç¤pµ²¡X¡X°ò©óµL­­°j°éªº´O¤J¦¡³nÅé¬[ºc291
6.9¥»³¹¤pµ²292
²ßÃD6292
²Ä7³¹¤¤Â_293
7.1¤¤Â_ªº°ò¥»·§©À293
7.1.1¤¤Â_·½294
7.1.2¤¤Â_¾B¸n294
7.1.3¤¤Â_³B²z¹Lµ{294
7.1.4¤¤Â_Àu¥ý¶¶§Ç296
7.1.5¤¤Â_´O®M297
7.1.6¤¤Â_ªº§Q»P¹ú298
7.2STM32F103¤¤Â_¨t²Î298
7.2.1´O®M¦V¶q¤¤Â_±±¨î¾¹NVIC298
7.2.2STM32F103¤¤Â_Àu¥ý¶¶§Ç299
7.2.3STM32F103¤¤Â_¦V¶qªí300
7.2.4STM32F103¤¤Â_ªA°È¨ç¼Æ303
7.2.5STM32F103¤¤Â_³]¸m¹Lµ{304
7.3STM32F103¥~³¡¤¤Â_/¨Æ¥ó±±¨î¾¹EXTI306
7.3.1¤º³¡µ²ºc307
7.3.2¤u§@­ì²z308
7.3.3¥D­n¯S©Ê309
7.4STM32F10xªºNVIC¬ÛÃö®w¨ç¼Æ309
7.4.1NVIC_PriorityGroupConfig310
7.4.2NVIC_Init310
7.4.3NVIC_DeInit313
7.5STM32F10xªºEXTI¬ÛÃö®w¨ç¼Æ314
7.5.1EXTI_DeInit314
7.5.2EXTI_Init314
7.5.3EXTI_GetFlagStatus316
7.5.4EXTI_ClearFlag316
7.5.5EXTI_GetITStatus317
7.5.6EXTI_ClearITPendingBit317
7.6STM32F103ªº¤¤Â_¶}µo¹ê¨Ò¡X¡X«öÁä±±¨îLED«G·À318
7.6.1¥\¯à­n¨D318
7.6.2µwÅé³]­p318
7.6.3³nÅé¬yµ{³]­p319
7.6.4³nÅé¥N½X¹ê²{320
7.6.5¤U¸ü¨ìµwÅé¹B¦æ323
7.6.6¶}µo¸gÅç¤pµ²¡X¡X«e/«á»O´O¤J¦¡³nÅé¬[ºc323
7.7STM32F103ªº¤¤Â_¶}µo¹ê¨Ò¡X¡Xºë½T©µ®ÉªºLED°{Ã{325
7.7.1¥\¯à­n¨D325
7.7.2µwÅé³]­p325
7.7.3³nÅé¬yµ{³]­p326
7.7.4³nÅé¥N½X¹ê²{328
7.7.5³nÅé¥N½X¤ÀªR¡X¡Xvolatile331
7.7.6³nÅéÃþ¤ñ¼ÒÀÀ332
7.7.7¤U¸ü¨ìµwÅé¹B¦æ334
7.7.8¶}µo¸gÅç¤pµ²¡X¡X§ï¶iªº«e/«á»O´O¤J¦¡³nÅé¬[ºc334
7.8¥»³¹¤pµ²336
²ßÃD7336
²Ä8³¹DMA337
8.1DMAªº°ò¥»·§©À337
8.1.1DMAªº¤Þ¤J337
8.1.2DMAªº©w¸q338
8.1.3DMA¶Ç¿é­n¯À338
8.1.4DMA¶Ç¿é¹Lµ{338
8.1.5DMAªº¯SÂI»PÀ³¥Î339
8.2STM32F103ªºDMA¤u§@­ì²z339
8.2.1¥\¯à®Ø¹Ï340
8.2.2IJµo³q¹D341
8.2.3Àu¥ý¶¶§Ç344
8.2.4¶Ç¿é¼Ò¦¡344
8.2.5¥D­n¯S©Ê344
8.3STM32F10xªºDMA¬ÛÃö®w¨ç¼Æ345
8.3.1DMA_DeInit346
8.3.2DMA_Init346
8.3.3DMA_GetCurrDataCounter348
8.3.4DMA_Cmd348
8.3.5DMA_GetFlagStatus349
8.3.6DMA_ClearFlag350
8.3.7DMA_ITConfig351
8.3.8DMA_GetITStatus351
8.3.9DMA_ClearITPendingBit353
8.4STM32F103ªºDMA¶}µo¹ê¨Ò¡X¡X°O¾ÐÅ鶡ªº¸ê®Æ¶Ç¿é353
8.4.1¥\¯à­n¨D353
8.4.2µwÅé³]­p353
8.4.3³nÅé¬yµ{³]­p354
8.4.4³nÅé¥N½X¹ê²{355
8.4.5³nÅé¥N½X¤ÀªR¡X¡Xconst358
8.4.6¤U¸üµwÅé½Õ¸Õ358
8.4.7¶}µo¸gÅç¤pµ²¡X¡X¨Ï¥ÎDMA365
8.5¥»³¹¤pµ²366
²ßÃD8366
²Ä9³¹ADC367
9.1ADC·§­z367
9.1.1ADCªº¥Ñ¨Ó367
9.1.2ADCªº°ò¥»­ì²z368
9.1.3ADCªº©Ê¯à°Ñ¼Æ370
9.1.4ADCªº¥D­nÃþ«¬371
9.2STM32F103ªºADC¤u§@­ì²z372
9.2.1¥D­n¯S©Ê373
9.2.2¤º³¡µ²ºc373
9.2.3ADC³q¹D¤Î¤À²Õ375
9.2.4ADCIJµoÂà´«376
9.2.5ADC®ÉÄÁ©MÂà´«®É¶¡377
9.2.6ADC¤u§@¹Lµ{378
9.2.7ADC¤¤Â_©MDMA½Ð¨D378
9.2.8¿W¥ß¼Ò¦¡©MÂùADC¼Ò¦¡380
9.2.9³æ¦¸©M³sÄòÂà´«¼Ò¦¡380
9.2.10±½´y¼Ò¦¡381
9.2.11¶¡Â_¼Ò¦¡383
9.2.12®Õ·Ç384
9.3STM32F10xªºADC¬ÛÃö®w¨ç¼Æ384
9.3.1ADC_DeInit386
9.3.2ADC_Init386
9.3.3ADC_RegularChannelConfig388
9.3.4ADC_InjectedChannelConfig390
9.3.5ADC_InjectedSequencerLengthConfig390
9.3.6ADC_SetInjectedOffset391
9.3.7ADC_TampSensorVrefintCmd391
9.3.8ADC_Cmd392
9.3.9ADC_ResetCalibration392
9.3.10ADC_GetResetCalibrationStatus392
9.3.11ADC_StartCalibration393
9.3.12ADC_GetCalibrationStatus393
9.3.13ADC_SoftwareStartConvCmd394
9.3.14ADC_ExternalTrigConvCmd394
9.3.15ADC_SoftwareStartInjectedConvCmd395
9.3.16ADC_ExternalTrigInjectedConvCmd395
9.3.17ADC_ExternalTrigInjectedConvConfig396
9.3.18ADC_AutoInjectedConvCmd397
9.3.19ADC_DiscModeCmd397
9.3.20ADC_DiscModeChannelCountConfig398
9.3.21ADC_InjectedDiscModeCmd398
9.3.22ADC_GetConversionValue398
9.3.23ADC_GetInjectedConversionValue399
9.3.24ADC_GetFlagStatus399
9.3.25ADC_ClearFlag400
9.3.26ADC_ITConfig400
9.3.27ADC_GetITStatus401
9.3.28ADC_ClearITPendingBit401
9.3.29ADC_DMACmd402
9.4STM32F103ªºADC¶}µo¹ê¨Ò¡X¡XŪ¨úGPIO¤Þ¸}¹qÀ£402
9.4.1¥\¯à­n¨D402
9.4.2µwÅé³]­p402
9.4.3³nÅé¬yµ{³]­p403
9.4.4³nÅé¥N½X¹ê²{406
9.4.5³nÅéÃþ¤ñ¼ÒÀÀ409
9.4.6¤U¸ü¨ìµwÅé½Õ¸Õ413
9.4.7¶}µo¸gÅç¤pµ²¡X¡X¨Ï¥Î³nÅéÂoªi­°§CÂø°T414
9.5STM32F103ªºADC¶}µo¹ê¨Ò¡X¡XŪ¨ú´¹¤ù·Å«×414
9.5.1¥\¯à­n¨D414
9.5.2µwÅé³]­p414
9.5.3³nÅé¬yµ{³]­p415
9.5.4³nÅé¥N½X¹ê²{418
9.5.5¤U¸ü¨ìµwÅé½Õ¸Õ421
9.5.6¶}µo¸gÅç¤pµ²¡X¡X½ü¸ß¡B¤¤Â_©MDMA422
9.6¥»³¹¤pµ²423
²ßÃD9423
²Ä10³¹UART425
10.1¸ê®Æ³q«Hªº°ò¥»·§©À426
10.1.1¨Ã¦æ©M¦ê¦C426
10.1.2³æ¤u¡B¥bÂù¤u©M¥þÂù¤u426
10.1.3¦P¨B©M«D¦P¨B426
10.2UART³q«H­ì²z427
10.2.1UARTªº¹êÅé¼h427
10.2.2UARTªº¨óij¼h430
10.3STM32F103ªºUSART¤u§@­ì²z432
10.3.1¥D­n¯S©Ê432
10.3.2¤º³¡µ²ºc432
10.3.3USART¤¤Â_435
10.3.4¨Ï¥ÎDMA¶i¦æUSART³q«H436
10.4STM32F10xªºUSART¬ÛÃö®w¨ç¼Æ437
10.4.1USART_DeInit438
10.4.2USART_Init438
10.4.3USART_Cmd439
10.4.4USART_SendData440
10.4.5USART_ReceiveData440
10.4.6USART_GetFlagStatus441
10.4.7USART_ClearFlag441
10.4.8USART_ITConfig442
10.4.9USART_GetITStatus443
10.4.10USART_ClearITPendingBit444
10.4.11USART_DMACmd444
10.5STM32F103ªºUSART¶}µo¹ê¨Ò¡X¡X­«©w¦Vprintf445
10.5.1¥\¯à­n¨D445
10.5.2µwÅé³]­p445
10.5.3³nÅé¬yµ{³]­p446
10.5.4³nÅé¥N½X¹ê²{447
10.5.5¤U¸ü¨ìµwÅé¹B¦æ449
10.5.6¶}µo¸gÅç¤pµ²¡X¡X¨Ï¥Îprintf­«©w¦V¨ìUSART1451
10.6STM32F103ªºUSART¶}µo¹ê¨Ò¡X¡XPC¦ê¤f³q«H452
10.6.1¥\¯à­n¨D452
10.6.2µwÅé³]­p452
10.6.3³nÅé¬yµ{³]­p452
10.6.4³nÅé¥N½X¹ê²{452
10.6.5¤U¸ü¨ìµwÅé¹B¦æ454
10.6.6¶}µo¸gÅç¤pµ²¡X¡X®w¨ç¼Æ¶}µoSTM32F103¥~³]ªº¤@¯ë­ì²z455
10.7¥»³¹¤pµ²459
²ßÃD10459
²Ä11³¹SPI461
11.1SPI³q«H­ì²z461
11.1.1SPIªº¹êÅé¼h462
11.1.2SPIªº¨óij¼h464
11.2STM32F103ªºSPI¤u§@­ì²z469
11.2.1¥D­n¯S©Ê469
11.2.2¤º³¡µ²ºc470
11.2.3SPI¥D¼Ò¦¡471
11.2.4SPI±q¼Ò¦¡472
11.2.5SPIª¬ºA¼Ð»x©M¤¤Â_473
11.2.6SPIµo°e¸ê®Æ©M±µ¦¬¸ê®Æ474
11.2.7¨Ï¥ÎDMA¶i¦æSPI³q«H475
11.3STM32F10xªºSPI¬ÛÃö®w¨ç¼Æ476
11.3.1SPI_I2S_DeInit477
11.3.2SPI_Init477
11.3.3SPI_Cmd479
11.3.4SPI_I2S_SendData479
11.3.5SPI_I2S_ReceiveData480
11.3.6SPI_I2S_GetFlagStatus480
11.3.7SPI_I2S_ClearFlag481
11.3.8SPI_I2S_ITConfig481
11.3.9SPI_I2S_GetITStatus482
11.3.10SPI_I2S_ClearITPendingBit483
11.3.11SPI_I2S_DMACmd483
11.4STM32F103ªºSPI¶}µo¹ê¨Ò¡X¡XŪ¼gSPI_FLASH484
11.4.1¥\¯à­n¨D484
11.4.2µwÅé³]­p484
11.4.3³nÅé¬[ºc³]­p485
11.4.4³nÅé¼Ò²Õ¤ÀªR486
11.4.5³nÅé¥N½X¹ê²{507
11.4.6¤U¸üµwÅé½Õ¸Õ517
11.4.7¤U¸ü¨ìµwÅé¹B¦æ522
11.4.8¶}µo¸gÅç¤pµ²¡X¡X¼Ò²Õ¤Æ¶}µoªº´O¤J¦¡³nÅé³]­p523
11.5¥»³¹¤pµ²524
²ßÃD11524
²Ä12³¹I2C526
12.1I2C³q«H­ì²z526
12.1.1I2Cªº¹êÅé¼h527
12.1.2I2Cªº¨óij¼h529
12.2STM32F103ªºI2C¤u§@­ì²z533
12.2.1¥D­n¯S©Ê534
12.2.2¤º³¡µ²ºc534
12.2.3I2C±q¼Ò¦¡535
12.2.4I2C¥D¼Ò¦¡537
12.2.5I2C¤¤Â_540
12.2.6¨Ï¥ÎDMA¶i¦æI2C³q«H540
12.3STM32F10xªºI2C¬ÛÃö®w¨ç¼Æ542
12.3.1I2C_DeInit543
12.3.2I2C_Init543
12.3.3I2C_Cmd545
12.3.4I2C_GenerateSTART545
12.3.5I2C_ReadRegister545
12.3.6I2C_Send7bitAddress546
12.3.7I2C_SendData546
12.3.8I2C_ReceiveData547
12.3.9I2C_CheckEvent547
12.3.10I2C_AcknowledgeConfig548
12.3.11I2C_GenerateSTOP548
12.3.12I2C_GetFlagStatus549
12.3.13I2C_ClearFlag550
12.3.14I2C_ITConfig551
12.3.15I2C_GetITStatus551
12.3.16I2C_ClearITPendingBit552
12.3.17I2C_DMACmd552
12.4STM32F103ªºI2C¶}µo¹ê¨Ò¡X¡XŪ¼gI2C_EEPROM553
12.4.1¥\¯à­n¨D553
12.4.2µwÅé³]­p553
12.4.3³nÅé¬[ºc³]­p554
12.4.4³nÅé¼Ò²Õ¤ÀªR555
12.4.5³nÅé¥N½X¹ê²{566
12.4.6¤U¸ü¨ìµwÅé½Õ¸Õ574
12.4.7¤U¸ü¨ìµwÅé¹B¦æ577
12.4.8¶}µo¸gÅç¤pµ²¡X¡X´O¤J¦¡ÅX°Êµ{¦¡¶}µo­ì²z578
12.5¥»³¹¤pµ²579
²ßÃD12580
ªþ¿ýAASCII½Xªí581
ªþ¿ýBSTM32F103·L±±¨î¾¹¤j®e¶q²£«~¨t¦C¤Þ¸}©w¸qªí583
ªþ¿ýCSTM32F103·L±±¨î¾¹¤¤µ¥®e¶q²£«~¨t¦C¤Þ¸}©w¸qªí589
ªþ¿ýDSTM32F103·L±±¨î¾¹¤p®e¶q²£«~¨t¦C¤Þ¸}©w¸qªí594
§Ç¡G