e-tools研究所
e-tools研究所
  • Видео 345
  • Просмотров 241 511

Видео

PIC16F1827  ブレッドボード配線6 <PWM出力> DCモータの回転速度
Просмотров 204Месяц назад
Qiita:PIC16F1827 ブレッドボード配線 PWM信号でDCモータを駆動させる。qiita.com/etoolsLab369/items/60913ac72e4538e3577e VOICEVOX:ずんだもん #PIC16F1827 #ブレッドボード #PWM
PIC16F1827  ブレッドボード配線5 <AD変換>
Просмотров 108Месяц назад
Qiita:PIC16F1827 ブレッドボード配線 AD変換qiita.com/etoolsLab369/items/d3434f8937cf47c9c3c6 #PIC16F1827 #ブレッドボード #AD変換
PIC16F1827  ブレッドボード配線4 <I2C通信> LCDキャラクタ液晶の増設
Просмотров 127Месяц назад
Qiita:PIC16F1827 ブレッドボード配線 <I2C通信>LCD液晶 SC1602 qiita.com/etoolsLab369/items/79f9285468753951d780 Qiita:PIC16F MSSPモジュール I2Cマスター 送信 資料qiita.com/etoolsLab369/items/491b424f2f1a6554063f #PIC16F1827 #ブレッドボード #I2C
PIC16F1827  ブレッドボード配線3 <I2C通信> IOエキスパンダーMCP23017
Просмотров 176Месяц назад
16F1827 ブレッドボードで、I2C通信の配線 IOエキスパンダーMCP23017 Qiita:PIC16F1827 ブレッドボード配線 <I2C通信>qiita.com/etoolsLab369/items/1c8e616b3c67ebc9ad4f Qiita:PIC16F MSSPモジュール I2Cマスター 送信 資料qiita.com/etoolsLab369/items/491b424f2f1a6554063f #PIC16F1827 #ブレッドボード #I2C
PIC16F1827  ブレッドボード配線2 <シリアル通信>
Просмотров 187Месяц назад
16F1827 ブレッドボードで、シリアル通信の配線 Qiita:PIC16F1827 ブレッドボード配線 <シリアル通信>qiita.com/etoolsLab369/items/cd06a9a25f9ac14bd065 #PIC16F1827 #ブレッドボード #シリアル通信
PIC16F1827  ブレッドボード配線1 <Lチカ基本回路>
Просмотров 175Месяц назад
16F1827の基本回路、書込み、電源回路をブレッドボードに組んでみました。 Qiita:PIC16F1827 ブレッドボード配線<書き込み、Lチカ>qiita.com/etoolsLab369/items/f4202caef3f20855c232 #PIC16F1827 #ブレッドボード
[ PIC16F1827 ] MSSPモジュール  I2C  Slave 2バイト受信
Просмотров 2032 месяца назад
Qiita:PIC16F1827 I2C slaveサイド 2バイト受信コードqiita.com/etoolsLab369/items/57b89a32aeaf87d80bfd #pic16F1
PIC18F47Q43  光透過型センサーを用いた ”ものさし”
Просмотров 1813 месяца назад
Qiita:qiita.com/etoolsLab369/items/612fb91eec494135472d #pic18f47q43
[PIC18F47Q43+M5Stack ATOM Lite] bluetooth ラジコン メカナムホイール車
Просмотров 2163 месяца назад
Qiita:PIC18F47Q43 メカナムホイール車 M5AtomLite bluetooth通信qiita.com/etoolsLab369/items/9dc01d2313e45638f6c2 VOICEVOX:ずんだもん #PIC18F47Q43 #bluetooth #メカナムホイール
PICマイコン ”バイポーラステッピングモータ” を動かす。
Просмотров 2 тыс.4 месяца назад
Qiita:PIC16F1827 バイポーラステッピングモータqiita.com/etoolsLab369/items/fb4c50974d20a94d8223 VOICEVOX:ずんだもん #PICマイコン #ステッピングモータ
ESP32-WROVER-E  ESP32開発概要  GPIO入力割り込み
Просмотров 3454 месяца назад
Qiita:PlatformIO ESP-IDF GPIO汎用ピン入出力。ESP32-WROVER-E qiita.com/etoolsLab369/items/7b20bc32b019cee3e399 VOICEVOX:ずんだもん #ESP32 #PICマイコン
[ PIC16F819 ] ユニポーラ ステッピングモータ 駆動テスト
Просмотров 2034 месяца назад
Qiita:PIC16F819 with スーファミコントローラ ユニポーラステッピングモータ TS3103N124 qiita.com/etoolsLab369/items/8f0ae0cf094eb73bd179 #PIC16F819 #ユニポーラステッピングモータ
[ PIC18F27Q43 ] AD変換 Basic(legacy)Mode 通常のADC
Просмотров 2134 месяца назад
[ PIC18F27Q43 ] AD変換 Basic(legacy)Mode 通常のADC
[ PIC18F27Q43 ] IOピン 状態変化割り込み スイッチ割り込み
Просмотров 7824 месяца назад
[ PIC18F27Q43 ] IOピン 状態変化割り込み スイッチ割り込み
PICマイコン プレステコントローラー制御方法 SPI通信
Просмотров 4015 месяцев назад
PICマイコン プレステコントローラー制御方法 SPI通信
[ PIC16F18326 ] SPI通信 MCP23S08 8ビットIOエキスパンダー
Просмотров 4335 месяцев назад
[ PIC16F18326 ] SPI通信 MCP23S08 8ビットIOエキスパンダー
[ PIC18F27Q43 ] I2C Host 2byte書込み、1byte読み込みシーケンス MCP23017編
Просмотров 2565 месяцев назад
[ PIC18F27Q43 ] I2C Host 2byte書込み、1byte読み込みシーケンス MCP23017編
PIC16F1マイコン スーファミコントローラ制御方法 シフトレジスタ
Просмотров 3875 месяцев назад
PIC16F1マイコン スーファミコントローラ制御方法 シフトレジスタ
[ PIC18F27Q43 ] I2C Host 送信シーケンス
Просмотров 4555 месяцев назад
[ PIC18F27Q43 ] I2C Host 送信シーケンス
[ PIC18F27Q43 ] 割込み ベクターテーブル Timer0割込み
Просмотров 3315 месяцев назад
[ PIC18F27Q43 ] 割込み ベクターテーブル Timer0割込み
[ PIC18F27Q43 ] Lチカ オシレータ設定、IOポート設定、 パーティション設定
Просмотров 2895 месяцев назад
[ PIC18F27Q43 ] Lチカ オシレータ設定、IOポート設定、 パーティション設定
[ PIC18F27Q43 ] シリアル通信 USART1設定
Просмотров 3705 месяцев назад
[ PIC18F27Q43 ] シリアル通信 USART1設定
PICマイコン 書き込み機対応表
Просмотров 5866 месяцев назад
PICマイコン 書き込み機対応表
[ PIC18F47Q43 ] 40Pin PCB基板作成 汎用的に使用します。
Просмотров 3877 месяцев назад
[ PIC18F47Q43 ] 40Pin PCB基板作成 汎用的に使用します。
[ M5StackCore2 ] C++学習 コンストラクタとデストラクタ 複数オブジェクト生成と消去
Просмотров 1037 месяцев назад
[ M5StackCore2 ] C++学習 コンストラクタとデストラクタ 複数オブジェクト生成と消去
[ M5StackCore2 ] Buttonクラス カウントダウンタイマー 画面遷移 (コンストラクタとデストラクタ)
Просмотров 1348 месяцев назад
[ M5StackCore2 ] Buttonクラス カウントダウンタイマー 画面遷移 (コンストラクタとデストラクタ)
[ PIC18F27Q43 ] I2C Host-Client通信 やりなおし。暫定版 とりあえず動いてますが、read時のI2C1CNTが機能してません。
Просмотров 1528 месяцев назад
[ PIC18F27Q43 ] I2C Host-Client通信 やりなおし。暫定版 とりあえず動いてますが、read時のI2C1CNTが機能してません。
[英語ヒアリング学習] ユヴァル ノア ハラリ氏公演 2020年ダボス会議 How to Survive the 21st Century
Просмотров 1238 месяцев назад
[英語ヒアリング学習] ユヴァル ノア ハラリ氏公演 2020年ダボス会議 How to Survive the 21st Century
[ M5Core2 ] タッチパネルテスト2 M5Button.h タッチボタン イベント処理。
Просмотров 1538 месяцев назад
[ M5Core2 ] タッチパネルテスト2 M5Button.h タッチボタン イベント処理。

