{"id":2816,"date":"2019-07-12T10:42:01","date_gmt":"2019-07-12T10:42:01","guid":{"rendered":"http:\/\/fastbitlab.com\/?p=2816"},"modified":"2023-04-14T16:38:16","modified_gmt":"2023-04-14T11:08:16","slug":"spi-bus-configuration-discussion-full-duplex-half-duplex-simplex","status":"publish","type":"post","link":"https:\/\/fastbitlab.com\/blog\/spi-bus-configuration-discussion-full-duplex-half-duplex-simplex\/","title":{"rendered":"STM32 SPI Lecture 6 : SPI bus configuration discussion: Full duplex, Half-duplex, and Simplex"},"content":{"rendered":"<div class=\"boldgrid-section color4-background-color color-4-text-contrast bg-background-color\">\n<div class=\"container\">\n<div class=\"row\" style=\"padding-top: 50px; padding-bottom: 50px;\">\n<div class=\"col-md-1 col-sm-12 col-xs-12 col-lg-1\"><\/div>\n<div class=\"col-md-10 col-sm-12 col-xs-12 col-lg-10\">\n<h2 class=\"\">&nbsp;<\/h2>\n<h2 class=\"\" style=\"text-align: center; border-width: 0px; font-size: 30px;\"><span style=\"color: #000080;\"><strong>SPI bus configuration discussion: Full duplex, Half-duplex, and Simplex<\/strong><\/span><\/h2>\n<div class=\"row bg-editor-hr-wrap\">\n<div class=\"col-md-12 col-xs-12 col-sm-12 col-lg-12\">\n<hr>\n<\/div>\n<\/div>\n<p class=\"\" style=\"border-width: 0px; font-family: 'Roboto Slab'; font-weight: 400; font-size: 17px; line-height: 30px;\" data-font-family=\"Roboto Slab\" data-font-weight=\"400\" data-font-style=\"\"><span style=\"font-weight: 400; color: #000000;\">In this article, let\u2019s explore customizing <span style=\"color: #0000ff;\"><a style=\"color: #0000ff;\" href=\"http:\/\/fastbitlab.com\/introduction-spi-bus-2\/\" target=\"_blank\" rel=\"noopener\">SPI bus<\/a><\/span> in various bus configurations. The SPI allows the microcontroller to communicate using different settings, depending on the device targeted and application requirements.<\/span><\/p>\n<p class=\"\">&nbsp;<\/p>\n<p class=\"\" style=\"font-size: 25px; border-width: 0px; font-family: 'Roboto Slab'; font-weight: 400; line-height: 35px;\" data-font-family=\"Roboto Slab\" data-font-weight=\"400\" data-font-style=\"\">&nbsp;<span style=\"text-decoration: underline; color: #000080;\"><strong>SPI bus configuration: Full duplex<\/strong><\/span><\/p>\n<figure id=\"attachment_2802\" aria-describedby=\"caption-attachment-2802\" style=\"width: 1305px\" class=\"wp-caption aligncenter\"><img fetchpriority=\"high\" decoding=\"async\" class=\"wp-image-2802 size-full\" style=\"width: 639px;\" src=\"http:\/\/fastbitlab.com\/wp-content\/uploads\/2019\/07\/Screenshot-167_LI.jpg\" alt=\"SPI bus configuration: Full duplex.\" width=\"1305\" height=\"448\" srcset=\"https:\/\/fastbitlab.com\/blog\/wp-content\/uploads\/2019\/07\/Screenshot-167_LI.jpg 1305w, https:\/\/fastbitlab.com\/blog\/wp-content\/uploads\/2019\/07\/Screenshot-167_LI-300x103.jpg 300w, https:\/\/fastbitlab.com\/blog\/wp-content\/uploads\/2019\/07\/Screenshot-167_LI-768x264.jpg 768w, https:\/\/fastbitlab.com\/blog\/wp-content\/uploads\/2019\/07\/Screenshot-167_LI-1024x352.jpg 1024w, https:\/\/fastbitlab.com\/blog\/wp-content\/uploads\/2019\/07\/Screenshot-167_LI-600x206.jpg 600w, https:\/\/fastbitlab.com\/blog\/wp-content\/uploads\/2019\/07\/Screenshot-167_LI-120x41.jpg 120w, https:\/\/fastbitlab.com\/blog\/wp-content\/uploads\/2019\/07\/Screenshot-167_LI-500x172.jpg 500w, https:\/\/fastbitlab.com\/blog\/wp-content\/uploads\/2019\/07\/Screenshot-167_LI-200x69.jpg 200w, https:\/\/fastbitlab.com\/blog\/wp-content\/uploads\/2019\/07\/Screenshot-167_LI-400x137.jpg 400w, https:\/\/fastbitlab.com\/blog\/wp-content\/uploads\/2019\/07\/Screenshot-167_LI-800x275.jpg 800w, https:\/\/fastbitlab.com\/blog\/wp-content\/uploads\/2019\/07\/Screenshot-167_LI-1200x412.jpg 1200w\" sizes=\"(max-width: 1305px) 100vw, 1305px\" \/><figcaption id=\"caption-attachment-2802\" class=\"wp-caption-text\">Figure 1.SPI bus configuration: Full duplex.<\/figcaption><\/figure>\n<p class=\"\" style=\"border-width: 0px; font-family: 'Roboto Slab'; font-weight: 400; font-size: 17px; line-height: 30px;\" data-font-family=\"Roboto Slab\" data-font-weight=\"400\" data-font-style=\"\"><span style=\"font-weight: 400; color: #000000;\">From Figure 1. Full duplex data communication occurs during each clock cycle. The master shift register transmits the data to the slave on the MOSI line, and the slave receives it. At the same time, the slave shift register sends the data to the master on the MISO line, and the master gets it. Transmission may continue for any number of clock cycles. <\/span><span style=\"font-weight: 400; color: #000000;\">When complete, master idles the clock and releases the SS line. <\/span><\/p>\n<p class=\"\" style=\"border-width: 0px; font-family: 'Roboto Slab'; font-weight: 400; font-size: 17px; line-height: 30px;\" data-font-family=\"Roboto Slab\" data-font-weight=\"400\" data-font-style=\"\"><span style=\"font-weight: 400; color: #000000;\">So, in full-duplex communication shift registers of both master and slave are linked using two unidirectional lines between MOSI and MISO pins. By default, SPI configures for full-duplex communication.<\/span><\/p>\n<p class=\"\">&nbsp;<\/p>\n<p class=\"\" style=\"font-size: 25px; border-width: 0px; font-family: 'Roboto Slab'; font-weight: 400; line-height: 35px;\" data-font-family=\"Roboto Slab\" data-font-weight=\"400\" data-font-style=\"\"><span style=\"text-decoration: underline;\"><strong><span style=\"color: #000080; text-decoration: underline;\">&nbsp;SPI bus configuration: Half-duplex<\/span><\/strong><\/span><\/p>\n<figure id=\"attachment_2819\" aria-describedby=\"caption-attachment-2819\" style=\"width: 1082px\" class=\"wp-caption aligncenter\"><img decoding=\"async\" class=\"wp-image-2819 size-full\" src=\"http:\/\/fastbitlab.com\/wp-content\/uploads\/2019\/07\/Screenshot-169.png\" alt=\"SPI bus configuration: Half-duplex\" width=\"1082\" height=\"376\" srcset=\"https:\/\/fastbitlab.com\/blog\/wp-content\/uploads\/2019\/07\/Screenshot-169.png 1082w, https:\/\/fastbitlab.com\/blog\/wp-content\/uploads\/2019\/07\/Screenshot-169-300x104.png 300w, https:\/\/fastbitlab.com\/blog\/wp-content\/uploads\/2019\/07\/Screenshot-169-768x267.png 768w, https:\/\/fastbitlab.com\/blog\/wp-content\/uploads\/2019\/07\/Screenshot-169-1024x356.png 1024w, https:\/\/fastbitlab.com\/blog\/wp-content\/uploads\/2019\/07\/Screenshot-169-600x209.png 600w, https:\/\/fastbitlab.com\/blog\/wp-content\/uploads\/2019\/07\/Screenshot-169-120x42.png 120w, https:\/\/fastbitlab.com\/blog\/wp-content\/uploads\/2019\/07\/Screenshot-169-500x174.png 500w, https:\/\/fastbitlab.com\/blog\/wp-content\/uploads\/2019\/07\/Screenshot-169-200x70.png 200w, https:\/\/fastbitlab.com\/blog\/wp-content\/uploads\/2019\/07\/Screenshot-169-400x139.png 400w, https:\/\/fastbitlab.com\/blog\/wp-content\/uploads\/2019\/07\/Screenshot-169-800x278.png 800w\" sizes=\"(max-width: 1082px) 100vw, 1082px\" \/><figcaption id=\"caption-attachment-2819\" class=\"wp-caption-text\">Figure 2.SPI bus configuration: Half-duplex.<\/figcaption><\/figure>\n<p class=\"\" style=\"border-width: 0px; font-family: 'Roboto Slab'; font-weight: 400; font-size: 17px; line-height: 30px;\" data-font-family=\"Roboto Slab\" data-font-weight=\"400\" data-font-style=\"\"><span style=\"font-weight: 400; color: #000000;\">From Figure 2. The SPI can communicate in half-duplex mode by setting the BIDIMODE bit in the SPIx_CR1 register. <\/span><\/p>\n<p class=\"\" style=\"border-width: 0px; font-family: 'Roboto Slab'; font-weight: 400; font-size: 17px; line-height: 30px;\" data-font-family=\"Roboto Slab\" data-font-weight=\"400\" data-font-style=\"\"><span style=\"font-weight: 400; color: #000000;\">In half-duplex data communication, one single cross-connection line is used to link the shift registers. <\/span><\/p>\n<p class=\"\" style=\"border-width: 0px; font-family: 'Roboto Slab'; font-weight: 400; font-size: 17px; line-height: 30px;\" data-font-family=\"Roboto Slab\" data-font-weight=\"400\" data-font-style=\"\"><span style=\"font-weight: 400; color: #000000;\">In this data communication, there is only one data line. The MOSI of the master connects to the MISO of the slave. And there must be one resistor in between a typical value may be 1kiloohm. <\/span><span style=\"font-weight: 400; color: #000000;\">So, the transfer happens in the direction selected reciprocally by both the master and the slave. That means, the slave transmits data on the MISO line, and the master receives it. The MOSI line of the slave remains inactive. Or the master sends the data on the MOSI line, and the slave gets it. The MISO line of the master remains inactive.<\/span><\/p>\n<p class=\"\">&nbsp;<\/p>\n<p class=\"\" style=\"font-size: 25px; border-width: 0px; font-family: 'Roboto Slab'; font-weight: 400; line-height: 35px;\" data-font-family=\"Roboto Slab\" data-font-weight=\"400\" data-font-style=\"\">&nbsp;<span style=\"text-decoration: underline;\"><strong><span style=\"color: #000080; text-decoration: underline;\">SPI bus configuration: Simplex<\/span><\/strong><\/span><\/p>\n<figure id=\"attachment_2820\" aria-describedby=\"caption-attachment-2820\" style=\"width: 1185px\" class=\"wp-caption aligncenter\"><img decoding=\"async\" class=\"wp-image-2820 size-full\" src=\"http:\/\/fastbitlab.com\/wp-content\/uploads\/2019\/07\/Screenshot-171.png\" alt=\"SPI bus configuration : Simplex\" width=\"1185\" height=\"385\" srcset=\"https:\/\/fastbitlab.com\/blog\/wp-content\/uploads\/2019\/07\/Screenshot-171.png 1185w, https:\/\/fastbitlab.com\/blog\/wp-content\/uploads\/2019\/07\/Screenshot-171-300x97.png 300w, https:\/\/fastbitlab.com\/blog\/wp-content\/uploads\/2019\/07\/Screenshot-171-768x250.png 768w, https:\/\/fastbitlab.com\/blog\/wp-content\/uploads\/2019\/07\/Screenshot-171-1024x333.png 1024w, https:\/\/fastbitlab.com\/blog\/wp-content\/uploads\/2019\/07\/Screenshot-171-600x195.png 600w, https:\/\/fastbitlab.com\/blog\/wp-content\/uploads\/2019\/07\/Screenshot-171-120x39.png 120w, https:\/\/fastbitlab.com\/blog\/wp-content\/uploads\/2019\/07\/Screenshot-171-500x162.png 500w, https:\/\/fastbitlab.com\/blog\/wp-content\/uploads\/2019\/07\/Screenshot-171-200x65.png 200w, https:\/\/fastbitlab.com\/blog\/wp-content\/uploads\/2019\/07\/Screenshot-171-400x130.png 400w, https:\/\/fastbitlab.com\/blog\/wp-content\/uploads\/2019\/07\/Screenshot-171-800x260.png 800w\" sizes=\"(max-width: 1185px) 100vw, 1185px\" \/><figcaption id=\"caption-attachment-2820\" class=\"wp-caption-text\">Figure 3.SPI bus configuration : Simplex<\/figcaption><\/figure>\n<p class=\"\" style=\"border-width: 0px; font-family: 'Roboto Slab'; font-weight: 400; font-size: 17px; line-height: 30px;\" data-font-family=\"Roboto Slab\" data-font-weight=\"400\" data-font-style=\"\"><span style=\"font-weight: 400; color: #000000;\">The SPI can communicate in simplex mode by setting the SPI in transmit-only or receive-only using the RX ONLY bit in the SPIx_CR2 register. Simplex, as its name indicates the communication is in simple mode.<\/span><\/p>\n<p class=\"\" style=\"border-width: 0px; font-family: 'Roboto Slab'; font-weight: 400; font-size: 17px; line-height: 30px;\" data-font-family=\"Roboto Slab\" data-font-weight=\"400\" data-font-style=\"\"><span style=\"font-weight: 400; color: #000000;\"> There are two types of communication in simplex mode, one is transmitting only, and the other one is receiving only.<\/span><\/p>\n<p class=\"\" style=\"border-width: 0px; font-family: 'Roboto Slab'; font-weight: 400; font-size: 17px; line-height: 30px;\" data-font-family=\"Roboto Slab\" data-font-weight=\"400\" data-font-style=\"\"><span style=\"font-weight: 400; color: #000000;\">From Figure 3. The master is in transmit mode, and the slave is in receive mode. The MOSI of the master connects to the MOSI of the slave. And both the MISO lines are disconnected.&nbsp;<\/span><\/p>\n<p class=\"\" style=\"border-width: 0px; font-family: 'Roboto Slab'; font-weight: 400; font-size: 17px; line-height: 30px;\" data-font-family=\"Roboto Slab\" data-font-weight=\"400\" data-font-style=\"\"><span style=\"font-weight: 400; color: #000000;\">In all of the above communications, the <span style=\"color: #0000ff;\"><a style=\"color: #0000ff;\" href=\"http:\/\/fastbitlab.com\/nss-setting-stm32-master-slave-mode\/\" target=\"_blank\" rel=\"noopener\">NSS pin<\/a><\/span> is optional because only one slave considered.<\/span><\/p>\n<p class=\"\">&nbsp;<\/p>\n<p class=\"\" style=\"border-width: 0px; font-family: 'Roboto Slab'; font-weight: 400; font-size: 20px; line-height: 25px;\" data-font-family=\"Roboto Slab\" data-font-weight=\"400\" data-font-style=\"\"><span style=\"color: #000080;\"><b>FastBit Embedded Brain Academy Courses<\/b><\/span><\/p>\n<p class=\"\" style=\"border-width: 0px; font-family: Roboto; font-weight: 400; font-size: 17px;\" data-font-family=\"Roboto\" data-font-weight=\"400\" data-font-style=\"\">Click here:&nbsp;<span style=\"color: #0000ff;\"><a style=\"color: #0000ff;\" href=\"http:\/\/fastbitlab.com\/course1\" target=\"_blank\" rel=\"noopener\">https:\/\/fastbitlab.com\/course1<\/a><\/span><\/p>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>&nbsp; SPI bus configuration discussion: Full duplex, Half-duplex, and Simplex In this article, let\u2019s explore customizing SPI bus in various bus configurations. The SPI allows the microcontroller to communicate using different settings, depending on the device targeted and application requirements. &nbsp; &nbsp;SPI bus configuration: Full duplex From Figure 1. Full duplex data communication occurs during [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":2802,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"ocean_post_layout":"","ocean_both_sidebars_style":"","ocean_both_sidebars_content_width":0,"ocean_both_sidebars_sidebars_width":0,"ocean_sidebar":"0","ocean_second_sidebar":"0","ocean_disable_margins":"enable","ocean_add_body_class":"","ocean_shortcode_before_top_bar":"","ocean_shortcode_after_top_bar":"","ocean_shortcode_before_header":"","ocean_shortcode_after_header":"","ocean_has_shortcode":"","ocean_shortcode_after_title":"","ocean_shortcode_before_footer_widgets":"","ocean_shortcode_after_footer_widgets":"","ocean_shortcode_before_footer_bottom":"","ocean_shortcode_after_footer_bottom":"","ocean_display_top_bar":"default","ocean_display_header":"default","ocean_header_style":"","ocean_center_header_left_menu":"0","ocean_custom_header_template":"0","ocean_custom_logo":0,"ocean_custom_retina_logo":0,"ocean_custom_logo_max_width":0,"ocean_custom_logo_tablet_max_width":0,"ocean_custom_logo_mobile_max_width":0,"ocean_custom_logo_max_height":0,"ocean_custom_logo_tablet_max_height":0,"ocean_custom_logo_mobile_max_height":0,"ocean_header_custom_menu":"0","ocean_menu_typo_font_family":"0","ocean_menu_typo_font_subset":"","ocean_menu_typo_font_size":0,"ocean_menu_typo_font_size_tablet":0,"ocean_menu_typo_font_size_mobile":0,"ocean_menu_typo_font_size_unit":"px","ocean_menu_typo_font_weight":"","ocean_menu_typo_font_weight_tablet":"","ocean_menu_typo_font_weight_mobile":"","ocean_menu_typo_transform":"","ocean_menu_typo_transform_tablet":"","ocean_menu_typo_transform_mobile":"","ocean_menu_typo_line_height":0,"ocean_menu_typo_line_height_tablet":0,"ocean_menu_typo_line_height_mobile":0,"ocean_menu_typo_line_height_unit":"","ocean_menu_typo_spacing":0,"ocean_menu_typo_spacing_tablet":0,"ocean_menu_typo_spacing_mobile":0,"ocean_menu_typo_spacing_unit":"","ocean_menu_link_color":"","ocean_menu_link_color_hover":"","ocean_menu_link_color_active":"","ocean_menu_link_background":"","ocean_menu_link_hover_background":"","ocean_menu_link_active_background":"","ocean_menu_social_links_bg":"","ocean_menu_social_hover_links_bg":"","ocean_menu_social_links_color":"","ocean_menu_social_hover_links_color":"","ocean_disable_title":"default","ocean_disable_heading":"default","ocean_post_title":"","ocean_post_subheading":"","ocean_post_title_style":"","ocean_post_title_background_color":"","ocean_post_title_background":0,"ocean_post_title_bg_image_position":"","ocean_post_title_bg_image_attachment":"","ocean_post_title_bg_image_repeat":"","ocean_post_title_bg_image_size":"","ocean_post_title_height":0,"ocean_post_title_bg_overlay":0.5,"ocean_post_title_bg_overlay_color":"","ocean_disable_breadcrumbs":"default","ocean_breadcrumbs_color":"","ocean_breadcrumbs_separator_color":"","ocean_breadcrumbs_links_color":"","ocean_breadcrumbs_links_hover_color":"","ocean_display_footer_widgets":"default","ocean_display_footer_bottom":"default","ocean_custom_footer_template":"0","ocean_post_oembed":"","ocean_post_self_hosted_media":"","ocean_post_video_embed":"","ocean_link_format":"","ocean_link_format_target":"self","ocean_quote_format":"","ocean_quote_format_link":"post","ocean_gallery_link_images":"off","ocean_gallery_id":[],"footnotes":""},"categories":[8],"tags":[21],"class_list":["post-2816","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-blog","tag-stm32-spi","entry","has-media"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.3 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>SPI bus configuration: Full duplex, Half-duplex, and Simplex<\/title>\n<meta name=\"description\" content=\"SPI bus configuration discussion: Full duplex, Half-duplex, and Simplex. The SPI allows the microcontroller to communicate using different\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/fastbitlab.com\/blog\/spi-bus-configuration-discussion-full-duplex-half-duplex-simplex\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"SPI bus configuration: Full duplex, Half-duplex, and Simplex\" \/>\n<meta property=\"og:description\" content=\"SPI bus configuration discussion: Full duplex, Half-duplex, and Simplex. The SPI allows the microcontroller to communicate using different\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fastbitlab.com\/blog\/spi-bus-configuration-discussion-full-duplex-half-duplex-simplex\/\" \/>\n<meta property=\"og:site_name\" content=\"FastBit EBA\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/fastbiteba\/\" \/>\n<meta property=\"article:published_time\" content=\"2019-07-12T10:42:01+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-04-14T11:08:16+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/fastbitlab.com\/blog\/wp-content\/uploads\/2019\/07\/Screenshot-167_LI.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1305\" \/>\n\t<meta property=\"og:image:height\" content=\"448\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"FastBitLab\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@fastbiteba\" \/>\n<meta name=\"twitter:site\" content=\"@fastbiteba\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"FastBitLab\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/fastbitlab.com\\\/blog\\\/spi-bus-configuration-discussion-full-duplex-half-duplex-simplex\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/fastbitlab.com\\\/blog\\\/spi-bus-configuration-discussion-full-duplex-half-duplex-simplex\\\/\"},\"author\":{\"name\":\"FastBitLab\",\"@id\":\"https:\\\/\\\/fastbitlab.com\\\/blog\\\/#\\\/schema\\\/person\\\/e32b38e733a0d76ffa7e6bc998652e5d\"},\"headline\":\"STM32 SPI Lecture 6 : SPI bus configuration discussion: Full duplex, Half-duplex, and Simplex\",\"datePublished\":\"2019-07-12T10:42:01+00:00\",\"dateModified\":\"2023-04-14T11:08:16+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/fastbitlab.com\\\/blog\\\/spi-bus-configuration-discussion-full-duplex-half-duplex-simplex\\\/\"},\"wordCount\":463,\"commentCount\":17,\"publisher\":{\"@id\":\"https:\\\/\\\/fastbitlab.com\\\/blog\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/fastbitlab.com\\\/blog\\\/spi-bus-configuration-discussion-full-duplex-half-duplex-simplex\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/fastbitlab.com\\\/blog\\\/wp-content\\\/uploads\\\/2019\\\/07\\\/Screenshot-167_LI.jpg\",\"keywords\":[\"STM32 SPI Lectures\"],\"articleSection\":[\"Blog\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/fastbitlab.com\\\/blog\\\/spi-bus-configuration-discussion-full-duplex-half-duplex-simplex\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/fastbitlab.com\\\/blog\\\/spi-bus-configuration-discussion-full-duplex-half-duplex-simplex\\\/\",\"url\":\"https:\\\/\\\/fastbitlab.com\\\/blog\\\/spi-bus-configuration-discussion-full-duplex-half-duplex-simplex\\\/\",\"name\":\"SPI bus configuration: Full duplex, Half-duplex, and Simplex\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/fastbitlab.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/fastbitlab.com\\\/blog\\\/spi-bus-configuration-discussion-full-duplex-half-duplex-simplex\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/fastbitlab.com\\\/blog\\\/spi-bus-configuration-discussion-full-duplex-half-duplex-simplex\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/fastbitlab.com\\\/blog\\\/wp-content\\\/uploads\\\/2019\\\/07\\\/Screenshot-167_LI.jpg\",\"datePublished\":\"2019-07-12T10:42:01+00:00\",\"dateModified\":\"2023-04-14T11:08:16+00:00\",\"description\":\"SPI bus configuration discussion: Full duplex, Half-duplex, and Simplex. The SPI allows the microcontroller to communicate using different\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/fastbitlab.com\\\/blog\\\/spi-bus-configuration-discussion-full-duplex-half-duplex-simplex\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/fastbitlab.com\\\/blog\\\/spi-bus-configuration-discussion-full-duplex-half-duplex-simplex\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/fastbitlab.com\\\/blog\\\/spi-bus-configuration-discussion-full-duplex-half-duplex-simplex\\\/#primaryimage\",\"url\":\"https:\\\/\\\/fastbitlab.com\\\/blog\\\/wp-content\\\/uploads\\\/2019\\\/07\\\/Screenshot-167_LI.jpg\",\"contentUrl\":\"https:\\\/\\\/fastbitlab.com\\\/blog\\\/wp-content\\\/uploads\\\/2019\\\/07\\\/Screenshot-167_LI.jpg\",\"width\":1305,\"height\":448},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/fastbitlab.com\\\/blog\\\/spi-bus-configuration-discussion-full-duplex-half-duplex-simplex\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/fastbitlab.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"STM32 SPI Lecture 6 : SPI bus configuration discussion: Full duplex, Half-duplex, and Simplex\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/fastbitlab.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/fastbitlab.com\\\/blog\\\/\",\"name\":\"FastBit EBA\",\"description\":\"Your Online Academy of Embedded Systems\",\"publisher\":{\"@id\":\"https:\\\/\\\/fastbitlab.com\\\/blog\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/fastbitlab.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/fastbitlab.com\\\/blog\\\/#organization\",\"name\":\"FastBit EBA\",\"url\":\"https:\\\/\\\/fastbitlab.com\\\/blog\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/fastbitlab.com\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/fastbitlab.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/04\\\/logo-EzNrEnyr.png\",\"contentUrl\":\"https:\\\/\\\/fastbitlab.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/04\\\/logo-EzNrEnyr.png\",\"width\":640,\"height\":640,\"caption\":\"FastBit EBA\"},\"image\":{\"@id\":\"https:\\\/\\\/fastbitlab.com\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/fastbiteba\\\/\",\"https:\\\/\\\/x.com\\\/fastbiteba\",\"https:\\\/\\\/www.linkedin.com\\\/in\\\/fastbit-embedded-brain-academy-b3167b124\\\/\",\"https:\\\/\\\/www.youtube.com\\\/channel\\\/UCa1REBV9hyrzGp2mjJCagBg\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/fastbitlab.com\\\/blog\\\/#\\\/schema\\\/person\\\/e32b38e733a0d76ffa7e6bc998652e5d\",\"name\":\"FastBitLab\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/9230d0f9bdef28b63a01e7ca274ee7b2e8ed9abe932ee564af8809caaf52a0c8?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/9230d0f9bdef28b63a01e7ca274ee7b2e8ed9abe932ee564af8809caaf52a0c8?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/9230d0f9bdef28b63a01e7ca274ee7b2e8ed9abe932ee564af8809caaf52a0c8?s=96&d=mm&r=g\",\"caption\":\"FastBitLab\"},\"description\":\"The FastBit Embedded Brain Academy uses the power of internet to bring the online courses related to the field of embedded system programming, Real time operating system, Embedded Linux systems, etc at your finger tip with very low cost. Backed with strong experience of industry, we have produced lots of courses with the customer enrolment over 3000+ across 100+ countries.\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"SPI bus configuration: Full duplex, Half-duplex, and Simplex","description":"SPI bus configuration discussion: Full duplex, Half-duplex, and Simplex. The SPI allows the microcontroller to communicate using different","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:\/\/fastbitlab.com\/blog\/spi-bus-configuration-discussion-full-duplex-half-duplex-simplex\/","og_locale":"en_US","og_type":"article","og_title":"SPI bus configuration: Full duplex, Half-duplex, and Simplex","og_description":"SPI bus configuration discussion: Full duplex, Half-duplex, and Simplex. The SPI allows the microcontroller to communicate using different","og_url":"https:\/\/fastbitlab.com\/blog\/spi-bus-configuration-discussion-full-duplex-half-duplex-simplex\/","og_site_name":"FastBit EBA","article_publisher":"https:\/\/www.facebook.com\/fastbiteba\/","article_published_time":"2019-07-12T10:42:01+00:00","article_modified_time":"2023-04-14T11:08:16+00:00","og_image":[{"width":1305,"height":448,"url":"https:\/\/fastbitlab.com\/blog\/wp-content\/uploads\/2019\/07\/Screenshot-167_LI.jpg","type":"image\/jpeg"}],"author":"FastBitLab","twitter_card":"summary_large_image","twitter_creator":"@fastbiteba","twitter_site":"@fastbiteba","twitter_misc":{"Written by":"FastBitLab","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fastbitlab.com\/blog\/spi-bus-configuration-discussion-full-duplex-half-duplex-simplex\/#article","isPartOf":{"@id":"https:\/\/fastbitlab.com\/blog\/spi-bus-configuration-discussion-full-duplex-half-duplex-simplex\/"},"author":{"name":"FastBitLab","@id":"https:\/\/fastbitlab.com\/blog\/#\/schema\/person\/e32b38e733a0d76ffa7e6bc998652e5d"},"headline":"STM32 SPI Lecture 6 : SPI bus configuration discussion: Full duplex, Half-duplex, and Simplex","datePublished":"2019-07-12T10:42:01+00:00","dateModified":"2023-04-14T11:08:16+00:00","mainEntityOfPage":{"@id":"https:\/\/fastbitlab.com\/blog\/spi-bus-configuration-discussion-full-duplex-half-duplex-simplex\/"},"wordCount":463,"commentCount":17,"publisher":{"@id":"https:\/\/fastbitlab.com\/blog\/#organization"},"image":{"@id":"https:\/\/fastbitlab.com\/blog\/spi-bus-configuration-discussion-full-duplex-half-duplex-simplex\/#primaryimage"},"thumbnailUrl":"https:\/\/fastbitlab.com\/blog\/wp-content\/uploads\/2019\/07\/Screenshot-167_LI.jpg","keywords":["STM32 SPI Lectures"],"articleSection":["Blog"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fastbitlab.com\/blog\/spi-bus-configuration-discussion-full-duplex-half-duplex-simplex\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/fastbitlab.com\/blog\/spi-bus-configuration-discussion-full-duplex-half-duplex-simplex\/","url":"https:\/\/fastbitlab.com\/blog\/spi-bus-configuration-discussion-full-duplex-half-duplex-simplex\/","name":"SPI bus configuration: Full duplex, Half-duplex, and Simplex","isPartOf":{"@id":"https:\/\/fastbitlab.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/fastbitlab.com\/blog\/spi-bus-configuration-discussion-full-duplex-half-duplex-simplex\/#primaryimage"},"image":{"@id":"https:\/\/fastbitlab.com\/blog\/spi-bus-configuration-discussion-full-duplex-half-duplex-simplex\/#primaryimage"},"thumbnailUrl":"https:\/\/fastbitlab.com\/blog\/wp-content\/uploads\/2019\/07\/Screenshot-167_LI.jpg","datePublished":"2019-07-12T10:42:01+00:00","dateModified":"2023-04-14T11:08:16+00:00","description":"SPI bus configuration discussion: Full duplex, Half-duplex, and Simplex. The SPI allows the microcontroller to communicate using different","breadcrumb":{"@id":"https:\/\/fastbitlab.com\/blog\/spi-bus-configuration-discussion-full-duplex-half-duplex-simplex\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fastbitlab.com\/blog\/spi-bus-configuration-discussion-full-duplex-half-duplex-simplex\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/fastbitlab.com\/blog\/spi-bus-configuration-discussion-full-duplex-half-duplex-simplex\/#primaryimage","url":"https:\/\/fastbitlab.com\/blog\/wp-content\/uploads\/2019\/07\/Screenshot-167_LI.jpg","contentUrl":"https:\/\/fastbitlab.com\/blog\/wp-content\/uploads\/2019\/07\/Screenshot-167_LI.jpg","width":1305,"height":448},{"@type":"BreadcrumbList","@id":"https:\/\/fastbitlab.com\/blog\/spi-bus-configuration-discussion-full-duplex-half-duplex-simplex\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/fastbitlab.com\/blog\/"},{"@type":"ListItem","position":2,"name":"STM32 SPI Lecture 6 : SPI bus configuration discussion: Full duplex, Half-duplex, and Simplex"}]},{"@type":"WebSite","@id":"https:\/\/fastbitlab.com\/blog\/#website","url":"https:\/\/fastbitlab.com\/blog\/","name":"FastBit EBA","description":"Your Online Academy of Embedded Systems","publisher":{"@id":"https:\/\/fastbitlab.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/fastbitlab.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/fastbitlab.com\/blog\/#organization","name":"FastBit EBA","url":"https:\/\/fastbitlab.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/fastbitlab.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/fastbitlab.com\/blog\/wp-content\/uploads\/2026\/04\/logo-EzNrEnyr.png","contentUrl":"https:\/\/fastbitlab.com\/blog\/wp-content\/uploads\/2026\/04\/logo-EzNrEnyr.png","width":640,"height":640,"caption":"FastBit EBA"},"image":{"@id":"https:\/\/fastbitlab.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/fastbiteba\/","https:\/\/x.com\/fastbiteba","https:\/\/www.linkedin.com\/in\/fastbit-embedded-brain-academy-b3167b124\/","https:\/\/www.youtube.com\/channel\/UCa1REBV9hyrzGp2mjJCagBg"]},{"@type":"Person","@id":"https:\/\/fastbitlab.com\/blog\/#\/schema\/person\/e32b38e733a0d76ffa7e6bc998652e5d","name":"FastBitLab","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/9230d0f9bdef28b63a01e7ca274ee7b2e8ed9abe932ee564af8809caaf52a0c8?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/9230d0f9bdef28b63a01e7ca274ee7b2e8ed9abe932ee564af8809caaf52a0c8?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/9230d0f9bdef28b63a01e7ca274ee7b2e8ed9abe932ee564af8809caaf52a0c8?s=96&d=mm&r=g","caption":"FastBitLab"},"description":"The FastBit Embedded Brain Academy uses the power of internet to bring the online courses related to the field of embedded system programming, Real time operating system, Embedded Linux systems, etc at your finger tip with very low cost. Backed with strong experience of industry, we have produced lots of courses with the customer enrolment over 3000+ across 100+ countries."}]}},"_links":{"self":[{"href":"https:\/\/fastbitlab.com\/blog\/wp-json\/wp\/v2\/posts\/2816","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fastbitlab.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fastbitlab.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fastbitlab.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fastbitlab.com\/blog\/wp-json\/wp\/v2\/comments?post=2816"}],"version-history":[{"count":5,"href":"https:\/\/fastbitlab.com\/blog\/wp-json\/wp\/v2\/posts\/2816\/revisions"}],"predecessor-version":[{"id":12630,"href":"https:\/\/fastbitlab.com\/blog\/wp-json\/wp\/v2\/posts\/2816\/revisions\/12630"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/fastbitlab.com\/blog\/wp-json\/wp\/v2\/media\/2802"}],"wp:attachment":[{"href":"https:\/\/fastbitlab.com\/blog\/wp-json\/wp\/v2\/media?parent=2816"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fastbitlab.com\/blog\/wp-json\/wp\/v2\/categories?post=2816"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fastbitlab.com\/blog\/wp-json\/wp\/v2\/tags?post=2816"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}