<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>RTOSを使ったアプリ | 即戦力モノづくり!エンジニアへの道標</title>
	<atom:link href="https://depfields.com/category/learning/applications/rtos-apl/feed/" rel="self" type="application/rss+xml" />
	<link>https://depfields.com</link>
	<description>組み込み（マイコン）スキルを楽しんで学びながら身につけて短期間で効率よく自由自在に扱えるようになりたいと思いませんか？</description>
	<lastBuildDate>Mon, 11 Apr 2022 06:04:42 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.3</generator>

<image>
	<url>https://depfields.com/wp-content/uploads/2020/07/cropped-favicon-1-32x32.png</url>
	<title>RTOSを使ったアプリ | 即戦力モノづくり!エンジニアへの道標</title>
	<link>https://depfields.com</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>キューを使ったアプリ【STM32とFreeRTOS】</title>
		<link>https://depfields.com/rtos-queue-apl/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=rtos-queue-apl</link>
		
		<dc:creator><![CDATA[めかのとろ]]></dc:creator>
		<pubDate>Thu, 18 Jun 2020 06:23:56 +0000</pubDate>
				<category><![CDATA[RTOSを使ったアプリ]]></category>
		<category><![CDATA[RTOS]]></category>
		<guid isPermaLink="false">https://depfields.com/?page_id=3633</guid>

					<description><![CDATA[<p>タスクとキューを組み合わせたアプリです。このプログラムは実用的ではないのですがキューの概念をわかりやすく理解する学習のためのサンプルプログラムです。</p>
<p>The post <a href="https://depfields.com/rtos-queue-apl/">キューを使ったアプリ【STM32とFreeRTOS】</a> first appeared on <a href="https://depfields.com">即戦力モノづくり!エンジニアへの道標</a>.</p>]]></description>
										<content:encoded><![CDATA[<div class="veu_autoEyeCatchBox"><img fetchpriority="high" width="640" height="429" src="https://depfields.com/wp-content/uploads/2020/06/duck-3217049_640.jpg" class="attachment-large size-large wp-post-image" alt="" decoding="async" srcset="https://depfields.com/wp-content/uploads/2020/06/duck-3217049_640.jpg 640w, https://depfields.com/wp-content/uploads/2020/06/duck-3217049_640-300x201.jpg 300w" sizes="(max-width: 640px) 100vw, 640px" /></div>
<p class="vk_block-margin-sm--margin-top vk_block-margin-sm--margin-bottom"><strong><a href="https://depfields.com/queue/" target="_blank" rel="noreferrer noopener">タスクとキュー</a></strong>を組み合わせたアプリです。このプログラムは実用的ではないのですがキューの概念をわかりやすく理解する学習のためのサンプルプログラムです。</p>



<div class="wp-block-vk-blocks-balloon vk_balloon vk_balloon-position-left vk_balloon-type-speech vk_balloon-animation-none"><div class="vk_balloon_icon"><figure><img decoding="async" class="vk_balloon_icon_image vk_balloon_icon_image-type-normal " src="https://depfields.com/wp-content/uploads/2020/05/instructor.jpg" alt=""/><figcaption class="vk_balloon_icon_name">めかのとろ</figcaption></figure></div><div class="vk_balloon_content_outer"><div class="vk_balloon_content  "><span class="vk_balloon_content_before "></span><span class="vk_balloon_content_after "></span>
<p>初期設定で<strong>xQueue = xQueueCreate(16, sizeof (int8_t))</strong>を実行して16個分のキューを確保しています。</p>
</div></div></div>



<div class="wp-block-vk-blocks-balloon vk_balloon vk_balloon-position-left vk_balloon-type-speech vk_balloon-animation-none"><div class="vk_balloon_icon"><figure><img decoding="async" class="vk_balloon_icon_image vk_balloon_icon_image-type-normal " src="https://depfields.com/wp-content/uploads/2020/05/instructor.jpg" alt=""/><figcaption class="vk_balloon_icon_name">めかのとろ</figcaption></figure></div><div class="vk_balloon_content_outer"><div class="vk_balloon_content  "><span class="vk_balloon_content_before "></span><span class="vk_balloon_content_after "></span>
<p>1つ目のタスクではコマンド（”start@”）を入力して、成立条件を満たしたときに10個のキューを順次渡しています。タスクのサイクルタイムは10msで短めに設定しています。</p>
</div></div></div>



<div class="wp-block-vk-blocks-balloon vk_balloon vk_balloon-position-left vk_balloon-type-speech vk_balloon-animation-none"><div class="vk_balloon_icon"><figure><img decoding="async" class="vk_balloon_icon_image vk_balloon_icon_image-type-normal " src="https://depfields.com/wp-content/uploads/2020/05/instructor.jpg" alt=""/><figcaption class="vk_balloon_icon_name">めかのとろ</figcaption></figure></div><div class="vk_balloon_content_outer"><div class="vk_balloon_content  "><span class="vk_balloon_content_before "></span><span class="vk_balloon_content_after "></span>
<p>2つ目のタスクではキューの順番にしたがって文字列表示します。タスクのサイクルは表示用として500msで長めに設定しています。</p>
</div></div></div>



<div class="wp-block-vk-blocks-balloon vk_balloon vk_balloon-position-left vk_balloon-type-speech vk_balloon-animation-none"><div class="vk_balloon_icon"><figure><img decoding="async" class="vk_balloon_icon_image vk_balloon_icon_image-type-normal " src="https://depfields.com/wp-content/uploads/2020/05/instructor.jpg" alt=""/><figcaption class="vk_balloon_icon_name">めかのとろ</figcaption></figure></div><div class="vk_balloon_content_outer"><div class="vk_balloon_content  "><span class="vk_balloon_content_before "></span><span class="vk_balloon_content_after "></span>
<p>サンプルプログラムの機能はまとめると以下のようになります。</p>
</div></div></div>



<div class="wp-block-vk-blocks-balloon vk_balloon vk_balloon-position-left vk_balloon-type-speech vk_balloon-animation-none"><div class="vk_balloon_icon"><figure><img decoding="async" class="vk_balloon_icon_image vk_balloon_icon_image-type-normal " src="https://depfields.com/wp-content/uploads/2020/05/instructor.jpg" alt=""/><figcaption class="vk_balloon_icon_name">めかのとろ</figcaption></figure></div><div class="vk_balloon_content_outer"><div class="vk_balloon_content  "><span class="vk_balloon_content_before "></span><span class="vk_balloon_content_after "></span>
<p>プログラムを起動するとコマンドコード待ちの状態で待機していますのでPCのターミナルソフトからコード"start@"を与えます。するとSTMマイコン側の受信処理で１０個のパラメータIDをキューに送信します。</p>
</div></div></div>



<div class="wp-block-vk-blocks-balloon vk_balloon vk_balloon-position-left vk_balloon-type-speech vk_balloon-animation-none"><div class="vk_balloon_icon"><figure><img decoding="async" class="vk_balloon_icon_image vk_balloon_icon_image-type-normal " src="https://depfields.com/wp-content/uploads/2020/05/instructor.jpg" alt=""/><figcaption class="vk_balloon_icon_name">めかのとろ</figcaption></figure></div><div class="vk_balloon_content_outer"><div class="vk_balloon_content  "><span class="vk_balloon_content_before "></span><span class="vk_balloon_content_after "></span>
<p>キューにIDが送られると、キューの順番にしたがって表示を実行するタスク内（500msサイクルで表示）でキューIDに応じて順次ID番号を表示していきます（PC側にID表示を送信）。</p>
</div></div></div>



<div class="wp-block-vk-blocks-balloon vk_balloon vk_balloon-position-left vk_balloon-type-speech vk_balloon-animation-none"><div class="vk_balloon_icon"><figure><img decoding="async" class="vk_balloon_icon_image vk_balloon_icon_image-type-normal " src="https://depfields.com/wp-content/uploads/2020/05/instructor.jpg" alt=""/><figcaption class="vk_balloon_icon_name">めかのとろ</figcaption></figure></div><div class="vk_balloon_content_outer"><div class="vk_balloon_content  "><span class="vk_balloon_content_before "></span><span class="vk_balloon_content_after "></span>
<p>このプログラム自体はあまり実用的にみて意味があるものではないのですが、<strong><span data-color="#fffd6b" style="background: linear-gradient(transparent 60%,rgba(255, 253, 107, 0.7) 0);" class="vk_highlighter">キューの概念が理解できる</span></strong>と思います。</p>
</div></div></div>



<figure class="wp-block-image size-large is-resized"><img decoding="async" src="https://depfields.com/wp-content/uploads/2020/06/sirial-usart-nucleo.jpg" alt="" class="wp-image-5134" width="481" height="201" srcset="https://depfields.com/wp-content/uploads/2020/06/sirial-usart-nucleo.jpg 482w, https://depfields.com/wp-content/uploads/2020/06/sirial-usart-nucleo-300x125.jpg 300w" sizes="(max-width: 481px) 100vw, 481px" /><figcaption>接続図</figcaption></figure>



<div class="wp-block-vk-blocks-spacer vk_spacer vk_spacer-type-margin-top"><div class="vk_block-margin-md--margin-top"></div></div>



<div class='w3eden'><!-- WPDM Link Template: Default Template -->

<div class="link-template-default card mb-2">
    <div class="card-body">
        <div class="media">
            <div class="mr-3 img-48"><img class="wpdm_icon" alt="アイコン"   src="https://depfields.com/wp-content/plugins/download-manager/assets/file-type-icons/box_download.png" /></div>
            <div class="media-body">
                <h3 class="package-title"><a href='https://depfields.com/download/rtos-queue/'>キューをつかったアプリケーション</a></h3>
                <div class="text-muted text-small"><i class="fas fa-copy"></i> 1 ファイル <i class="fas fa-hdd ml-3"></i> 6.42 KB</div>
            </div>
            <div class="ml-3">
                <a href='#unlock' class='wpdm-download-link wpdm-download-locked btn btn-primary ' data-package='3639'>ダウンロード</a>
            </div>
        </div>
    </div>
</div>

</div>



<div class="linkcard"><div class="lkc-external-wrap"><a class="lkc-link no_icon" href="https://en.depfields.com/rtos-queue-apl/" target="_blank" rel="external noopener"><div class="lkc-card"><div class="lkc-info"><img class="lkc-favicon" src="https://www.google.com/s2/favicons?domain=en.depfields.com" alt="" width=16 height=16 /><div class="lkc-domain">Most Powerful Bible to Become an Embedded Engineer</div></div><div class="lkc-content"><figure class="lkc-thumbnail"><img class="lkc-thumbnail-img" src="//depfields.com/wp-content/uploads/pz-linkcard/cache/9e1a3440c5879622fac5c9d8e8e69ed06bb1cbaae69738973e88c75b5bee3b4c.jpeg" alt="" /></figure><div class="lkc-title"><div class="lkc-title-text">Queue-based application [STM32 and FreeRTOS]. | Most Powerful Bible to Become...</div></div><div class="lkc-url">https://en.depfields.com/rtos-queue-apl/</div><div class="lkc-excerpt">This application combines a task and a queue. This program is not practical, but it is a sample program for learning to understand the concept of queues in an easy-to-understand way.In the initial setting, xQueue = xQueueCreate(16, si</div></div><div class="clear"></div></div></a></div></div><p>The post <a href="https://depfields.com/rtos-queue-apl/">キューを使ったアプリ【STM32とFreeRTOS】</a> first appeared on <a href="https://depfields.com">即戦力モノづくり!エンジニアへの道標</a>.</p>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>複数タスクの切り替えその２【STM32とFreeRTOS】</title>
		<link>https://depfields.com/rtos-task-switch2-apl/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=rtos-task-switch2-apl</link>
		
		<dc:creator><![CDATA[めかのとろ]]></dc:creator>
		<pubDate>Thu, 18 Jun 2020 05:50:42 +0000</pubDate>
				<category><![CDATA[RTOSを使ったアプリ]]></category>
		<category><![CDATA[RTOS]]></category>
		<guid isPermaLink="false">https://depfields.com/?page_id=3618</guid>

					<description><![CDATA[<p>タスク切替とUSART通信を組み合わせたプログラムで、外部から与えたコマンドコードが一致するかしないかでタスクの実行、停止を管理しているサンプルプログラムです。 コラム コマンドの語尾に'＠'があるのは入力文字列の終端を [&#8230;]</p>
<p>The post <a href="https://depfields.com/rtos-task-switch2-apl/">複数タスクの切り替えその２【STM32とFreeRTOS】</a> first appeared on <a href="https://depfields.com">即戦力モノづくり!エンジニアへの道標</a>.</p>]]></description>
										<content:encoded><![CDATA[<div class="veu_autoEyeCatchBox"><img width="640" height="351" src="https://depfields.com/wp-content/uploads/2020/06/programming-1873854_640.png" class="attachment-large size-large wp-post-image" alt="" decoding="async" srcset="https://depfields.com/wp-content/uploads/2020/06/programming-1873854_640.png 640w, https://depfields.com/wp-content/uploads/2020/06/programming-1873854_640-300x165.png 300w" sizes="(max-width: 640px) 100vw, 640px" /></div>
<p class="vk_block-margin-sm--margin-top vk_block-margin-sm--margin-bottom"><strong><a href="https://depfields.com/task/" target="_blank" rel="noreferrer noopener">タスク切替</a></strong>とUSART通信を組み合わせたプログラムで、外部から与えたコマンドコードが一致するかしないかでタスクの実行、停止を管理しているサンプルプログラムです。</p>



<div class="wp-block-vk-blocks-balloon vk_balloon vk_balloon-position-left vk_balloon-type-speech vk_balloon-animation-none"><div class="vk_balloon_icon"><figure><img decoding="async" class="vk_balloon_icon_image vk_balloon_icon_image-type-normal " src="https://depfields.com/wp-content/uploads/2020/05/instructor.jpg" alt=""/><figcaption class="vk_balloon_icon_name">めかのとろ</figcaption></figure></div><div class="vk_balloon_content_outer"><div class="vk_balloon_content  "><span class="vk_balloon_content_before "></span><span class="vk_balloon_content_after "></span>
<p>あらかじめタスク切り替え用にコマンドコードを設定しておき、外部から与えたコードが一致したときにコマンドコードで指定したタスクを実行し、他のタスクは停止するプログラムです。</p>
</div></div></div>



<figure class="wp-block-image size-large is-resized"><img decoding="async" src="https://depfields.com/wp-content/uploads/2020/06/rtos-led-nucleo2.jpg" alt="" class="wp-image-5151" width="469" height="357" srcset="https://depfields.com/wp-content/uploads/2020/06/rtos-led-nucleo2.jpg 469w, https://depfields.com/wp-content/uploads/2020/06/rtos-led-nucleo2-300x228.jpg 300w" sizes="(max-width: 469px) 100vw, 469px" /><figcaption>コマンドによるタスクスイッチ</figcaption></figure>



<div class="wp-block-vk-blocks-balloon vk_balloon vk_balloon-position-left vk_balloon-type-speech vk_balloon-animation-none"><div class="vk_balloon_icon"><figure><img decoding="async" class="vk_balloon_icon_image vk_balloon_icon_image-type-normal " src="https://depfields.com/wp-content/uploads/2020/05/instructor.jpg" alt=""/><figcaption class="vk_balloon_icon_name">めかのとろ</figcaption></figure></div><div class="vk_balloon_content_outer"><div class="vk_balloon_content  "><span class="vk_balloon_content_before "></span><span class="vk_balloon_content_after "></span>
<p>今回は入力スイッチの代わりにコマンドによりタスクAとタスクBを切り替えます。コマンド文字列”TaskA@”を与えるとタスクAが、”TaskB@”でタスクBに切り替わり画面に表示します。</p>
</div></div></div>



<div class="wp-block-vk-blocks-spacer vk_spacer vk_spacer-type-margin-top"><div class="vk_block-margin-md--margin-top"></div></div>



<div style="background: #00ccff; padding: 5px 10px; color: #ffffff; border-radius: 10px 10px 0 0;"><strong>コラム</strong></div>
<div style="background: #ffffea; padding: 10px; border: 2px solid #00ccff; border-radius: 0 0 10px 10px;">
<p>コマンドの語尾に'＠'があるのは<strong><span class="vk_highlighter" style="background: linear-gradient(transparent 60%,rgba(255, 253, 107, 0.7) 0);" data-color="#fffd6b">入力文字列の終端</span></strong>を認識するためです。'＠'のかわりにエンターキー（CR）入力を終端とできますが、この場合のアスキーコードは<strong><span class="vk_highlighter" style="background: linear-gradient(transparent 60%,rgba(255, 253, 107, 0.7) 0);" data-color="#fffd6b">0x0D</span></strong>です。</p>
</div>



<div class="wp-block-vk-blocks-spacer vk_spacer vk_spacer-type-margin-top"><div class="vk_block-margin-md--margin-top"></div></div>



<div class='w3eden'><!-- WPDM Link Template: Default Template -->

<div class="link-template-default card mb-2">
    <div class="card-body">
        <div class="media">
            <div class="mr-3 img-48"><img class="wpdm_icon" alt="アイコン"   src="https://depfields.com/wp-content/plugins/download-manager/assets/file-type-icons/box_download.png" /></div>
            <div class="media-body">
                <h3 class="package-title"><a href='https://depfields.com/download/usart-task-switch/'>複数タスクの切り替え(シリアルコマンド)</a></h3>
                <div class="text-muted text-small"><i class="fas fa-copy"></i> 1 ファイル <i class="fas fa-hdd ml-3"></i> 5.80 KB</div>
            </div>
            <div class="ml-3">
                <a href='#unlock' class='wpdm-download-link wpdm-download-locked btn btn-primary ' data-package='3630'>ダウンロード</a>
            </div>
        </div>
    </div>
</div>

</div>



<p></p>



<div class="linkcard"><div class="lkc-external-wrap"><a class="lkc-link no_icon" href="https://en.depfields.com/rtos-task-switch2-apl/" target="_blank" rel="external noopener"><div class="lkc-card"><div class="lkc-info"><img class="lkc-favicon" src="https://www.google.com/s2/favicons?domain=en.depfields.com" alt="" width=16 height=16 /><div class="lkc-domain">Most Powerful Bible to Become an Embedded Engineer</div></div><div class="lkc-content"><figure class="lkc-thumbnail"><img class="lkc-thumbnail-img" src="//depfields.com/wp-content/uploads/pz-linkcard/cache/6579b7012e60f0f4ea85cab7629b051fd1eebcdd1aa37e39bf3bd2a907e37a91.jpeg" alt="" /></figure><div class="lkc-title"><div class="lkc-title-text">Switching between multiple tasks, Part 2 [STM32 and FreeRTOS] | Most Powerful...</div></div><div class="lkc-url">https://en.depfields.com/rtos-task-switch2-apl/</div><div class="lkc-excerpt">This is a sample program that combines task switching and USART communication, and manages task execution and suspension based on whether or not the command code given externally matches.This is a program that sets command codes for t</div></div><div class="clear"></div></div></a></div></div><p>The post <a href="https://depfields.com/rtos-task-switch2-apl/">複数タスクの切り替えその２【STM32とFreeRTOS】</a> first appeared on <a href="https://depfields.com">即戦力モノづくり!エンジニアへの道標</a>.</p>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>複数タスクの切り替えその１【STM32とFreeRTOS】</title>
		<link>https://depfields.com/rtos-task-switch1-apl/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=rtos-task-switch1-apl</link>
		
		<dc:creator><![CDATA[めかのとろ]]></dc:creator>
		<pubDate>Thu, 18 Jun 2020 05:25:19 +0000</pubDate>
				<category><![CDATA[RTOSを使ったアプリ]]></category>
		<category><![CDATA[RTOS]]></category>
		<guid isPermaLink="false">https://depfields.com/?page_id=3610</guid>

					<description><![CDATA[<p>２つのタスクを外部スイッチで切り替えるサンプルプログラムです。切り替えを管理するのに専用のタスクを設けているのが特徴です。</p>
<p>The post <a href="https://depfields.com/rtos-task-switch1-apl/">複数タスクの切り替えその１【STM32とFreeRTOS】</a> first appeared on <a href="https://depfields.com">即戦力モノづくり!エンジニアへの道標</a>.</p>]]></description>
										<content:encoded><![CDATA[<div class="veu_autoEyeCatchBox"><img width="640" height="426" src="https://depfields.com/wp-content/uploads/2020/06/code-820275_640.jpg" class="attachment-large size-large wp-post-image" alt="" decoding="async" srcset="https://depfields.com/wp-content/uploads/2020/06/code-820275_640.jpg 640w, https://depfields.com/wp-content/uploads/2020/06/code-820275_640-300x200.jpg 300w" sizes="(max-width: 640px) 100vw, 640px" /></div>
<p class="vk_block-margin-sm--margin-top vk_block-margin-sm--margin-bottom"><strong><a href="https://depfields.com/task/" target="_blank" rel="noreferrer noopener">２つのタスクを外部スイッチで切り替える</a></strong>サンプルプログラムです。切り替えを管理するのに専用のタスクを設けているのが特徴です。</p>



<div class="wp-block-vk-blocks-balloon vk_balloon vk_balloon-position-left vk_balloon-type-speech vk_balloon-animation-none"><div class="vk_balloon_icon"><figure><img decoding="async" class="vk_balloon_icon_image vk_balloon_icon_image-type-normal " src="https://depfields.com/wp-content/uploads/2020/05/instructor.jpg" alt=""/><figcaption class="vk_balloon_icon_name">めかのとろ</figcaption></figure></div><div class="vk_balloon_content_outer"><div class="vk_balloon_content  "><span class="vk_balloon_content_before "></span><span class="vk_balloon_content_after "></span>
<p>登録したタスクAとタスクBの処理内容はLEDの点滅パターンが違うものですが、押しボタンスイッチ入力の有無でタスクAとタスクBを切り替えます。</p>
</div></div></div>



<div class="wp-block-vk-blocks-balloon vk_balloon vk_balloon-position-right vk_balloon-type-speech vk_balloon-animation-none"><div class="vk_balloon_icon"><figure><img decoding="async" class="vk_balloon_icon_image vk_balloon_icon_image-type-normal " src="https://depfields.com/wp-content/uploads/2020/05/instructor.jpg" alt=""/><figcaption class="vk_balloon_icon_name">めかのとろ</figcaption></figure></div><div class="vk_balloon_content_outer"><div class="vk_balloon_content  "><span class="vk_balloon_content_before "></span><span class="vk_balloon_content_after "></span>
<p>タスクを切り替えるを実行する、いわゆるタスク管理ように専用のタスクCを作成して、スイッチの入力に応じてタスクAとタスクBを切り替えています。</p>
</div></div></div>



<div class="wp-block-vk-blocks-balloon vk_balloon vk_balloon-position-right vk_balloon-type-speech vk_balloon-animation-none"><div class="vk_balloon_icon"><figure><img decoding="async" class="vk_balloon_icon_image vk_balloon_icon_image-type-normal " src="https://depfields.com/wp-content/uploads/2020/05/instructor.jpg" alt=""/><figcaption class="vk_balloon_icon_name">めかのとろ</figcaption></figure></div><div class="vk_balloon_content_outer"><div class="vk_balloon_content  "><span class="vk_balloon_content_before "></span><span class="vk_balloon_content_after "></span>
<p>タスクを登録するときにvTaskCreate関数で生成するのですが、<br>各タスクにタスク参照用ハンドラ名を指定しておき、<br>■　タスクAハンドラ名：xTaskHandle <strong><span data-color="#fffd6b" style="background: linear-gradient(transparent 60%,rgba(255, 253, 107, 0.7) 0);" class="vk_highlighter">A</span></strong><br>■　タスクBハンドラ名：xTaskHandle <strong><span data-color="#fffd6b" style="background: linear-gradient(transparent 60%,rgba(255, 253, 107, 0.7) 0);" class="vk_highlighter">B</span></strong><br>vTaskCreate関数でタスク生成の際に第6引数にそれぞれ<strong><span data-color="#fffd6b" style="background: linear-gradient(transparent 60%,rgba(255, 253, 107, 0.7) 0);" class="vk_highlighter">ハンドル名のポインタ&amp;A</span></strong>および<strong><span data-color="#fffd6b" style="background: linear-gradient(transparent 60%,rgba(255, 253, 107, 0.7) 0);" class="vk_highlighter">&amp;B</span></strong>を指定しておきます。</p>
</div></div></div>



<div class="wp-block-vk-blocks-balloon vk_balloon vk_balloon-position-right vk_balloon-type-speech vk_balloon-animation-none"><div class="vk_balloon_icon"><figure><img decoding="async" class="vk_balloon_icon_image vk_balloon_icon_image-type-normal " src="https://depfields.com/wp-content/uploads/2020/05/instructor.jpg" alt=""/><figcaption class="vk_balloon_icon_name">めかのとろ</figcaption></figure></div><div class="vk_balloon_content_outer"><div class="vk_balloon_content  "><span class="vk_balloon_content_before "></span><span class="vk_balloon_content_after "></span>
<p>タスクの切り替えは<strong><span data-color="#fffd6b" style="background: linear-gradient(transparent 60%,rgba(255, 253, 107, 0.7) 0);" class="vk_highlighter">vTaskSuspend関数</span></strong>と<strong><span data-color="#fffd6b" style="background: linear-gradient(transparent 60%,rgba(255, 253, 107, 0.7) 0);" class="vk_highlighter">vTaskResume関数</span></strong>を使います。<br>■　vTaskSuspend(A)　タスクA休止状態<br>■　vTaskResume(B)　タスクB実行中</p>
</div></div></div>



<figure class="wp-block-image size-large is-resized"><img decoding="async" src="https://depfields.com/wp-content/uploads/2020/06/rtos-led-nucleo.jpg" alt="" class="wp-image-5146" width="359" height="380"/><figcaption>RTOSタスクスイッチ</figcaption></figure>



<div class='w3eden'><!-- WPDM Link Template: Default Template -->

<div class="link-template-default card mb-2">
    <div class="card-body">
        <div class="media">
            <div class="mr-3 img-48"><img class="wpdm_icon" alt="アイコン"   src="https://depfields.com/wp-content/plugins/download-manager/assets/file-type-icons/box_download.png" /></div>
            <div class="media-body">
                <h3 class="package-title"><a href='https://depfields.com/download/basic-task-switch/'>複数タスクの切り替え(押しボタンスイッチ）</a></h3>
                <div class="text-muted text-small"><i class="fas fa-copy"></i> 1 ファイル <i class="fas fa-hdd ml-3"></i> 3.61 KB</div>
            </div>
            <div class="ml-3">
                <a href='#unlock' class='wpdm-download-link wpdm-download-locked btn btn-primary ' data-package='3615'>ダウンロード</a>
            </div>
        </div>
    </div>
</div>

</div>



<div class="linkcard"><div class="lkc-external-wrap"><a class="lkc-link no_icon" href="https://en.depfields.com/rtos-task-switch1-apl/" target="_blank" rel="external noopener"><div class="lkc-card"><div class="lkc-info"><img class="lkc-favicon" src="https://www.google.com/s2/favicons?domain=en.depfields.com" alt="" width=16 height=16 /><div class="lkc-domain">Most Powerful Bible to Become an Embedded Engineer</div></div><div class="lkc-content"><figure class="lkc-thumbnail"><img class="lkc-thumbnail-img" src="//depfields.com/wp-content/uploads/pz-linkcard/cache/3a144f0ade8364f4e2d10e60b03de34f38475cd04687a55ddd1fa90e1f50fea0.jpeg" alt="" /></figure><div class="lkc-title"><div class="lkc-title-text">Switching between multiple tasks, Part 1 [STM32 and FreeRTOS] | Most Powerful...</div></div><div class="lkc-url">https://en.depfields.com/rtos-task-switch1-apl/</div><div class="lkc-excerpt">This is a sample program that switches between two tasks with an external switch. A dedicated task is provided to manage the switching.The registered Task A and Task B processes have different LED blinking patterns, but the pushbutton</div></div><div class="clear"></div></div></a></div></div><p>The post <a href="https://depfields.com/rtos-task-switch1-apl/">複数タスクの切り替えその１【STM32とFreeRTOS】</a> first appeared on <a href="https://depfields.com">即戦力モノづくり!エンジニアへの道標</a>.</p>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>複数タスク登録によるマルチタスク【STM32とFreeRTOS】</title>
		<link>https://depfields.com/rtos-multitask-apl/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=rtos-multitask-apl</link>
		
		<dc:creator><![CDATA[めかのとろ]]></dc:creator>
		<pubDate>Thu, 18 Jun 2020 04:36:04 +0000</pubDate>
				<category><![CDATA[RTOSを使ったアプリ]]></category>
		<category><![CDATA[RTOS]]></category>
		<guid isPermaLink="false">https://depfields.com/?page_id=3601</guid>

					<description><![CDATA[<p>登録した 2つのタスクを同時に実行させるサンプルプログラムです。</p>
<p>The post <a href="https://depfields.com/rtos-multitask-apl/">複数タスク登録によるマルチタスク【STM32とFreeRTOS】</a> first appeared on <a href="https://depfields.com">即戦力モノづくり!エンジニアへの道標</a>.</p>]]></description>
										<content:encoded><![CDATA[<div class="veu_autoEyeCatchBox"><img width="640" height="425" src="https://depfields.com/wp-content/uploads/2020/06/computer-1245714_640.jpg" class="attachment-large size-large wp-post-image" alt="" decoding="async" srcset="https://depfields.com/wp-content/uploads/2020/06/computer-1245714_640.jpg 640w, https://depfields.com/wp-content/uploads/2020/06/computer-1245714_640-300x199.jpg 300w" sizes="(max-width: 640px) 100vw, 640px" /></div>
<p class="vk_block-margin-sm--margin-top vk_block-margin-sm--margin-bottom"><a href="https://depfields.com/task/" target="_blank" rel="noreferrer noopener"> <strong>登録した 2つのタスクを同時に実行させる</strong></a>サンプルプログラムです。</p>



<div class="wp-block-vk-blocks-balloon vk_balloon vk_balloon-position-left vk_balloon-type-speech vk_balloon-animation-none"><div class="vk_balloon_icon"><figure><img decoding="async" class="vk_balloon_icon_image vk_balloon_icon_image-type-normal " src="https://depfields.com/wp-content/uploads/2020/05/instructor.jpg" alt=""/><figcaption class="vk_balloon_icon_name">めかのとろ</figcaption></figure></div><div class="vk_balloon_content_outer"><div class="vk_balloon_content  "><span class="vk_balloon_content_before "></span><span class="vk_balloon_content_after "></span>
<p>RTOSを使用するとまったく異なる内容の処理を同時に実行させることが容易に実現できます。これと同じことをRTOSを使わずに実行するのはほぼ無理で、時間の無駄であると考えます。RTOSではサンプルプログラムにあるように簡単な記述でいとも簡単に実行できてしまいます。</p>
</div></div></div>



<div class="wp-block-vk-blocks-balloon vk_balloon vk_balloon-position-left vk_balloon-type-speech vk_balloon-animation-none"><div class="vk_balloon_icon"><figure><img decoding="async" class="vk_balloon_icon_image vk_balloon_icon_image-type-normal " src="https://depfields.com/wp-content/uploads/2020/05/instructor.jpg" alt=""/><figcaption class="vk_balloon_icon_name">めかのとろ</figcaption></figure></div><div class="vk_balloon_content_outer"><div class="vk_balloon_content  "><span class="vk_balloon_content_before "></span><span class="vk_balloon_content_after "></span>
<p>２つの処理を行うために２種類のタスクを登録して、1つ目のタスクではLED点滅を1000ms毎に、他方のタスクでは500ms毎に行うプログラムです。</p>
</div></div></div>



<div class="wp-block-vk-blocks-balloon vk_balloon vk_balloon-position-left vk_balloon-type-speech vk_balloon-animation-none"><div class="vk_balloon_icon"><figure><img decoding="async" class="vk_balloon_icon_image vk_balloon_icon_image-type-normal " src="https://depfields.com/wp-content/uploads/2020/05/instructor.jpg" alt=""/><figcaption class="vk_balloon_icon_name">めかのとろ</figcaption></figure></div><div class="vk_balloon_content_outer"><div class="vk_balloon_content  "><span class="vk_balloon_content_before "></span><span class="vk_balloon_content_after "></span>
<p>RTOSを使用しない場合は、これまでは処理のサイクル期間を設けるためにdelay_ms関数を挿入していましたが、FreeRTOSではvTaskDelay関数で設定できます。タスクの実行周期を簡単に設定できることもRTOSを使用する大きな利点です。</p>
</div></div></div>



<figure class="wp-block-image size-large is-resized"><img decoding="async" src="https://depfields.com/wp-content/uploads/2020/08/rtos-led-nucleo.jpg" alt="" class="wp-image-5162" width="352" height="396" srcset="https://depfields.com/wp-content/uploads/2020/08/rtos-led-nucleo.jpg 352w, https://depfields.com/wp-content/uploads/2020/08/rtos-led-nucleo-267x300.jpg 267w" sizes="(max-width: 352px) 100vw, 352px" /><figcaption>RTOSマルチタスクアプリ</figcaption></figure>



<div class='w3eden'><!-- WPDM Link Template: Default Template -->

<div class="link-template-default card mb-2">
    <div class="card-body">
        <div class="media">
            <div class="mr-3 img-48"><img class="wpdm_icon" alt="アイコン"   src="https://depfields.com/wp-content/plugins/download-manager/assets/file-type-icons/box_download.png" /></div>
            <div class="media-body">
                <h3 class="package-title"><a href='https://depfields.com/download/multi-tasks/'>複数タスク登録によるマルチタスク</a></h3>
                <div class="text-muted text-small"><i class="fas fa-copy"></i> 1 ファイル <i class="fas fa-hdd ml-3"></i> 2.71 KB</div>
            </div>
            <div class="ml-3">
                <a href='#unlock' class='wpdm-download-link wpdm-download-locked btn btn-primary ' data-package='3606'>ダウンロード</a>
            </div>
        </div>
    </div>
</div>

</div>



<div class="linkcard"><div class="lkc-external-wrap"><a class="lkc-link no_icon" href="https://en.depfields.com/rtos-multitask-apl/" target="_blank" rel="external noopener"><div class="lkc-card"><div class="lkc-info"><img class="lkc-favicon" src="https://www.google.com/s2/favicons?domain=en.depfields.com" alt="" width=16 height=16 /><div class="lkc-domain">Most Powerful Bible to Become an Embedded Engineer</div></div><div class="lkc-content"><figure class="lkc-thumbnail"><img class="lkc-thumbnail-img" src="//depfields.com/wp-content/uploads/pz-linkcard/cache/fadf27a82524adfbea8d9d25aae8294824ab9f71583a09583b8b0660b2aae457.jpeg" alt="" /></figure><div class="lkc-title"><div class="lkc-title-text">Multitasking by registering multiple tasks [STM32 and FreeRTOS] | Most Powerf...</div></div><div class="lkc-url">https://en.depfields.com/rtos-multitask-apl/</div><div class="lkc-excerpt">This is a sample program to execute two registered tasks simultaneously.  Using RTOS, it is easy to execute completely different processes at the same time.  As shown in the sample program, the RTOS can be easily executed with a simpl</div></div><div class="clear"></div></div></a></div></div><p>The post <a href="https://depfields.com/rtos-multitask-apl/">複数タスク登録によるマルチタスク【STM32とFreeRTOS】</a> first appeared on <a href="https://depfields.com">即戦力モノづくり!エンジニアへの道標</a>.</p>]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