Комментарии

  • @まる-k5w4b
    @まる-k5w4b 13 дней назад

    picライター購入検討のため情報収集をしていたらここに来ました!参考にさせていただきたいです😊

  • @pariparinoharumaki
    @pariparinoharumaki Месяц назад

    コメント失礼します。 こちらのコードをベースに機能を追加したアプリを作り、オープンソースで配布したいのですが、もしよければ許可をいただけないでしょうか。また、ライセンスを付けていましたら、教えていただきたいです。

    • @etools
      @etools Месяц назад

      ライセンス付加なしで、著作権も放棄してますので、ご自由にお使いください。

    • @pariparinoharumaki
      @pariparinoharumaki Месяц назад

      ありがとうございます!ありがたく使わせていただきます。

  • @一ノ瀬龍斗
    @一ノ瀬龍斗 2 месяца назад

    送信側回路図の赤外線LEDライトの抵抗を教えて頂きたいです。それと回路図と実際のブレッドボードの組み立てが異なるのはなぜですか?回路図のまま組み立てて問題はないですか?

    • @etools
      @etools 2 месяца назад

      送信側の赤外線LEDライトの抵抗は、1kから4.7kΩでOKだと思います。2mぐらい離れても動いた記憶があります。ダーリントンで、赤外LEDに電流を引っ張っているので、もっと大きな電流を流せば、長距離通信も可能になるかもしれません。 回路図と違うところは、赤外LEDと並列に可視光LEDを接続しているところでしょうか?これは、赤外LEDの動作確認用に後から増設したものです。 送信SC2261と受信SC2272のデータシートを確認してみたのですが、データシートの推奨回路と動画回路図はほぼおなじ回路なので、これで動くと思われますが、 出来れば、送受信ICのデータシートをダウンロードして、ご自身で、確認してみてから、回路を組んでみてください。 できる限り、正確な情報を視聴者の方にお届けしたいと心得ておりますが、回路図が間違っている可能性もあります。再検証する時間が取れないので、問題がないとは言い切れません。 このような、質問に的確に対応できるよう動画作成時の情報を、テキストベースでネットに保存するべきだとおもい、最近は、Qiitaに記事を同時に掲載していますが、このころは動画を作ったままでした。 ぜひ、送受信ICのデータシートをご確認しながら、組んでみてください。

    • @一ノ瀬龍斗
      @一ノ瀬龍斗 2 месяца назад

      回路図と実際の回路の抵抗の大きさが違うところがちらほらあるように伺えるのですが、データシートと照合をしてみようと思います。年月がたった動画なのに返信して下さりありがとうございました。

    • @一ノ瀬龍斗
      @一ノ瀬龍斗 2 месяца назад

      やはりできません。赤外線LEDの抵抗は2.7kΩにしました。送信は出来ているのですが、受信ができていません。そもそもRosc pairingがいまいち分かりません。教えて頂きたいです。

    • @etools
      @etools Месяц назад

      外部の抵抗を用いて、IC内部にあるRCオシレータクロックを生成していると思います。 送信機と受信機の同期をとるために、Rosc外部抵抗の値を対応させる必要があります。 送信用の赤外LEDの抵抗は、もう少し小さな値(ex,1kΩ)のほうがいいかもしれません。 ひさしぶりに、基板化した送受信機を動かしてみました。CNCルータで作った基板です。その時の作成回路図をQiitaに掲載しましたので、参考になれば幸いです。 Qiita:赤外線通信 SC2262IR、SC2272-L4 qiita.com/etoolsLab369/items/63f80dde385c28161998

    • @一ノ瀬龍斗
      @一ノ瀬龍斗 Месяц назад

      Qiitaの回路図のコンデンサーの大きさを知りたいです。

  • @pslove-sm1xz
    @pslove-sm1xz 2 месяца назад

    最新版のMPLAB X, MCCでI2C接続の解説お願いします。最新の設定がよくわからないくて日本語で解説しているのが見つからなくて。。。

    • @etools
      @etools 2 месяца назад

      私も、数年前に、MCCの自動生成でI2Cを実装しようとしましたが、分かりずらかったので、MCCでI2Cを動かすことをやめた経緯があります。 データシートの解説フローを読んで独自にMSSPレジスタを操作してI2Cマスターを組み込みました。PICがマスターで、I2CデバイスのIOエキスパンダーMCP23017を相手に1バイトを書きこみました。 MCCとは違い、必要最低限のレジスタ操作で、実行させることができます。 このほうが、MSSPレジスタがどのように、I2Cシーケンスを実行していくのか、流れがつかみやすいと思います。 MCCの自動生成コードからMSSPモジュールの動作シーケンスを追うのは、難しいかもしれません。 MCCを使わないで、一旦MSSPレジスタを直接操作して通信させた後に、MCCに再チャレンジすると設定の仕方と、コード進行がよくわかるかもしれません。

    • @pslove-sm1xz
      @pslove-sm1xz 2 месяца назад

      @@etools ありがとうございます。 私も以前断念したのですが、もしかしたらと思ってコメントしました。 動画投稿頑張ってください。

  • @pinkspyder.
    @pinkspyder. 2 месяца назад

    ロータリーテーブルに付けたら、とっても便利😊

  • @luisdominguez6350
    @luisdominguez6350 3 месяца назад

    Library? For esp sdk?

    • @etools
      @etools 3 месяца назад

      Environment : VScode & Platform IO I am using the TFT 7735S driver that I previously wrote for a PIC microcontroller. I am converting it for use with the ESP32 using the ESP-IDF API. Qiita:qiita.com/etoolsLab369/items/c9ca5252e186f120cd96

  • @resistan-y1h
    @resistan-y1h 3 месяца назад

    消費電力じゃなくて出力電流とか供給電流では?

    • @etools
      @etools 3 месяца назад

      ほぼ、5vで使うなら、たしかに、電流値にフォーカスした表現になりますね。

  • @user-gen-gorou
    @user-gen-gorou 3 месяца назад

    前にどっかで観た、ESP32よりグレードが低いマイコンで同じような動画では、もっと描写が早かったと記憶してるので、問題箇所を見つけて改善すれば劇的に速度が向上すると思います。

  • @noithugian494
    @noithugian494 4 месяца назад

    What software do you use to program?

    • @etools
      @etools 4 месяца назад

      I use the MPLAB IDE with XC8 compiler.

    • @noithugian494
      @noithugian494 4 месяца назад

      @@etools thanks

  • @sakukobayasi
    @sakukobayasi 5 месяцев назад

    割り込みが便利も云うより「ポーリングが面倒&非効率」なのだと思う。適材適所だが。

  • @SENTIA_TEREA
    @SENTIA_TEREA 5 месяцев назад

    滅茶苦茶基本のことから教えて下さってとても参考になります

    • @etools
      @etools 5 месяцев назад

      コメントありがとう。PIC、arduino、ESP32、STM32など、どのマイコンも、同じ基本的な機能で構成されてるからね。

  • @unknownk.youtube
    @unknownk.youtube 5 месяцев назад

    身近なモノが題材になると、急激に興味をそそられますね!🤩 イメージしやすいので、理解もしやすいです!😆(理解できたとは言っていない

    • @etools
      @etools 5 месяцев назад

      そーなんだよね。マイコンで制御できそうなジャンクを、ハードオフとかで探すのが楽しいんですわ。

  • @etools
    @etools 5 месяцев назад

    ボードの電源と、PICKIT3の電源供給が衝突しないように、”MPLABXで、電源供給をオンボード” へ切り替えてください。

  • @etools
    @etools 5 месяцев назад

    ボードの電源と、PICKIT3の電源供給が衝突しないように、”MPLABXで、電源供給をオンボード” へ切り替えてください。

  • @etools
    @etools 5 месяцев назад

    ボードの電源と、PICKIT3の電源供給が衝突しないように、”MPLABXで、電源供給をオンボード” へ切り替えてください。

  • @etools
    @etools 5 месяцев назад

    ボードの電源と、PICKIT3の電源供給が衝突しないように、”MPLABXで、電源供給をオンボード” へ切り替えてください。

  • @unknownk.youtube
    @unknownk.youtube 6 месяцев назад

    「LSI」ではなく、このいかにも「IC」という外観に心躍ります!🤩(←変態

    • @etools
      @etools 6 месяцев назад

      変態ってドイツ語とか英語で、メタモルフォーゼ、かっこよくなっちゃうんだなー、これが。生物学と魔術の文脈での意味だけど。

  • @RS-kx9rp
    @RS-kx9rp 6 месяцев назад

    良く分かってないが面白そう❤

    • @etools
      @etools 6 месяцев назад

      たぶん、このコメントの感性が、最強だなぁ。なんかわかんないけど、いいとか。ようは、自身の直観のことだ。

  • @なぽりたん-o5p
    @なぽりたん-o5p 6 месяцев назад

    まだ触ったことも無い初心者です。 「マクロ」とか「関数」とかExcel操作の時と同じ言葉だけど、イメージは同じかな?とか思いながら見てました。  作っている風景も興味深く参考になりました。  ありがとうございます。

    • @etools
      @etools 6 месяцев назад

      コメント、ありがとう。マイコンは、やったことが、すべて自分の身になるし、楽しいよ。簡単なものでも、自分で作ると嬉しいものだよ。

  • @unknownk.youtube
    @unknownk.youtube 6 месяцев назад

    10代の頃、電気回路の動作原理も分かっておらず、それまでキットの組み立てしか経験が無かったのに、LM386を秋月で購入してデータシートの回路図をユニバーサル基盤に丸写しして自家製アンプを作ったことがあります!😆 元パチンコ台に使われていたジャンクの「液晶ディスプレイ」と「コンポジットビデオ→RGB変換キット」と共に組み合わせて、ディスプレイ型3.5インチFDケースに収めて自家製スピーカー内蔵小型ディスプレイに!🖥 はぁ……電子回路を理解したいけど未だによく分からないの。🥲(ソフト畑

    • @etools
      @etools 6 месяцев назад

      ウキウキしながら、物を作っていた10代の君の姿が、目に浮かぶようだ。

  • @unknownk.youtube
    @unknownk.youtube 6 месяцев назад

    中学生の頃にアセンブラに出会い、必要に迫られて2進数への変換方法を調べると、「2で割って行き、余りがどうこう~」という説明ばかりで「割るの?余りを出すの?説明としては楽だろうけど、コンピューター的には効率的じゃないなあ」と思っていた。 動画のように「2のn乗の大きい方から『引けたらビットを立てて、引けなかったらビットを立てない』を全ビット分繰り返す」方法を自分で思い付き、「ワイ天才!🤪」と己惚れていた厨二時代。(← 他にも、バイナリサーチなんかも自分で思い付いて「やっぱりワイ天才!🤪」と思い上がっていたり。 後からその手法に名前すら付いている至極ポピュラーな方法と知ってガッカリした甘酸っぱい思い出。🤤 厨二時代の話なんで、許してあげてください。🙇

    • @etools
      @etools 6 месяцев назад

      中学生で、その発想すごいね。元気な君のコメントを読んでいると、こちらも、楽しくなるよ。

  • @unknownk.youtube
    @unknownk.youtube 6 месяцев назад

    Raspberry Pi/PicoシリーズやArduinoシリーズが主流になってきている中、逆にこういう より基礎的な基礎中の基礎に触れているモノが少なくなり、とても貴重で有難いです!😆 導入こそ上述の様な機器の方が適しているでしょうけど、特に「動作を理解する」という点においては、こういう よりLow Levelな階層から理解できるPICマイコンの方が適していると思いますしね!

    • @etools
      @etools 6 месяцев назад

      的確なコメントありがとう。

  • @ky-dv8dz
    @ky-dv8dz 6 месяцев назад

    なかな丁寧に説明するのは難しいよね。

  • @650gx_xperia4
    @650gx_xperia4 7 месяцев назад

    DENONのFMチューナ(TU500)のヘッドホン駆動回路が、このエミッタ~フォロワ回路です。

  • @love-de-lic
    @love-de-lic 9 месяцев назад

    初めまして、動画製作お疲れ様です。いつも参考にさせて頂いています。 是非作って欲しいm5stackがあるのですが、 ジャイロセンサーを用いて、ボタンを押すと角度を0度に補正し、また違うボタンを押すと現在の角度を読み取り記録するような物を作って欲しいです。(ラチェットレンチに取り付けて、どのくらい回したか角度で読み取るものに使用したいです)是非参考にしたいので宜しくお願い致します。

  • @etools
    @etools 9 месяцев назад

    RGBLEDの色指定 CRGB構造体 Blue=0x0000FF  Green=0x008000  Red=0xFF0000   24ビットデータ 配列の並びは raw[0]=Red(8bit),  raw[1]=Green(8bit),  raw[2]=Blue(8bit) の 順番

  • @ama_p213
    @ama_p213 10 месяцев назад

    テスト用オブジェクトの見た目がそのまんまw( ^ω^) Unityに情報送れるの凄いですね👏

  • @chipman4933
    @chipman4933 11 месяцев назад

    私もPICで同じようなカラーLCDを使用したのですが、ものすごく早い描画ですね! 私のものと比べて10倍以上速いです。 数学を熟知されていると、ここまで違うのかと思い知らされました! (私は検索した計算サイトで出てきた式をそのままCで記述しました) これからも素敵な動画制作を期待しています。

  • @etools
    @etools Год назад

    Thank you for your advice. I thought it may be possible matrix LED indicater making.

  • @WesteastWesteast-t8b
    @WesteastWesteast-t8b Год назад

    Area = 1 x 12. 12 ÷ 3=4. Fold it up to make new Area = 4 x 3. Area = 1 x 25 . 25 ÷ 5 = 5. Fold it up to make new Area = 5 x 5.

  • @WesteastWesteast-t8b
    @WesteastWesteast-t8b Год назад

    LED Area = width x height. If it LED Area = 32 led x 32 led or even bigger value in width and height. Then it become PHD designing tool. Lots of picture figure work. Just run it with either binary bit left shift or right shift counter. LED Area = 1080 x 2000😊😊😉😉😉😉😊😊😊😉😊😊😊😉😊😊😊😊😉😊😊😊😊😉😊😊😊😊😊😉😊😊😊😊😊😉😊😊😊😊😊😉😊😊😊😊😊😉😊😊😊😊😊😊😉😊😊😊😊😊😉😊😊😊😊😊😉😊😊😊😊😊😉😊😊😊😊😊😊😉😊😊😊😊😊😊😊😊😉😉😉😋😊😊😊😉😉😉😉😉😉😉😉😉😉😉😉😉😉😉😉😉😉😉😉😉😉😉😉😉😉😉😉😉😉😉😉😉

  • @WesteastWesteast-t8b
    @WesteastWesteast-t8b Год назад

    Led monitor.

  • @WesteastWesteast-t8b
    @WesteastWesteast-t8b Год назад

    😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊😊

  • @WesteastWesteast-t8b
    @WesteastWesteast-t8b Год назад

    It Area = 1 x 12. Area = width x height. If it Area = 32 x 32 or even bigger value in width and height. Then it become PHD designing tool. Lots of picture figure work. Just run it with either binary bit left shift or right shift counter. Area = 1080 x 2000

  • @turnplus2
    @turnplus2 Год назад

    とてもわかりやすかったです。何回か見直して勉強したいと思います。16F84Aでアセンブラを勉強したかったのですがPICの値上がりがすごくて秋月で550円もするのであきらめて前に購入してあった16F1827でC言語でマイコンの勉強をしようと思います。ありがとうございました。(#^^#)

    • @etools
      @etools Год назад

      書き込み機のUSB5vとブレッドボード供給5vが、ショートしないように注意してください。電源供給方法をMPLABで設定してください。コメントありがとうございます。

    • @turnplus2
      @turnplus2 Год назад

      返信ありがございます、嬉しかったです。MPLABの設定でPICkit4から電源供給しないのを確認しました。ありがとうございます。16F84Aの動画も見て勉強したい十と思います。@@etools

  • @user-gen-gorou
    @user-gen-gorou Год назад

    この回路をガンダムに取り付けよう。そして、すぐ実戦で試すんだ!!

  • @etools
    @etools Год назад

    #include <M5Stack.h> #define ADC_PIN 35 void setup(){ M5.begin(); pinMode(ADC_PIN,INPUT); M5.Lcd.setTextSize(3); M5.Lcd.setCursor(40,20); M5.Lcd.println("AD Converter"); M5.Lcd.setCursor(40,45); M5.Lcd.print("ADCpin:GPIO35 "); } void loop(){ int adc_val = analogRead(ADC_PIN); int adc_mVal = analogReadMilliVolts(ADC_PIN); M5.lcd.fillRect(0,100,280,200,BLACK); float Vout = adc_val/4095.0*3.3; M5.Lcd.setTextSize(3); M5.Lcd.setCursor(0,100); M5.Lcd.setTextColor(PINK); M5.Lcd.printf("analogRead "); M5.Lcd.setTextColor(WHITE); M5.Lcd.setTextSize(4); M5.Lcd.setCursor(0,130); M5.Lcd.printf("%3.2fV ",Vout); M5.Lcd.printf("%04d ",adc_val); float mVout = adc_mVal/4095.0*3.3; M5.Lcd.setTextSize(2); M5.Lcd.setCursor(0,160); M5.Lcd.setTextColor(ORANGE); M5.Lcd.printf("analogMilliVolts "); M5.Lcd.setTextSize(4); M5.Lcd.setTextColor(WHITE); M5.Lcd.printf("%3.2fV ",mVout); M5.Lcd.printf("%04d ",adc_mVal); delay(300); }

  • @JunConstellation
    @JunConstellation Год назад

    UNOはUSB⇔シリアル変換にATmega16u2を使っています。そのため、パソコンにつないで、キーボードの自動入力とか、マウスの制御もできますが、UNOでブートローダを書き込んでも、FTDI232がその機能に対応していないのでできません。 ブートローダ書き込むとしたらDuemilanoveか、pro miniの方がいいんじゃないかなぁ

  • @etools
    @etools Год назад

    #include <M5Stack.h> #include <Wire.h> void setup() { M5.begin(); Wire.begin(); M5.Lcd.setTextSize(3); M5.Lcd.setTextColor(WHITE); M5.Lcd.setCursor(20,50); M5.Lcd.print("I2C test"); M5.Lcd.setCursor(20,80); M5.Lcd.print("PCF8574"); M5.Lcd.setCursor(50,110); M5.Lcd.print("address 0x25"); M5.Lcd.setCursor(20,140); M5.Lcd.print("Send Data:"); M5.Lcd.setCursor(20,170); } void loop() { M5.Lcd.setCursor(20,170); M5.Lcd.setTextColor(WHITE,BLACK); M5.Lcd.print("0x55"); Wire.beginTransmission(0x25); Wire.write(0x55); Wire.endTransmission(true); delay(500); M5.Lcd.setCursor(20,170); M5.Lcd.setTextColor(WHITE,BLACK); M5.Lcd.print("0xAA"); Wire.beginTransmission(0x25); Wire.write(0xAA); Wire.endTransmission(true); delay(500); }

  • @M.F.H-l8g
    @M.F.H-l8g Год назад

    有用な動画のアップ、ありがとうございます。こちらの動画を拝見して、このPICを使い始めた者です。MCCを使用し、ソフト作成をしているのですが、ADコンバータが、想定の通りに動かなくて困っております。A/Dコンバータ、I2C通信など、その他の関連動画がアップされる日を楽しみにしています。

  • @user-kn1bk2c49k
    @user-kn1bk2c49k Год назад

    PICを使って何かを作ろうとした時に、書き込み機を購入しなければならないのはネックですね。 今後、色々と使っていく予定ならいいですが、今回限りかもしれないような時は自分ならArduinoかな。 ArduinoならUSBだけあればいいですからね。 とは言え趣味で色々と電子工作をしてみたい人はどっち使ってみたいでしょうね。

  • @user-gen-gorou
    @user-gen-gorou Год назад

    ゲームパッドは、スーファミ用ですか。

  • @bobby9568
    @bobby9568 Год назад

    素晴らしい。 自分で信号を生成しているのでしょうか?

    • @etools
      @etools Год назад

      dsPIC33EP256GP502を使用。コンパイラはXC16で、下記の近似式を計算させています。近似計算は、マイコンで行っています。そして、パソコンの自作プロッターソフトに送信して、波形をみています。パソコン側は、結果値を表示しているだけです。5ライン分送信していますが、必要な2ラインだけを、表示しています。 if(Tm5.fg) { Tm5.fg=false; if(ADC.fg) { ADC.fg=false; theta+=0.02; if(theta>6.28) theta=0; switch(state) { case 0: dval[0]=512*sin(theta)+511; val16[0]=(int)dval[0]; dval[1]=512*cos(theta)+511; val16[1]=(int)dval[1]; break; case 1: //palse Wave dbuf=sin(theta)+sin(3*theta)/3+sin(5*theta)/5+sin(7*theta)/7; dval[0]=300*dbuf+511; val16[0]=(int)dval[0]; val16[1]=0x0000; break; case 2: //triangle Wave dbuf=sin(theta)-sin(3*theta)/9+sin(5*theta)/25-sin(7*theta)/49; dval[0]=300*dbuf+511; val16[0]=(int)dval[0]; val16[1]=0x0000; break; case 3: //saw Wave dbuf=sin(theta)+sin(2*theta)/2+sin(3*theta)/3+sin(4*theta)/4+sin(5*theta)/5+sin(6*theta)/6; dval[0]=300*dbuf+511; val16[0]=(int)dval[0]; val16[1]=0x0000; break; } cnt++; if(cnt==1600) { cnt=0; state++; if(state==4) state=0; } txBuf[0]=0xF0; txBuf[1]=ADC.val[0]>>8; txBuf[2]=ADC.val[0]; txBuf[3]=ADC.val[1]>>8; txBuf[4]=ADC.val[1]; txBuf[5]=ADC.val[4]>>8; txBuf[6]=ADC.val[4]; txBuf[7]=val16[0]>>8; txBuf[8]=val16[0]; txBuf[9]=val16[1]>>8; txBuf[10]=val16[1]; txBuf[11]=0xE0; for(i=0; i<=11; i++) { putCH(txBuf[i]); } //printf("%d %d %d ",ADC.val[0],ADC.val[1],ADC.val[4]); IEC0bits.T3IE=1; } IEC1bits.T5IE=1; }

  • @etools
    @etools Год назад

    /*--------------------------------------------------- Timer0 8-bit Timer ---------------------------------------------------*/ volatile _tm tm0; void Timer0_INIT(void) { OPTION_REGbits.T0CS=0; //Fosc/4 OPTION_REGbits.PSA=0; //Prescaler assigned. OPTION_REGbits.PS=0b100; //1:32 TMR0=0x83; //1ms interval timer INTCONbits.INTF=0; INTCONbits.TMR0IE=1; tm0.cnt=0x0000; tm0.fg=false; } void __interrupt()isr() { uint8_t buf; if(INTCONbits.T0IF) { INTCONbits.T0IF=0; tm0.cnt++; TMR0=0x83; if(tm0.cnt==500) { tm0.cnt=0; tm0.fg=true; INTCONbits.T0IE=0; } } } void main(void) { Oscillator_Init(); Port_Init(); Timer0_INIT(); Interrupt_START(); while(1) { if(tm0.fg) { tm0.fg=false; LED0=~LED0; INTCONbits.T0IE=1; } } return; }

  • @etools
    @etools Год назад

    /** * 矩形描画関数 * @param _xs  X軸始点 * @param _ys  Y軸始点 * @param _xsize  X方向サイズ * @param _ysize  Y方向サイズ * @param _R 描画点 赤 * @param _G 描画点 緑 * @param _B 描画点 青 */ void ST7735S_Rectangle(uint8_t _xs, uint8_t _ys, uint8_t _xsize, uint8_t _ysize,uint8_t _R,uint8_t _G, uint8_t _B) { uint8_t x,y; //始点終点アドレスセット ST7735S_AddSet(_xs,_xs+_xsize,_ys,_ys+_ysize); //RAMライトコマンド送信 ST7735S_Write(ST7735_CM,RAMWR); ST7735_A0= ST7735_DT; //描画データ書き込みスタート(SPI CS=Low) SPI2_START(); for(x=0; x<=_xsize; x++) { SPI2TCNT=_ysize*3;//列データ個数=SPI送信個数 for(y=0; y<_ysize; y++) { SPI2_Write(_R);//1ポイント:赤 SPI2_Write(_G);//1ポイント:緑 SPI2_Write(_B);//1ポイント:青 //__delay_ms(50);//debug用(実行時コメントアウト) } } SPI2_STOP(); }

  • @Hiro-lm4by
    @Hiro-lm4by Год назад

    はじめまして。 PICについて調べていてこちらのチャンネルに辿り着きました。 自分のチャンネルで上げていますLEDのパターン点滅用のユニットを自作したくて昔から頑張って独学で色々調べていますが難し過ぎて自分の頭の悪さにげんなりしています。 しかしこちらのチャンネルでのPICの解説等は非常に分かり易くてなんとなく始められそうな気がしてきました! 1番気になるのはこの手の工作をする為の知識等はどのように習得されたのでしょうか? 自分は電子工学科卒等でなければ足を踏み入れられないと思っていたのですが独学でもある程度覚えられるものでしょうか?

    • @etools
      @etools Год назад

      ネットがあるので、独学で十分ですね、今の時代は。これからは、ChatGPTに聞けばいいし。 私の場合、学生時代に電気電子は、学んでいませんでした。 C言語は学習していたのですが。ソフトウェアの仕事に就いたのに、いきなり、電子回路設計を、ゼロ知識からやらされたのが、始まりで、I2CもSPIもしらず、基板すら作ったことがない。そこからすこしずつ、何年もかけて習得しました。ですが、、、奥が深いです、この世界は。 電子工作は、ネット検索がすごく役に立っています。 コメントありがとう。

  • @etools
    @etools Год назад

    //USART受信割込み処理---------------------------------- if(rxUsart.completed) { rxUsart.completed=0; printf("length=%d %s ",rxUsart.length,&rxUsart.buf); if(rxUsart.length==5 || rxUsart.length==6) { cnt=asciiToInt((char*)rxUsart.buf,rxUsart.length); printf("cnt=%ld",cnt); Ucnt=(long)(cnt*1000/703); printf(" %ld ",Ucnt); if(rxUsart.length==5) for(i=0; i<Ucnt; i++) { for(j=8; j>=1; j--) { LATB&=0xF0; LATB|=(uint8_t)halfStep[j]; __delay_us(1200); } } __delay_ms(500); if(rxUsart.length==6 && rxUsart.buf[0]=='-') for(i=0; i<Ucnt; i++) { for(j=1; j<=8; j++) { LATB&=0xF0; LATB|=(uint8_t)halfStep[j]; __delay_us(1200); } } __delay_ms(500); } rxUsart.length=0; PIE4bits.U1RXIE=1; }

  • @200ドル
    @200ドル Год назад

    更新楽しみにしています。

  • @HS-cx1uh
    @HS-cx1uh Год назад

    これは面白い!

  • @etools
    @etools Год назад

    ステッピングモータをつないだピン:RB0,1,2,3 and RD0,1,2,3 and RD4,5,6,7 unsigned int halfStep0[9]={0x0000,0x0001,0x0003,0x0002,0x0006,0x0004,0x000C,0x0008,0x0009}; //PORTB, PORTD unsigned int halfStep1[9]={0x0000,0x0010,0x0030,0x0020,0x0060,0x0040,0x00C0,0x0080,0x0090}; //PORTD uint8_t buttonNum; #define stDelayUS 1100 void steppingMover(void) { unsigned long Ucnt,i,j; uint8_t cnt; switch(buttonNum) { case 'L': for(j=1; j<=8; j++) { LATB&=0xF0; LATB|=(uint8_t)halfStep0[j]; __delay_us(stDelayUS); } break; case 'l': for(j=1; j<=8; j++) { LATD&=0x0F; LATD|=(uint8_t)halfStep1[j]; __delay_us(stDelayUS); } break; //--------------------------------------------------- case 'R': for(j=8; j>=1; j--) { LATB&=0xF0; LATB|=(uint8_t)halfStep0[j]; __delay_us(stDelayUS); } break; case 'r': for(j=8; j>=1; j--) { LATD&=0x0F; LATD|=(uint8_t)halfStep1[j]; __delay_us(stDelayUS); } break; //--------------------------------------------------- case 'U': for(j=1; j<=8; j++) { LATD&=0xF0; LATD|=(uint8_t)halfStep0[j]; __delay_us(stDelayUS); } break; case 'D': for(j=8; j>=1; j--) { LATD&=0xF0; LATD|=(uint8_t)halfStep0[j]; __delay_us(stDelayUS); } break; default: LATD&=0x00; LATB&=0xF0; break; } }