tag:blogger.com,1999:blog-34690227930468966842024-03-14T05:05:38.001+09:00Blog Yamashoやましょうhttp://www.blogger.com/profile/03813044589862913579noreply@blogger.comBlogger41125tag:blogger.com,1999:blog-3469022793046896684.post-56706031068402915542021-07-02T19:28:00.003+09:002021-07-05T21:16:24.698+09:00高砂 KX-100Lをリモートでコントールする(2)<p> </p><p>こんにちは、</p><p>やましょうです。<br />本日から数回に分けて<br />高砂のKX-100Lをリモートでコントロールするの2回目です。</p><p>まずケーブルですが、結局インターリンクケーブルで動くようです。</p><p>やましょうは、下記を購入して動きましたが、動かなくても保障はしません。</p><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/_JP1XL8dr87VZvcTEJ1E2vSVmOCjUCISjoy6N6Y95kGGShiIbLaI6drAcCgSLlQYn9_G-fwPFkfjn9A=s400" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="400" data-original-width="300" height="320" src="https://1.bp.blogspot.com/_JP1XL8dr87VZvcTEJ1E2vSVmOCjUCISjoy6N6Y95kGGShiIbLaI6drAcCgSLlQYn9_G-fwPFkfjn9A=s320" /></a></div><p></p><br /><p>次にコマンドですが、</p><p>電圧設定"OV"コマンド</p><p>電流設定"OC"コマンド</p><p>出力on/off "OT"コマンド</p><p><br /></p><p>このあたりをごにょごにょすると、</p><p></p><div class="separator" style="clear: both; text-align: center;"></div><div class="separator" style="clear: both; text-align: center;"></div><div class="separator" style="clear: both; text-align: center;"><a href="https://lh3.googleusercontent.com/-eDzMJjOyC5A/YN7pPhIIDlI/AAAAAAAACus/Er-OZVHxiec_qHx35lfOzMWSANv3fzNqwCLcBGAsYHQ/SnapCrab_KX-100%2BCONTROLER%2B%2B%2528C%2529%2B2021%2BYAMASHO_2021-7-2_19-23-42_No-00.png" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="389" data-original-width="787" height="158" src="https://lh3.googleusercontent.com/-eDzMJjOyC5A/YN7pPhIIDlI/AAAAAAAACus/Er-OZVHxiec_qHx35lfOzMWSANv3fzNqwCLcBGAsYHQ/SnapCrab_KX-100%2BCONTROLER%2B%2B%2528C%2529%2B2021%2BYAMASHO_2021-7-2_19-23-42_No-00.png" width="320" /></a></div>こんな感じのアプリができました<p></p><p></p><p>ダウンロードは<a href="https://drive.google.com/file/d/1nY69vvXOUIbdnA6g6vKA2vL3U6LzmM3o/view?usp=sharing">こちらから</a>、</p><p></p><p></p><p>以上</p><p>やましょうでした。<br /><br /></p><p></p><br />やましょうhttp://www.blogger.com/profile/03813044589862913579noreply@blogger.com0tag:blogger.com,1999:blog-3469022793046896684.post-24021303000948793872021-07-01T17:10:00.003+09:002021-07-01T17:11:43.075+09:00高砂 KX-100Lをリモートでコントールする(1)<p>こんにちは、</p><p>やましょうです。<br />本日から数回に分けて<br />高砂のKX-100Lをリモートでコントロールするをお送りします。</p><p>高砂のKX-100にはRS-232Cでコントールできる機能があります。<br />この機能を用いてコントロールできます。</p><p>今日は接続についてです。</p><p>まず。</p><p>下記リンクのケーブが必要です。<br />https://www.takasago-ss.co.jp/products/power_electronics/dc/kx/image/rs_cross_cable.png</p><p><br /></p><p>私持つ232Cクロスではダメで私は自作しました。<br />ストレートケーブルを切って自作です。</p><p> よくよく調べてみるとインターリンクのクロスケーブルですと行けそうです。</p><p>来たら確認してます。</p><p><br /></p><p>さて、基本動作確認です。<br />A1 出力ONを送付しています。</p><p>送付コマンドは <br /></p><p>A1OT1[CRLF]</p><p>となります。</p><p>いつもの様にDELPHIでWUNI232Cコンポーネントを張り付け<br />SPEEDを9600 bps<br />flowcontrol noneにして下記をコード貼り付けます。</p><p>procedure TForm21.Button1Click(Sender: TObject);<br />var<br /> WriteBuffer : array [0..10] of byte;<br />begin<br /> if(not WUni232c1.Connect) then<br /> begin<br /> Wuni232c1.Port := 1;<br /> Wuni232c1.Open();<br /> WriteBuffer[0] := byte('A');<br /> WriteBuffer[1] := byte('1');<br /> WriteBuffer[2] := byte(',');<br /> WriteBuffer[3] := byte('O');<br /> WriteBuffer[4] := byte('T');<br /> WriteBuffer[5] := byte('1');<br /> WriteBuffer[6] := $0d;<br /> WriteBuffer[7] := $0a;<br /> Wuni232c1.Write(8,@WriteBuffer);<br /> end;<br />end;</p><p></p><p></p><p></p><p> 実行すると、remote接続できました。</p><p>動画で <br /></p><p><a href="https://youtu.be/qOkXyYYfKac"></a></p><div class="separator" style="clear: both; text-align: center;"><a href="https://youtu.be/qOkXyYYfKac"><iframe allowfullscreen="" class="BLOG_video_class" height="266" src="https://www.youtube.com/embed/qOkXyYYfKac" width="320" youtube-src-id="qOkXyYYfKac"></iframe></a></div><a href="https://youtu.be/qOkXyYYfKac"><br /><br /></a><p></p><p>こんな感じになります。</p><p></p><p>以上</p><p></p><p>やましょうでした。<br /><br /></p><p><br /></p><p><br /></p><p><br /></p>やましょうhttp://www.blogger.com/profile/03813044589862913579noreply@blogger.com0tag:blogger.com,1999:blog-3469022793046896684.post-4363224210215126892021-06-10T17:33:00.003+09:002021-06-10T23:16:13.312+09:00Stm32 Cube Programerで量産書込みを行う。<p> こんにちは、やましょうです。</p><p> </p><p>STM32 で量産書込みがしたい。。</p><p>ということで、今まではStm32 ST-link Utilityを使用していた訳ですが。</p><p>Stさん曰く、Stm32 Cube programerをお使いくださいということで、</p><p>Stm32 Cube Programer で書込みしたいと思います。</p><p>まず量産書込みでGUIは超絶面倒ですので、CLIを使用します。</p><p>C:\Program Files\STMicroelectronics\STM32Cube\STM32CubeProgrammer\bin>STM32_Programmer_CLI.EXEを実行するのみです。<br /></p><p> </p><p>書込み方法としては</p><p>①SWDで接続 </p><p>-c port=SWD <br /></p><p>②OPTION BYTEのRDPをLEVEL0 = 0XAAにするこれよってリード可能</p><p> -ob rdp=0xaa <br /></p><p>③全エリアイレース</p><p>-e all</p>④HEX書込み<p>-w yours.hex <br /></p><p>⑤ベリファイ</p><p>-v <br /></p><p>⑥OPTION BYTEのRDPをLEVEL0 = 0XBBにするこれよってリード不可能</p><p>-ob rdp=0xbb <br /></p><p>という順で行います。</p><p> </p><p>引数に設定すれば良いので。</p><p>STM32_Programmer_CLI -c port=SWD -e all -w yours.hex -v -ob rdp=0xbb</p><p>とすればできます。</p><p>実行結果は、</p><p><br />C:\Program Files\STMicroelectronics\STM32Cube\STM32CubeProgrammer\bin>STM32_Programmer_CLI -c port=SWD -ob rdp=0xaa -e all -w yours.hex -v -ob rdp=0xbb<br /> -------------------------------------------------------------------<br /> STM32CubeProgrammer v2.7.0<br /> -------------------------------------------------------------------<br /><br />ST-LINK SN : 34FFxxxxxxxxxxxxxxxx<br />ST-LINK FW : V2J37S7<br />Board : --<br />Voltage : 3.24V<br />SWD freq : 4000 KHz<br />Connect mode: Normal<br />Reset mode : Software reset<br />Device ID : 0x457<br />Revision ID : Rev Z<br />Device name : STM32L01x/L02x<br />Flash size : 16 KBytes<br />Device type : MCU<br />Device CPU : Cortex-M0+<br /><br /><br />UPLOADING OPTION BYTES DATA ...<br /><br /> Bank : 0x00<br /> Address : 0x4002201c<br /> Size : 104 Bytes<br /><br />ロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロ 100%<br /><br /> Bank : 0x01<br /> Address : 0x1ff80000<br /> Size : 16 Bytes<br /><br />ロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロ 100%<br /><br /><br />PROGRAMMING OPTION BYTES AREA ...<br /><br /> Bank : 0x01<br /> Address : 0x1ff80000<br /> Size : 16 Bytes<br /><br />ロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロ 100%<br /><br />Reconnecting...<br />Reconnected !<br /><br /><br />UPLOADING OPTION BYTES DATA ...<br /><br /> Bank : 0x00<br /> Address : 0x4002201c<br /> Size : 104 Bytes<br /><br />ロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロ 100%<br /><br /> Bank : 0x01<br /> Address : 0x1ff80000<br /> Size : 16 Bytes<br /><br />ロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロ 100%<br /><br />OPTION BYTE PROGRAMMING VERIFICATION:<br /><br />Option Bytes successfully programmed<br /><br /><br />Mass erase ...<br /><br />Mass erase successfully achieved<br /><br /><br />Memory Programming ...<br />Opening and parsing file: yours.hex<br /> File : yours.hex<br /> Size : 1 Bytes<br /> Address : 0x08000000<br /><br /><br />Erasing memory corresponding to segment 0:<br />Erasing internal memory sectors [0 7]<br />Download in Progress:<br />ロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロ 100%<br /><br />File download complete<br />Time elapsed during download operation: 00:00:01.053<br /><br /><br /><br />Verifying ...<br /><br /><br />Read progress:<br />ロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロ 100%<br /><br />Download verified successfully<br /><br /><br /><br />PROGRAMMING OPTION BYTES AREA ...<br /><br /> Bank : 0x01<br /> Address : 0x1ff80000<br /> Size : 16 Bytes<br /><br />ロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロ 100%<br /><br />Reconnecting...<br />Reconnected !<br /><br /><br />UPLOADING OPTION BYTES DATA ...<br /><br /> Bank : 0x00<br /> Address : 0x4002201c<br /> Size : 104 Bytes<br /><br />ロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロ 100%<br /><br /> Bank : 0x01<br /> Address : 0x1ff80000<br /> Size : 16 Bytes<br /><br />ロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロロ 100%<br /><br />OPTION BYTE PROGRAMMING VERIFICATION:<br /><br />Option Bytes successfully programmed<br /><br /></p><p>という形で完了します。</p><p><br /></p><p>ここで疑問さて、HEXは良いとしてもOPTION BYTEの正当性確認どうするんじゃろう?</p><p>(謎)<br /></p><p>以上</p><p>やましょうでした。<br /></p><p> </p>やましょうhttp://www.blogger.com/profile/03813044589862913579noreply@blogger.com0tag:blogger.com,1999:blog-3469022793046896684.post-34873714468810791242021-06-09T16:07:00.004+09:002021-06-09T16:07:33.004+09:00CO2濃度をマイコンで取得してみる。<p>こんにちは、やましょうです。</p><p>以前DELPHIで取得しました</p><p>CO2濃度の表示をマイコン化しました</p><p><br /></p><p>動画はこんな感じです。</p><div class="separator" style="clear: both; text-align: center;"><iframe allowfullscreen="" class="BLOG_video_class" height="266" src="https://www.youtube.com/embed/wXoTvTGX6Vw" width="320" youtube-src-id="wXoTvTGX6Vw"></iframe></div><br /><p></p><p>回路図等は明日。</p><p> </p><p>以上 やましょうでした。</p><p> <br /></p><p><br /></p><p><br /></p>やましょうhttp://www.blogger.com/profile/03813044589862913579noreply@blogger.com0tag:blogger.com,1999:blog-3469022793046896684.post-90914505897501306812021-05-31T18:06:00.002+09:002021-06-01T00:49:43.388+09:00Delphi を使ってCO2濃度を表示してみる。<p>こんにちは</p><p></p><p> </p><p>やましょうです。</p><p> </p><h1 style="text-align: left;">CO2濃度が見たい</h1><p></p><p>これからエアコンの季節 <br /></p><p>例の流行り病でCO2濃度の表示が欲しいところですね。</p><p> </p><p>マイコン化する前に</p><p></p><p>Delphi を使ってWindows上でCO2濃度を表示してみます。</p><p></p><p> </p><h2 style="text-align: left;">必要な物</h2><p>CO2センサーモジュール MH-Z19C</p><p><a href="https://akizukidenshi.com/catalog/g/gM-16142/ " target="_blank">https://akizukidenshi.com/catalog/g/gM-16142/ <br /></a></p><p> USB UART変換 AE-UM232R( Arduinoでもよいと思う)<br /></p><p><a href="https://akizukidenshi.com/catalog/g/gK-06693/">https://akizukidenshi.com/catalog/g/gK-06693/</a></p><p><br /></p><h2 style="text-align: left;">配線<br /></h2><p>接続 こんな感じに接続<span style="color: red;"><br />(AE-UM232RのDIP SWの位置が重要 TXを3.3Vにするため)</span></p><p>★秋月のページにI/F電圧3.3Vって書いてあるので念のため3.3V設定にしています。</p><p> <br /></p><p></p><div class="separator" style="clear: both; text-align: center;"><a href="https://lh3.googleusercontent.com/-fOo73RwlFqU/YLShwIfV5fI/AAAAAAAACsU/P5VLaCRzc-QpB1b9KvwLJtacYEqgf279wCLcBGAsYHQ/IMG_3389.JPG" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="2048" data-original-width="1536" height="240" src="https://lh3.googleusercontent.com/-fOo73RwlFqU/YLShwIfV5fI/AAAAAAAACsU/P5VLaCRzc-QpB1b9KvwLJtacYEqgf279wCLcBGAsYHQ/IMG_3389.JPG" width="180" /></a></div>赤:+5v(vbus) <p></p><p>黒:GND</p><p>青:CO2センサーTX=>変換IC RX</p><p>白:CO2センサーRX=>変換IC TX</p><p> </p><h2>必要なコンポーネント</h2><p>COMポート番号を割り出して、DELPHIで以下のソフトを書く</p><p>WUni232cのコードはGetitから10.4以降では削除されたので、</p><p><a href="https://www.csd.co.jp/product/">https://www.csd.co.jp/product/</a></p><p>より取得 してください。</p><p><br /></p><h2 style="text-align: left;">コード<br /></h2><p> /////////////////////コード //////////////////////////////////////////////</p><p>unit Unit20;<br /><br />interface<br /><br />uses<br /> Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,<br /> Vcl.Controls, Vcl.Forms, Vcl.Dialogs, WUni232c, Vcl.ExtCtrls, Vcl.StdCtrls;<br /><br />type<br /> TForm20 = class(TForm)<br /> WUni232c1: TWUni232c;<br /> Timer1: TTimer;<br /> Label1: TLabel;<br /> Label2: TLabel;<br /> Label3: TLabel;<br /> procedure FormCreate(Sender: TObject);<br /> procedure Timer1Timer(Sender: TObject);<br /> private<br /> { Private 宣言 }<br /> ReadData: array [0..9] of byte;<br /> public<br /> { Public 宣言 }<br /> end;<br /><br />var<br /> Form20: TForm20;<br /><br /> { 0 1 2 3 4 5 6 7 8 }<br />const CMD_SensorON : array [0..8] of BYTE = ( $ff,$01,$79,$A0,$00,$00,$00,$00,$E6 );<br />const CMD_SensorOFF : array [0..8] of BYTE = ( $ff,$01,$79,$00,$00,$00,$00,$00,$86 );<br />const CMD_SensorRead: array [0..8] of BYTE = ( $ff,$01,$86,$00,$00,$00,$00,$00,$79 );<br /><br /><br /><br />implementation<br /><br />{$R *.dfm}<br /><br />procedure TForm20.FormCreate(Sender: TObject);<br />begin<br /> if WUni232c1.Open < 0 then<br /> begin<br /> Self.Caption := 'Comポートエラー';<br /> exit;<br /> end;<br /> Wuni232c1.Write(sizeof(CMD_SensorON),@CMD_SensorOn);<br /> Timer1.Enabled := True;<br />end;<br /><br /><br />procedure TForm20.Timer1Timer(Sender: TObject);<br />var<br />ReadCount : Byte;<br />Sum : Byte;<br /> i: Integer;<br />begin<br /> ReadCount := Wuni232c1.Read(10,@ReadData);<br /> Label3.Caption := IntToStr(ReadCount)+'/'+IntToStr(ReadData[2])+'/'+IntToStr(ReadData[3]);<br /> if(ReadCount = 9) then<br /> begin<br /> // sum Check<br /> sum := 0;<br /> for i := 0 to 7 do<br /> Sum := Sum+ ReadData[i];<br /> sum := $ff-Sum;<br /> if(Sum = ReadData[8] ) then<br /> begin<br /> Label2.Caption := IntToStr(ReadData[2]*256+ReadData[3])+'ppm';<br /><br /> end;<br /> end<br /> else<br /> begin<br /> // あまりの受信データをすべて捨てる<br /> while(Wuni232c1.Read(10,@ReadData) <> 0) do;<br /> end;<br /> Wuni232c1.Write(sizeof(CMD_SensorRead),@CMD_SensorRead);<br /><br />end;<br />////////////////////////////////////////////////////////////////////////////////////////</p><p></p><p><br /><br />end.</p><p><span style="color: red;"><br /></span></p><h2 style="text-align: left;"><span style="color: red;"><span style="color: black;">動作確認</span></span></h2><p></p><div class="separator" style="clear: both; text-align: center;"><a href="https://lh3.googleusercontent.com/-RhlVr7lmltg/YLSi62QH8VI/AAAAAAAACsc/YYLvPBx0FaAAoyyjwctHwqQFtW3XMLGfwCLcBGAsYHQ/SnapCrab_NoName_2021-5-31_17-47-44_No-00.jpg" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="289" data-original-width="465" height="199" src="https://lh3.googleusercontent.com/-RhlVr7lmltg/YLSi62QH8VI/AAAAAAAACsc/YYLvPBx0FaAAoyyjwctHwqQFtW3XMLGfwCLcBGAsYHQ/SnapCrab_NoName_2021-5-31_17-47-44_No-00.jpg" width="320" /></a></div><br />こんな感じで表示される。<p></p><p> </p><p>そしてコードはここに</p><p><a href="https://github.com/qa65000/Co2SensorForDelphi">https://github.com/qa65000/Co2SensorForDelphi</a></p><p> </p><p>以上</p><p>やましょうでした。</p><p> <br /></p><p><br /></p><p><br /></p><p><br /></p>やましょうhttp://www.blogger.com/profile/03813044589862913579noreply@blogger.com0tag:blogger.com,1999:blog-3469022793046896684.post-41769436881806271412021-04-28T13:24:00.005+09:002021-04-28T13:24:55.697+09:00HAL STM32 GPIO EDGE検出 を割込みを使わずに行う方法。<p></p><p> こんにちは</p><p>やましょうです。 <br /></p><p> </p><p>なんかなんでも割り込みって風潮はよくない。</p><p>割込みは最小限度の処理であとはメインで処理すべきと思っているやましょうです。 </p><p></p><p><br /></p><p>STM32に限らず、ポートの変化でSPIで取込みとかよくある話なんですけど。</p><p>そのポートの変化検出で割込みにする必要ないんですよね。。。</p><p>通知だけですからね。。。ってことで割込みにせずSTM32で検知する方法で。</p><p>STM32 CUBE MXでのNVICでポートの割込みのチェックボックスをオフします。</p><p>その後code gane! <br /></p><p>あとはメインで、 EXTI ペンディングレジスタ(EXTI_PR)を見るだけですね。</p><p><br /></p><p>例:</p><p><span> </span>if(EXTI->PR & EXTI_PR_PR1)</p><p><span> </span>{<span> </span>/*エッジ検出 <span> */</span></p><p><span><span> </span><span> </span><span> </span></span><span>EXTI->PR |= EXTI_PR_PR1; <span> </span>// 検出結果リセット <br /></span></p><p><span><span> <span> </span><span> </span>/* エッジ時の処理。。。。*<br /></span></span></p><p><span><span> </span>} </span></p><p><span> </span></p><p><span>以上</span></p><p><span>やましょうでした。</span></p><p><span> </span> <br /></p>やましょうhttp://www.blogger.com/profile/03813044589862913579noreply@blogger.com0tag:blogger.com,1999:blog-3469022793046896684.post-79781399199402494532021-04-28T10:11:00.002+09:002021-04-28T10:11:19.772+09:00HAL STM32 MASTER-SPI使用時 起動後即SCKがHIGHにならない問題の対応<p> こんにちは、やましょうです。</p><p> STM32のSPI-MASTERでSPIで通信を行っていないときにCLOCKラインをHIGHにしておきたいのですが、なぜかCUBE MXの吐き出すコードだと<span style="color: red;">、<i><b>1度SPIを使用するまでCLOCKラインがLOWですね。</b></i></span></p><p> まぁ、問題はないんでしょうけど、最初だけ通常時と異なるのはちょっと考えてしまいますよね。</p><p> </p><p>波形としてこんな感じです。(上の黄色がCLOCK)</p><p> </p><p></p><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-ljx_lOxYHq0/YIizXZfacbI/AAAAAAAACo0/rfv96DXAuGop1iP01XywXu3IYLfO9kT1ACLcBGAsYHQ/s640/0018.TIF" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="480" data-original-width="640" src="https://1.bp.blogspot.com/-ljx_lOxYHq0/YIizXZfacbI/AAAAAAAACo0/rfv96DXAuGop1iP01XywXu3IYLfO9kT1ACLcBGAsYHQ/s320/0018.TIF" width="320" /></a></div><p></p><p>この原因を調査すると、</p><p>SPI_CR1の SPE BITの設定ですね。</p><p>(注意:SPE BITはいろいろな回路に使われている様でON時には設定変更はできない様なことが書いてあります。)</p><p>6 SPE:SPI ペリフェラル イネーブル フラグな様です。</p><p> </p><p>対応 SPIの初期化部でフラグオンを追加します。</p><p> /* USER CODE BEGIN SPI1_Init 2 */<br /><span style="color: red;"> __HAL_SPI_ENABLE(&hspi1);<br /></span> <br /> /* USER CODE END SPI1_Init 2 */<br /><br />} <br /></p><p> 対応後</p><p></p><div class="separator" style="clear: both; text-align: center;"></div><div class="separator" style="clear: both; text-align: center;"></div><div class="separator" style="clear: both; text-align: center;"></div><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-LLU0ghbBPeE/YIi16v9H1fI/AAAAAAAACo8/Z0G5wHun5nkI38AX14SuPW8BjL5C2hp5ACLcBGAsYHQ/s640/0019.TIF" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="480" data-original-width="640" src="https://1.bp.blogspot.com/-LLU0ghbBPeE/YIi16v9H1fI/AAAAAAAACo8/Z0G5wHun5nkI38AX14SuPW8BjL5C2hp5ACLcBGAsYHQ/s320/0019.TIF" width="320" /></a></div> 最初の時点でHIGHになりました。<p></p><p> </p><p>以上</p><p>やましょうでした。</p><p> <br /></p><p> </p><p><br /></p>やましょうhttp://www.blogger.com/profile/03813044589862913579noreply@blogger.com0tag:blogger.com,1999:blog-3469022793046896684.post-8960447561695752132020-09-10T15:45:00.002+09:002020-09-10T16:07:45.652+09:00Delphi Fmx Edit+SpinEditButtonで長押しが効かない問題対応<p>こんにちは、</p><p>おひさしぶり。</p><p>やましょうです。</p><h1 style="text-align: left;">Delphi Fmx Edit+SpinEditButtonで長押しが効かない <br /></h1><p> 久々にWindowsでDelphiのお仕事があったのですが、</p><p>仕様書ちょっとボタンの色 が青だったので、いいやFmxでって作って</p><p>SpinEdit痛い目にあったので、対応方法含めまとめてみました。</p><h2 style="text-align: left;">1.VCLでの動作<br /></h2><p>まずVclで確認です。 </p><div class="separator" style="clear: both; text-align: center;"><iframe allowfullscreen="" class="BLOG_video_class" height="266" src="https://www.youtube.com/embed/qVclfbHJ-Mk" width="320" youtube-src-id="qVclfbHJ-Mk"></iframe></div><p>ってVCLでまぁ長押しで連続UP/DOWNはできているのですが、なぜ、押してすぐに±1しないってバグ?というか仕様といかという部分はありますが、動画のように連続UP/DOWNできます。</p><h2 style="text-align: left;">2.FMXでの確認 <br /></h2><p>FMXで動かすSpinEditButtonのイベントはOnUpClickかOnDownClickしかありません。<br />しかも、離した時に動作します。<br />(これでは外から押されたときに処理を開始、<br />離されたらやめるということもできません。)<br />以下動画</p><p></p><div class="separator" style="clear: both; text-align: center;"></div><div class="separator" style="clear: both; text-align: center;"></div><div class="separator" style="clear: both; text-align: center;"></div><div class="separator" style="clear: both; text-align: center;"></div><div class="separator" style="clear: both; text-align: center;"></div><div class="separator" style="clear: both; text-align: center;"></div><div class="separator" style="clear: both; text-align: center;"></div><div class="separator" style="clear: both; text-align: center;"><iframe allowfullscreen="" class="BLOG_video_class" height="266" src="https://www.youtube.com/embed/Tpazvpu5nnU" width="320" youtube-src-id="Tpazvpu5nnU"></iframe></div><p></p><h2 style="text-align: left;"> <br /></h2><div style="text-align: left;"> 変更のタイミング、この長押し(連続押し)対応言われたの<br />ほぼユーザーの確認が終わって最後の変更時に言われたので超絶焦りました。<br />ってかC#だと簡単にできているので、Delphiでもできると思い込んでいた(笑)。<br />(やっぱ事前確認は必要だね。)</div><h2 style="text-align: left;">2.対応策の検討<br /></h2><div style="text-align: left;">ひとつ前の動画をみればわかりますが、現状離されたら処理になっています。</div><div style="text-align: left;"> <div class="separator" style="clear: both; text-align: center;"></div><div class="separator" style="clear: both; text-align: center;"></div><div class="separator" style="clear: both; text-align: center;"><a href="https://lh3.googleusercontent.com/-dljLBLViQlM/X1nIpoTMxPI/AAAAAAAACYo/IsUZ275oVtYML-xXQG98SeujaQzkIrn4gCLcBGAsYHQ/SnapCrab_NoName_2020-9-10_15-32-19_No-00.png" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="345" data-original-width="646" height="240" src="https://lh3.googleusercontent.com/-dljLBLViQlM/X1nIpoTMxPI/AAAAAAAACYo/IsUZ275oVtYML-xXQG98SeujaQzkIrn4gCLcBGAsYHQ/SnapCrab_NoName_2020-9-10_15-32-19_No-00.png" width="320" /></a></div></div><div style="text-align: left;">こんな感じで処理がされています。</div><div style="text-align: left;"><br /></div><div style="text-align: left;">希望のタイミング</div><div style="text-align: left;"><div class="separator" style="clear: both; text-align: center;"><a href="https://lh3.googleusercontent.com/-gki_kJR8xtY/X1nJuBxpL_I/AAAAAAAACY0/0FyIvl1Dx7wHfs7IacsHtA0VFkH3lv3HQCLcBGAsYHQ/SnapCrab_NoName_2020-9-10_15-37-30_No-00.png" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="377" data-original-width="745" height="240" src="https://lh3.googleusercontent.com/-gki_kJR8xtY/X1nJuBxpL_I/AAAAAAAACY0/0FyIvl1Dx7wHfs7IacsHtA0VFkH3lv3HQCLcBGAsYHQ/SnapCrab_NoName_2020-9-10_15-37-30_No-00.png" width="320" /></a></div></div><div style="text-align: left;"></div><div style="text-align: left;">押されたとき+1、500ms以上の長押し時 100ms/stepでup/downする。</div><p>対応するとこうなります。<br /> <br /></p><div class="separator" style="clear: both; text-align: center;"><iframe allowfullscreen="" class="BLOG_video_class" height="266" src="https://www.youtube.com/embed/U7M2lMBBRas" width="320" youtube-src-id="U7M2lMBBRas"></iframe></div><p></p><p>ってことでめでたしめでたしでした。</p><p> </p><h2 style="text-align: left;"> 対応コード</h2><p>FMX.Edit.pasを以下の赤色の部分を追加もしくは変更してください。</p><p> TSpinEditButton = class(TStyledControl, IEditControl)<br /> strict private<br /> FUpButton: TCustomButton;<br /> FDownButton: TCustomButton;<br /> { Events }<br /> FOnUpClick: TNotifyEvent;<br /> FOnDownClick: TNotifyEvent;<br /><span style="color: red;"> FLongPushTimer: TTimer;</span><br /> protected<br /> { Style }<br /> procedure ApplyStyle; override;<br /> procedure FreeStyle; override;<br /> function GetDefaultStyleLookupName: string; override;<br /> function GetDefaultSize: TSizeF; override;<br /> { Events }<br /><span style="color: red;">// procedure DoUpButtonClick(Sender: TObject);<br />// procedure DoDownButtonClick(Sender: TObject);<br /> procedure LongPushTimerFired(Sender: TObject);<br /> procedure DoUpMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Single);<br /> procedure DoDownMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Single);<br /> procedure DoUpMouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Single);<br /> procedure DoDownMouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Single);</span><br /> { IEditControl }<br /> </p><p>{ TSpinEditButton }<br /><br />procedure TSpinEditButton.ApplyStyle;<br />begin<br /> inherited ApplyStyle;<br /><span style="color: red;"><br /> FLongPushTimer := TTimer.Create(Self);<br /> FLongPushTimer.Interval := 100;<br /> FLongPushTimer.OnTimer := LongPushTimerFired;<br /> FLongPushTimer.Enabled := False;<br /> FLongPushTimer.Tag := 0;</span><br /><br /> if FindStyleResource<TCustomButton>('upbutton', FUpButton) then<br /> begin<br /> FUpButton.TouchTargetExpansion.Bottom := 0;<br /><span style="color: red;">// FUpButton.OnClick := DoUpButtonClick;<br /> FUpButton.OnMouseDown := DoUpMousedown;<br /> FUpButton.OnMouseUp := DoUpMouseUp;</span><br /> end;<br /> if FindStyleResource<TCustomButton>('downbutton', FDownButton) then<br /> begin<br /> FDownButton.TouchTargetExpansion.Top := 0;<br /><span style="color: red;">/// FDownButton.OnClick := DoDownButtonClick;<br /> FDownButton.OnMouseDown := DoDownMousedown;<br /> FDownButton.OnMouseUp := DoDownMouseUp</span>;<br /> end;<br />end;<br /><span style="color: red;"><br />procedure TSpinEditButton.LongPushTimerFired(Sender: TObject);<br />begin<br /> if( FLongPushTimer.tag = $10) then<br /> begin {up 方向連続押し}<br /> if Assigned(FOnUpClick) then<br /> FOnUpClick(Self);<br /> end<br /> else<br /> if( FLongPushTimer.tag = $20) then<br /> begin {up 方向連続押し}<br /> if Assigned(FOnDownClick) then<br /> FOnDownClick(Self);<br /> end<br /> else<br /> if( FLongPushTimer.tag and $0f <> 0) then<br /> begin<br /> FLongPushTimer.tag := Round(FLongPushTimer.tag.ToSingle-1);<br /> end;<br />end;<br /><br /><br />procedure TSpinEditButton.DoUpMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Single);<br />begin<br /> FLongPushTimer.Enabled := true;<br /> FLongPushTimer.Tag := $15;<br /> if Assigned(FOnUpClick) then<br /> FOnUpClick(Self);<br />end;<br /><br />procedure TSpinEditButton.DoDownMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Single);<br />begin<br /> FLongPushTimer.Enabled := true;<br /> FLongPushTimer.Tag := $25;<br /> if Assigned(FOnDownClick) then<br /> FOnDownClick(Self);<br />end;</span><br /><span style="color: red;"><br /><br />procedure TSpinEditButton.DoUpMouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Single);<br />begin<br /> FLongPushTimer.Enabled := false;<br /> FLongPushTimer.Tag := $00;<br />end;<br /><br />procedure TSpinEditButton.DoDownMouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Single);<br />begin<br /> FLongPushTimer.Enabled := false;<br /> FLongPushTimer.Tag := $00<br />end;</span><br /><br />procedure TSpinEditButton.FreeStyle;<br />begin<br /><span style="color: red;"> if(FUpButton <> nil ) then FUpButton.OnMouseDown := Nil;<br /> if(FUpButton <> nil ) then FUpButton.OnMouseUp := Nil;<br /> if(FDownButton <> nil ) then FDownButton.OnMouseDown := Nil;<br /> if(FDownButton <> nil ) then FDownButton.OnMouseUp := Nil;<br /> if(FLongPushTimer <> Nil) then FLongPushTimer.DisposeOf();</span> <br /></p><p> if FUpButton <> nil then<br /> FUpButton.OnClick := nil;<br /> FUpButton := nil;<br /> if FDownButton <> nil then<br /> FDownButton.OnClick := nil;<br /> FDownButton := nil;</p><p> FOnUpClick := nil;<br /> FOnDownClick:= nil;<br /> inherited FreeStyle;<br />end;<br /> </p><p>以上</p><p> やましょうでした。</p><p><br /></p><p> </p><p></p><p><br /></p>やましょうhttp://www.blogger.com/profile/03813044589862913579noreply@blogger.com0tag:blogger.com,1999:blog-3469022793046896684.post-52816201800442230342020-07-04T23:05:00.000+09:002020-07-04T23:05:00.342+09:00Delphiでバイナリーファイルをexe内に内包する方法こんにちは<br />
<br />
やましょうです。<br />
<br />
今回は、電子工作+winのexe系のネタです。<br />
<br />
Delphiではバイナリーファイルをリソースとして簡単にexe内に内包できます。<br />
<br />
1.プロジェクト=>リソースと画像を選択<br />
追加でファイルを選択<br />
リソースの識別子にuniq名称割り当て(BinData)<br />
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://1.bp.blogspot.com/-toS2mF9I2lM/XwCLzPmGZJI/AAAAAAAACVM/U4GhBj_5JJwJsTKAlOmu1E3E_p9lHFFpQCLcBGAsYHQ/s1600/SnapCrab_NoName_2020-7-4_23-0-9_No-00.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="454" data-original-width="828" height="218" src="https://1.bp.blogspot.com/-toS2mF9I2lM/XwCLzPmGZJI/AAAAAAAACVM/U4GhBj_5JJwJsTKAlOmu1E3E_p9lHFFpQCLcBGAsYHQ/s400/SnapCrab_NoName_2020-7-4_23-0-9_No-00.png" width="400" /> </a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<br />
2.あとは読むコード追加<br />
<br />
var<br /> RS: TResourceStream;<br />begin<br /> RS := TResourceStream.Create(HInstance, 'BinData', RT_RCDATA);<br /> Rs.Read(Buf,sizeof(Buf));<br /> RS.DisposeOf;<br />end;<br />
<br />
これだけで、バイナリーデータを読めます。<br />
あとはmbedドライブ見つけてコピーするもよし、<br />
デバッガ起動してロードさせるもよし、<br />
232cでarduinoに送ってもよしです。<br />
<br />
以上<br />
やましょうでした。<br />
<br />
<br />
<br />
<br />やましょうhttp://www.blogger.com/profile/03813044589862913579noreply@blogger.com0tag:blogger.com,1999:blog-3469022793046896684.post-87578422529993117862020-04-26T15:50:00.002+09:002020-04-27T19:12:10.410+09:00Kicad 表面/裏面だけ(部品や配線)が見たい。こんにちは、<br />
やましょうです。<br />
<br />
KI-CADで他人の作ったファイルをみるのですが、部品多すぎで、よくわらかんとなったりする。<br />
表面部品だけ、裏面部品だけが知りたいのですが、<br /><div>
画面に表示するときに両面に自動でなる。非常にうざい、本当にうざい。</div><div>表面部品(配線込み)、裏面部品(配線込み)をファイル毎に別けるEXEをつくりました。</div>
(塗り潰しは対応していません。) <br />
<br />
<a href="http://1.bp.blogspot.com/-5IZ8isafrmM/XqUvAldbMjI/AAAAAAAACPA/2h-fSUtqrWg1wFHtoHRHgbI0ZH8s3zWKQCK4BGAYYCw/s1600/SnapCrab_NoName_2020-4-26_15-49-24_No-00.png"><img border="0" height="74" src="https://1.bp.blogspot.com/-5IZ8isafrmM/XqUvAldbMjI/AAAAAAAACPA/2h-fSUtqrWg1wFHtoHRHgbI0ZH8s3zWKQCK4BGAYYCw/s320/SnapCrab_NoName_2020-4-26_15-49-24_No-00.png" width="320" /></a><br />
...のところを押してファイルを指定してください。 <br />
ダウンロードは<a href="https://drive.google.com/open?id=1GXeXxw1JFkyP5DzO4WCKON49BqpJ7F0I">ここ</a>から拾ってください。<br />
指定したファイル名の.Kicad_pcbから<br />
例: <br />
<a href="http://4.bp.blogspot.com/-BGAKe4yGb8c/XqUuVQA340I/AAAAAAAACOk/hB8wiqaBDx83MCdBHXPLHkNJB3nqV2C8QCK4BGAYYCw/s1600/SnapCrab_NoName_2020-4-26_15-36-18_No-00.png"><img border="0" height="196" src="https://4.bp.blogspot.com/-BGAKe4yGb8c/XqUuVQA340I/AAAAAAAACOk/hB8wiqaBDx83MCdBHXPLHkNJB3nqV2C8QCK4BGAYYCw/s320/SnapCrab_NoName_2020-4-26_15-36-18_No-00.png" width="320" /></a><br />
<br />
表面部品ファイル:指定したファイル名_Front.Kicad_pcb<br />
<a href="http://3.bp.blogspot.com/-JT3QNH_ARn8/XqUuyk5d3HI/AAAAAAAACOw/RwnH2Md4_Og3rTz07ikgEeO0zDi7vrbyQCK4BGAYYCw/s1600/SnapCrab_NoName_2020-4-26_15-47-59_No-00.png"><img border="0" height="209" src="https://3.bp.blogspot.com/-JT3QNH_ARn8/XqUuyk5d3HI/AAAAAAAACOw/RwnH2Md4_Og3rTz07ikgEeO0zDi7vrbyQCK4BGAYYCw/s320/SnapCrab_NoName_2020-4-26_15-47-59_No-00.png" width="320" /></a><br />
<br />
裏面部品ファイル:指定したファイル名_Rear.Kicad_pcb<br />
<a href="http://3.bp.blogspot.com/-clqRW_2W7lc/XqUu1CaLQUI/AAAAAAAACO4/H28dMgb3hNc7BFUoVACjNj59Tc_6Iq6FQCK4BGAYYCw/s1600/SnapCrab_NoName_2020-4-26_15-48-28_No-00.png"><img border="0" height="200" src="https://3.bp.blogspot.com/-clqRW_2W7lc/XqUu1CaLQUI/AAAAAAAACO4/H28dMgb3hNc7BFUoVACjNj59Tc_6Iq6FQCK4BGAYYCw/s320/SnapCrab_NoName_2020-4-26_15-48-28_No-00.png" width="320" /></a><br />
という2つのファイルに分離します。<br />
<br />
<br />
ということでやましょうでした。<br />
<br />
<br />やましょうhttp://www.blogger.com/profile/03813044589862913579noreply@blogger.com0tag:blogger.com,1999:blog-3469022793046896684.post-10849240832432136192020-03-18T15:07:00.001+09:002020-03-18T15:07:11.434+09:00秋月製 STM32F303K8 使用マイコンボードの使用例こんにちは、 STM32の本を前書きしか書いていない。<br />
やましょうです。<br />
<br />
2020/3/4に突如して秋月電子通商さんから発売された<br />
STM32F303K8使用マイコンボードの使用方法についてレポートしていきたいと思います。<br />
<br />
まず、外見みて思うのなんでデバッグポートを14PINにしたの。。。ってことです。<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://1.bp.blogspot.com/-9HABitP2Ytw/XnGlroRRldI/AAAAAAAACAQ/WeZvAS8tJk4XosDpYr-TMwMjmpx63D6HgCLcBGAsYHQ/s1600/IMG_1764.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1600" data-original-width="1200" height="640" src="https://1.bp.blogspot.com/-9HABitP2Ytw/XnGlroRRldI/AAAAAAAACAQ/WeZvAS8tJk4XosDpYr-TMwMjmpx63D6HgCLcBGAsYHQ/s640/IMG_1764.JPG" width="480" /></a></div>
<br />
ARM系のマイコンは最近10PIN 5x2の1.27mmピッチですよね。<br />
ってことで右端の2本、と左端の2本を曲げます。<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://1.bp.blogspot.com/-WVET4SvFUGs/XnG6HdB6J2I/AAAAAAAACA0/tBFDcYQuGHIw4efcQnQ5Yo7CW4PPSk4fACLcBGAsYHQ/s1600/IMG_1767.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1200" data-original-width="1600" height="240" src="https://1.bp.blogspot.com/-WVET4SvFUGs/XnG6HdB6J2I/AAAAAAAACA0/tBFDcYQuGHIw4efcQnQ5Yo7CW4PPSk4fACLcBGAsYHQ/s320/IMG_1767.JPG" width="320" /> </a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
そしてデバッガをつなげて完成です。<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://1.bp.blogspot.com/-xLjFF66tU34/XnG6dajI3nI/AAAAAAAACA8/Dyvk7eeoo9cRqvD6VBn4NWhQ1xFspWxgQCLcBGAsYHQ/s1600/IMG_1768.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1600" data-original-width="1600" height="320" src="https://1.bp.blogspot.com/-xLjFF66tU34/XnG6dajI3nI/AAAAAAAACA8/Dyvk7eeoo9cRqvD6VBn4NWhQ1xFspWxgQCLcBGAsYHQ/s320/IMG_1768.JPG" width="320" /></a></div>
<br />
これで動きました。 <br />
<br />
<br />
<br />
<br />
<br />
<br />やましょうhttp://www.blogger.com/profile/03813044589862913579noreply@blogger.com0tag:blogger.com,1999:blog-3469022793046896684.post-56272064896428076422020-02-18T20:08:00.002+09:002020-02-18T23:46:20.177+09:00Windowsで作成したフォルダー、データファイル、更新ファイルだけ消える事件の対応こんにちは、システム移行中のやましょうです。<br />
<br />
実は、私の環境あまりにも開発ツールが多すぎてシステムディスクを入れ替えで<br />
現在、移行中なのですが、お客様の要望で一端、古いシステムディスクに戻す場合があります。<br />
その時に別のシステムで作成したファイルが全部消える事件が発生したので、<br />
その経緯および対応をまとめておきます。<br />
<br />
図解:<br />
<br />
<span style="color: #e69138;">旧SYSTEM-SSD(a-system) </span> --------- データDISK ここにデータは保存.<br />
WINDOWS-10. D:ドライブ<br />
SSD C:ドライブ<br />
<br />
<br />
<span style="color: blue;">新SYSTEM-SSD(b-system)</span>. --------- データDISK ここにデータは保存.<br />
WINDOWS-10. D:ドライブ<br />
SSD C:ドライブ<br />
<br />
<br />
すべてデータはDドライブに保存していたのです。<br />
<br />
新システム、もしくは、旧システムで起動SSDを変更した際に<br />
以前のシステムで作成したDドライブのファイルやフォルダーが消える事件が発生しました。<br />
<br />
<span style="color: #e69138;">旧SYSTEM-SSD(a-system) </span> --------- データDISK ここにデータは保存.<br />
WINDOWS-10. D:ドライブ<br />
SSD C:ドライブ ここにWORKFOLDERをつくりファイルA.Cをつくります。<br />
<br />
その後、システムSSDのSATAを入れ替えて。<br />
<span style="color: blue;">新SYSTEM-SSD(b-system)</span>. で起動<br />
そして<span style="color: #e69138;">旧SYSTEM-SSD(a-system)</span>に戻ります。<br />
<br />
すると<br />
<span style="color: #e69138;">旧SYSTEM-SSD. </span><span style="color: #ffe599;"> </span> --------- データDISK ここにデータは保存.<br />
WINDOWS-10. D:ドライブ<br />
SSD C:ドライブ <span style="color: red;">WORKFOLDERふくめファイルA.Cがない。</span><br />
<span style="color: red;"><br /></span>
<span style="color: red;">ちなみに本当は約1ヶ月分の作業ファイル全部無くなっていました。</span><br />
<span style="color: red;">(バックアップは大切だね。バックアップからは無事復旧したから良いけど面倒だよね)</span><br />
<br />
当初はMSさんがファイル監視を。。。なんて思ったりしたのですが、<br />
MSさんがそんなことするはずない。と思い、いろいろ調べたところ。<br />
下記のファイルが原因っぽい?思われる事がわかりました。<br />
<br />
それは<br />
<span style="color: red; font-size: x-large;">”Chromeクリーンアップ”</span><br />
そうです。両方のシステムにChromeを入れていたのです。<br />
<div>
<br /></div>
ここからは私の想像、<br />
<span style="color: blue;">新SYSTEM-SSD(b-system)</span>SSDに入っているクリーンアップが、<br />
<span style="color: #e69138;">旧SYSTEM-SSD(a-system)</span>SSD起動した際に作成したファイルをリストと比較し、増えているファイルや変更ファイルを不審なファイルとして認識し、問答無用で消すってことなのかな?とおもっています。(拡張子みているっぽくpstファイルは無事)<br />
詳細は面倒なので調査していないです。<br />
<br />
そして、私の行った解決策、<br />
<span style="color: red; font-size: x-large;">”Chromeクリーンアップ”の停止</span><span style="color: red; font-size: x-large;">でした。</span><br />
<br />
方法は下記にありました。<br />
<a href="https://1-notes.com/windows10-software-reporter-tool/">https://1-notes.com/windows10-software-reporter-tool/</a><br />
<div>
<br /></div>
<div>
そしてクリーンアップを停止してからファイルが消える事件は発生していません。<br />
ファイルやフォルダーが消えたら、上記の対応を試してみてください。<br />
<br />
以上<br />
やましょうした。</div>
<div>
<span style="color: red; font-size: x-large;"><br /></span></div>
<div>
<br /></div>
<span style="color: red; font-size: x-large;"><br /></span>
<br />
<span style="color: red;"><br /></span>
<span style="color: red;"><br /></span>
<br />
<br />やましょうhttp://www.blogger.com/profile/03813044589862913579noreply@blogger.com0tag:blogger.com,1999:blog-3469022793046896684.post-6960168258061842432019-12-22T20:11:00.002+09:002019-12-22T21:25:08.393+09:002019/12/21 mbed 祭りの内容詳細昨日はお疲れ様でした。<br />
やましょうです。<br />
<br />
昨日の内容ですが、会場で打ったので、内容がテキストオンリーでした。<br />
ということでブログにまとめておきます。<br />
あとpdfがなぜかmbedのページから読めん。<br />
pdfはこちら、<a href="https://www.dropbox.com/s/encriv7cgo5s2r9/201912mbed.pdf?dl=0">https://www.dropbox.com/s/encriv7cgo5s2r9/201912mbed.pdf?dl=0</a><br />
<br />
(対策方法はなんかちょっとコード変更すると直るのでたまたま直ったきがしています。) <br />
<br />
1.mbed LPC1768 OS2で1発目のI2Cの波形がでない問題。<br />
12/22日に再調査したところ出たりでなかったりもする模様。<br />
まずコード。<br />
<br />
#include "mbed.h"<br />
<br />
///DigitalInOut SDA(p9, PIN_OUTPUT, OpenDrain, 1);<br />
I2C i2c(p9, p10); // sda, scl<br />
DigitalOut oPow(p8);<br />
DigitalOut oOK(p18);<br />
Serial pc(USBTX, USBRX); // tx, rx<br />
<br />
<br />
int main() {<br />
char cmd[10];<br />
oPow = 0;<br />
<br />
pc.baud(115200);<br />
pc.printf("Program Start\n");<br />
<br />
while(true)<br />
{<br />
wait_ms(100);<br />
oPow = 1;<br />
wait_ms(100);<br />
<br />
///I2C i2c(p9, p10); // sda, scl<br />
//i2c.frequency(50*1000);<br />
<br />
<br />
wait_ms(700);<br />
<br />
cmd[0] = 0x00;<br />
cmd[1] = 0x1C;<br />
oOK = 1;<br />
if(i2c.write(0x0a0, cmd, 2,true))<br />
{<br />
pc.printf("A0 Error \n");<br />
}<br />
oOK = 0;<br />
<br />
if(i2c.read(0x0a1, cmd, 10))<br />
{<br />
pc.printf("A1 Error \n");<br />
}<br />
continue; <br />
}<br />
<br />
<br />
これを動作させるとoOKがHIGH=1の間にI2CのWriteコマンドは発行される筈であるが、<br />
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://1.bp.blogspot.com/-wZudv02cS0Y/Xf9JemqAdqI/AAAAAAAAB6k/gAO6zyVB0BgQq9VMRPUGG1I_YabmExf1QCLcBGAsYHQ/s1600/0244.TIF" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img alt="NG波形全体" border="0" data-original-height="480" data-original-width="640" height="300" src="https://1.bp.blogspot.com/-wZudv02cS0Y/Xf9JemqAdqI/AAAAAAAAB6k/gAO6zyVB0BgQq9VMRPUGG1I_YabmExf1QCLcBGAsYHQ/s400/0244.TIF" title="NG波形全体" width="400" /></a></div>
<span style="font-size: x-large;"><span style="color: red;">なにも波形がでていない。</span></span><br />
<br />
<br />
正常時I2C解析 <br />
<br />
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://1.bp.blogspot.com/-rysTIKGN_Qs/Xf9Jluf-dtI/AAAAAAAAB6o/h8Sq91H1N_suLs5O6LYr-SfkU6yb1BCQQCLcBGAsYHQ/s1600/0249.TIF" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="480" data-original-width="640" height="300" src="https://1.bp.blogspot.com/-rysTIKGN_Qs/Xf9Jluf-dtI/AAAAAAAAB6o/h8Sq91H1N_suLs5O6LYr-SfkU6yb1BCQQCLcBGAsYHQ/s400/0249.TIF" width="400" /></a> </div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<span style="font-size: x-large;"><span style="color: red;">ちゃんと出る場合もある。</span></span><br />
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
NG時I2C解析 </div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://1.bp.blogspot.com/-aP4_7YqQo4c/Xf9Jq6BNG8I/AAAAAAAAB6s/E5q3GHvarIwJy97fpmaFoDH55z2wJnj5ACLcBGAsYHQ/s1600/0247.TIF" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="480" data-original-width="640" height="300" src="https://1.bp.blogspot.com/-aP4_7YqQo4c/Xf9Jq6BNG8I/AAAAAAAAB6s/E5q3GHvarIwJy97fpmaFoDH55z2wJnj5ACLcBGAsYHQ/s400/0247.TIF" width="400" /> </a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
データ解析すると、</div>
<span style="font-size: x-large;"><span style="color: red;">Write関数は呼ばれている。タイムアウトで終了か?Read関数は正常に動作。 </span></span><br />
ということでなにか?まずいのだと思う。<span style="color: #3d85c6;">レジスタの叩き方レベルですかね?(謎)</span><br />
<br />
<br />
<br />
<br />
2.STM32 小さい奴をドライブとして見えなくする方法。<br />
STLINK ユーティリティーを起動しFrimware Version upを押す。<br />
<br />
<div style="text-align: center;">
<a href="http://1.bp.blogspot.com/-_Bzw27U09XI/Xf9O1a5mkhI/AAAAAAAAB7c/ljPzJ1AWKkQOUoENBYbwb8RSZ2q5Mh_WgCK4BGAYYCw/s1600/SnapCrab_STM32%2BST-LINK%2BUtility_2019-12-22_20-8-46_No-00.png" imageanchor="1"><img border="0" height="292" src="https://1.bp.blogspot.com/-_Bzw27U09XI/Xf9O1a5mkhI/AAAAAAAAB7c/ljPzJ1AWKkQOUoENBYbwb8RSZ2q5Mh_WgCK4BGAYYCw/s400/SnapCrab_STM32%2BST-LINK%2BUtility_2019-12-22_20-8-46_No-00.png" width="400" /> </a></div>
<div style="text-align: center;">
<br /></div>
<div style="text-align: left;">
Mass Storageをoffにします。</div>
<div style="text-align: center;">
<a href="http://1.bp.blogspot.com/-bkvPVmCJ6Aw/Xf9PPM9jQiI/AAAAAAAAB7o/X9kaLIdx7l0sIUHS6Q8d-Ck7OdO8WHJlACK4BGAYYCw/s1600/SnapCrab_ST-Link%2BUpgrade_2019-12-22_20-7-53_No-00.png" imageanchor="1"><img border="0" height="206" src="https://1.bp.blogspot.com/-bkvPVmCJ6Aw/Xf9PPM9jQiI/AAAAAAAAB7o/X9kaLIdx7l0sIUHS6Q8d-Ck7OdO8WHJlACK4BGAYYCw/s400/SnapCrab_ST-Link%2BUpgrade_2019-12-22_20-7-53_No-00.png" width="400" /></a> </div>
<div style="text-align: center;">
ボタンを上を選択してYes を押せばできがあり。</div>
<div style="text-align: center;">
<br /></div>
<div style="text-align: center;">
<br /></div>
<div style="text-align: center;">
<br /></div>
<div style="text-align: left;">
以上</div>
<div style="text-align: left;">
やましょうでした。</div>
<div style="text-align: left;">
<br /></div>
<br />
<br />やましょうhttp://www.blogger.com/profile/03813044589862913579noreply@blogger.com0tag:blogger.com,1999:blog-3469022793046896684.post-4588458903117011442019-03-13T17:50:00.002+09:002019-03-13T17:50:24.416+09:00Arm系のコンパイラで”Only virtual folder and links can be created under a virtual folder”が出たときの対策こんにちは、<br />
やましょうです。<br />
<br />
arm系の組み込みにて、<br />
eclipse ベースのide全盛の今日この頃ですが、皆様、お過ごしでしょうか?<br />
<br />
arm系のサンプルに何かファイルを足したいときに右クリックで、ファイルを増やそうすると”Only virtual folder and links can be created under a virtual folder”って出ますよね?<br />
<br />
この場合の対策です。<br />
1.任意フォルダーに追加したいファイル作成します。<br />
"AddCFile.c"とかでもよいと思います。<br />
<br />
2.次にeclipse のprojectファイルツリーで追加したいフォルダーに移動します。<br />
2-1.インポート=>ファイル・システムを選択<br />
ディレクトリーを指定し、1のファイルを選択<br />
<br />
2-2.拡張のボタンを押し<br />
ワークスペースにリンクを作成等のチェックボックスをオンとすることで対応できます。<br />
<br />
<br />
以上<br />
やましょうでした。<br />
<br />やましょうhttp://www.blogger.com/profile/03813044589862913579noreply@blogger.com0tag:blogger.com,1999:blog-3469022793046896684.post-10119879915565070822018-12-13T01:08:00.002+09:002018-12-13T01:57:15.867+09:0036回デベロッパーキャンプLT補足:技適の壁が12/6 第36回 エンバカデロ・デベロッパーキャンプ・イン東京<br />
みなさんお疲れ様でした。 <br />
LTで SORACOM LTE-M BUTTONのDEMOを披露したやましょうです。<br />
<br />
<span style="color: red;">BUTTONのガワを開けた時点で技適が外れるとの指摘を頂きました。</span><br />
<span style="color: red;">(注:携帯の電池交換もOUTならしいのでご注意ください。)</span><br />
<span style="color: red;">今回は私の認識の甘さでご迷惑をおかけしたことをお詫び申し上げます。</span><br />
<span style="color: red;">同様に行いますと、技適違反になる可能性がありますのでご注意ください。 </span><br />
<span style="color: red;">適法にボタンを使う場合、</span><br />
<span style="color: red;">外からサーボ等で、こんな感じにしないとダメなんだそうです。</span><br />
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
<iframe allowfullscreen="" class="YOUTUBE-iframe-video" data-thumbnail-src="https://i.ytimg.com/vi/T2mUblqkWTk/0.jpg" frameborder="0" height="266" src="https://www.youtube.com/embed/T2mUblqkWTk?feature=player_embedded" width="320"></iframe></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<b><span style="color: red;"> これでは消費電流もかかり過ぎますし、ムダが多すぎです。</span></b><br />
<br />
<br />
また、私が当日DEMOをした時に神様が降臨したことにより、<br />
DEMOは予備機のオリジナルのSORACOM LTE-M BUTTONで通信をしています。<br />
<br />
<span style="font-size: x-large;"><span style="color: red;"><span style="font-size: large;">(DEMOの神様は私にとっては本当の神になりました。</span></span></span><br />
<span style="font-size: x-large;"><span style="color: red;"><span style="font-size: large;">神様ありがとうございます。) </span></span></span><br />
<br />
<span style="font-size: x-large;"><span style="font-size: small;">参考用に中身の画像だけ張っておきます。</span></span><br />
<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="http://1.bp.blogspot.com/-PvSQnCWtOS8/XBEcwfUQ_yI/AAAAAAAABlc/xwhzlNDliVs-xktb2NNLv-vE5LF_3qjsgCK4BGAYYCw/s1600/DSCF3124.JPG" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" height="240" src="https://1.bp.blogspot.com/-PvSQnCWtOS8/XBEcwfUQ_yI/AAAAAAAABlc/xwhzlNDliVs-xktb2NNLv-vE5LF_3qjsgCK4BGAYYCw/s320/DSCF3124.JPG" width="320" /></a></div>
<a href="http://1.bp.blogspot.com/-m1Nd_Bcq668/XBEfdHPlioI/AAAAAAAABl4/3HQ3stsAdzQI9pwQtZ6jmL7R0EmEZBcVgCK4BGAYYCw/s1600/DSCF3125.JPG" imageanchor="1"><img border="0" height="240" src="https://1.bp.blogspot.com/-m1Nd_Bcq668/XBEfdHPlioI/AAAAAAAABl4/3HQ3stsAdzQI9pwQtZ6jmL7R0EmEZBcVgCK4BGAYYCw/s320/DSCF3125.JPG" width="320" /></a><span style="font-size: x-large;"> </span><br />
<span style="font-size: small;">なぜかモジュールにも技適が...</span><br />
<br />
<span style="font-size: small;">そしていつも私が使っている、 </span>ESP-32とかはバリバリポートとか<br />
使いたい放題ですけどね。<br />
<br />
<a href="http://2.bp.blogspot.com/-4qqgYATDk6U/XBEeSjXYZHI/AAAAAAAABls/s4zSqAbrmhEp7scKXyJVw7_JqM0jdAduACK4BGAYYCw/s1600/DSCF3126.JPG" imageanchor="1"><img border="0" height="240" src="https://2.bp.blogspot.com/-4qqgYATDk6U/XBEeSjXYZHI/AAAAAAAABls/s4zSqAbrmhEp7scKXyJVw7_JqM0jdAduACK4BGAYYCw/s320/DSCF3126.JPG" width="320" /></a><br />
こっちはケースに入っていないので技適違反にならない?のですよね?<br />
<span style="font-size: x-small;"> <span style="font-size: small;"><br /></span></span><br />
<span style="font-size: small;">結論:SIGFOXやサクラIOTとか使った方が良い便利なんだろうな。と思います。</span><br />
<span style="font-size: small;"><a href="http://3.bp.blogspot.com/-gzLHeN5x9gY/XBEi19WMizI/AAAAAAAABmE/A_7IU-QbGZwiGBQ7zySj-oSppmz_-hHiwCK4BGAYYCw/s1600/DSCF3128.JPG" imageanchor="1"><img border="0" height="320" src="https://3.bp.blogspot.com/-gzLHeN5x9gY/XBEi19WMizI/AAAAAAAABmE/A_7IU-QbGZwiGBQ7zySj-oSppmz_-hHiwCK4BGAYYCw/s320/DSCF3128.JPG" width="240" /></a> </span><br />
<span style="font-size: small;">上サクラIOTボード/下SIGFOXボード</span><br />
<span style="font-size: small;"></span><br />
<br />
<span style="font-size: x-small;">以上</span><br />
<span style="font-size: x-small;">やましょうでした。</span><br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />やましょうhttp://www.blogger.com/profile/03813044589862913579noreply@blogger.com1tag:blogger.com,1999:blog-3469022793046896684.post-3071341262663089552018-07-22T17:22:00.001+09:002018-07-22T22:31:51.683+09:00Delphi 10.2.3 Community Edtionを使って ナダ電子製 シリアルプリンタをアンドロイドから動かす。 <br />
みなさん<br />
<br />
おひさしぶりです。<br />
やましょうです。<br />
<br />
Delphi Community Edtion が公開されました。<br />
早速ですが、ナダ電子製のシリアルプリンタをアンドロイドから制御してみたいと思います。<br />
<br />
大体の大まかな方法。<br />
1.UNI232Cをコンポーネントをダウンロードしてインストール<br />
2.<a href="http://i65000.blogspot.com/2017/12/delphi-102-tokyo232c.html">元ネタPCより制御</a>の WUni232cコンポーネントをUNI232Cに切り替えつつ、FMX化する.<br />
<br />
<span style="color: red;">大事な点:</span><br />
<br />
<span style="color: red;">1.コンポーネントは<a href="https://www.csd.co.jp/product/">https://www.csd.co.jp/product/</a> uni232cVer1.11をダウンロードしてインストールする。 </span><br />
<br />
<span style="color: red;">2.Delphiでコンパイル時に、プロジェクト=>オプション</span><span style="color: red;">=>Delphi コンパイラ=>検索パスで対応とすべきuni232c.dcuのフォルダーを必ず指定すること。</span><br />
<br />
<span style="color: red;">3.アンドロイド時のマニフェスト等は、プロジェクト=>配置の部分で詳細設定すること</span><br />
<span style="color: red;">(たぶんここは不要かと思う。)</span><br />
<br />
<br />
<br />
コード的には、<br />
1.Wuni232c=>Uni232cに変更(W)を削除<br />
2.文字列の開始位置が要素1から0に(windows以外)<br />
3.CR(0XD) LF(0XA)がsLineBrekeを使うと0x0a(Android時)となるので、CRLFを定義した。<br />
だけでアンドロイドで動くのです。これ凄いでしょう????<br />
<br />
ってことで動作させて見ました。<br />
<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<iframe allowfullscreen="" class="YOUTUBE-iframe-video" data-thumbnail-src="https://i.ytimg.com/vi/Mq3ncfFHVlk/0.jpg" frameborder="0" height="266" src="https://www.youtube.com/embed/Mq3ncfFHVlk?feature=player_embedded" width="320"></iframe></div>
<br />
こんな感じで動くのです。<br />
<br />
今回使用した、uni232cはアンドロイドですと書き込みに回数制限等がありますので、<br />
製品として使う場合は購入した方が良いと思います。<br />
もちろんターゲットをWindowsにすればそのまま動きますよ。。<br />
<br />
<a href="https://github.com/qa65000/NadaSerailPrinterFmx">そしてコードはここ。</a><br />
<br />
それでは。。 <br />
<br />
<br />
<br />やましょうhttp://www.blogger.com/profile/03813044589862913579noreply@blogger.com0tag:blogger.com,1999:blog-3469022793046896684.post-59818832519862308682018-06-18T18:52:00.000+09:002018-06-18T18:54:30.355+09:00Ble Packet Snifferこんにちは お久しぶりです。<br />
<br />
TI のCC2540をBle Packet Snifferで見るためにはまったので<br />
ここに記載します。<br />
<br />
まず、必要なOS WINDOWS7、WINDOWS10ですとだめな様です。<br />
<br />
ハード<br />
CC2540:<br />
<a href="http://www.tij.co.jp/tool/jp/cc2540emk-usb">http://www.tij.co.jp/tool/jp/cc2540emk-usb</a><br />
で買う?<br />
<a href="https://www.aliexpress.com/item/Bluetooth-4-0-BLE-CC2540-USB-Dongle-Protocol-Analysis-BTool-Packet-Sniffer-Board-Debug-Pin-1Mbps/32769663761.html?spm=a2g0s.13010208.99999999.268.4a853c00iUucrj">https://www.aliexpress.com/item/Bluetooth-4-0-BLE-CC2540-USB-Dongle-Protocol-Analysis-BTool-Packet-Sniffer-Board-Debug-Pin-1Mbps/32769663761.html?spm=a2g0s.13010208.99999999.268.4a853c00iUucrj</a><br />
で買う?<br />
<a href="https://www.aliexpress.com/snapshot/0.html?spm=a2g0s.9042311.0.0.754d4c4ddMIbGR&orderId=30796677394087&productId=1859126489">https://www.aliexpress.com/snapshot/0.html?spm=a2g0s.9042311.0.0.754d4c4ddMIbGR&orderId=30796677394087&productId=1859126489</a><br />
で買う、等いろいろあるようですが、<br />
<br />
中身を書き換えるのために<br />
<br />
ケーブルとCCデバッガも必要な様です<br />
<a href="http://www.tij.co.jp/tool/jp/cc-debugger">http://www.tij.co.jp/tool/jp/cc-debugger</a>ですね。<br />
以下にも。。。<br />
<br />
<a href="https://www.aliexpress.com/item/Downloader-Cable-Bluetooth-4-0-CC2540-zigbee-CC2531-Sniffer-USB-dongle-BTool-Programmer-Wire-Download-Programming/32837441367.html?spm=a2g0s.9042311.0.0.27424c4djVwXDh">https://www.aliexpress.com/item/Downloader-Cable-Bluetooth-4-0-CC2540-zigbee-CC2531-Sniffer-USB-dongle-BTool-Programmer-Wire-Download-Programming/32837441367.html?spm=a2g0s.9042311.0.0.27424c4djVwXDh</a><br />
と<br />
<a href="https://www.aliexpress.com/item/Bluetooth-zigbee-Emulator-CC-Debugger-original-shell-2540-2541-2530-protocol-analysis/32798394717.html?spm=a2g0s.9042311.0.0.27424c4djVwXDh"> https://www.aliexpress.com/item/Bluetooth-zigbee-Emulator-CC-Debugger-original-shell-2540-2541-2530-protocol-analysis/32798394717.html?spm=a2g0s.9042311.0.0.27424c4djVwXDh</a><br />
で<br />
買ったら、中身をCC2540に書換えましょう。<br />
<br />
<br />
次にSMART RF STUDIOをDOWNLOADしインストールします。<br />
http://www.tij.co.jp/tool/jp/smartrftm-studio<br />
これはドライバーをインストールするためです。<br />
<br />
次にSnifferをダウンロード<br />
<br />
<a href="http://www.tij.co.jp/tool/jp/packet-sniffer">http://www.tij.co.jp/tool/jp/packet-sniffer</a><br />
SnifferのV2.18をダウンロードします。<br />
<br />
<br />
あとは<br />
<a href="http://docs.fabo.io/fabo/ble/bgscript/sniffer.html">http://docs.fabo.io/fabo/ble/bgscript/sniffer.html </a><br />
<a href="https://qiita.com/tw_Inudaisuki/items/9d1d220191e3402234ec">https://qiita.com/tw_Inudaisuki/items/9d1d220191e3402234ec</a><br />
とかを参照します。<br />
<br />
<br />
以上やましょうhttp://www.blogger.com/profile/03813044589862913579noreply@blogger.com0tag:blogger.com,1999:blog-3469022793046896684.post-52054832694679286172017-12-23T00:00:00.001+09:002017-12-25T09:01:37.822+09:00Delphi 10.2.2:Bleで Microbitと通信する。 これは2017年12月23日のdelphi アドベントカレンダーです。<br />
<br />
DELPHIでAndriodを使ってble通信をしてみます。<br />
1.MICRO BITのKEY押し状態をAndriod上に表示する。<br />
2.AndroidからMicroBitへ文字列を送信する。<br />
<br />
できるとこんな感じになります。<br />
<br />
<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<iframe allowfullscreen="" class="YOUTUBE-iframe-video" data-thumbnail-src="https://i.ytimg.com/vi/tFcsXgcV148/0.jpg" frameborder="0" height="266" src="https://www.youtube.com/embed/tFcsXgcV148?feature=player_embedded" width="320"></iframe><br />
<br />
<br />
結構簡単に通信できました。。<br />
<br />
<br />
<br />
<br />
コードはこんな感じです。<br />
<br />
<br />
<br />
<table class="highlight tab-size js-file-line-container" data-tab-size="8"><tbody>
<tr></tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC1"><span class="pl-k">unit</span> Main;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC2"></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC3"><span class="pl-k">interface</span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC4"></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC5"><span class="pl-k">uses</span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC6">System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC7">FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs, FMX.StdCtrls,</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC8">FMX.Objects, FMX.Edit, FMX.Controls.Presentation, System.Bluetooth,</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC9">System.Bluetooth.Components;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC10"></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC11"><span class="pl-k">const</span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC12">UUID_BUTTON_SERVICE : TBluetoothUUID = <span class="pl-s"><span class="pl-pds">'</span>{E95D9882-251D-470A-A062-FA1922DFA9A8}<span class="pl-pds">'</span></span>;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC13">UUID_BUTTON1_CHARACTERRISTIC : TBluetoothUUID = <span class="pl-s"><span class="pl-pds">'</span>{E95DDA90-251D-470A-A062-FA1922DFA9A8}<span class="pl-pds">'</span></span>;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC14">UUID_BUTTON2_CHARACTERRISTIC : TBluetoothUUID = <span class="pl-s"><span class="pl-pds">'</span>{E95DDA91-251D-470A-A062-FA1922DFA9A8}<span class="pl-pds">'</span></span>;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC15"></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC16">UUID_UART_SERVICE : TBluetoothUUID = <span class="pl-s"><span class="pl-pds">'</span>{6E400001-B5A3-F393-E0A9-E50E24DCCA9E}<span class="pl-pds">'</span></span>;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC17">UUID_UART_TX_CHARACTERRISTIC : TBluetoothUUID = <span class="pl-s"><span class="pl-pds">'</span>{6E400003-B5A3-F393-E0A9-E50E24DCCA9E}<span class="pl-pds">'</span></span>;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC18"></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC19"><span class="pl-k">type</span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC20"></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC21">TForm42 = <span class="pl-k">class</span>(TForm)</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC22">Connect: TButton;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC23">Edit1: TEdit;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC24">Send: TButton;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC25">ButtonA: TCircle;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC26">Label1: TLabel;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC27">BTLableA: TLabel;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC28">ButtonB: TCircle;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC29">BtLabelB: TLabel;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC30">BluetoothLE1: TBluetoothLE;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC31"><span class="pl-k">procedure</span> <span class="pl-en">BluetoothLE1CharacteristicRead</span>(<span class="pl-k">const</span> Sender: TObject;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC32"><span class="pl-k">const</span> ACharacteristic: TBluetoothGattCharacteristic;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC33">AGattStatus: TBluetoothGattStatus);</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC34"><span class="pl-k">procedure</span> <span class="pl-en">BluetoothLE1EndDiscoverDevices</span>(<span class="pl-k">const</span> Sender: TObject;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC35"><span class="pl-k">const</span> ADeviceList: TBluetoothLEDeviceList);</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC36"><span class="pl-k">procedure</span> <span class="pl-en">BluetoothLE1EndDiscoverServices</span>(<span class="pl-k">const</span> Sender: TObject;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC37"><span class="pl-k">const</span> AServiceList: TBluetoothGattServiceList);</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC38"><span class="pl-k">procedure</span> <span class="pl-en">ConnectClick</span>(Sender: TObject);</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC39"><span class="pl-k">procedure</span> <span class="pl-en">SendClick</span>(Sender: TObject);</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC40"><span class="pl-k">procedure</span> <span class="pl-en">FormCreate</span>(Sender: TObject);</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC41"><span class="pl-k">private</span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC42"><span class="pl-c"><span class="pl-c">{</span> private 宣言 <span class="pl-c">}</span></span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC43"><span class="pl-k">public</span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC44"><span class="pl-c"><span class="pl-c">{</span> public 宣言 <span class="pl-c">}</span></span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC45"><span class="pl-k">end</span>;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC46"></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC47"><span class="pl-k">var</span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC48">Form42: TForm42;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC49">GBleDevice : TBluetoothLEDevice;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC50">BackColor : TColor;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC51"></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC52"><span class="pl-k">implementation</span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC53"></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC54"><span class="pl-c"><span class="pl-c">{</span>$R *.fmx<span class="pl-c">}</span></span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC55"></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC56"><span class="pl-k">procedure</span> <span class="pl-en">TForm42.BluetoothLE1CharacteristicRead</span>(<span class="pl-k">const</span> Sender: TObject;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC57"><span class="pl-k">const</span> ACharacteristic: TBluetoothGattCharacteristic;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC58">AGattStatus: TBluetoothGattStatus);</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC59"><span class="pl-k">begin</span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC60"><span class="pl-k">if</span>(ACharacteristic.UUID = UUID_BUTTON1_CHARACTERRISTIC) <span class="pl-k">then</span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC61"><span class="pl-k">begin</span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC62"><span class="pl-k">if</span> ACharacteristic.GetValueAsInt8(<span class="pl-c1">0</span>) <> <span class="pl-c1">0</span> <span class="pl-k">then</span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC63">ButtonA.Fill.Color := TAlphaColorRec.Red</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC64"><span class="pl-k">else</span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC65">ButtonA.Fill.Color := BackColor;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC66"><span class="pl-k">end</span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC67"><span class="pl-k">else</span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC68"><span class="pl-k">if</span>(ACharacteristic.UUID = UUID_BUTTON2_CHARACTERRISTIC) <span class="pl-k">then</span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC69"><span class="pl-k">begin</span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC70"><span class="pl-k">if</span> ACharacteristic.GetValueAsInt8(<span class="pl-c1">0</span>) <> <span class="pl-c1">0</span> <span class="pl-k">then</span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC71">ButtonB.Fill.Color := TAlphaColorRec.Red</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC72"><span class="pl-k">else</span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC73">ButtonB.Fill.Color := BackColor;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC74"><span class="pl-k">end</span>;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC75"><span class="pl-k">end</span>;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC76"></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC77"><span class="pl-k">procedure</span> <span class="pl-en">TForm42.BluetoothLE1EndDiscoverDevices</span>(<span class="pl-k">const</span> Sender: TObject;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC78"><span class="pl-k">const</span> ADeviceList: TBluetoothLEDeviceList);</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC79"><span class="pl-k">var</span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC80">i : uint32; <span class="pl-c"><span class="pl-c">//</span> ARM なので最適化</span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC81"></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC82"><span class="pl-k">begin</span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC83"><span class="pl-k">if</span> ADeviceList.Count > <span class="pl-c1">0</span> <span class="pl-k">then</span> <span class="pl-k">begin</span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC84"><span class="pl-k">for</span> i := <span class="pl-c1">0</span> <span class="pl-k">to</span> Pred(ADeviceList.Count) <span class="pl-k">do</span> <span class="pl-k">begin</span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC85"><span class="pl-k">if</span> Pos(<span class="pl-s"><span class="pl-pds">'</span>BBC micro:bit<span class="pl-pds">'</span></span>, ADeviceList[i].DeviceName) > <span class="pl-c1">0</span> <span class="pl-k">then</span> <span class="pl-k">begin</span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC86">Label1.Text := ADeviceList[i].DeviceName ;<span class="pl-c"><span class="pl-c">//</span> ' (' + ADeviceList[i].Address + ')';</span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC87">BluetoothLE1.CancelDiscovery;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC88">GBleDevice := ADeviceList[i];</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC89">GBleDevice.DiscoverServices;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC90">exit;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC91"><span class="pl-k">end</span>;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC92"><span class="pl-k">end</span>;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC93"><span class="pl-k">end</span>;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC94"><span class="pl-k">end</span>;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC95"></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC96"><span class="pl-k">procedure</span> <span class="pl-en">TForm42.BluetoothLE1EndDiscoverServices</span>(<span class="pl-k">const</span> Sender: TObject;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC97"><span class="pl-k">const</span> AServiceList: TBluetoothGattServiceList);</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC98"><span class="pl-k">var</span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC99">i : uint32; <span class="pl-c"><span class="pl-c">//</span> ARM なので最適化</span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC100">LGattService : TBluetoothGattService;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC101"><span class="pl-k">begin</span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC102">LGattService := BluetoothLE1.GetService(GBleDevice, UUID_BUTTON_SERVICE);</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC103"><span class="pl-k">if</span> LGattService <> <span class="pl-k">nil</span> <span class="pl-k">then</span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC104"><span class="pl-k">begin</span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC105"><span class="pl-k">for</span> i := <span class="pl-c1">0</span> <span class="pl-k">to</span> Pred(LGattService.Characteristics.Count) <span class="pl-k">do</span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC106"><span class="pl-k">begin</span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC107"><span class="pl-k">if</span> LGattService.Characteristics[i].UUID = UUID_BUTTON1_CHARACTERRISTIC <span class="pl-k">then</span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC108"><span class="pl-k">begin</span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC109">GBleDevice.SetCharacteristicNotification(LGattService.Characteristics[i], True);</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC110"><span class="pl-k">end</span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC111"><span class="pl-k">else</span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC112"><span class="pl-k">if</span> LGattService.Characteristics[i].UUID = UUID_BUTTON2_CHARACTERRISTIC <span class="pl-k">then</span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC113"><span class="pl-k">begin</span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC114"></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC115">GBleDevice.SetCharacteristicNotification(LGattService.Characteristics[i], True);</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC116"><span class="pl-k">end</span>;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC117"><span class="pl-k">end</span>;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC118"><span class="pl-k">end</span>;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC119"></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC120"><span class="pl-k">end</span>;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC121"></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC122"><span class="pl-k">procedure</span> <span class="pl-en">TForm42.ConnectClick</span>(Sender: TObject);</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC123"><span class="pl-k">begin</span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC124"><span class="pl-k">if</span>( <span class="pl-k">not</span> BluetoothLE1.Enabled ) <span class="pl-k">then</span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC125"><span class="pl-k">begin</span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC126">BluetoothLE1.Enabled := True;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC127">BluetoothLE1.DiscoverDevices(<span class="pl-c1">1000</span>); <span class="pl-c"><span class="pl-c">//</span> 10秒</span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC128">Connect.Text := <span class="pl-s"><span class="pl-pds">'</span>Disconnect<span class="pl-pds">'</span></span>;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC129">Label1.Text := <span class="pl-s"><span class="pl-pds">'</span><span class="pl-pds">'</span></span>;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC130"><span class="pl-k">end</span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC131"><span class="pl-k">else</span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC132"><span class="pl-k">begin</span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC133">BluetoothLE1.CancelDiscovery;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC134">BluetoothLE1.Enabled := False;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC135">GBleDevice := <span class="pl-k">NIL</span>;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC136">Connect.Text := <span class="pl-s"><span class="pl-pds">'</span>Connect<span class="pl-pds">'</span></span>;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC137"><span class="pl-k">end</span>;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC138"><span class="pl-k">end</span>;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC139"></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC140"><span class="pl-k">procedure</span> <span class="pl-en">TForm42.FormCreate</span>(Sender: TObject);</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC141"><span class="pl-k"></span><br /></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC142">BackColor := ButtonA.Fill.Color;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC143"><span class="pl-k">end</span>;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC144"></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC145"><span class="pl-k">procedure</span> <span class="pl-en">TForm42.SendClick</span>(Sender: TObject);</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC146"><span class="pl-k">var</span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC147">i : uint32; <span class="pl-c"><span class="pl-c">//</span> ARM なので最適化</span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC148">LGattService : TBluetoothGattService;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC149">LCharact : TBluetoothGattCharacteristic;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC150"><span class="pl-k">begin</span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC151"><span class="pl-k">if</span> GBleDevice = <span class="pl-k">NIL</span> <span class="pl-k">then</span> exit;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC152"><span class="pl-k">if</span> GBleDevice.IsConnected = false <span class="pl-k">then</span> exit;</td>
</tr>
<tr>
</tr>
<tr></tr>
</tbody></table>
<br />
<table class="highlight tab-size js-file-line-container" data-tab-size="8"><tbody>
<tr></tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC154">LGattService := BluetoothLE1.GetService(GBleDevice, UUID_UART_SERVICE);</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC155"><span class="pl-k">if</span> LGattService = <span class="pl-k">NIL</span> <span class="pl-k">then</span> exit;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC156"><span class="pl-c"><span class="pl-c">//</span> LCharact := LGattService.GetCharacteristic(UUID_UART_TX_CHARACTERRISTIC);</span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC157"><span class="pl-k">for</span> i := <span class="pl-c1">0</span> <span class="pl-k">to</span> Pred(LGattService.Characteristics.Count) <span class="pl-k">do</span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC158"><span class="pl-k">begin</span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC159"><span class="pl-k">if</span> LGattService.Characteristics[i].UUID = UUID_UART_TX_CHARACTERRISTIC <span class="pl-k">then</span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC160"><span class="pl-k">begin</span></td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC161">LGattService.Characteristics[i].SetValueAsString(Edit1.Text+<span class="pl-s"><span class="pl-pds">'</span>#<span class="pl-pds">'</span></span>, True);</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC162">GBleDevice.WriteCharacteristic(LGattService.Characteristics[i]);</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC163">exit;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC164"><span class="pl-k">end</span>;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC165"><span class="pl-k">end</span>;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC166"><span class="pl-k">end</span>;</td>
</tr>
<tr>
</tr>
<tr><td class="blob-code blob-code-inner js-file-line" id="LC167"></td>
</tr>
<tr>
</tr>
</tbody></table>
コード一式は<a href="https://github.com/qa65000/DelphiMicroBit">ここ</a><br />
<br />
<a href="https://qiita.com/advent-calendar/2017/microbit"><br /></a>
<a href="https://qiita.com/advent-calendar/2017/microbit">microbit側はmicrobit アドベントカレンダー25日</a>にて公開予定です。<br />
<br />
それでは。<br />
<br />
<br />
<br /><a href="http://qa65.blogspot.jp/2017/12/microbitble.html">http://qa65.blogspot.jp/2017/12/microbitble.html</a>やましょうhttp://www.blogger.com/profile/03813044589862913579noreply@blogger.com0tag:blogger.com,1999:blog-3469022793046896684.post-25142093475447457012017-12-03T01:49:00.001+09:002017-12-03T11:31:34.590+09:00Delphi 10.2 Tokyoから232cが簡単になったのでナダ電子製シリアルプリンタでプリントしてみた。<br />
みなさん、お久しぶりです。<br />
<br />
<br />
<br />
やましょうです。<br />
<br />
今日はナダ電子さんの<br />
http://www.nada.co.jp/as289r2/<br />
<div class="separator" style="clear: both; text-align: center;">
</div>
を使用する方法をご紹介です。<br />
<br />
<br />
実は11月30日からdelphi では232cコンポーネントが<br />
get itで簡単に使える様になりました。<br />
<br />
<br />
3/1には申請は出していたのですが、忘れられていた見たいで、<br />
ゆるふぁい#0の雑談で確認しないとという話しになり、<br />
11月中頃になってどうなっているの?と聞いたら。。 <br />
まぁいろいろあったらしく早急に対応がとられた模様です。<br />
get itに申請を出して、1ヶ月くらいで返事がなければ再度連絡した方が良いと思います。<br />
<br />
さて、それでは232cを使いましょう。これで簡単に232cが。。使えるのさってことで、ツール=>Get itを選択し232cといれます。<br />
delphiのみになっていますがC++ビルダーでも動くと思うけど保証はしない。<br />
<br />
<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://2.bp.blogspot.com/-HeXufvGB8ew/WiLbHQw6moI/AAAAAAAABYo/TVno0XkoyRkCGTxKfTvGhClURoeu5KhfQCLcBGAs/s1600/SnapCrab_NoName_2017-12-3_0-31-9_No-00.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="475" data-original-width="594" height="254" src="https://2.bp.blogspot.com/-HeXufvGB8ew/WiLbHQw6moI/AAAAAAAABYo/TVno0XkoyRkCGTxKfTvGhClURoeu5KhfQCLcBGAs/s320/SnapCrab_NoName_2017-12-3_0-31-9_No-00.png" width="320" /> </a> </div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
そしたら、インストールボタン押すだけで使える様になる。 </div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://4.bp.blogspot.com/-x57zOfBgA7E/WiLbHHuA5tI/AAAAAAAABYk/t7JfJ2yqj-4MrMf7AaBr3kLcaerpiXlkQCLcBGAs/s1600/SnapCrab_NoName_2017-12-3_0-32-29_No-00.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="492" data-original-width="636" height="247" src="https://4.bp.blogspot.com/-x57zOfBgA7E/WiLbHHuA5tI/AAAAAAAABYk/t7JfJ2yqj-4MrMf7AaBr3kLcaerpiXlkQCLcBGAs/s320/SnapCrab_NoName_2017-12-3_0-32-29_No-00.png" width="320" /></a></div>
<br />
さて、あとはナダ電子さんのプリンターにUSB接続<=>シリアル変換でつなげます。<br />
ナダ電子さん、ハード的な説明すくなすぎです。<br />
私のはまった点はDC アダプタ5v 1aだとまともに動かず。これでムダに時間を。。。<br />
5V-4AだとOK 3.3vにしてもDC アダプターは5Vを使ってねとかこの当たりの情報は<br />
どこかにまとめるか?<br />
<a href="http://www.nada.co.jp/printer/pdf/MP-150BR-I.pdf">www.nada.co.jp/printer/pdf/MP-150BR-I.pdf</a>な形の仕様書pdfを<br />
<a href="http://www.nada.co.jp/as289r2/support.html">www.nada.co.jp/as289r2/support.html</a>ページにあれば良いなぁと思いました。<br />
<br />
接続はこんな感じ<br />
白GND<br />
灰色:PC(TX)<br />
<br />
<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://3.bp.blogspot.com/-7ORqMPcN9Sg/WiLfF9XT2eI/AAAAAAAABZY/yZg46i8Xy-0YJMxMBZ1gUDGK-RYa65JWgCLcBGAs/s1600/DSCF2895.JPG" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" data-original-height="900" data-original-width="1600" height="180" src="https://3.bp.blogspot.com/-7ORqMPcN9Sg/WiLfF9XT2eI/AAAAAAAABZY/yZg46i8Xy-0YJMxMBZ1gUDGK-RYa65JWgCLcBGAs/s320/DSCF2895.JPG" width="320" /></a><a href="https://1.bp.blogspot.com/-9hPvLqiVQdM/WiLefTaWUYI/AAAAAAAABZM/5SsT6ptW378I8v1uT08J3gcauAbNy90XQCLcBGAs/s1600/DSCF2896.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"> </a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
あとは、DELPHI でフォームを新規作成して、WUNI232とボタンをフォーム上に張って</div>
<div class="separator" style="clear: both; text-align: left;">
以下コード書くのみ</div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
<a href="https://github.com/qa65000/DelphitoNadaAS-289r2">面倒なので一式githubに置いておきました </a></div>
unit Umain;<br />
<br />
interface<br />
<br />
uses<br />
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,<br />
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, WUni232c;<br />
<br />
type<br />
TForm1 = class(TForm)<br />
WUni232c1: TWUni232c;<br />
Button1: TButton;<br />
procedure Button1Click(Sender: TObject);<br />
procedure FormDestroy(Sender: TObject);<br />
private<br />
{ Private 宣言 }<br />
public<br />
{ Public 宣言 }<br />
end;<br />
<br />
<br />
var<br />
Form1: TForm1;<br />
<br />
implementation<br />
<br />
{$R *.dfm}<br />
<br />
const<br />
<br />
GsQr : array [0..8] of byte = ( $1D,$78,$4C,$05,BYTE('D'),BYTE('E'),BYTE('L'),BYTE('P'),BYTE('I') );<br />
<br />
procedure TForm1.Button1Click(Sender: TObject);<br />
var<br />
Str: UTF8String;<br />
begin<br />
WUni232c1.BaudRate := 9600;<br />
<br />
if( not WUni232c1.Connect ) then<br />
WUni232c1.Open;<br />
<br />
Str := sLineBreak+sLineBreak+sLineBreak+sLineBreak;<br />
WUni232c1.Write(Length(Str),@str[1]);<br />
Str := 'HELLO DELPHI'+sLineBreak;<br />
WUni232c1.Write(Length(Str),@str[1]);<br />
WUni232c1.Write(sizeof(GsQr),@GsQr);<br />
Str := sLineBreak+sLineBreak+sLineBreak+sLineBreak;<br />
WUni232c1.Write(Length(Str),@str[1]);<br />
<br />
end;<br />
<br />
<br />
procedure TForm1.FormDestroy(Sender: TObject);<br />
begin<br />
if( WUni232c1.Connect ) then<br />
WUni232c1.Close;<br />
end;<br />
<br />
end.<br />
<br />
<div class="separator" style="clear: both; text-align: left;">
動かすと、</div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
ちゃんとプリントされました。</div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://4.bp.blogspot.com/-9hPvLqiVQdM/WiLefTaWUYI/AAAAAAAABZU/Z01BOELF9qYn9eHEm8wxxWabUWghJhfVACEwYBhgL/s1600/DSCF2896.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="900" data-original-width="1600" height="180" src="https://4.bp.blogspot.com/-9hPvLqiVQdM/WiLefTaWUYI/AAAAAAAABZU/Z01BOELF9qYn9eHEm8wxxWabUWghJhfVACEwYBhgL/s320/DSCF2896.JPG" width="320" /></a></div>
<br />
<br />
追加で動画<br />
<div class="separator" style="clear: both; text-align: center;">
<iframe width="320" height="266" class="YOUTUBE-iframe-video" data-thumbnail-src="https://i.ytimg.com/vi/I_81lbrawlA/0.jpg" src="https://www.youtube.com/embed/I_81lbrawlA?feature=player_embedded" frameborder="0" allowfullscreen></iframe></div>
<br />
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<br />
<br />
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
ということでアドベントカレンダー3日目の記事した。</div>
<div class="separator" style="clear: both; text-align: left;">
みなさん</div>
<div class="separator" style="clear: both; text-align: left;">
ごきげんよう !!</div>
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />やましょうhttp://www.blogger.com/profile/03813044589862913579noreply@blogger.com0tag:blogger.com,1999:blog-3469022793046896684.post-29458890130558010002017-03-16T21:51:00.003+09:002017-03-16T22:01:17.770+09:00Led Name Boardをdelphiからコントロールする。みなさんお久しぶりです。<br />
<br />
delphiから Led Name ボードをコントロールしたいと思います。<br />
<br />
ちなみにたぶんこれだと思う。<br />
<a href="https://www.amazon.com/Koolertron-Programmable-Digital-Scrolling-Message/dp/B00T9FEI4Q/ref=sr_1_2?ie=UTF8&qid=1489621823&sr=8-2&keywords=led%2Bname%2Bboard&th=1">https://www.amazon.com/Koolertron-Programmable-Digital-Scrolling-Message/dp/B00T9FEI4Q/ref=sr_1_2?ie=UTF8&qid=1489621823&sr=8-2&keywords=led%2Bname%2Bboard&th=1</a><br />
<br />
<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://3.bp.blogspot.com/-M7shTb_JJF4/WMqFqO6L-vI/AAAAAAAABTY/mEdVf7_Hc4g2b4Z9ccQPZX7h-O_Gv00IACLcB/s1600/IMG_1747.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="240" src="https://3.bp.blogspot.com/-M7shTb_JJF4/WMqFqO6L-vI/AAAAAAAABTY/mEdVf7_Hc4g2b4Z9ccQPZX7h-O_Gv00IACLcB/s320/IMG_1747.JPG" width="320" /> </a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
こんな感じで </div>
<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://3.bp.blogspot.com/-Y9ZeZF7N6oA/WMqFp0QOv0I/AAAAAAAABTU/hWCbIsmvvesjyqneBVqYIRO4YDsDVakNACLcB/s1600/IMG_1748.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="240" src="https://3.bp.blogspot.com/-Y9ZeZF7N6oA/WMqFp0QOv0I/AAAAAAAABTU/hWCbIsmvvesjyqneBVqYIRO4YDsDVakNACLcB/s320/IMG_1748.JPG" width="320" /> </a></div>
<div class="separator" style="clear: both; text-align: center;">
こんな奴なのです </div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://3.bp.blogspot.com/-R_rUHKr6Zso/WMqFp-XWvqI/AAAAAAAABTQ/5F2-LF9Jtxwiz1Tb70xBcvju0M0lFby8ACLcB/s1600/IMG_1749.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="240" src="https://3.bp.blogspot.com/-R_rUHKr6Zso/WMqFp-XWvqI/AAAAAAAABTQ/5F2-LF9Jtxwiz1Tb70xBcvju0M0lFby8ACLcB/s320/IMG_1749.JPG" width="320" /></a> </div>
<span id="goog_148656598"></span><span id="goog_148656599"></span><br />
<div style="text-align: center;">
そしてPL2303HXですとWINDOWS 10で動かないのでCHIPをPL2303HXDに張り替え。<br />
(windows7とか8なら古いドライバーを使えば問題なしだと思う。) </div>
<br />
<br />
<br />
さて、DELPHI側のソースですが、<br />
<a href="http://www.csd.co.jp/uni232c/">http://www.csd.co.jp/uni232c/</a><br />
に飛んでWUNI232Cコンポーネントを入手します。<br />
これならソース付きで無料ですね。<br />
<br />
さて、その次にソースはここから<a href="https://drive.google.com/open?id=0BwLlrFJnaNcxV3pTeFpsMUtuMEU">入手</a><br />
<br />
<br />
(事前にCOMポートナンバーをTERATerm等で調べておきましょう。)<br />
ポートナンバー変更後<br />
それをコンパイルして動かすこうなります。<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
<iframe allowfullscreen="" class="YOUTUBE-iframe-video" data-thumbnail-src="https://i.ytimg.com/vi/KLbDsOwLIUg/0.jpg" frameborder="0" height="266" src="https://www.youtube.com/embed/KLbDsOwLIUg?feature=player_embedded" width="320"></iframe></div>
<br />
ってことでJIMさん<br />
これであそんでみてください。やましょうhttp://www.blogger.com/profile/03813044589862913579noreply@blogger.com0tag:blogger.com,1999:blog-3469022793046896684.post-9227183223652384712017-02-15T00:14:00.000+09:002017-05-02T04:02:00.340+09:00Delphi でAndriod Thingsを使用してみる。みなさん<br />
おひさしぶりです。<br />
<br />
やましょうです。<br />
<br />
先日、日本Androidの会の勉強会に参加しまして、<br />
Android Thingsと組込み用 のアンドロイドのプレビューが発表されている事を知りました。<br />
どうもラップするだけで、ザマリンでも動く様ですので、Delphiからも簡単にアクセスできる筈<br />
と思やってみました。<br />
<br />
<br />
1.System イメージの入手先です。<br />
<a href="https://developer.android.com/things/preview/download.html">https://developer.android.com/things/preview/download.html</a><br />
<br />
で入手できます。(私はラズパイ3で挑戦です。)<br />
<br />
2.イメージの書込みツール入手<br />
<br />
<a href="https://sourceforge.net/projects/win32diskimager/">https://sourceforge.net/projects/win32diskimager/</a><br />
<br />
3.イメージツールでSDCard 8Gにイメージを書込みます。<br />
<br />
その後ラズパイに挿入、Lanケーブルを挿し、hdmi接続<br />
<br />
4.ラズパイ電源起動 <br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://4.bp.blogspot.com/-EzOccUg_7LE/WKMPo9It_HI/AAAAAAAABQE/EuPUJhNzJU075cPJmI85SM1kSflyn_AHgCLcB/s1600/DSCF2643.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="180" src="https://4.bp.blogspot.com/-EzOccUg_7LE/WKMPo9It_HI/AAAAAAAABQE/EuPUJhNzJU075cPJmI85SM1kSflyn_AHgCLcB/s320/DSCF2643.JPG" width="320" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<br />
するとipアドレスが下の方に出てきますので、それをメモりましょう<br />
<br />
<br />
5.adb コマンドでラズパイと接続します。<br />
私の場合Android Studioも入っているので<br />
<!--[if gte mso 9]><xml>
<o:OfficeDocumentSettings>
<o:AllowPNG/>
</o:OfficeDocumentSettings>
</xml><![endif]--><br />
<!--[if gte mso 9]><xml>
<w:WordDocument>
<w:View>Normal</w:View>
<w:Zoom>0</w:Zoom>
<w:TrackMoves/>
<w:TrackFormatting/>
<w:PunctuationKerning/>
<w:DisplayHorizontalDrawingGridEvery>0</w:DisplayHorizontalDrawingGridEvery>
<w:DisplayVerticalDrawingGridEvery>2</w:DisplayVerticalDrawingGridEvery>
<w:ValidateAgainstSchemas/>
<w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid>
<w:IgnoreMixedContent>false</w:IgnoreMixedContent>
<w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText>
<w:DoNotPromoteQF/>
<w:LidThemeOther>EN-US</w:LidThemeOther>
<w:LidThemeAsian>JA</w:LidThemeAsian>
<w:LidThemeComplexScript>X-NONE</w:LidThemeComplexScript>
<w:Compatibility>
<w:SpaceForUL/>
<w:BalanceSingleByteDoubleByteWidth/>
<w:DoNotLeaveBackslashAlone/>
<w:ULTrailSpace/>
<w:DoNotExpandShiftReturn/>
<w:AdjustLineHeightInTable/>
<w:BreakWrappedTables/>
<w:SnapToGridInCell/>
<w:WrapTextWithPunct/>
<w:UseAsianBreakRules/>
<w:DontGrowAutofit/>
<w:SplitPgBreakAndParaMark/>
<w:EnableOpenTypeKerning/>
<w:DontFlipMirrorIndents/>
<w:OverrideTableStyleHps/>
<w:UseFELayout/>
</w:Compatibility>
<m:mathPr>
<m:mathFont m:val="Cambria Math"/>
<m:brkBin m:val="before"/>
<m:brkBinSub m:val="--"/>
<m:smallFrac m:val="off"/>
<m:dispDef/>
<m:lMargin m:val="0"/>
<m:rMargin m:val="0"/>
<m:defJc m:val="centerGroup"/>
<m:wrapIndent m:val="1440"/>
<m:intLim m:val="subSup"/>
<m:naryLim m:val="undOvr"/>
</m:mathPr></w:WordDocument>
</xml><![endif]--><!--[if gte mso 9]><xml>
<w:LatentStyles DefLockedState="false" DefUnhideWhenUsed="false"
DefSemiHidden="false" DefQFormat="false" DefPriority="99"
LatentStyleCount="374">
<w:LsdException Locked="false" Priority="0" QFormat="true" Name="Normal"/>
<w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 1"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 2"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 3"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 4"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 5"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 6"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 7"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 8"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 9"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 6"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 7"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 8"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 9"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 1"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 2"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 3"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 4"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 5"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 6"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 7"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 8"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 9"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Normal Indent"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="footnote text"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="annotation text"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="header"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="footer"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index heading"/>
<w:LsdException Locked="false" Priority="35" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="caption"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="table of figures"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="envelope address"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="envelope return"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="footnote reference"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="annotation reference"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="line number"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="page number"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="endnote reference"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="endnote text"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="table of authorities"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="macro"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="toa heading"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Bullet"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Number"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Bullet 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Bullet 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Bullet 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Bullet 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Number 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Number 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Number 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Number 5"/>
<w:LsdException Locked="false" Priority="10" QFormat="true" Name="Title"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Closing"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Signature"/>
<w:LsdException Locked="false" Priority="1" SemiHidden="true"
UnhideWhenUsed="true" Name="Default Paragraph Font"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text Indent"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Continue"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Continue 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Continue 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Continue 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Continue 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Message Header"/>
<w:LsdException Locked="false" Priority="11" QFormat="true" Name="Subtitle"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Salutation"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Date"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text First Indent"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text First Indent 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Note Heading"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text Indent 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text Indent 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Block Text"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Hyperlink"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="FollowedHyperlink"/>
<w:LsdException Locked="false" Priority="22" QFormat="true" Name="Strong"/>
<w:LsdException Locked="false" Priority="20" QFormat="true" Name="Emphasis"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Document Map"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Plain Text"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="E-mail Signature"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Top of Form"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Bottom of Form"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Normal (Web)"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Acronym"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Address"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Cite"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Code"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Definition"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Keyboard"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Preformatted"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Sample"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Typewriter"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Variable"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Normal Table"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="annotation subject"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="No List"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Outline List 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Outline List 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Outline List 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Simple 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Simple 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Simple 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Classic 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Classic 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Classic 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Classic 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Colorful 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Colorful 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Colorful 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Columns 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Columns 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Columns 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Columns 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Columns 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 6"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 7"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 8"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 6"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 7"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 8"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table 3D effects 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table 3D effects 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table 3D effects 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Contemporary"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Elegant"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Professional"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Subtle 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Subtle 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Web 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Web 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Web 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Balloon Text"/>
<w:LsdException Locked="false" Priority="39" Name="Table Grid"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Theme"/>
<w:LsdException Locked="false" SemiHidden="true" Name="Placeholder Text"/>
<w:LsdException Locked="false" Priority="1" QFormat="true" Name="No Spacing"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading"/>
<w:LsdException Locked="false" Priority="61" Name="Light List"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 1"/>
<w:LsdException Locked="false" Priority="61" Name="Light List Accent 1"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 1"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 1"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 1"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 1"/>
<w:LsdException Locked="false" SemiHidden="true" Name="Revision"/>
<w:LsdException Locked="false" Priority="34" QFormat="true"
Name="List Paragraph"/>
<w:LsdException Locked="false" Priority="29" QFormat="true" Name="Quote"/>
<w:LsdException Locked="false" Priority="30" QFormat="true"
Name="Intense Quote"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 1"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 1"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 1"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 1"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List Accent 1"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 1"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 1"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 1"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 2"/>
<w:LsdException Locked="false" Priority="61" Name="Light List Accent 2"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 2"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 2"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 2"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 2"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 2"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 2"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 2"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 2"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List Accent 2"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 2"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 2"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 2"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 3"/>
<w:LsdException Locked="false" Priority="61" Name="Light List Accent 3"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 3"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 3"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 3"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 3"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 3"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 3"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 3"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 3"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List Accent 3"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 3"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 3"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 3"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 4"/>
<w:LsdException Locked="false" Priority="61" Name="Light List Accent 4"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 4"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 4"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 4"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 4"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 4"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 4"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 4"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 4"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List Accent 4"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 4"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 4"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 4"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 5"/>
<w:LsdException Locked="false" Priority="61" Name="Light List Accent 5"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 5"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 5"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 5"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 5"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 5"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 5"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 5"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 5"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List Accent 5"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 5"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 5"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 5"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 6"/>
<w:LsdException Locked="false" Priority="61" Name="Light List Accent 6"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 6"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 6"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 6"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 6"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 6"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 6"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 6"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 6"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List Accent 6"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 6"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 6"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 6"/>
<w:LsdException Locked="false" Priority="19" QFormat="true"
Name="Subtle Emphasis"/>
<w:LsdException Locked="false" Priority="21" QFormat="true"
Name="Intense Emphasis"/>
<w:LsdException Locked="false" Priority="31" QFormat="true"
Name="Subtle Reference"/>
<w:LsdException Locked="false" Priority="32" QFormat="true"
Name="Intense Reference"/>
<w:LsdException Locked="false" Priority="33" QFormat="true" Name="Book Title"/>
<w:LsdException Locked="false" Priority="37" SemiHidden="true"
UnhideWhenUsed="true" Name="Bibliography"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="TOC Heading"/>
<w:LsdException Locked="false" Priority="41" Name="Plain Table 1"/>
<w:LsdException Locked="false" Priority="42" Name="Plain Table 2"/>
<w:LsdException Locked="false" Priority="43" Name="Plain Table 3"/>
<w:LsdException Locked="false" Priority="44" Name="Plain Table 4"/>
<w:LsdException Locked="false" Priority="45" Name="Plain Table 5"/>
<w:LsdException Locked="false" Priority="40" Name="Grid Table Light"/>
<w:LsdException Locked="false" Priority="46" Name="Grid Table 1 Light"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark"/>
<w:LsdException Locked="false" Priority="51" Name="Grid Table 6 Colorful"/>
<w:LsdException Locked="false" Priority="52" Name="Grid Table 7 Colorful"/>
<w:LsdException Locked="false" Priority="46"
Name="Grid Table 1 Light Accent 1"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 1"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 1"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 1"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 1"/>
<w:LsdException Locked="false" Priority="51"
Name="Grid Table 6 Colorful Accent 1"/>
<w:LsdException Locked="false" Priority="52"
Name="Grid Table 7 Colorful Accent 1"/>
<w:LsdException Locked="false" Priority="46"
Name="Grid Table 1 Light Accent 2"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 2"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 2"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 2"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 2"/>
<w:LsdException Locked="false" Priority="51"
Name="Grid Table 6 Colorful Accent 2"/>
<w:LsdException Locked="false" Priority="52"
Name="Grid Table 7 Colorful Accent 2"/>
<w:LsdException Locked="false" Priority="46"
Name="Grid Table 1 Light Accent 3"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 3"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 3"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 3"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 3"/>
<w:LsdException Locked="false" Priority="51"
Name="Grid Table 6 Colorful Accent 3"/>
<w:LsdException Locked="false" Priority="52"
Name="Grid Table 7 Colorful Accent 3"/>
<w:LsdException Locked="false" Priority="46"
Name="Grid Table 1 Light Accent 4"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 4"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 4"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 4"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 4"/>
<w:LsdException Locked="false" Priority="51"
Name="Grid Table 6 Colorful Accent 4"/>
<w:LsdException Locked="false" Priority="52"
Name="Grid Table 7 Colorful Accent 4"/>
<w:LsdException Locked="false" Priority="46"
Name="Grid Table 1 Light Accent 5"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 5"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 5"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 5"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 5"/>
<w:LsdException Locked="false" Priority="51"
Name="Grid Table 6 Colorful Accent 5"/>
<w:LsdException Locked="false" Priority="52"
Name="Grid Table 7 Colorful Accent 5"/>
<w:LsdException Locked="false" Priority="46"
Name="Grid Table 1 Light Accent 6"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 6"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 6"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 6"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 6"/>
<w:LsdException Locked="false" Priority="51"
Name="Grid Table 6 Colorful Accent 6"/>
<w:LsdException Locked="false" Priority="52"
Name="Grid Table 7 Colorful Accent 6"/>
<w:LsdException Locked="false" Priority="46" Name="List Table 1 Light"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark"/>
<w:LsdException Locked="false" Priority="51" Name="List Table 6 Colorful"/>
<w:LsdException Locked="false" Priority="52" Name="List Table 7 Colorful"/>
<w:LsdException Locked="false" Priority="46"
Name="List Table 1 Light Accent 1"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 1"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 1"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 1"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 1"/>
<w:LsdException Locked="false" Priority="51"
Name="List Table 6 Colorful Accent 1"/>
<w:LsdException Locked="false" Priority="52"
Name="List Table 7 Colorful Accent 1"/>
<w:LsdException Locked="false" Priority="46"
Name="List Table 1 Light Accent 2"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 2"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 2"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 2"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 2"/>
<w:LsdException Locked="false" Priority="51"
Name="List Table 6 Colorful Accent 2"/>
<w:LsdException Locked="false" Priority="52"
Name="List Table 7 Colorful Accent 2"/>
<w:LsdException Locked="false" Priority="46"
Name="List Table 1 Light Accent 3"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 3"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 3"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 3"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 3"/>
<w:LsdException Locked="false" Priority="51"
Name="List Table 6 Colorful Accent 3"/>
<w:LsdException Locked="false" Priority="52"
Name="List Table 7 Colorful Accent 3"/>
<w:LsdException Locked="false" Priority="46"
Name="List Table 1 Light Accent 4"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 4"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 4"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 4"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 4"/>
<w:LsdException Locked="false" Priority="51"
Name="List Table 6 Colorful Accent 4"/>
<w:LsdException Locked="false" Priority="52"
Name="List Table 7 Colorful Accent 4"/>
<w:LsdException Locked="false" Priority="46"
Name="List Table 1 Light Accent 5"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 5"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 5"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 5"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 5"/>
<w:LsdException Locked="false" Priority="51"
Name="List Table 6 Colorful Accent 5"/>
<w:LsdException Locked="false" Priority="52"
Name="List Table 7 Colorful Accent 5"/>
<w:LsdException Locked="false" Priority="46"
Name="List Table 1 Light Accent 6"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 6"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 6"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 6"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 6"/>
<w:LsdException Locked="false" Priority="51"
Name="List Table 6 Colorful Accent 6"/>
<w:LsdException Locked="false" Priority="52"
Name="List Table 7 Colorful Accent 6"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Mention"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Smart Hyperlink"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Hashtag"/>
</w:LatentStyles>
</xml><![endif]--><!--[if gte mso 10]>
<style>
/* Style Definitions */
table.MsoNormalTable
{mso-style-name:標準の表;
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-priority:99;
mso-style-parent:"";
mso-padding-alt:0mm 5.4pt 0mm 5.4pt;
mso-para-margin:0mm;
mso-para-margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:10.5pt;
mso-bidi-font-size:11.0pt;
font-family:"Arial",sans-serif;
mso-ascii-font-family:Arial;
mso-ascii-theme-font:minor-latin;
mso-hansi-font-family:Arial;
mso-hansi-theme-font:minor-latin;
mso-bidi-font-family:"Times New Roman";
mso-bidi-theme-font:minor-bidi;
mso-font-kerning:1.0pt;}
</style>
<![endif]--><span lang="EN-US" style="font-family: "ms pゴシック"; font-size: 12.0pt;">C:\Users\me\AppData\Local\Android\sdk\platform-tools>adb
connect ip Addresss</span><br />
<!--[if gte mso 9]><xml>
<w:WordDocument>
<w:View>Normal</w:View>
<w:Zoom>0</w:Zoom>
<w:TrackMoves/>
<w:TrackFormatting/>
<w:PunctuationKerning/>
<w:DisplayHorizontalDrawingGridEvery>0</w:DisplayHorizontalDrawingGridEvery>
<w:DisplayVerticalDrawingGridEvery>2</w:DisplayVerticalDrawingGridEvery>
<w:ValidateAgainstSchemas/>
<w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid>
<w:IgnoreMixedContent>false</w:IgnoreMixedContent>
<w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText>
<w:DoNotPromoteQF/>
<w:LidThemeOther>EN-US</w:LidThemeOther>
<w:LidThemeAsian>JA</w:LidThemeAsian>
<w:LidThemeComplexScript>X-NONE</w:LidThemeComplexScript>
<w:Compatibility>
<w:SpaceForUL/>
<w:BalanceSingleByteDoubleByteWidth/>
<w:DoNotLeaveBackslashAlone/>
<w:ULTrailSpace/>
<w:DoNotExpandShiftReturn/>
<w:AdjustLineHeightInTable/>
<w:BreakWrappedTables/>
<w:SnapToGridInCell/>
<w:WrapTextWithPunct/>
<w:UseAsianBreakRules/>
<w:DontGrowAutofit/>
<w:SplitPgBreakAndParaMark/>
<w:EnableOpenTypeKerning/>
<w:DontFlipMirrorIndents/>
<w:OverrideTableStyleHps/>
<w:UseFELayout/>
</w:Compatibility>
<m:mathPr>
<m:mathFont m:val="Cambria Math"/>
<m:brkBin m:val="before"/>
<m:brkBinSub m:val="--"/>
<m:smallFrac m:val="off"/>
<m:dispDef/>
<m:lMargin m:val="0"/>
<m:rMargin m:val="0"/>
<m:defJc m:val="centerGroup"/>
<m:wrapIndent m:val="1440"/>
<m:intLim m:val="subSup"/>
<m:naryLim m:val="undOvr"/>
</m:mathPr></w:WordDocument>
</xml><![endif]--><!--[if gte mso 9]><xml>
<w:LatentStyles DefLockedState="false" DefUnhideWhenUsed="false"
DefSemiHidden="false" DefQFormat="false" DefPriority="99"
LatentStyleCount="374">
<w:LsdException Locked="false" Priority="0" QFormat="true" Name="Normal"/>
<w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 1"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 2"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 3"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 4"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 5"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 6"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 7"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 8"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 9"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 6"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 7"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 8"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 9"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 1"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 2"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 3"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 4"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 5"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 6"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 7"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 8"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 9"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Normal Indent"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="footnote text"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="annotation text"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="header"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="footer"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index heading"/>
<w:LsdException Locked="false" Priority="35" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="caption"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="table of figures"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="envelope address"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="envelope return"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="footnote reference"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="annotation reference"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="line number"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="page number"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="endnote reference"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="endnote text"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="table of authorities"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="macro"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="toa heading"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Bullet"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Number"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Bullet 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Bullet 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Bullet 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Bullet 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Number 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Number 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Number 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Number 5"/>
<w:LsdException Locked="false" Priority="10" QFormat="true" Name="Title"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Closing"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Signature"/>
<w:LsdException Locked="false" Priority="1" SemiHidden="true"
UnhideWhenUsed="true" Name="Default Paragraph Font"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text Indent"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Continue"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Continue 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Continue 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Continue 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Continue 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Message Header"/>
<w:LsdException Locked="false" Priority="11" QFormat="true" Name="Subtitle"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Salutation"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Date"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text First Indent"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text First Indent 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Note Heading"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text Indent 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text Indent 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Block Text"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Hyperlink"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="FollowedHyperlink"/>
<w:LsdException Locked="false" Priority="22" QFormat="true" Name="Strong"/>
<w:LsdException Locked="false" Priority="20" QFormat="true" Name="Emphasis"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Document Map"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Plain Text"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="E-mail Signature"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Top of Form"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Bottom of Form"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Normal (Web)"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Acronym"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Address"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Cite"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Code"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Definition"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Keyboard"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Preformatted"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Sample"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Typewriter"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Variable"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Normal Table"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="annotation subject"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="No List"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Outline List 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Outline List 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Outline List 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Simple 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Simple 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Simple 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Classic 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Classic 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Classic 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Classic 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Colorful 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Colorful 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Colorful 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Columns 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Columns 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Columns 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Columns 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Columns 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 6"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 7"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 8"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 6"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 7"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 8"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table 3D effects 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table 3D effects 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table 3D effects 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Contemporary"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Elegant"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Professional"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Subtle 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Subtle 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Web 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Web 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Web 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Balloon Text"/>
<w:LsdException Locked="false" Priority="39" Name="Table Grid"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Theme"/>
<w:LsdException Locked="false" SemiHidden="true" Name="Placeholder Text"/>
<w:LsdException Locked="false" Priority="1" QFormat="true" Name="No Spacing"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading"/>
<w:LsdException Locked="false" Priority="61" Name="Light List"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 1"/>
<w:LsdException Locked="false" Priority="61" Name="Light List Accent 1"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 1"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 1"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 1"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 1"/>
<w:LsdException Locked="false" SemiHidden="true" Name="Revision"/>
<w:LsdException Locked="false" Priority="34" QFormat="true"
Name="List Paragraph"/>
<w:LsdException Locked="false" Priority="29" QFormat="true" Name="Quote"/>
<w:LsdException Locked="false" Priority="30" QFormat="true"
Name="Intense Quote"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 1"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 1"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 1"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 1"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List Accent 1"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 1"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 1"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 1"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 2"/>
<w:LsdException Locked="false" Priority="61" Name="Light List Accent 2"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 2"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 2"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 2"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 2"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 2"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 2"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 2"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 2"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List Accent 2"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 2"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 2"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 2"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 3"/>
<w:LsdException Locked="false" Priority="61" Name="Light List Accent 3"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 3"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 3"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 3"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 3"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 3"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 3"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 3"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 3"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List Accent 3"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 3"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 3"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 3"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 4"/>
<w:LsdException Locked="false" Priority="61" Name="Light List Accent 4"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 4"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 4"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 4"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 4"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 4"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 4"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 4"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 4"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List Accent 4"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 4"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 4"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 4"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 5"/>
<w:LsdException Locked="false" Priority="61" Name="Light List Accent 5"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 5"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 5"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 5"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 5"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 5"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 5"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 5"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 5"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List Accent 5"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 5"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 5"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 5"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 6"/>
<w:LsdException Locked="false" Priority="61" Name="Light List Accent 6"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 6"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 6"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 6"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 6"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 6"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 6"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 6"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 6"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List Accent 6"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 6"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 6"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 6"/>
<w:LsdException Locked="false" Priority="19" QFormat="true"
Name="Subtle Emphasis"/>
<w:LsdException Locked="false" Priority="21" QFormat="true"
Name="Intense Emphasis"/>
<w:LsdException Locked="false" Priority="31" QFormat="true"
Name="Subtle Reference"/>
<w:LsdException Locked="false" Priority="32" QFormat="true"
Name="Intense Reference"/>
<w:LsdException Locked="false" Priority="33" QFormat="true" Name="Book Title"/>
<w:LsdException Locked="false" Priority="37" SemiHidden="true"
UnhideWhenUsed="true" Name="Bibliography"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="TOC Heading"/>
<w:LsdException Locked="false" Priority="41" Name="Plain Table 1"/>
<w:LsdException Locked="false" Priority="42" Name="Plain Table 2"/>
<w:LsdException Locked="false" Priority="43" Name="Plain Table 3"/>
<w:LsdException Locked="false" Priority="44" Name="Plain Table 4"/>
<w:LsdException Locked="false" Priority="45" Name="Plain Table 5"/>
<w:LsdException Locked="false" Priority="40" Name="Grid Table Light"/>
<w:LsdException Locked="false" Priority="46" Name="Grid Table 1 Light"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark"/>
<w:LsdException Locked="false" Priority="51" Name="Grid Table 6 Colorful"/>
<w:LsdException Locked="false" Priority="52" Name="Grid Table 7 Colorful"/>
<w:LsdException Locked="false" Priority="46"
Name="Grid Table 1 Light Accent 1"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 1"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 1"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 1"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 1"/>
<w:LsdException Locked="false" Priority="51"
Name="Grid Table 6 Colorful Accent 1"/>
<w:LsdException Locked="false" Priority="52"
Name="Grid Table 7 Colorful Accent 1"/>
<w:LsdException Locked="false" Priority="46"
Name="Grid Table 1 Light Accent 2"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 2"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 2"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 2"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 2"/>
<w:LsdException Locked="false" Priority="51"
Name="Grid Table 6 Colorful Accent 2"/>
<w:LsdException Locked="false" Priority="52"
Name="Grid Table 7 Colorful Accent 2"/>
<w:LsdException Locked="false" Priority="46"
Name="Grid Table 1 Light Accent 3"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 3"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 3"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 3"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 3"/>
<w:LsdException Locked="false" Priority="51"
Name="Grid Table 6 Colorful Accent 3"/>
<w:LsdException Locked="false" Priority="52"
Name="Grid Table 7 Colorful Accent 3"/>
<w:LsdException Locked="false" Priority="46"
Name="Grid Table 1 Light Accent 4"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 4"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 4"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 4"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 4"/>
<w:LsdException Locked="false" Priority="51"
Name="Grid Table 6 Colorful Accent 4"/>
<w:LsdException Locked="false" Priority="52"
Name="Grid Table 7 Colorful Accent 4"/>
<w:LsdException Locked="false" Priority="46"
Name="Grid Table 1 Light Accent 5"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 5"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 5"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 5"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 5"/>
<w:LsdException Locked="false" Priority="51"
Name="Grid Table 6 Colorful Accent 5"/>
<w:LsdException Locked="false" Priority="52"
Name="Grid Table 7 Colorful Accent 5"/>
<w:LsdException Locked="false" Priority="46"
Name="Grid Table 1 Light Accent 6"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 6"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 6"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 6"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 6"/>
<w:LsdException Locked="false" Priority="51"
Name="Grid Table 6 Colorful Accent 6"/>
<w:LsdException Locked="false" Priority="52"
Name="Grid Table 7 Colorful Accent 6"/>
<w:LsdException Locked="false" Priority="46" Name="List Table 1 Light"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark"/>
<w:LsdException Locked="false" Priority="51" Name="List Table 6 Colorful"/>
<w:LsdException Locked="false" Priority="52" Name="List Table 7 Colorful"/>
<w:LsdException Locked="false" Priority="46"
Name="List Table 1 Light Accent 1"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 1"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 1"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 1"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 1"/>
<w:LsdException Locked="false" Priority="51"
Name="List Table 6 Colorful Accent 1"/>
<w:LsdException Locked="false" Priority="52"
Name="List Table 7 Colorful Accent 1"/>
<w:LsdException Locked="false" Priority="46"
Name="List Table 1 Light Accent 2"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 2"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 2"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 2"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 2"/>
<w:LsdException Locked="false" Priority="51"
Name="List Table 6 Colorful Accent 2"/>
<w:LsdException Locked="false" Priority="52"
Name="List Table 7 Colorful Accent 2"/>
<w:LsdException Locked="false" Priority="46"
Name="List Table 1 Light Accent 3"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 3"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 3"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 3"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 3"/>
<w:LsdException Locked="false" Priority="51"
Name="List Table 6 Colorful Accent 3"/>
<w:LsdException Locked="false" Priority="52"
Name="List Table 7 Colorful Accent 3"/>
<w:LsdException Locked="false" Priority="46"
Name="List Table 1 Light Accent 4"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 4"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 4"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 4"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 4"/>
<w:LsdException Locked="false" Priority="51"
Name="List Table 6 Colorful Accent 4"/>
<w:LsdException Locked="false" Priority="52"
Name="List Table 7 Colorful Accent 4"/>
<w:LsdException Locked="false" Priority="46"
Name="List Table 1 Light Accent 5"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 5"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 5"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 5"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 5"/>
<w:LsdException Locked="false" Priority="51"
Name="List Table 6 Colorful Accent 5"/>
<w:LsdException Locked="false" Priority="52"
Name="List Table 7 Colorful Accent 5"/>
<w:LsdException Locked="false" Priority="46"
Name="List Table 1 Light Accent 6"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 6"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 6"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 6"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 6"/>
<w:LsdException Locked="false" Priority="51"
Name="List Table 6 Colorful Accent 6"/>
<w:LsdException Locked="false" Priority="52"
Name="List Table 7 Colorful Accent 6"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Mention"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Smart Hyperlink"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Hashtag"/>
</w:LatentStyles>
</xml><![endif]--><!--[if gte mso 10]>
<style>
/* Style Definitions */
table.MsoNormalTable
{mso-style-name:標準の表;
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-priority:99;
mso-style-parent:"";
mso-padding-alt:0mm 5.4pt 0mm 5.4pt;
mso-para-margin:0mm;
mso-para-margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:10.5pt;
mso-bidi-font-size:11.0pt;
font-family:"Arial",sans-serif;
mso-ascii-font-family:Arial;
mso-ascii-theme-font:minor-latin;
mso-hansi-font-family:Arial;
mso-hansi-theme-font:minor-latin;
mso-bidi-font-family:"Times New Roman";
mso-bidi-theme-font:minor-bidi;
mso-font-kerning:1.0pt;}
</style>
<![endif]--><span lang="EN-US" style="font-family: "ms pゴシック"; font-size: 12.0pt;">connected to ip Address : 5555って返ってきます。</span><br />
<span lang="EN-US" style="font-family: "ms pゴシック"; font-size: 12.0pt;"><br /></span>
<span lang="EN-US" style="font-family: "ms pゴシック"; font-size: 12.0pt;"><br /></span>
<span lang="EN-US" style="font-family: "ms pゴシック"; font-size: 12.0pt;">6.SDKを、Andorido Studioと同じフォルダーにする。</span><br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://2.bp.blogspot.com/-nHOUDWZkNaQ/WKMRfGIAc5I/AAAAAAAABQQ/Y-JAtGryU3EPys7ggwn-KzsrE7JwzTsuwCEw/s1600/SnapCrab_%25E3%2582%25AA%25E3%2583%2597%25E3%2582%25B7%25E3%2583%25A7%25E3%2583%25B3_2017-2-14_23-17-12_No-00.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="292" src="https://2.bp.blogspot.com/-nHOUDWZkNaQ/WKMRfGIAc5I/AAAAAAAABQQ/Y-JAtGryU3EPys7ggwn-KzsrE7JwzTsuwCEw/s400/SnapCrab_%25E3%2582%25AA%25E3%2583%2597%25E3%2582%25B7%25E3%2583%25A7%25E3%2583%25B3_2017-2-14_23-17-12_No-00.png" width="400" /></a> </div>
<br />
<span lang="EN-US" style="font-family: "ms pゴシック"; font-size: 12.0pt;">7.Android Things用のブリッジファイルを作る(サンプルファイルをダウンロード)</span><br />
<span lang="EN-US" style="font-family: "ms pゴシック"; font-size: 12.0pt;"> Java2Op等で作成。なのですが、面倒なのでファイルをダウンロードしてください。</span><br />
<span lang="EN-US" style="font-family: "ms pゴシック"; font-size: 12.0pt;"> </span><br />
<br />
<span lang="EN-US" style="font-family: "ms pゴシック"; font-size: 12.0pt;">8.サンプルプログラム</span><br />
<span lang="EN-US" style="font-family: "ms pゴシック"; font-size: 12.0pt;"> unit Main;<br /><br />interface<br /><br />uses<br /> System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,<br /> FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs,<br /> FMX.Controls.Presentation, FMX.StdCtrls<br /> ,Android.Things<br /> ,Androidapi.JNI.JavaTypes<br /> ,Androidapi.JNIBridge<br /> ,Androidapi.JNI.GraphicsContentViewText<br /> ,Androidapi.Helpers<br /> ,Androidapi.JNI.App<br /> ,Androidapi.JNI.Embarcadero;<br /><br />type<br /> TForm37 = class(TForm)<br /> Timer1: TTimer;<br /> procedure Timer1Timer(Sender: TObject);<br /> procedure FormCreate(Sender: TObject);<br /> private<br /> { private 宣言 }<br /> FPortService : JPeripheralManagerService;<br /> FWDGpio : JGPIO;<br /> RVSGpio : JGPIO;<br /> public<br /> { public 宣言 }<br /> end;<br /><br />var<br /> Form37: TForm37;<br /><br /><br />implementation<br /><br />{$R *.fmx}<br /><br /><br />procedure TForm37.FormCreate(Sender: TObject);<br />begin<br /> FPortService := TJPeripheralManagerService.Create();<br /> FwdGpio := FPortService.openGpio(StringToJString('BCM6'));<br /> RvsGpio := FPortService.openGpio(StringToJString('BCM5'));<br /> FwdGpio.setDirection( TJGpio.JavaClass.DIRECTION_OUT_INITIALLY_LOW);<br /> RvsGpio.setDirection( TJGpio.JavaClass.DIRECTION_OUT_INITIALLY_LOW);<br />end;<br /><br />procedure TForm37.Timer1Timer(Sender: TObject);<br />begin<br /> if Timer1.Tag = 0 then<br /> begin<br /> Timer1.Tag := 1;<br /> FwdGpio.setValue(FALSE);<br /> RvsGpio.setValue(TRUE);<br /> end<br /> else<br /> begin<br /> Timer1.Tag := 0;<br /> FwdGpio.setValue(TRUE);<br /> RvsGpio.setValue(FALSE);<br /> end;<br /> end;<br />end.</span><br />
<br />
<span lang="EN-US" style="font-family: "ms pゴシック"; font-size: 12.0pt;">9.AndroidManifestファイルの編集</span><br />
<span lang="EN-US" style="font-family: "ms pゴシック"; font-size: 12.0pt;"> <uses-library android:name="com.google.android.things"/></span><br />
<span lang="EN-US" style="font-family: "ms pゴシック"; font-size: 12.0pt;">を追加したりいろいろする</span><br />
<span lang="EN-US" style="font-family: "ms pゴシック"; font-size: 12.0pt;"><br /></span>
<span lang="EN-US" style="font-family: "ms pゴシック"; font-size: 12.0pt;"><br /></span>
<span lang="EN-US" style="font-family: "ms pゴシック"; font-size: 12.0pt;">10.コンパイル実行</span><br />
<span lang="EN-US" style="font-family: "ms pゴシック"; font-size: 12.0pt;">(機種選択はiot_rpi3を選択してください。)</span><br />
<div class="separator" style="clear: both; text-align: center;">
<span lang="EN-US" style="font-family: "ms pゴシック"; font-size: 12.0pt;"><a href="https://4.bp.blogspot.com/-wTLIVXwyKtw/WKMfm0G1KII/AAAAAAAABQs/X2PdqlPHUssZAB_8xMILDxp_2sUNYwccwCLcB/s1600/SnapCrab_AndroidThingsLed%2B-%2BRAD%2BStudio%2B101%2BBerlin%2B-%2BMain%2B%255B%25E3%2583%2593%25E3%2583%25AB%25E3%2583%2589%25E5%25AE%258C%25E4%25BA%2586%255D_2017-2-15_0-17-29_No-00.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="98" src="https://4.bp.blogspot.com/-wTLIVXwyKtw/WKMfm0G1KII/AAAAAAAABQs/X2PdqlPHUssZAB_8xMILDxp_2sUNYwccwCLcB/s640/SnapCrab_AndroidThingsLed%2B-%2BRAD%2BStudio%2B101%2BBerlin%2B-%2BMain%2B%255B%25E3%2583%2593%25E3%2583%25AB%25E3%2583%2589%25E5%25AE%258C%25E4%25BA%2586%255D_2017-2-15_0-17-29_No-00.png" width="640" /></a></span></div>
<span lang="EN-US" style="font-family: "ms pゴシック"; font-size: 12.0pt;"> </span><br />
<span lang="EN-US" style="font-family: "ms pゴシック"; font-size: 12.0pt;"> 実行すると</span><br />
<br />
<span lang="EN-US" style="font-family: "ms pゴシック"; font-size: 12.0pt;">こんな感じで交互にLチカとなります。</span><br />
<div class="separator" style="clear: both; text-align: center;">
<iframe allowfullscreen="" class="YOUTUBE-iframe-video" data-thumbnail-src="https://i.ytimg.com/vi/ukKhGfs4D6c/0.jpg" frameborder="0" height="266" src="https://www.youtube.com/embed/ukKhGfs4D6c?feature=player_embedded" width="320"></iframe></div>
<br />
<br />
<a href="https://github.com/qa65000/AndroidThingsDelphi"><span lang="EN-US" style="font-family: "ms pゴシック"; font-size: 12.0pt;"><br /></span></a>
<span lang="EN-US" style="font-family: "ms pゴシック"; font-size: 12.0pt;"><a href="https://github.com/qa65000/AndroidThingsDelphi">ソースはここ、SourceFile </a></span><br />
<br />
<br />
<span lang="EN-US" style="font-family: "ms pゴシック"; font-size: 12.0pt;">Nゲージを動かす。</span><br />
<div class="separator" style="clear: both; text-align: center;">
<iframe width="320" height="266" class="YOUTUBE-iframe-video" data-thumbnail-src="https://i.ytimg.com/vi/cxC1GHvHsrs/0.jpg" src="https://www.youtube.com/embed/cxC1GHvHsrs?feature=player_embedded" frameborder="0" allowfullscreen></iframe></div>
<span lang="EN-US" style="font-family: "ms pゴシック"; font-size: 12.0pt;"> </span><br />
<span lang="EN-US" style="font-family: "ms pゴシック"; font-size: 12.0pt;"><br /></span>
<span lang="EN-US" style="font-family: "ms pゴシック"; font-size: 12.0pt;"><br /></span>
<span lang="EN-US" style="font-family: "ms pゴシック"; font-size: 12.0pt;"><br /></span>
<span lang="EN-US" style="font-family: "ms pゴシック"; font-size: 12.0pt;">以上</span><br />
<span lang="EN-US" style="font-family: "ms pゴシック"; font-size: 12.0pt;">やましょうでした。</span><br />
<span lang="EN-US" style="font-family: "ms pゴシック"; font-size: 12.0pt;"><br /></span>やましょうhttp://www.blogger.com/profile/03813044589862913579noreply@blogger.com9tag:blogger.com,1999:blog-3469022793046896684.post-1069442629862831972016-12-04T00:00:00.000+09:002016-12-04T01:21:05.634+09:00Delphi タイマイベントについて考える。これは <a href="http://qiita.com/advent-calendar/2016/delphi">Delphi Advent Calendar</a> 2016 4日目の記事です。<br />
みなさん、おひさしぶりです。やましょうです。<br />
<br />
ちょっと不思議というか本当にwindowsのタイマイベントって正しいのか?<br />
と言う疑問にかられました。<br />
理由は<a href="http://qa65.blogspot.jp/2016/04/windows-10-iot.html">ここ</a><br />
Msさんの組込み用ラズパイのタイマがぼろぼろだったからです。<br />
<br />
また、C#だと。。StopWatchが簡単に。。ですけどdelphiだとなかなか書いていないため<br />
記載してみます。)<br />
<br />
まずDelphiではStopWatchで時間計測です。<br />
<br />
StopWatchを使用する為に、<br />
System.Diagnosticsを追加<br />
Createして、タイマイベントで計測&表示って感じです。<br />
<br />
<br />
コード<br />
unit TimerTestMain;<br />
<br />
interface<br />
<br />
uses<br />
System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,<br />
System.Diagnostics,<br />
FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs,<br />
FMX.Controls.Presentation, FMX.ScrollBox, FMX.Memo;<br />
<br />
type<br />
TForm36 = class(TForm)<br />
Timer1: TTimer; //1000ms設定でenableにしておく<br />
Memo1: TMemo;<br />
procedure Timer1Timer(Sender: TObject);<br />
procedure FormCreate(Sender: TObject);<br />
private var<br />
StopWatch : TStopwatch;<br />
<br />
{ private 宣言 }<br />
public<br />
{ public 宣言 }<br />
end;<br />
<br />
var<br />
Form36: TForm36;<br />
<br />
implementation<br />
<br />
{$R *.fmx}<br />
<br />
procedure TForm36.FormCreate(Sender: TObject);<br />
begin<br />
StopWatch := TStopwatch.Create;<br />
StopWatch.Start;<br />
end;<br />
<br />
procedure TForm36.Timer1Timer(Sender: TObject);<br />
var<br />
Tm : Int64;<br />
begin<br />
StopWatch.Stop;<br />
Tm := StopWatch.ElapsedMilliseconds;<br />
StopWatch.Reset;<br />
StopWatch.Start;<br />
if StopWatch.IsHighResolution then<br />
form36.Caption := 'ハイレゾ'<br />
else<br />
form36.Caption := 'そんなでもない';<br />
<br />
memo1.Lines.Add(IntTostr(Tm));<br />
end;<br />
結果、やっぱ正確じゃない。。。<br />
単位[ms] です。<br />
990<br />
1002<br />
996<br />
1002<br />
1000<br />
1000<br />
1000<br />
994<br />
1003<br />
998<br />
1002<br />
1001<br />
996<br />
998<br />
999<br />
1000<br />
999<br />
1002<br />
996<br />
1001<br />
1001<br />
1000<br />
1010<br />
989<br />
997<br />
1001<br />
998<br />
i7のマシンでしかもハイレゾでも<br />
これだけジッタというか、結構づれていそうです。<br />
とは言っても平均すると1秒くらいに収束しそうです。<br />
さすが、PC、だいたいでは問題ないですね。<br />
ちなみに、念の為プロセスを最優先にしても正確ではありませんでした。 SetPriorityClass(GetCurrentProcess, REALTIME_PRIORITY_CLASS );<br />
を追加<br />
<br />
さて、ここから脱線して、<br />
一つの疑問はタイマのイベントは他のイベント中に受け付けるのか?<br />
と言うことですね。と言うことで確認です。<br />
(タイマは割込処理なのか?違うのか?の検証です。)<br />
<br />
keyを押すと3秒程度かかる処理を実装して、計測してみます。<br />
<br />
procedure TForm36.Button1Click(Sender: TObject);<br />
var<br />
Tm : Int64;<br />
i : DWORD;<br />
begin<br />
memo1.Lines.Add('ボタン1の処理開始');<br />
for I := 0 to MAXINT do<br />
begin<br />
asm nop end;<br />
asm nop end;<br />
// if ( i mod 10000 ) = 0 then Application.ProcessMessages();<br />
end;<br />
Tm := StopWatch.ElapsedMilliseconds;<br />
memo1.Lines.Add('ボタン1の処理終了:'+IntToStr(Tm));<br />
<br />
end;<br />
<br />
procedure TForm36.FormCreate(Sender: TObject);<br />
begin<br />
StopWatch := TStopwatch.Create;<br />
StopWatch.Start;<br />
end;<br />
<br />
procedure TForm36.Timer1Timer(Sender: TObject);<br />
begin<br />
<br />
memo1.Lines.Add('1秒毎のタイマイベント発生');<br />
end;<br />
<br />
<br />
結果:<br /><br />
1秒毎のタイマイベント発生<br />
1秒毎のタイマイベント発生<br />
ボタン1の処理開始<br />
ボタン1の処理終了:6368<br />
1秒毎のタイマイベント発生<br />
1秒毎のタイマイベント発生<br />
ボタン1の処理開始<br />
ボタン1の処理終了:10898<br />
ボタン1の処理開始<br />
ボタン1の処理終了:14581<br />
1秒毎のタイマイベント発生<br />
1秒毎のタイマイベント発生<br />
1秒毎のタイマイベント発生<br />
1秒毎のタイマイベント発生<br />
<br />
<br />
keyを二度押ししても、ボタン1の終了までは、ボタン1の処理は開始せず、<br />
タイマイベントも処理できていません。なので割込処理でもありませんね。<br />
<br />
<br />
このことから重い処理を分散させるため Application.ProcessMessages();<br />
の呪文を使います。<br />
この場合多重にkeyの処理が走り出すので注意が必要です。<br />
その時の結果は下記<br />
<br />
1秒毎のタイマイベント発生<br />
1秒毎のタイマイベント発生<br />
ボタン1の処理終了:20532<br />
1秒毎のタイマイベント発生<br />
1秒毎のタイマイベント発生<br />
1秒毎のタイマイベント発生<br />
1秒毎のタイマイベント発生<br />
1秒毎のタイマイベント発生<br />
1秒毎のタイマイベント発生<br />
1秒毎のタイマイベント発生<br />
ボタン1の処理終了:27593<br />
1秒毎のタイマイベント発生<br />
1秒毎のタイマイベント発生<br />
1秒毎のタイマイベント発生<br />
<br />
ということで、タイマイベントは割込処理でなく単なるMsg処理になっています。<br />
なので、特に難しい事は考えなくてもよさそうです。<br />
<br />
以上<br />
やましょうでした。<br />
<br />
<br />
<br />やましょうhttp://www.blogger.com/profile/03813044589862913579noreply@blogger.com0tag:blogger.com,1999:blog-3469022793046896684.post-46021398204191037132016-11-12T16:58:00.003+09:002018-07-22T20:57:05.533+09:00Delphi でApple Scriptを使用する。こんにちは、おひさしぶりやましょうです。<br />
<br />
<br />
とはいいつつも師匠から、Apple scriptの使い方をと言われたので<br />
<br />
こんな感じです。<br />
<br />
あくまでも例:コンパイルもしていない。スペルミスもあるかも。。<br />
uses<br />
Macapi.Foundation,<br />
Macapi.Helpers,<br />
<br />
<br />
const STRINGSCR = 'Apple script Desc'+slineBreak;<br />
<br />
procedure TForm1.ApplescrClick(Sender: TObject);<br />
var<br />
Scr : NsAppleScript;<br />
Err : Pointer;<br />
begin<br />
Err := nil;<br />
Scr := TNSAppleScript.Wrap(TNSAppleScript.Alloc.initWithSource(StrToNSStr(STRINGSCR)));<br />
Scr.executeAndReturnError(Err);<br />
end;<br />
<br />
こんな感じで動くと思います。<br />
実際にはexecueAndReturnErrorはTryを使用した方が良いと思います。<br />
<br />
<br />
<br />やましょうhttp://www.blogger.com/profile/03813044589862913579noreply@blogger.com0tag:blogger.com,1999:blog-3469022793046896684.post-74031299917229973512016-11-12T16:58:00.002+09:002016-11-12T18:51:56.868+09:00Delphi でApple Scriptを使用する。こんにちは、おひさしぶりやましょうです。<br />
<br />
<br />
とはいいつつも師匠から、Apple scriptの使い方をと言われたので<br />
<br />
こんな感じです。<br />
<br />
あくまでも例:コンパイルもしていない。スペルミスもあるかも。。<br />
uses<br />
Macapi.Foundation,<br />
Macapi.Helpers,<br />
<br />
<br />
const STRINGSCR = 'Apple script Desc'+slineBreak;<br />
<br />
procedure TForm1.ApplescrClick(Sender: TObject);<br />
var<br />
Scr : NsAppleScript;<br />
Err : Pointer;<br />
begin<br />
Err := nil;<br />
Scr := TNSAppleScript.Wrap(TNSAppleScript.Alloc.initWithSource(StrToNSStr(STRINGSCR)));<br />
Scr.executeAndReturnError(Err);<br />
end;<br />
<br />
こんな感じで動くと思います。<br />
実際にはexecueAndReturnErrorはTryを使用した方が良いと思います。<br />
<br />
<br />
<br />やましょうhttp://www.blogger.com/profile/03813044589862913579noreply@blogger.com0tag:blogger.com,1999:blog-3469022793046896684.post-79749647251686175712016-11-02T23:50:00.002+09:002016-11-02T23:50:53.440+09:00Delphi fmx タイトルバー無し フルスクリーン 表示方法こんにちは、 やましょうです。<br />
<br />
delphiで、fmx のフルスクリーン方法です。<br />
<br />
<!--[if gte mso 9]><xml>
<w:WordDocument>
<w:View>Normal</w:View>
<w:Zoom>0</w:Zoom>
<w:TrackMoves/>
<w:TrackFormatting/>
<w:PunctuationKerning/>
<w:DisplayHorizontalDrawingGridEvery>0</w:DisplayHorizontalDrawingGridEvery>
<w:DisplayVerticalDrawingGridEvery>2</w:DisplayVerticalDrawingGridEvery>
<w:ValidateAgainstSchemas/>
<w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid>
<w:IgnoreMixedContent>false</w:IgnoreMixedContent>
<w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText>
<w:DoNotPromoteQF/>
<w:LidThemeOther>EN-US</w:LidThemeOther>
<w:LidThemeAsian>JA</w:LidThemeAsian>
<w:LidThemeComplexScript>X-NONE</w:LidThemeComplexScript>
<w:Compatibility>
<w:SpaceForUL/>
<w:BalanceSingleByteDoubleByteWidth/>
<w:DoNotLeaveBackslashAlone/>
<w:ULTrailSpace/>
<w:DoNotExpandShiftReturn/>
<w:AdjustLineHeightInTable/>
<w:BreakWrappedTables/>
<w:SnapToGridInCell/>
<w:WrapTextWithPunct/>
<w:UseAsianBreakRules/>
<w:DontGrowAutofit/>
<w:SplitPgBreakAndParaMark/>
<w:EnableOpenTypeKerning/>
<w:DontFlipMirrorIndents/>
<w:OverrideTableStyleHps/>
<w:UseFELayout/>
</w:Compatibility>
<w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel>
<m:mathPr>
<m:mathFont m:val="Cambria Math"/>
<m:brkBin m:val="before"/>
<m:brkBinSub m:val="--"/>
<m:smallFrac m:val="off"/>
<m:dispDef/>
<m:lMargin m:val="0"/>
<m:rMargin m:val="0"/>
<m:defJc m:val="centerGroup"/>
<m:wrapIndent m:val="1440"/>
<m:intLim m:val="subSup"/>
<m:naryLim m:val="undOvr"/>
</m:mathPr></w:WordDocument>
</xml><![endif]--><br />
<!--[if gte mso 9]><xml>
<w:LatentStyles DefLockedState="false" DefUnhideWhenUsed="false"
DefSemiHidden="false" DefQFormat="false" DefPriority="99"
LatentStyleCount="374">
<w:LsdException Locked="false" Priority="0" QFormat="true" Name="Normal"/>
<w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 1"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 2"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 3"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 4"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 5"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 6"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 7"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 8"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 9"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 6"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 7"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 8"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 9"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 1"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 2"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 3"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 4"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 5"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 6"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 7"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 8"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 9"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Normal Indent"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="footnote text"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="annotation text"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="header"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="footer"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index heading"/>
<w:LsdException Locked="false" Priority="35" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="caption"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="table of figures"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="envelope address"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="envelope return"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="footnote reference"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="annotation reference"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="line number"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="page number"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="endnote reference"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="endnote text"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="table of authorities"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="macro"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="toa heading"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Bullet"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Number"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Bullet 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Bullet 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Bullet 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Bullet 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Number 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Number 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Number 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Number 5"/>
<w:LsdException Locked="false" Priority="10" QFormat="true" Name="Title"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Closing"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Signature"/>
<w:LsdException Locked="false" Priority="1" SemiHidden="true"
UnhideWhenUsed="true" Name="Default Paragraph Font"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text Indent"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Continue"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Continue 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Continue 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Continue 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Continue 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Message Header"/>
<w:LsdException Locked="false" Priority="11" QFormat="true" Name="Subtitle"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Salutation"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Date"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text First Indent"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text First Indent 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Note Heading"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text Indent 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text Indent 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Block Text"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Hyperlink"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="FollowedHyperlink"/>
<w:LsdException Locked="false" Priority="22" QFormat="true" Name="Strong"/>
<w:LsdException Locked="false" Priority="20" QFormat="true" Name="Emphasis"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Document Map"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Plain Text"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="E-mail Signature"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Top of Form"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Bottom of Form"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Normal (Web)"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Acronym"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Address"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Cite"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Code"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Definition"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Keyboard"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Preformatted"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Sample"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Typewriter"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Variable"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Normal Table"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="annotation subject"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="No List"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Outline List 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Outline List 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Outline List 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Simple 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Simple 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Simple 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Classic 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Classic 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Classic 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Classic 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Colorful 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Colorful 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Colorful 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Columns 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Columns 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Columns 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Columns 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Columns 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 6"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 7"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 8"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 6"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 7"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 8"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table 3D effects 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table 3D effects 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table 3D effects 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Contemporary"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Elegant"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Professional"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Subtle 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Subtle 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Web 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Web 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Web 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Balloon Text"/>
<w:LsdException Locked="false" Priority="39" Name="Table Grid"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Theme"/>
<w:LsdException Locked="false" SemiHidden="true" Name="Placeholder Text"/>
<w:LsdException Locked="false" Priority="1" QFormat="true" Name="No Spacing"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading"/>
<w:LsdException Locked="false" Priority="61" Name="Light List"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 1"/>
<w:LsdException Locked="false" Priority="61" Name="Light List Accent 1"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 1"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 1"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 1"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 1"/>
<w:LsdException Locked="false" SemiHidden="true" Name="Revision"/>
<w:LsdException Locked="false" Priority="34" QFormat="true"
Name="List Paragraph"/>
<w:LsdException Locked="false" Priority="29" QFormat="true" Name="Quote"/>
<w:LsdException Locked="false" Priority="30" QFormat="true"
Name="Intense Quote"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 1"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 1"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 1"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 1"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List Accent 1"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 1"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 1"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 1"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 2"/>
<w:LsdException Locked="false" Priority="61" Name="Light List Accent 2"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 2"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 2"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 2"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 2"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 2"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 2"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 2"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 2"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List Accent 2"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 2"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 2"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 2"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 3"/>
<w:LsdException Locked="false" Priority="61" Name="Light List Accent 3"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 3"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 3"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 3"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 3"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 3"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 3"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 3"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 3"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List Accent 3"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 3"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 3"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 3"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 4"/>
<w:LsdException Locked="false" Priority="61" Name="Light List Accent 4"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 4"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 4"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 4"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 4"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 4"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 4"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 4"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 4"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List Accent 4"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 4"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 4"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 4"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 5"/>
<w:LsdException Locked="false" Priority="61" Name="Light List Accent 5"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 5"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 5"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 5"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 5"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 5"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 5"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 5"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 5"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List Accent 5"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 5"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 5"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 5"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 6"/>
<w:LsdException Locked="false" Priority="61" Name="Light List Accent 6"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 6"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 6"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 6"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 6"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 6"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 6"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 6"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 6"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List Accent 6"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 6"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 6"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 6"/>
<w:LsdException Locked="false" Priority="19" QFormat="true"
Name="Subtle Emphasis"/>
<w:LsdException Locked="false" Priority="21" QFormat="true"
Name="Intense Emphasis"/>
<w:LsdException Locked="false" Priority="31" QFormat="true"
Name="Subtle Reference"/>
<w:LsdException Locked="false" Priority="32" QFormat="true"
Name="Intense Reference"/>
<w:LsdException Locked="false" Priority="33" QFormat="true" Name="Book Title"/>
<w:LsdException Locked="false" Priority="37" SemiHidden="true"
UnhideWhenUsed="true" Name="Bibliography"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="TOC Heading"/>
<w:LsdException Locked="false" Priority="41" Name="Plain Table 1"/>
<w:LsdException Locked="false" Priority="42" Name="Plain Table 2"/>
<w:LsdException Locked="false" Priority="43" Name="Plain Table 3"/>
<w:LsdException Locked="false" Priority="44" Name="Plain Table 4"/>
<w:LsdException Locked="false" Priority="45" Name="Plain Table 5"/>
<w:LsdException Locked="false" Priority="40" Name="Grid Table Light"/>
<w:LsdException Locked="false" Priority="46" Name="Grid Table 1 Light"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark"/>
<w:LsdException Locked="false" Priority="51" Name="Grid Table 6 Colorful"/>
<w:LsdException Locked="false" Priority="52" Name="Grid Table 7 Colorful"/>
<w:LsdException Locked="false" Priority="46"
Name="Grid Table 1 Light Accent 1"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 1"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 1"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 1"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 1"/>
<w:LsdException Locked="false" Priority="51"
Name="Grid Table 6 Colorful Accent 1"/>
<w:LsdException Locked="false" Priority="52"
Name="Grid Table 7 Colorful Accent 1"/>
<w:LsdException Locked="false" Priority="46"
Name="Grid Table 1 Light Accent 2"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 2"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 2"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 2"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 2"/>
<w:LsdException Locked="false" Priority="51"
Name="Grid Table 6 Colorful Accent 2"/>
<w:LsdException Locked="false" Priority="52"
Name="Grid Table 7 Colorful Accent 2"/>
<w:LsdException Locked="false" Priority="46"
Name="Grid Table 1 Light Accent 3"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 3"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 3"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 3"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 3"/>
<w:LsdException Locked="false" Priority="51"
Name="Grid Table 6 Colorful Accent 3"/>
<w:LsdException Locked="false" Priority="52"
Name="Grid Table 7 Colorful Accent 3"/>
<w:LsdException Locked="false" Priority="46"
Name="Grid Table 1 Light Accent 4"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 4"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 4"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 4"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 4"/>
<w:LsdException Locked="false" Priority="51"
Name="Grid Table 6 Colorful Accent 4"/>
<w:LsdException Locked="false" Priority="52"
Name="Grid Table 7 Colorful Accent 4"/>
<w:LsdException Locked="false" Priority="46"
Name="Grid Table 1 Light Accent 5"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 5"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 5"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 5"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 5"/>
<w:LsdException Locked="false" Priority="51"
Name="Grid Table 6 Colorful Accent 5"/>
<w:LsdException Locked="false" Priority="52"
Name="Grid Table 7 Colorful Accent 5"/>
<w:LsdException Locked="false" Priority="46"
Name="Grid Table 1 Light Accent 6"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 6"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 6"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 6"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 6"/>
<w:LsdException Locked="false" Priority="51"
Name="Grid Table 6 Colorful Accent 6"/>
<w:LsdException Locked="false" Priority="52"
Name="Grid Table 7 Colorful Accent 6"/>
<w:LsdException Locked="false" Priority="46" Name="List Table 1 Light"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark"/>
<w:LsdException Locked="false" Priority="51" Name="List Table 6 Colorful"/>
<w:LsdException Locked="false" Priority="52" Name="List Table 7 Colorful"/>
<w:LsdException Locked="false" Priority="46"
Name="List Table 1 Light Accent 1"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 1"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 1"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 1"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 1"/>
<w:LsdException Locked="false" Priority="51"
Name="List Table 6 Colorful Accent 1"/>
<w:LsdException Locked="false" Priority="52"
Name="List Table 7 Colorful Accent 1"/>
<w:LsdException Locked="false" Priority="46"
Name="List Table 1 Light Accent 2"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 2"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 2"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 2"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 2"/>
<w:LsdException Locked="false" Priority="51"
Name="List Table 6 Colorful Accent 2"/>
<w:LsdException Locked="false" Priority="52"
Name="List Table 7 Colorful Accent 2"/>
<w:LsdException Locked="false" Priority="46"
Name="List Table 1 Light Accent 3"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 3"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 3"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 3"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 3"/>
<w:LsdException Locked="false" Priority="51"
Name="List Table 6 Colorful Accent 3"/>
<w:LsdException Locked="false" Priority="52"
Name="List Table 7 Colorful Accent 3"/>
<w:LsdException Locked="false" Priority="46"
Name="List Table 1 Light Accent 4"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 4"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 4"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 4"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 4"/>
<w:LsdException Locked="false" Priority="51"
Name="List Table 6 Colorful Accent 4"/>
<w:LsdException Locked="false" Priority="52"
Name="List Table 7 Colorful Accent 4"/>
<w:LsdException Locked="false" Priority="46"
Name="List Table 1 Light Accent 5"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 5"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 5"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 5"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 5"/>
<w:LsdException Locked="false" Priority="51"
Name="List Table 6 Colorful Accent 5"/>
<w:LsdException Locked="false" Priority="52"
Name="List Table 7 Colorful Accent 5"/>
<w:LsdException Locked="false" Priority="46"
Name="List Table 1 Light Accent 6"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 6"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 6"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 6"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 6"/>
<w:LsdException Locked="false" Priority="51"
Name="List Table 6 Colorful Accent 6"/>
<w:LsdException Locked="false" Priority="52"
Name="List Table 7 Colorful Accent 6"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Mention"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Smart Hyperlink"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Hashtag"/>
</w:LatentStyles>
</xml><![endif]--><!--[if gte mso 10]>
<style>
/* Style Definitions */
table.MsoNormalTable
{mso-style-name:標準の表;
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-priority:99;
mso-style-parent:"";
mso-padding-alt:0mm 5.4pt 0mm 5.4pt;
mso-para-margin:0mm;
mso-para-margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:10.0pt;
font-family:"Times New Roman",serif;}
</style>
<![endif]--><span lang="EN-US" style="font-family: "Arial",sans-serif; font-size: 11.0pt; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: "Times New Roman"; mso-bidi-language: AR-SA; mso-bidi-theme-font: minor-bidi; mso-fareast-font-family: "MS ゴシック"; mso-fareast-language: JA; mso-fareast-theme-font: minor-fareast; mso-hansi-theme-font: minor-latin;">form1.FullScreen := true;</span><br />
<span lang="EN-US" style="font-family: "Arial",sans-serif; font-size: 11.0pt; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: "Times New Roman"; mso-bidi-language: AR-SA; mso-bidi-theme-font: minor-bidi; mso-fareast-font-family: "MS ゴシック"; mso-fareast-language: JA; mso-fareast-theme-font: minor-fareast; mso-hansi-theme-font: minor-latin;"><br /></span>
<span lang="EN-US" style="font-family: "Arial",sans-serif; font-size: 11.0pt; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: "Times New Roman"; mso-bidi-language: AR-SA; mso-bidi-theme-font: minor-bidi; mso-fareast-font-family: "MS ゴシック"; mso-fareast-language: JA; mso-fareast-theme-font: minor-fareast; mso-hansi-theme-font: minor-latin;">以上です。</span><br />
<span lang="EN-US" style="font-family: "Arial",sans-serif; font-size: 11.0pt; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: "Times New Roman"; mso-bidi-language: AR-SA; mso-bidi-theme-font: minor-bidi; mso-fareast-font-family: "MS ゴシック"; mso-fareast-language: JA; mso-fareast-theme-font: minor-fareast; mso-hansi-theme-font: minor-latin;"><br /></span>やましょうhttp://www.blogger.com/profile/03813044589862913579noreply@blogger.com0