-- ·|­û / µù¥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¤ÀÃþ

ARM Cortex-M3´O¤J¦¡­ì²z¤ÎÀ³¥Î¡X¡X°ò¤_STM32F103·L±±¨î¾¹

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

¡i¦³®w¦s¡j
NT°â»ù¡G 345 ¤¸

¥Xª©¤é¡G1/1/2020
­¶¼Æ¡G350
¥úºÐ¼Æ¡G0
¯¸ªø±ÀÂË¡G
¦L¨ê¡G¶Â¥Õ¦L¨ê»y¨t¡G ( ²Åé ª© )
¥[¤JÁʪ«¨® ¢x¥[¨ì§Úªº³Ì·R
(½Ð¥ýµn¤J·|­û)
ISBN¡G9787302538615
§@ªÌ§Ç¡@|¡@ĶªÌ§Ç¡@|¡@«e¨¥¡@|¡@¤º®e²¤¶¡@|¡@¥Ø¿ý¡@|¡@§Ç
(²Åé®Ñ¤W©Ò­z¤§¤U¸ü³sµ²¯Ó®É¶O¥\, ®¤¤£¾A¥Î¦b¥xÆW, ­YŪªÌ»Ý­n½Ð¦Û¦æ¹Á¸Õ, ®¤¤£«OÃÒ)
§@ªÌ§Ç¡G

ĶªÌ§Ç¡G

«e¨¥¡G

¡§«C¤s¾B¤£¦í¡A²¦³ºªF¬y¥h¡¨¡AÁöµM§Ú­Ì¹ï¸g¨åªº8¦ì³æ¤ù¾÷¡]¦pMCSúQ51¡^¡B16¦ì³æ¤ù¾÷¡]¦pMSP430¡^¿n²Ö¤F¤j¶qªº§Þ³N¸ê®Æ¡A¥Î°_¨Ó±o¤ßÀ³¤â¡C¦ý¬O³æ¤ù¾÷´_Âøªº«ü¥O¡B¸û§Cªº¥DÀW¡B¦³­­ªº¦sÀxªÅ¶¡¡B·¥¤Öªº¤ù¤W¥~³]¡A¨Ï¨ä¦b­±¹ï´_ÂøÀ³¥Î®É¡A®»Ą̃£¨y¡AÃø¥H³Ó¥ô¡CÁöµM8¦ì¡B16¦ì³æ¤ù¾÷ªºÀ³¥Î¤£·|´N¦¹µ²§ô¡A¦ý¥i¥HªÖ©wªº¬O32¦ì³B²z¾¹®É¥N¤w¸g¨ì¨Ó¡A32¦ì³B²z¾¹©Ê¯à±o¨ì¤FÅãµÛ´£¤É¡A¤ù¤W¸ê·½§ó¥[Â×´I¡A¥\¯à¤]¶V¨Ó¶V´_Âø©M§¹µ½¡C
¿ïÃD­I´º
¦b³o­Ó¤jÀô¹Ò¤U¡AARM CortexúQM3³B²z¾¹½Ï¥Í¤F¡I¥Ñ¤_ªö¥Î¤F³Ì·sªº³]­p§Þ³N¡A¥¦ªº¤º®ÖÅÞ¿èªù¼Æ§ó§C¡A©Ê¯à«o§ó±j¡C³\¦h´¿¸g¥u¯à¨D§U¤_°ª¯Å32¦ì³B²z¾¹©ÎDSPªº³n¥ó³]­p¡A³£¯à¦bCortexúQM3¤W¹B¦æ±o§ó§Ö¡C
°ò¤_ARMªº´O¤J¦¡¨t²Î¦]¬°¥\¯à´_Âø¡Bªä¤ù¨t¦C¦h¡B¶}µo¼Ò¦¡¦U²§¡A¨Ï¨ä¤£¶ÈÃø±Ð¦Ó¥BÃø¾Ç¡C¦ý¬O¥Ñ¤_¦U¦æ¦U·~¹ï±±¨î¾¹¯à¤Oªº­n¨D¡§±o¤o¶i¤Ø¡¨¡A¦Ó32¦ì´O¤J¦¡¨t²Î©Ê»ù¤ñ¤£Â_´£°ª¡A«P¨Ïµ§ªÌ¤U©w¨M¤ßÂ૬¡A¸g¹L´X¦~ªº§V¤O¡Aµ§ªÌ¦¨¥\Â૬ARM´O¤J¦¡¶}µo¡C
¦^·Q¾Ç²ß©M±Ð¾Ç¹Lµ{¡A¦³´XÂI¸gÅç­n©M¤j®a¤À¨É¡G ¤@¬O­n¿ï¾Ü¤@­Ó¦X¾Aªº¤º®Ö¡AARM´O¤J¦¡³B²z¾¹µLºÃ¬O¥D¬y²£«~¡A¥«³õ¥e¦³²v¬Û·í°ª¡F ¤G¬O­n¿ï¾Ü¦X¾Aªº°ò¤_ARM¤º®Ö·L±±¨î¾¹¡A¥Ø«e·Nªk¥b¾ÉÅ餽¥q(ST Microelectronics)±À¥Xªº32¦ìCortexúQM¤º®ÖªºMCU²£«~¥«³õ¥e¦³²v«Ü°ª¡A§Þ³N¸ê®Æ¥þ­±¡A©x¤è©T¥ó®w©ö¾Ç©ö¥Î¡]°ò¤_¤W­z¨âÂI¡A¥»®Ñ¥D­nÁ¿­zªº¬O¥Ø«e³Q¼sªx¨Ï¥Îªº°ò¤_CortexúQM3¤º®ÖªºSTM32F103·L±±¨î¾¹¡^¡F ¤T¬O­n¿ï¾Ü¤@¥»¦X¾Aªº±Ð§÷¡Aµ§ªÌ»{¬°¤@¥»¦nªº´O¤J¦¡±Ð§÷À³¸Ó¨ã¦³¥Ñ²L¤J²`¡A´`§Çº¥¶i¡A²z½×°÷¥Î¡Aª`­«¹ê½î¡A¦@©Ê©M­Ó©Ê­ÝÅUµ¥¯SÂI¡A¬J¯à¸û¬°¨t²Î¦a¤¶²Ð´O¤J¦¡¨t²Îªº°ò¥»·§©À©M­ì²z¡A¤S¯à«ü¾Éªì¾ÇªÌ¦b¹ê»Ú³nµw¥óÀô¹Ò¤¤¶i¦æ¶}µo¹ê½î¡C
¥D­n¤º®e
°w¹ï¤W­z±¡ªp¡Aµ§ªÌ®Ú¾Ú¦h¦~ªº´O¤J¦¡¨t²Î±Ð¾Ç©M¶}µo¸gÅç¡A¸Õ¹Ï°µ¨ì¤º®e´`§Çº¥¶i¡A²z½×»P¹ê½î¦}­«¡A¦@©Ê»P­Ó©Ê­ÝÅU¡A±N´O¤J¦¡¨t²Îªº²z½×ª¾ÃÑ©M°ò¤_ARM CortexúQM3¤º®ÖªºSTM32F103·L±±¨î¾¹ªº¹ê»Ú¶}µo¬Ûµ²¦X¡A½s¼g¤F¥»®Ñ¡C
¥þ®Ñ¦@¦³15³¹¡A¹º¤À¬°3³¡¤À¡C
²Ä1³¡¤À¡]²Ä1~3³¹¡^¬°¨t²Î¥­»O¼Ò¶ô¡C²Ä1³¹¤¶²Ð¤F´O¤J¦¡¨t²Î©w¸q¡BARM¤º®Ö¡A¥H¤Î°ò¤_ARM CortexúQM3¤º®ÖªºSTM32·L±±¨î¾¹¡C²Ä2³¹¹ïSTM32´O¤J¦¡¶}µoªOµw¥ó¥­»O¦U¼Ò¶ô¶i¦æ¸Ô²Ó¤¶²Ð¡C²Ä3³¹¤¶²ÐKeil MDK³n¥ó¦}¶i¦æ¤uµ{¼ÒªO³Ð«Ø¡C
²Ä2³¡¤À¡]²Ä4~9³¹¡^¬°°ò¥»¥~³]¼Ò¶ô¡A¤À§O¹ïSTM32´O¤J¦¡¨t²Î³Ì±`¥Î¥~³]¼Ò¶ô¶i¦æ¤¶²Ð¡C²Ä4³¹Á¿¸Ñ³q¥Î¥Øªº¿é¤J¿é¥X¤f¡C²Ä5³¹Á¿¸ÑLED¬y¤ô¿O»PSysTick©w®É¾¹¡C²Ä6³¹Á¿¸Ñ«öÁä¿é¤J»P¸Á»ï¾¹¡C²Ä7³¹Á¿¸Ñ¼Æ½XºÞ°ÊºAÅã¥Ü¡C²Ä8³¹Á¿¸Ñ¤¤Â_¨t²Î»P°ò¥»À³¥Î¡C²Ä9³¹Á¿¸Ñ©w®É¾¹»P¯ß¨R¼e«×½Õ¨î¡C
²Ä3³¡¤À¡]²Ä10~15³¹¡^¬°ÂX®i¥~³]¼Ò¶ô¡A¤À§O¹ïSTM32´O¤J¦¡¨t²Î°ª¯Å¥~³]¼Ò¶ô¶i¦æ¤¶²Ð¡C²Ä10³¹Á¿¸Ñ¦ê¦æ³q«H±µ¤fUSART¡C²Ä11³¹Á¿¸ÑSPI»POLEDÅã¥Ü«Ì¡C²Ä12³¹Á¿¸Ñ¼ÒÀÀ¼Æ¦rÂà´«¾¹¡C²Ä13³¹Á¿¸Ñª½±µ¦sÀx¾¹³X°Ý¡C²Ä14³¹Á¿¸ÑI2C±µ¤f»PEEPROM¦sÀx¾¹¡C²Ä15³¹Á¿¸ÑRTC®ÉÄÁ»PBKP±H¦s¾¹¡C
µL½×¬O°ò¥»¥~³]¼Ò¶ô¡AÁÙ¬OÂX®i¥~³]¼Ò¶ô¡A±q²Ä4³¹¶}©l¨ì²Ä15³¹µ²§ô¡A¨C¤@³¹³£¥ý¹ï¼Ò¶ô©Ò¯A¤Îªº²z½×ª¾ÃѶi¦æÁ¿¸Ñ¡AµM¦Z¤Þ¤J¶µ¥Ø¹ê¨Ò¡Aµ¹¥X¶µ¥Ø¹ê¬Iªº¨ãÅé¨BÆJ¡A¶µ¥Ø¥i¥H¦b½Ò°ó¤W§¹¦¨¡C¾ã­Ó±Ð¾Ç²z½×»P¹ê½î¤@Åé¡A¾Ç¤¤°µ¡A°µ¤¤¾Ç¡C
¥»®Ñªº¯S¦â©M»ù­È
(1) ¥H¾Ç¥Í»{ª¾¹Lµ{¬°¾É¦V³]­p±Ð§÷ÅÞ¿èµ²ºc¡B²Õ´±Ð§÷³¹¸`¤º®e¡C¥þ®Ñ¥ýµw¥ó¦Z³n¥ó¡A¥Ñ²L¤J²`¡F ¿í´`²z½×°÷¥Î¡B­«¦b¹ê½î¡B®e©ö¤W¤âªº­ì«h¡A°ö¾i¾Ç²ß¿³½ì¡A¿Eµo¾Ç²ß°Ê¤O¡C
(2) ªö¨ú¶µ¥Ø¤Þ»â¡A¥ô°ÈÅX°Êªº¤è¦¡¡A±j½Õ±Ð¡B¾Ç¡B°µ¤@Åé¡Aª`­«¾Ç¥Í¤uµ{¹ê½î¯à¤Oªº°ö¾i¡C¹ï¨C¤@­Ó¨å«¬¥~³]¼Ò¶ô¡A¦b²©ú§ã­nÄÄ­z­ì²zªº°ò¦¤W¡A³ò¶¨äÀ³¥Î¡A§¡¥H§¹¾ã®×¨Òªº§Î¦¡°Q½×¨ä³]­pºëÅè¡A¦}µ¹¥X§¹¾ãªº¤uµ{®×¨Ò¡C
(3) ¶Ç©Ó51¸g¨å¡Aµo´­ARMªø³B¡A§U±ÀMCU¤É¯Å¡CARM´O¤J¦¡¨t²Î¹ê»Ú¤W¬O8¦ì³æ¤ù¾÷ªº¤É¯ÅÂX®i¡A¦ý¬O¨ä°ª©Ê¯à¥²µM±a¨Ó¨t²Î´_Âø«×ªº¤j´T´£°ª¡A¦pªG¯à­É§U8¦ì³æ¤ù¾÷²z©À¡B¤èªk©M®×¨Òªº¦@©Ê¡A¦³§U¤_´£¤ÉŪªÌ¾Ç²ß¿³½ì¡A¨Ï¨ä»´ªQ¤Jªù´O¤J¦¡¶}µo¡C
¥»®Ñ°t®M¾Ç²ß¸ê·½¡A¬°«K¤_´£°ª¾Ç²ß®Ä²v¡Aµ§ªÌºë¤ß¨î§@¤Fµ{§Ç¥N½X¡B¾Ç²ß¯À§÷¡B±Ð§÷½Ò¥ó©M±Ð¾Ç¤jºõ¡A±½½X§Y¥iÀò¨ú¡C


µ{§Ç¥N½X

¾Ç²ß¯À§÷

±Ð§÷½Ò¥ó

±Ð¾Ç¤jºõ

­PÁÂ
¦b¥»®Ñªº¼¶¼g¹Lµ{¤¤°Ñ¾\¤F³\¦h¸ê®Æ¡A¦b¦¹¹ï©Ò°Ñ¦Ò¸ê®Æªº§@ªÌªí¥Ü¸Û¼°ªº·PÁ¡C¦b½s¼g¹Lµ{¤¤Á٤ޥΤF¤¬Ápºô¤W³Ì·s¸ê°T¤Î³ø¹D¡A¦b¦¹¦V­ì§@ªÌ©M¥Zµo¾÷ºcªí¥Ü¯u¼°ªºÁ·N¡A¦}¹ï¤£¯à¤@¤@ª`©ú¨Ó·½ªº§@ªÌ²`ªíºp·N¡C¹ï¤_¦¬¶°¨ìªº¦@¨É¸ê®Æ¨S¦³¼Ð©ú¥X³B©Î§ä¤£¨ì¥X³Bªº¡A¥H¤Î¹ï¦³¨Ç¸ê®Æ¶i¦æ¥[¤u¡B­×§ï¦Z¯Ç¤J¥»®Ñªº¡A¦b¦¹¾G­«Án©ú¡A¥»®Ñ¤º®e¶È¥Î¤_±Ð¾Ç¡A¨äµÛ§@ÅvÄݤ_­ì§@ªÌ¡A¦}¦V¥L­Ìªí¥Ü­P·q©M·PÁ¡C
¦b¥»®Ñªº½s¼g¹Lµ{¤¤±o¨ì¤F®a¤Hªº²z¸Ñ©MÀ°§U¡A¦}¥B¤@ª½±o¨ì²MµØ¤j¾Ç¥Xª©ªÀ±ç¿o¡B²±ªF«G¡BÄÁ§ÓªÚµ¥¦U¦ì¦Ñ®vªºÃö¤ß©M¤j¤O¤ä«ù¡A²MµØ¤j¾Ç¥Xª©ªÀªº¤u§@¤H­û¤]¥I¥X¤F¨¯¶Ôªº³Ò°Ê¡A¦b¦¹ÂÔ¦V¤ä«ù©MÃö¤ß¥»®Ñ½s¼gªº®a¤H¡B¦P¤¯©MªB¤Í¤@¦}­PÁ¡C
¥Ñ¤_´O¤J¦¡§Þ³Nªºµo®i¤é·s¤ë²§¡A¥[¤§µ§ªÌ¤ô¥­¦³­­¤Î®É¶¡­Ü«P¡A®Ñ¤¤Ãø§K¦³²¨º|©M¤£¨¬¤§³B¡AÀµ½Ð¼s¤jŪªÌ§åµû«ü¥¿¡C
§@ªÌ

2019¦~10¤ë
¤º®e²¤¶¡G

¥»®Ñ¦®¦b¶Ç©Ó51¸g¨å¡Aµo´­ARMªø³B¡A§U±ÀMCU¤É¯Å¡F ¥H¾Ç¥Í»{ª¾¹Lµ{¬°¾É¦V²Õ´±Ð§÷¤º®e¡Aªö¨ú¶µ¥Ø¤Þ»â¡A¥þ®×¨ÒÁ¿¸Ñªº¤è¦¡¡AµÛ­«°ö¾i¾Ç¥Í¹ê½îÀ³¥Î¯à¤O¡C¥»®Ñ¸Ô²ÓÄÄ­z¤F°ò¤_ARM CortexúQM3¤º®ÖªºSTM32F103·L±±¨î¾¹´O¤J¦¡¨t²Îµw¥ó³]­p¤èªk©M³n¥ó¶}µo§Þ³N¡C
¥þ®Ñ¦@¦³15³¹¡A¹º¤À¬°3³¡¤À¡G ²Ä1³¡¤À¡]²Ä1~3³¹¡^¬°¨t²Î¥­»O¼Ò¶ô¡AÁ¿­z´O¤J¦¡¨t²Î©w¸q¡B¶}µoªOµw¥ó¥­»O©M¤uµ{¼ÒªO³Ð«Ø¡F ²Ä2³¡¤À¡]²Ä4~9³¹¡^¬°°ò¥»¥~³]¼Ò¶ô¡A¤À§O¹ïSTM32´O¤J¦¡¨t²Î³Ì±`¥Î¥~³]¼Ò¶ô¶i¦æ¤¶²Ð¡A¥]¬AGPIO¡B¤¤Â_¡B©w®É¾¹¡BPWM©M´O¤J¦¡¨t²Î±µ¤f§Þ³N¡F ²Ä3³¡¤À¡]²Ä10~15³¹¡^¬°ÂX®i¥~³]¼Ò¶ô¡A¤À§O¹ïSTM32´O¤J¦¡¨t²Î°ª¯Å¥~³]¼Ò¶ô¶i¦æ¤¶²Ð¡A¥]¬AUSART¡BSPI¡BOLED¡BADC¡BIIC¡BEEPROM©MRTCµ¥¡C
¥»®Ñ¾A¦X§@¬°°ªµ¥°|®Õ­pºâ¾÷¡B¦Û°Ê¤Æ¡B¹q¤l«H®§¡B¾÷¹q¤@Åé¤Æ¡Bª«Ápºôµ¥±M·~°ª¦~¯Å¥»¬ì¥Í©Î¬ã¨s¥Í´O¤J¦¡¬ÛÃö½Òµ{ªº±Ð§÷¡A¦P®É¥i¨Ñ±q¨Æ´O¤J¦¡¶}µoªº§Þ³N©M¬ã¨s¤H­û°Ñ¦Ò¡C
¥Ø¿ý¡G

