{"id":20645,"date":"2023-02-06T08:01:35","date_gmt":"2023-02-06T08:01:35","guid":{"rendered":"https:\/\/www.booksofall.com\/tw\/?post_type=product&#038;p=20645"},"modified":"2023-02-06T08:01:35","modified_gmt":"2023-02-06T08:01:35","slug":"discovering-the-stm32-microcontroller","status":"publish","type":"product","link":"https:\/\/www.booksofall.com\/tw\/discovering-the-stm32-microcontroller\/","title":{"rendered":"Discovering the STM32 Microcontroller"},"content":{"rendered":"<p>The last few years has seen a renaissance of hobbyists and inventors building custom electronic devices. These systems utilize off-the-shelf components and modules whose development has been fueled by a technological explosion of integrated sensors and actuators that incorporate much of the analog electronics which previously presented a barrier to system development by non-engineers. <a href=\"https:\/\/www.techtarget.com\/iotagenda\/definition\/microcontroller\">Micro-controllers<\/a> with custom firmware provide the glue to bind sophisticated off-the-shelf modules into complex custom systems. This book provides a series of tutorials aimed at teaching the embedded programming and hardware interfacing skills needed to use the STM32 family of micro-controllers in developing electronic devices. The book is aimed at readers with \u2019C\u2019 programming experience, but no prior experience with embedded systems.<\/p>\n<p>The STM32 family of micro-controllers, based upon the <a href=\"https:\/\/www.st.com\/content\/st_com\/en\/arm-32-bit-microcontrollers\/arm-cortex-m3.html#:~:text=Arm%C2%AE%20Cortex%C2%AE%2DM3,off%20between%20performance%20and%20cost.\">ARM CortexM3 core<\/a>, provides a foundation for building a vast range of embedded systems from simple battery powered dongles to complex real-time systems such as helicopter autopilots. This component family includes dozens of distinct configurations providing wide-ranging choices in memory sizes, available peripherals, performance, and power. The components are sufficiently inexpensive in small quantities \u2013 a few dollars for the least complex devices \u2013 to justify their use for most low-volume applications. Indeed, the low-end \u201cValue Line\u201d components are comparable in cost to the <a href=\"https:\/\/en.wikipedia.org\/wiki\/ATmega328\">ATmega<\/a> parts which are used for the popular Arduino development boards yet offer significantly greater performance and more powerful peripherals. Furthermore, the peripherals used are shared across many family members (for example, the USART modules are common to all STM32 F1 components) and are supported by a single firmware library. Thus, learning how to program one member of the STM32 F1 family enables programming them all.<\/p>\n<p>Unfortunately, power and flexibility are achieved at a cost \u2013 software development for the STM32 family can be extremely challenging for the uninitiated with a vast array of documentation and software libraries to wade through. For example, RM0041, the reference manual for large value-line STM32 F1 devices, is 675 pages and does not even cover the <a href=\"https:\/\/www.st.com\/content\/st_com\/en\/arm-32-bit-microcontrollers\/arm-cortex-m3.html#:~:text=The%2032%2Dbit%20Arm%C2%AE,off%20between%20performance%20and%20cost.\">Cortex-M3 processor core<\/a> ! Fortunately, it is not necessary to read this book to get started with developing software for the STM32, although it is an important reference. In addition, a beginner is faced with many tool-chain choices. 2 In contrast, the Arduino platform offers a simple application library and a single tool-chain which is accessible to relatively inexperienced programmers. For many simple systems this offers a quick path to prototype. However, simplicity has its own costs \u2013 the Arduino software platform isn\u2019t well suited to managing concurrent activities in a complex real-time system and, for software interacting with external devices, is dependent upon libraries developed outside the Arduino programming model using tools and techniques similar to those required for the STM32. Furthermore, the Arduino platform doesn\u2019t provide debugging capability which severely limits the development of more complex systems. Again, debugging requires breaking outside the confines of the Arduino platform. Finally, the Arduino environment does not support a real-time operating system (RTOS), which is essential when building more complex embedded systems.<\/p>\n<p>For readers with prior <a href=\"https:\/\/en.wikipedia.org\/wiki\/C_(programming_language)\">\u2019C\u2019 programming<\/a> experience, the STM32 family is a far better platform than the Arduino upon which to build micro-controller powered systems if the barriers to entry can be reduced. The objective of this book is to help embedded systems beginners get jump started with programming the STM32 family. I do assume basic competence with C programming in a Linux environment \u2013 readers with no programming experience are better served by starting with a platform like Arduino. I assume familiarity with a text editor; and experience writing, compiling, and debugging C programs. I do not assume significant familiarity with hardware \u2013 the small amount of \u201cwiring\u201d required in this book can easily be accomplished by a rank beginner.<\/p>\n<p id=\"SNqZgmY\">\n","protected":false},"excerpt":{"rendered":"<p><iframe frameborder=\"0\" allowtransparency=\"true\" allowFullscreen=\"true\" style=\"width: 100%; height: 700px; border: none;\" src=\"https:\/\/online.visual-paradigm.com\/share\/book\/book-2--18yfzt0qam?enforceShowPromotionBar=true&#038;p=1\"><\/iframe><\/p>\n","protected":false},"featured_media":20649,"template":"","meta":{"_yoast_wpseo_title":"","_yoast_wpseo_metadesc":""},"product_brand":[],"product_cat":[310,309],"product_tag":[],"class_list":{"0":"post-20645","1":"product","2":"type-product","3":"status-publish","4":"has-post-thumbnail","6":"product_cat-embedded-systems-2","7":"product_cat-embedded-systems","9":"first","10":"instock","11":"shipping-taxable","12":"product-type-simple"},"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.1.1 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Discovering the STM32 Microcontroller - BooksOfAll Traditional Chinese<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.booksofall.com\/tw\/discovering-the-stm32-microcontroller\/\" \/>\n<meta property=\"og:locale\" content=\"zh_TW\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Discovering the STM32 Microcontroller - BooksOfAll Traditional Chinese\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.booksofall.com\/tw\/discovering-the-stm32-microcontroller\/\" \/>\n<meta property=\"og:site_name\" content=\"BooksOfAll Traditional Chinese\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.booksofall.com\/tw\/wp-content\/uploads\/sites\/3\/2023\/02\/img_63e0b311887c9.png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/www.booksofall.com\/tw\/wp-content\/uploads\/sites\/3\/2023\/02\/img_63e0b311887c9.png\" \/>\n<meta name=\"twitter:label1\" content=\"\u9810\u4f30\u95b1\u8b80\u6642\u9593\" \/>\n\t<meta name=\"twitter:data1\" content=\"3 \u5206\u9418\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.booksofall.com\/tw\/discovering-the-stm32-microcontroller\/\",\"url\":\"https:\/\/www.booksofall.com\/tw\/discovering-the-stm32-microcontroller\/\",\"name\":\"Discovering the STM32 Microcontroller - BooksOfAll Traditional Chinese\",\"isPartOf\":{\"@id\":\"https:\/\/www.booksofall.com\/tw\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.booksofall.com\/tw\/discovering-the-stm32-microcontroller\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.booksofall.com\/tw\/discovering-the-stm32-microcontroller\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.booksofall.com\/tw\/wp-content\/uploads\/sites\/3\/2023\/02\/img_63e0b311887c9.png\",\"datePublished\":\"2023-02-06T08:01:35+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.booksofall.com\/tw\/discovering-the-stm32-microcontroller\/#breadcrumb\"},\"inLanguage\":\"zh-TW\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.booksofall.com\/tw\/discovering-the-stm32-microcontroller\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"zh-TW\",\"@id\":\"https:\/\/www.booksofall.com\/tw\/discovering-the-stm32-microcontroller\/#primaryimage\",\"url\":\"https:\/\/www.booksofall.com\/tw\/wp-content\/uploads\/sites\/3\/2023\/02\/img_63e0b311887c9.png\",\"contentUrl\":\"https:\/\/www.booksofall.com\/tw\/wp-content\/uploads\/sites\/3\/2023\/02\/img_63e0b311887c9.png\",\"width\":\"506\",\"height\":\"734\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.booksofall.com\/tw\/discovering-the-stm32-microcontroller\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.booksofall.com\/tw\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Categories\",\"item\":\"https:\/\/www.booksofall.com\/tw\/categories\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Discovering the STM32 Microcontroller\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.booksofall.com\/tw\/#website\",\"url\":\"https:\/\/www.booksofall.com\/tw\/\",\"name\":\"BooksOfAll Traditional Chinese\",\"description\":\"Biggest IT eBooks library and learning resources - Free eBooks for programming, computing, artificial intelligence and more.\",\"publisher\":{\"@id\":\"https:\/\/www.booksofall.com\/tw\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.booksofall.com\/tw\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"zh-TW\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.booksofall.com\/tw\/#organization\",\"name\":\"BooksOfAll Traditional Chinese\",\"url\":\"https:\/\/www.booksofall.com\/tw\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"zh-TW\",\"@id\":\"https:\/\/www.booksofall.com\/tw\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.booksofall.com\/tw\/wp-content\/uploads\/sites\/3\/2022\/06\/booksofall-logo-2.png\",\"contentUrl\":\"https:\/\/www.booksofall.com\/tw\/wp-content\/uploads\/sites\/3\/2022\/06\/booksofall-logo-2.png\",\"width\":166,\"height\":30,\"caption\":\"BooksOfAll Traditional Chinese\"},\"image\":{\"@id\":\"https:\/\/www.booksofall.com\/tw\/#\/schema\/logo\/image\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Discovering the STM32 Microcontroller - BooksOfAll Traditional Chinese","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.booksofall.com\/tw\/discovering-the-stm32-microcontroller\/","og_locale":"zh_TW","og_type":"article","og_title":"Discovering the STM32 Microcontroller - BooksOfAll Traditional Chinese","og_url":"https:\/\/www.booksofall.com\/tw\/discovering-the-stm32-microcontroller\/","og_site_name":"BooksOfAll Traditional Chinese","og_image":[{"url":"https:\/\/www.booksofall.com\/tw\/wp-content\/uploads\/sites\/3\/2023\/02\/img_63e0b311887c9.png","type":"","width":"","height":""}],"twitter_card":"summary_large_image","twitter_image":"https:\/\/www.booksofall.com\/tw\/wp-content\/uploads\/sites\/3\/2023\/02\/img_63e0b311887c9.png","twitter_misc":{"\u9810\u4f30\u95b1\u8b80\u6642\u9593":"3 \u5206\u9418"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.booksofall.com\/tw\/discovering-the-stm32-microcontroller\/","url":"https:\/\/www.booksofall.com\/tw\/discovering-the-stm32-microcontroller\/","name":"Discovering the STM32 Microcontroller - BooksOfAll Traditional Chinese","isPartOf":{"@id":"https:\/\/www.booksofall.com\/tw\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.booksofall.com\/tw\/discovering-the-stm32-microcontroller\/#primaryimage"},"image":{"@id":"https:\/\/www.booksofall.com\/tw\/discovering-the-stm32-microcontroller\/#primaryimage"},"thumbnailUrl":"https:\/\/www.booksofall.com\/tw\/wp-content\/uploads\/sites\/3\/2023\/02\/img_63e0b311887c9.png","datePublished":"2023-02-06T08:01:35+00:00","breadcrumb":{"@id":"https:\/\/www.booksofall.com\/tw\/discovering-the-stm32-microcontroller\/#breadcrumb"},"inLanguage":"zh-TW","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.booksofall.com\/tw\/discovering-the-stm32-microcontroller\/"]}]},{"@type":"ImageObject","inLanguage":"zh-TW","@id":"https:\/\/www.booksofall.com\/tw\/discovering-the-stm32-microcontroller\/#primaryimage","url":"https:\/\/www.booksofall.com\/tw\/wp-content\/uploads\/sites\/3\/2023\/02\/img_63e0b311887c9.png","contentUrl":"https:\/\/www.booksofall.com\/tw\/wp-content\/uploads\/sites\/3\/2023\/02\/img_63e0b311887c9.png","width":"506","height":"734"},{"@type":"BreadcrumbList","@id":"https:\/\/www.booksofall.com\/tw\/discovering-the-stm32-microcontroller\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.booksofall.com\/tw\/"},{"@type":"ListItem","position":2,"name":"Categories","item":"https:\/\/www.booksofall.com\/tw\/categories\/"},{"@type":"ListItem","position":3,"name":"Discovering the STM32 Microcontroller"}]},{"@type":"WebSite","@id":"https:\/\/www.booksofall.com\/tw\/#website","url":"https:\/\/www.booksofall.com\/tw\/","name":"BooksOfAll Traditional Chinese","description":"Biggest IT eBooks library and learning resources - Free eBooks for programming, computing, artificial intelligence and more.","publisher":{"@id":"https:\/\/www.booksofall.com\/tw\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.booksofall.com\/tw\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"zh-TW"},{"@type":"Organization","@id":"https:\/\/www.booksofall.com\/tw\/#organization","name":"BooksOfAll Traditional Chinese","url":"https:\/\/www.booksofall.com\/tw\/","logo":{"@type":"ImageObject","inLanguage":"zh-TW","@id":"https:\/\/www.booksofall.com\/tw\/#\/schema\/logo\/image\/","url":"https:\/\/www.booksofall.com\/tw\/wp-content\/uploads\/sites\/3\/2022\/06\/booksofall-logo-2.png","contentUrl":"https:\/\/www.booksofall.com\/tw\/wp-content\/uploads\/sites\/3\/2022\/06\/booksofall-logo-2.png","width":166,"height":30,"caption":"BooksOfAll Traditional Chinese"},"image":{"@id":"https:\/\/www.booksofall.com\/tw\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/www.booksofall.com\/tw\/wp-json\/wp\/v2\/product\/20645","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.booksofall.com\/tw\/wp-json\/wp\/v2\/product"}],"about":[{"href":"https:\/\/www.booksofall.com\/tw\/wp-json\/wp\/v2\/types\/product"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.booksofall.com\/tw\/wp-json\/wp\/v2\/media\/20649"}],"wp:attachment":[{"href":"https:\/\/www.booksofall.com\/tw\/wp-json\/wp\/v2\/media?parent=20645"}],"wp:term":[{"taxonomy":"product_brand","embeddable":true,"href":"https:\/\/www.booksofall.com\/tw\/wp-json\/wp\/v2\/product_brand?post=20645"},{"taxonomy":"product_cat","embeddable":true,"href":"https:\/\/www.booksofall.com\/tw\/wp-json\/wp\/v2\/product_cat?post=20645"},{"taxonomy":"product_tag","embeddable":true,"href":"https:\/\/www.booksofall.com\/tw\/wp-json\/wp\/v2\/product_tag?post=20645"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}