fenri's diary

基本的には勉強し始めたC#のメモ。後は140字で収まらない駄文。

ESP8266 DeepSleepについて

ESP8266 DeepSleepについて

使い方
O16のピンがWAKE(目覚め)ピンになっています。コレをRST端子に接続しておくことがDeep-Sleepモードからの復帰のためには必要です。

ここからは想像ですが、Deep-Sleepモードからの復帰は、内蔵のRCタイマーを掛けてそれが、規定カウント経つと、IO16ピンがGNDに落ちて、リセットがかかりDeep-Sleepモードから復帰すると言う仕組みのように思えます。(想像なので、間違っていたらコメントもらえればと思います)
qiita.com

Sleepの最大時間

符号なし32bit整数の最大値は4294967295(2^32-1)ですから、
4294967295/1000/1000/60=71.58278825
になるので、71.5分までスリープできる、というのが正解のようです。これを超える時間スリープさせたい場合は、例えば1時間のDeep-sleepを繰り返すようなプログラムにするとよさそうですね。
mag.switch-science.com

PyCharm メモ

設定画面
Mac
PyCharm > Preferences… (command + ,)
Windows
File > Settings… (Ctrl + Alt + S)

ショートカット
実行
Alt + Shift + F10 構成を選択して実行
Alt + Shift + F9 構成を選択してデバッグ
Shift + F10 実行
Shift + F9 デバッグ
Ctrl + Shift + F10 エディターからコンテキスト構成を実行
Ctrl + Alt + R manage.py タスクの実行
デバッグ
F8 / F7 ステップ・オーバー/イン
Shift + F8 ステップ・アウト
Alt + F9 カーソルまで実行
Alt + F8 式の評価
Ctrl + Alt + F8 式のクイック評価
F9 プログラムの再開
Ctrl + F8 ブレークポイントの切り替え
Ctrl + Shift + F8 ブレークポイントの表示
ナビゲーション
Ctrl + N クラスに移動
Ctrl + Shift + N ファイルに移動
Ctrl + Alt + Shift + N シンボルに移動
Alt + Right 次のエディター・タブに移動
Alt + Left 前のエディター・タブに移動
F12 前のツール・ウィンドウに戻る
Esc エディターの移動 (ツール・ウィンドウから)
Shift + Esc アクティブまたは最後のアクティブなウィンドウを隠す
Ctrl + Shift + F4 アクティブな実行/メッセージ/検索/...タブを閉じる
Ctrl + G 指定行に移動
Ctrl + E 最近使用したファイルのポップアップ
Ctrl + Alt + Right 次に進む
Ctrl + Alt + Left 前に戻る
Ctrl + Shift + Backspace 最後に編集したロケーションにナビゲート
Alt + F1 任意のビューで現在のファイルまたはシンボルを選択
Ctrl + B , Ctrl + Click 宣言に移動
Ctrl + Alt + B 実装に移動
Ctrl + Shift + I クイック定義ルックアップを開く
Ctrl + Shift + B 型宣言に移動
Ctrl + U スーパーメソッド/スーパークラスに移動
Alt + Up / Down 前/次のメソッドに移動
Ctrl + ] / [ コード・ブロックの最後/最初に移動
Ctrl + F12 ファイル構造のポップアップ
Ctrl + H 型階層
Ctrl + Shift + H メソッド階層
Ctrl + Alt + H 呼び出し階層
F2 / Shift + F2 次/前の強調表示されたエラー
F4 ソースの編集
Ctrl + Enter ソースの表示
Alt + Home ナビゲーション・バーの表示
F11 ブックマークの切り替え
Ctrl + Shift + F11 ブックマークの切り替え (ニーモニック付き)
Ctrl + #[0-9] 番号付きのブックマークに移動
Shift + F11 ブックマークの表示
DEFAULT KEYMAP
IDE 内でアクションを検索するには: アクションの検索 (Ctrl + Shift + A)
検索/置換
Ctrl + F / Ctrl + R 検索/置換
F3 / Shift + F3 次/前の検索
Ctrl + Shift + F パス内検索
Ctrl + Shift + R パス内置換
使用箇所検索
Alt + F7 / Ctrl + F7 使用箇所の検索 / ファイル内の使用箇所を検索
Ctrl + Shift + F7 ファイル内の使用箇所を強調表示
Ctrl + Alt + F7 使用箇所の表示
リファクタリング
F5 / F6 コピー / 移動
Alt + Delete 安全な削除
Shift + F6 名前変更
Ctrl + F6 シグニチャーの変更
Ctrl + Alt + N インライン化
Ctrl + Alt + M メソッドの抽出
Ctrl + Alt + V 変数の導入
Ctrl + Alt + F フィールドの導入
Ctrl + Alt + C 定数の抽出
Ctrl + Alt + P パラメーターの導入
VCS/ローカル・ヒストリー
Ctrl + K VCS にプロジェクトをコミット
Ctrl + T VCS からプロジェクトを更新
Alt + Shift + C 最近の変更を表示
Alt + BackQuote (`) ‘VCS’ クイック・ポップアップ
ライブ・テンプレート
Ctrl + Alt + J ライブ・テンプレートで囲む
Ctrl + J ライブ・テンプレートの挿入
一般
Alt + #[0-9] 対応するツール・ウィンドウを開く
Ctrl + S すべて保管
Ctrl + Alt + Y 同期化
Ctrl + Shift + F12 エディター最大化の切り替え
Alt + Shift + F お気に入りに追加
Alt + Shift + I 現在のプロファイルで現在のファイルを検査
Ctrl + BackQuote (`) 現在のスキーマをクイック切り替え
Ctrl + Alt + S 設定ダイアログを開く
Ctrl + Shift + A アクションの検索
Ctrl + Tab タブおよびツール・ウィンドウの切り替え
編集
Ctrl + Space 基本コード補完 (任意のクラス, メソッ
ド, 変数の名前)
Ctrl + Alt + Space クラス名の補完 (現在のインポートとは独立したプロジェ
クトクラスの名前)
Ctrl + Shift + Enter ステートメントの補完
Ctrl + P パラメーター情報 (メソッド呼び出しの引数内)
Ctrl + Q クイック・ドキュメント・ルックアップ
Shift + F1 外部ドキュメント
Ctrl + mouse over code 簡易情報
Ctrl + F1 キャレット上のエラーまたは警告の説明を表示
Alt + Insert コードの生成...
Ctrl + O メソッドのオーバーライド
Ctrl + Alt + T 囲む...
Ctrl + / 行コメントのコメント化/コメント解除
Ctrl + Shift + / ブロック・コメントのコメント化/コメント解除
Ctrl + W コード・ブロックを連続的に広げて選択
Ctrl + Shift + W 現在の選択を前の状態に縮小
Ctrl + Shift + ] コード・ブロックの最後まで選択
Ctrl + Shift + [ コード・ブロックの先頭まで選択
Alt + Enter インテンション・アクションおよびクイックフィックスの表示
Ctrl + Alt + L コードの再フォーマット
Ctrl + Alt + O インポートの再編成
Ctrl + Alt + I 行の自動インデント
Tab 選択行のインデント
Shift + Tab 選択行のインデント解除
Ctrl + X , Shift + Delete 現在の行または選択ブロックをクリップボードに切り取り
Ctrl + C , Ctrl + Insert 現在の行または選択ブロックをクリップボード
にコピー
Ctrl + V , Shift + Insert クリップボードから貼り付け
Ctrl + Shift + V 最近使用したバッファーから貼り付け...
Ctrl + D 現在の行または選択したブロックを複製
Ctrl + Y キャレット位置の行を削除
Ctrl + Shift + J スマート行結合
Ctrl + Enter スマート行分割
Shift + Enter 新しい行の開始
Ctrl + Shift + U キャレットまたは選択したブロックで単語の大/小文
字を切り替え
Ctrl + Delete 文字の最後まで削除
Ctrl + Backspace 文字の先頭まで削除
Ctrl + NumPad+ コード・ブロックの展開
Ctrl + NumPad- コード・ブロックの縮小
Ctrl + Shift + NumPad+
Ctrl + Shift + NumPad- すべて縮小
Ctrl + F4 アクティブなエディター・タブを閉じる jetbrains.com/pycharm blog.jetbrains.com/pycharm @pycharm
すべて展開

f:id:fenri:20180110145810j:plain
ショートカット

ESP8266 ATコマンドメモ

WiFiモード:StationMode
AT+CWMODE_DEF=1

WiFi電波スキャン
AT+CWLAP

ネットワークに接続する
AT+CWJAP_DEF="SSID","PassWord"

IP確認
AT+CIFSR

ping
AT+PING="192.168.86.116"

UART設定 一時的
AT+UART_CUR=9600,8,1,0,0

UART設定 Flash書き込み
AT+UART_DEF=115200,8,1,0,0

FileStream と StreamReader

using (FileStream fs = new FileStream(FilePath, FileMode.Open, FileAccess.Read, FileShare.ReadWrite))
	{
		using (StreamReader sr = new StreamReader(fs,
			Encoding.GetEncoding("shift-jis")))
		{
			// ストリームの末尾まで繰り返す
			while (!sr.EndOfStream)
			{
				// ファイルから一行読み込む
				var line = sr.ReadLine();
				if(SerialNum == line)
			{
					Ret = true;
					break;
				}
			}
		}
	}

ブレイクポイントで止まってくれない問題

ブレイクポイントで止まってくれない問題

・ソリューションのクリーン&リビルト


・Visualstudioを管理者権限で実行する

・Visualstudioを使わないでページを表示させた状態でアタッチ