²Ä1³¹ARMCortexúQM3´O¤J¦¡¨t²Î
1.1´O¤J¦¡¨t²Î·§­z
1.1.1¤°¤\¬O´O¤J¦¡¨t²Î
1.1.2´O¤J¦¡¨t²Î©M³q¥Î­pºâ¾÷¨t²Î¤ñ¸û
1.1.3´O¤J¦¡¨t²Îªº¯SÂI
1.1.4´O¤J¦¡¨t²ÎªºÀ³¥Î»â°ì
1.1.5´O¤J¦¡¨t²Î­S¨Ò
1.2ARMCortexúQM3³B²z¾¹
1.2.1ARM¤½¥q
1.2.2ARM³B²z¾¹
1.3STM32·L±±¨î¾¹
1.3.1±qCortexúQM3¤º®Ö¨ì°ò¤_CortexúQM3ªºMCU
1.3.2STM32·L±±¨î¾¹²£«~½u
1.3.3STM32·L±±¨î¾¹©R¦W³W«h
1.4´O¤J¦¡¨t²Îªº³n¥ó
1.4.1µL¾Þ§@¨t²Îªº´O¤J¦¡³n¥ó
1.4.2±a¾Þ§@¨t²Îªº´O¤J¦¡³n¥ó
1.4.3¨å«¬´O¤J¦¡¾Þ§@¨t²Î
1.4.4³n¥ó¬[ºc¿ï¾Ü«Øij
¥»³¹¤pµ²
«ä¦Ò»PÂX®i
²Ä2³¹STM32¶}µoªOµw¥ó¨t²Î
2.1¶}µoªOÁ`Åé·§ªp
2.1.1¶}µoªO³]­p­I´º
2.1.2¶}µoªOÁ`Å餶²Ð
2.2¹q·½¼Ò¶ô
2.2.1¹q·½¼Ò¶ô­ì²z¹Ï
2.2.2¹q·½¼Ò¶ô¤u§@­ì²z
2.3®Ö¤ßªO¹q¸ô
2.3.1CPU¼Ò¶ô
2.3.2¦ê¤f³q«H¼Ò¶ô
2.3.3¥~±µ´¹®¶¼Ò¶ô
2.3.4³Æ¥Î¹q·½¼Ò¶ô
2.3.5ADC¼Ò¶ô¹q·½
2.3.6CPUÂoªi¹q¸ô
2.3.7´_¦ì¹q¸ô
2.3.8±Ò°Ê³]¸m¹q¸ô
2.4I/O¼Ò¶ô¹q¸ô
2.4.1LED«ü¥Ü¿O¼Ò¶ô
2.4.2«öÁä¼Ò¶ô


2.4.3¼Æ½XºÞ¼Ò¶ô
2.4.4¸Á»ï¾¹¼Ò¶ô
2.4.5OLEDÅã¥Ü«Ì¹q¸ô
2.5ÂX®i¼Ò¶ô¹q¸ô
2.5.1·Å«×¶Ç·P¾¹
2.5.2¬õ¥~¶Ç·P¾¹
2.5.3ADªö¼Ë¼Ò¶ô
2.5.4EEPROM¦sÀx¾¹
2.5.5I/O¤Þ¸}¥~±µ¼Ò¶ô
¥»³¹¤pµ²
«ä¦Ò»PÂX®i
²Ä3³¹MDK³n¥ó»P¤uµ{¼ÒªO³Ð«Ø
3.1STM32©T¥ó®w»{ª¾
3.1.1STM32©T¥ó®w·§­z
3.1.2STM32©T¥ó®w¤U¸ü
3.1.3STM32©T¥ó®w¥Ø¿ýµ²ºc
3.2¤uµ{¼ÒªO³Ð«Ø
3.2.1KeilMDKúQARM³n¥ó²¤¶
3.2.2¤uµ{¼ÒªOªº³Ð«Ø
3.3³n¥ó¼ÒÀÀ¥é¯u
¥»³¹¤pµ²
«ä¦Ò»PÂX®i
²Ä4³¹³q¥Î¥Øªº¿é¤J¿é¥X¤f
4.1GPIO·§­z¤Î¤Þ¸}©R¦W
4.2GPIO¤º³¡µ²ºc
4.2.1¿é¤JÅX°Ê¾¹
4.2.2¿é¥XÅX°Ê¾¹
4.3GPIO¤u§@¼Ò¦¡
4.3.1¿é¤J¯BªÅ
4.3.2¿é¤J¤W©Ô
4.3.3¿é¤J¤U©Ô
4.3.4¼ÒÀÀ¿é¤J
4.3.5¶}º|¿é¥X
4.3.6¶}º|´_¥Î¿é¥X
4.3.7±À®¾¦¡¿é¥X
4.3.8±À®¾¦¡´_¥Î¿é¥X
4.3.9¤u§@¼Ò¦¡¿ï¾Ü
4.4GPIO¿é¥X³t«×
4.5´_¥Î¥\¯à­«¬M®g
4.6GPIO±±¨î±H¦s¾¹
4.7GPIO±H¦s¾¹°t¸m¹ê¨Ò
4.8±H¦s¾¹ª©LED¿O°{Ã{¤uµ{
4.8.1³Ð«Ø±H¦s¾¹ª©¤uµ{¼ÒªO
4.8.2LED¿O°{Ã{µ{§Ç³]­p
4.8.3°ò¤_±H¦s¾¹¶}µo¤è¦¡¯SÂI
¥»³¹¤pµ²
«ä¦Ò»PÂX®i
²Ä5³¹LED¬y¤ô¿O»PSysTick©w®É¾¹
5.1®w¨ç¼Æ¶}µo¤èªk
5.2GPIO¿é¥X®w¨ç¼Æ
5.2.1¨ç¼ÆRCC_APB2PeriphClockCmd
5.2.2¨ç¼ÆGPIO_Init
5.2.3¨ç¼ÆGPIO_Write
5.2.4¨ç¼ÆGPIO_SetBits
5.2.5¨ç¼ÆGPIO_ResetBits
5.2.6¨ç¼ÆGPIO_WriteBit
5.3LED¬y¤ô¿O±±¨î
5.4SysTick©w®É¾¹
5.4.1SysTick©w®É¾¹·§­z
5.4.2SysTick©w®É¾¹±H¦s¾¹
5.4.3SysTick©w®É¾¹À³¥Î
¥»³¹¤pµ²
«ä¦Ò»PÂX®i
²Ä6³¹«öÁä¿é¤J»P¸Á»ï¾¹
6.1GPIO¿é¤J®w¨ç¼Æ
6.1.1¨ç¼ÆGPIO_ReadInputDataBit
6.1.2¨ç¼ÆGPIO_ReadInputData
6.1.3¨ç¼ÆGPIO_ReadOutputDataBit
6.1.4¨ç¼ÆGPIO_ReadOutputData
6.2¶µ¥Ø¤ÀªR
6.3¶µ¥Ø¹ê¬I
¥»³¹¤pµ²
«ä¦Ò»PÂX®i
²Ä7³¹¼Æ½XºÞ°ÊºAÅã¥Ü
7.1¼Æ½XºÞÅã¥Ü±µ¤f
7.1.1¼Æ½XºÞ¤u§@­ì²z
7.1.2¼Æ½XºÞ½s½X¤è¦¡
7.1.3¼Æ½XºÞÅã¥Ü¤è¦¡
7.2¶µ¥Ø¤ÀªR
7.3¶µ¥Ø¹ê¬I
7.4¶µ¥Ø©Ý®i
¥»³¹¤pµ²
«ä¦Ò»PÂX®i
²Ä8³¹¤¤Â_¨t²Î»P°ò¥»À³¥Î
8.1¤¤Â_ªº°ò¥»·§©À
8.1.1¤¤Â_ªº©w¸q
8.1.2¤¤Â_ªºÀ³¥Î
8.1.3¤¤Â_·½»P¤¤Â_«Ì½ª
8.1.4¤¤Â_³B²z¹Lµ{
8.1.5¤¤Â_Àu¥ý¯Å»P¤¤Â_´O®M
8.2STM32F103¤¤Â_¨t²Î
8.2.1´O®M¦V¶q¤¤Â_±±¨î¾¹NVIC
8.2.2STM32F103¤¤Â_Àu¥ý¯Å
8.2.3STM32F103¤¤Â_¦V¶qªí
8.2.4STM32F103¤¤Â_ªA°È¨ç¼Æ
8.3STM32F103¥~³¡¤¤Â_/¨Æ¥ó±±¨î¾¹EXTI
8.3.1EXTI¤º³¡µ²ºc
8.3.2EXTI¤u§@­ì²z
8.3.3EXTI¥D­n¯S©Ê
8.4STM32¤¤Â_¬ÛÃö®w¨ç¼Æ
8.4.1STM32F10xªºNVIC¬ÛÃö®w¨ç¼Æ
8.4.2STM32F10xªºEXTI¬ÛÃö®w¨ç¼Æ
8.4.3EXTI¤¤Â_½uGPIO¤Þ¸}¬M®g®w¨ç¼Æ
8.5EXTI¶µ¥Ø¹ê¨Ò
8.5.1¶µ¥Ø¤ÀªR
8.5.2¶µ¥Ø¹ê¬I
¥»³¹¤pµ²
«ä¦Ò»PÂX®i
²Ä9³¹©w®É¾¹»P¯ß¨R¼e«×½Õ¨î
9.1STM32F103©w®É¾¹·§­z
9.2°ò¥»©w®É¾¹
9.2.1°ò¥»©w®É¾¹Â²¤¶
9.2.2°ò¥»©w®É¾¹ªº¥D­n¯S©Ê
9.2.3°ò¥»©w®É¾¹ªº¥\¯à
9.2.4°ò¥»©w®É¾¹±H¦s¾¹
9.3³q¥Î©w®É¾¹
9.3.1³q¥Î©w®É¾¹Â²¤¶
9.3.2³q¥Î©w®É¾¹¥D­n¥\¯à
9.3.3³q¥Î©w®É¾¹¥\¯à´y­z
9.3.4³q¥Î©w®É¾¹¤u§@¼Ò¦¡
9.3.5³q¥Î©w®É¾¹±H¦s¾¹
9.4°ª¯Å©w®É¾¹
9.4.1°ª¯Å©w®É¾¹Â²¤¶
9.4.2°ª¯Å©w®É¾¹¯S©Ê
9.4.3°ª¯Å©w®É¾¹µ²ºc
9.5©w®É¾¹¬ÛÃö®w¨ç¼Æ
9.5.1¨ç¼ÆTIM_DeInit
9.5.2¨ç¼ÆTIM_TimeBaseInit
9.5.3¨ç¼ÆTIM_OC1Init
9.5.4¨ç¼ÆTIM_OC2Init
9.5.5¨ç¼ÆTIM_OC3Init
9.5.6¨ç¼ÆTIM_OC4Init
9.5.7¨ç¼ÆTIM_Cmd
9.5.8¨ç¼ÆTIM_ITConfig
9.5.9¨ç¼ÆTIM_OC1PreloadConfig
9.5.10¨ç¼ÆTIM_OC2PreloadConfig
9.5.11¨ç¼ÆTIM_OC3PreloadConfig
9.5.12¨ç¼ÆTIM_OC4PreloadConfig
9.5.13¨ç¼ÆTIM_GetFlagStatus
9.5.14¨ç¼ÆTIM_ClearFlag
9.5.15¨ç¼ÆTIM_GetITStatus
9.5.16¨ç¼ÆTIM_ClearITPendingBit
9.5.17¨ç¼ÆTIM_SetCompare1
9.5.18¨ç¼ÆTIM_SetCompare2
9.5.19¨ç¼ÆTIM_SetCompare3
9.5.20¨ç¼ÆTIM_SetCompare4
9.6¶µ¥Ø¹ê¨Ò
9.6.1©w®É¾¹¶µ¥Ø
9.6.2PWM¶µ¥Ø
¥»³¹¤pµ²
«ä¦Ò»PÂX®i
²Ä10³¹¦ê¦æ³q«H±µ¤fUSART
10.1¼Æ¾Ú³q«H°ò¥»·§©À
10.1.1¦}¦æ³q«H»P¦ê¦æ³q«H
10.1.2²§¨B³q«H»P¦P¨B³q«H
10.1.3¦ê¦æ³q«Hªº¨î¦¡
10.1.4¦ê¦æ³q«Hªº®ÕÅç
10.1.5¦ê¦æ³q«Hªºªi¯S²v
10.2SM32F103ªºUSART¤u§@­ì²z
10.2.1USART¤¶²Ð
10.2.2USART¥D­n¯S©Ê
10.2.3USART¥\¯à·§­z
10.2.4USART³q«H®É§Ç
10.2.5USART¤¤Â_
10.2.6USART¬ÛÃö±H¦s¾¹
10.3USART¬ÛÃö®w¨ç¼Æ
10.3.1¨ç¼ÆUSART_DeInit
10.3.2¨ç¼ÆUSART_Init
10.3.3¨ç¼ÆUSART_Cmd
10.3.4¨ç¼ÆUSART_SendData
10.3.5¨ç¼ÆUSART_ReceiveData
10.3.6¨ç¼ÆUSART_GetFlagStatus
10.3.7¨ç¼ÆUSART_ClearFlag
10.3.8¨ç¼ÆUSART_ITConfig
10.3.9¨ç¼ÆUSART_GetITStatus
10.3.10¨ç¼ÆUSART_ClearITPendingBit
10.3.11¨ç¼ÆUSART_DMACmd
10.4¶µ¥Ø¹ê¨Ò
10.4.1¶µ¥Ø¤ÀªR
10.4.2¶µ¥Ø¹ê¬I
¥»³¹¤pµ²
«ä¦Ò»PÂX®i
²Ä11³¹SPI»POLEDÅã¥Ü«Ì
11.1SPI³q«H­ì²z
11.1.1SPI¤¶²Ð
11.1.2SPI¤¬³s
11.2STM32F103ªºSPI¤u§@­ì²z
11.2.1SPI¥D­n¯S©º
11.2.2SPI¤º³¡µ²ºc
11.2.3®ÉÄÁ«H¸¹ªº¬Û¦ì©M·¥©Ê
11.2.4¼Æ¾Ú´V®æ¦¡
11.2.5°t¸mSPI¬°¥D¼Ò¦¡
11.2.6°t¸mSPI¬°±q¼Ò¦¡
11.3OLEDÅã¥Ü«Ì
11.3.1OLED²¤¶
11.3.2¶}µoªOOLEDÅã¥Ü«Ì
11.3.3OLEDÅã¥Ü«Ì±µ¤f
11.4SPI®w¨ç¼Æ
11.4.1¨ç¼ÆSPI_I2S_DeInit
11.4.2¨ç¼ÆSPI_Init
11.4.3¨ç¼ÆSPI_Cmd
11.4.4¨ç¼ÆSPI_I2S_SendData
11.4.5¨ç¼ÆSPI_I2S_ReceiveData
11.4.6¨ç¼ÆSPI_I2S_ITConfig
11.4.7¨ç¼ÆSPI_I2S_GetITStatus
11.4.8¨ç¼ÆSPI_I2S_ClearFlag
11.5¶µ¥Ø¹ê¨Ò
11.5.1¶µ¥Ø¤ÀªR
11.5.2¶µ¥Ø¹ê¬I
¥»³¹¤pµ²
«ä¦Ò»PÂX®i
²Ä12³¹¼ÒÀÀ¼Æ¦rÂà´«¾¹
12.1ADC·§­z
12.1.1ADC°ò¥»­ì²z
12.1.2ADC©Ê¯à°Ñ¼Æ
12.1.3ADC¥D­nÃþ«¬
12.2STM32F103ªºADC¤u§@­ì²z
12.2.1¥D­n¯S©º
12.2.2¤º³¡µ²ºc
12.2.3³q¹D¤Î¤À²Õ
12.2.4®É§Ç¹Ï
12.2.5¼Æ¾Ú¹ï»ô
12.2.6®Õ·Ç
12.2.7Âà´«®É¶¡
12.2.8Âà´«¼Ò¦¡
12.2.9¥~³¡Ä²µoÂà´«
12.2.10¤¤Â_©MDMA½Ð¨D
12.3ADC¬ÛÃö®w¨ç¼Æ
12.3.1¨ç¼ÆADC_DeInit
12.3.2¨ç¼ÆADC_Init
12.3.3¨ç¼ÆADC_RegularChannelConfig
12.3.4¨ç¼ÆADC_InjectedChannleConfig
12.3.5¨ç¼ÆADC_Cmd
12.3.6¨ç¼ÆADC_ResetCalibration
12.3.7¨ç¼ÆADC_GetResetCalibrationStatus
12.3.8¨ç¼ÆADC_StartCalibration
12.3.9¨ç¼ÆADC_GetCalibrationStatus
12.3.10¨ç¼ÆADC_SoftwareStartConvCmd
12.3.11¨ç¼ÆADC_GetConversionValue
12.3.12¨ç¼ÆADC_GetFlagStatus
12.3.13¨ç¼ÆADC_DMACmd
12.4¶µ¥Ø¹ê¨Ò
12.4.1¶µ¥Ø¤ÀªR
12.4.2¶µ¥Ø¹ê¬I
¥»³¹¤pµ²
«ä¦Ò»PÂX®i
²Ä13³¹ª½±µ¦sÀx¾¹³X°Ý
13.1DMAªº°ò¥»·§©À
13.1.1DMA¥Ñ¨Ó
13.1.2DMA©w¸q
13.1.3DMA¶Ç¿é¹Lµ{
13.1.4DMAÀuÂI
13.2STM32F103ªºDMA¤u§@­ì²z
13.2.1STM32F103ªºDMA¥D­n¯S©Ê
13.2.2STM32F103ªºDMA¤º³¡µ²ºc
13.2.3STM32F103ªºDMA³q¹D
13.2.4STM32F103ªºDMAÀu¥ý¯Å
13.2.5STM32F103ªºDMA¶Ç¿é¼Ò¦¡
13.2.6STM32F103ªºDMA¤¤Â_
13.3DMA¬ÛÃö®w¨ç¼Æ
13.3.1¨ç¼ÆDMA_DeInit
13.3.2¨ç¼ÆDMA_Init
13.3.3¨ç¼ÆDMA_GetCurrDataCounte
13.3.4¨ç¼ÆDMA_Cmd
13.3.5¨ç¼ÆDMA_GetFlagStatus
13.3.6¨ç¼ÆDMA_ClearFlag
13.3.7¨ç¼ÆDMA_ITConfig
13.3.8¨ç¼ÆDMA_GetITStatus
13.4¶µ¥Ø¹ê¨Ò
13.4.1¶µ¥Ø¤ÀªR
13.4.2¶µ¥Ø¹ê¬I
¥»³¹¤pµ²
«ä¦Ò»PÂX®i
²Ä14³¹I2C±µ¤f»PEEPROM¦sÀx¾¹
14.1I2C³q«H­ì²z
14.1.1I2C¦ê¦æÁ`½u·§­z
14.1.2I2CÁ`½uªº¼Æ¾Ú¶Ç°e
14.2STM32F103ªºI2C±µ¤f
14.2.1STM32F103ªºI2C¥D­n¯S©Ê
14.2.2STM32F103ªºI2C¤º³¡µ²ºc
14.2.3STM32F103ªº¼Ò¦¡¿ï¾Ü
14.3STM32F103ªºI2C¬ÛÃö®w¨ç¼Æ
14.3.1¨ç¼ÆI2C_DeInit
14.3.2¨ç¼ÆI2C_Init
14.3.3¨ç¼ÆI2C_Cmd
14.3.4¨ç¼ÆI2C_GenerateSTART
14.3.5¨ç¼ÆI2C_GenerateSTOP
14.3.6¨ç¼ÆI2C_Send7bitAddress
14.3.7¨ç¼ÆI2C_SendData
14.3.8¨ç¼ÆI2C_ReceiveData
14.4¶µ¥Ø¹ê¨Ò
14.4.1¼ÒÀÀI2C®É§Ç­n¨D
14.4.2¼ÒÀÀI2C¨ç¼Æ
14.4.3EEPROMªä¤ù24C02
14.4.4¼ÒÀÀI2C³X°Ý24C02¶µ¥Ø¤ÀªR
14.4.5¼ÒÀÀI2C³X°Ý24C02¶µ¥Ø¹ê¬I
¥»³¹¤pµ²
«ä¦Ò»PÂX®i

²Ä15³¹RTC®ÉÄÁ»PBKP±H¦s¾¹
15.1RTC®ÉÄÁ
15.1.1RTC²¤¶
15.1.2RTC¥D­n¯S©Ê
15.1.3RTC¤º³¡µ²ºc
15.1.4RTC´_¦ì¹Lµ{
15.2³Æ¥÷±H¦s¾¹(BKP)
15.2.1BKP²¤¶
15.2.2BKP¯S©Ê
15.2.3BKP«I¤JÀË´ú
15.3RTC®ÉÄÁªº¾Þ§@
15.3.1RTCªºªì©l¤Æ
15.3.2RTC®É¶¡¼g¤Jªì©l¤Æ
15.4RTC»PBKP¬ÛÃö®w¨ç¼Æ
15.4.1¨ç¼ÆPWR_BackupAccessCmd
15.4.2¨ç¼ÆBKP_DeInit()
15.4.3¨ç¼ÆRCC_LSEConfig
15.4.4¨ç¼ÆRCC_GetFlagStatus
15.4.5¨ç¼ÆRCC_RTCCLKConfig
15.4.6¨ç¼ÆRCC_RTCCLKCmd
15.4.7¨ç¼ÆRTC_WaitForSynchro
15.4.8¨ç¼ÆRTC_WaitForLastTask
15.4.9¨ç¼ÆRTC_ITConfig
15.4.10¨ç¼ÆRTC_SetPrescaler
15.4.11¨ç¼ÆRTC_SetCounter
15.4.12¨ç¼ÆRTC_GetCounter()
15.4.13¨ç¼ÆBKP_ReadBackupRegister
15.4.14¨ç¼ÆBKP_WriteBackupRegister
15.4.15¨ç¼ÆRCC_ClearFlag
15.5¶µ¥Ø¹ê¨Ò
15.5.1¶µ¥Ø¤ÀªR
15.5.2¶µ¥Ø¹ê¬I
15.5.3¶µ¥Ø½Õ¸Õ
¥»³¹¤pµ²
«ä¦Ò»PÂX®i
ªþ¿ýAASCII½Xªí
ªþ¿ýBSTM32F103·L±±¾¹¤p®e¶q²£«~¨t¦C¤Þ¸}©w¸qªí
ªþ¿ýCSTM32F103·L±±¾¹¤¤µ¥®e¶q²£«~¨t¦C¤Þ¸}©w¸qªí
ªþ¿ýDSTM32F103·L±±¾¹¤j®e¶q²£«~¨t¦C¤Þ¸}©w¸qªí
°Ñ¦Ò¤åÄm
§Ç¡G