Arduino Nano RP2040を使用したDIYPhotoshop編集コンソール
コンポーネントと消耗品
> ![]() |
| × | 1 | |||
![]() |
| × | 1 | |||
![]() |
| × | 1 |
アプリとオンラインサービス
> ![]() |
| |||
![]() |
| |||
![]() |
|
このプロジェクトについて
DIYPhotoshop編集コンソールの作成
ボタンを1回押すだけで、AdobePhotoshopのツールをすばやく変更または交換するために使用できるものがあるとしたらどうでしょうか。または、ビデオクリップを編集していて、ブラシサイズをより細かく制御したいとします。あなたは皆、どのフォトショップが正しいか知っていますか?デジタル画像の操作に使用されるソフトウェアです。プロジェクトに取り組む際の柔軟性を高めるオプションがたくさんあります。
私がこれを行うのが好きな方法の1つは、キーボードショートカットを使用することです。これは、毎回メニューをクリックするよりも、さまざまな機能に簡単にアクセスできるためです。キーボードショートカットは、コンピューターで作業するときに時間を節約するための一般的で効果的な方法です。適切な組み合わせを使用すると、一部の関数がショートカット形式で既に存在する可能性があるため、さまざまなツールを使用するよりもさらに効率的になります。
HIDとは何ですか?
これは、キーボードまたはマウスの入力デバイスとして使用でき、特定のキーの組み合わせを押すことで、さまざまなツールを有効にします。ボタンを1回押すだけで複数のプログラムを交換したいプロジェクトで、この機能を利用します。
サーキット–DIY写真編集コンソール
テクノロジーは私たちの周りにあり、エレクトロニクスの世界は不可欠な部分になっています。私は子供の頃、ワイヤーで遊んだことは一度もありませんでした。代わりに、私の創造性は、レゴから物を作ったり、紙袋に絵を描いたりすることに向けられます!しかし、私が成長した今、私はいくつかの真剣な科学の時間だと言いましょう-yの良さ(ha)!
<図>
私はAltiumDesigner(素晴らしいツール)を使用してこの回路基板の設計を作成しました。これにより、私のようなユーザーは、プロジェクト計画を立てるときにこれまで以上に創造的な自由を得ることができます。さらに、産業レベルの場合は複雑なマルチプレイヤーボードもあります。これが面白そうな場合は、以下のリンクから30%割引で試してみてください。後で感謝します。
このプロジェクトはハンドルです。 Arduino Nanoが搭載されており、このシステムの頭脳に電力を供給し、デジタルピン2〜5のD2からD5までの4つのプッシュボタンに接続します。アナログポートA0(青)およびA1(赤)として割り当てられたポテンショメータ、その周囲に戦略的に配置されたインジケータLEDは、他のコンポーネントに繊細に電力を供給しながら、コーディングプロセス全体のさまざまな段階で押された特定のキーの組み合わせまたは変数への入力に従って点灯します必要な場合にのみ使用されるUSBケーブルを介して外部から電力を供給されるか、USBから直接電力を引き出します。
このヘッダーを使用すると、2つの電圧源を簡単に切り替えることができます。私が5Vから3.3ボルトに変換している理由は、それがArduino Nano RP 2040の動作であり、制限よりも高い電圧を提供するとチップが揚げる可能性があるためです!
<図>
このPCBは、Altiumを使用して設計しました。この場合、すべてのコンポーネントを1つのボードの両面にきちんと固定できるため、2層製品にもなります。
PCBを完成させましょう!
PCBwayにPCBを注文しました。簡単で速いのでとても嬉しいです!彼らはバッチ生産に焦点を合わせたメーカーであり、プロトタイピング用の高品質の少量のボードを製造しています。 <図>
プロセスは本当に簡単です。Webサイトにアクセスし、サイズや機能などのボードデザインに関する基本情報を入力してから、PCBWayからPCBを注文するときにレビューするためにガーバーファイルをアップロードし、PCBWay Webサイトにアクセスして、基本的なボードの詳細を入力します。インスタント注文フォーム。そこから、より詳細なボードの詳細を提供できるフォームに移動します。 PCB仕様画面でボード情報を更新します。次の画面で、ガーバーファイルをアップロードして確認のために送信できるはずです。レビューが完了すると、あとはカートに追加して支払いを行い、PCBが到着するのを待つだけです。
<図>
Arduino Nano RP2040のコーディング
次に、Arduino IDEを起動し、Arduino Nano RP2040とUSBHIDライブラリがインストールされていることを確認します。
#include
#include
const int buttonPin1 =2;
const int buttonPin2 =3;
const int buttonPin3 =4;
const int buttonPin4 =5;
const int ledPin =13;
USBKeyboard Keyboard;
int button1State =0;
int button2State =0;
int button3State =0;
int button4State =0;
int pot1 =0;
int pot2 =0;
void setup(){
pinMode(ledPin、OUTPUT);
pinMode(buttonPin1、INPUT);
pinMode(buttonPin2、INPUT);
pinMode(buttonPin3、INPUT);
pinMode(buttonPin4、INPUT);
pinMode(A0、INPUT);
pinMode(A1、INPUT);
Serial.begin(9600);
}
void loop(){
button1State =digitalRead(buttonPin1);
button2State =digitalRead(buttonPin2);
button3State =digitalRead(buttonPin3);
button4State =digitalRead(buttonPin4);
pot1 =analogRead(A0);
pot2 =analogRead(A1);
if(button1State ==HIGH){
digitalWrite(ledPin、HIGH);
Serial.println( "Button 1 Pressed");
Keyboard.key_code( 't'、KEY_CTRL); //サイズ変更
delay(500);
} else {
digitalWrite(ledPin、LOW);
}
if(button2State ==HIGH) {
digitalWrite(ledPin、HIGH);
delay(500);
Serial.println( "Button 2 Pressed");
Keyboard.key_code( 'u'、KEY_CTRL); // Ctrlキーを押しながら、u
} else {
digitalWrite(ledPin、LOW);
}
if(button3State ==HIGH){
digitalWrite (ledPin、HIGH);
delay(500);
Serial.println( "Button 3 Pressed");
Keyboard.key_code( 'j'、KEY_CTRL); // Jを押します
} else {
digitalWrite(ledPin、LOW);
}
if(button4State ==HIGH){
digitalWrite(ledPin 、HIGH);
Keyboard.key_code( 'v'); // Vを押します
delay(500);
Serial.println( "Button 4 Pressed");
} else {
digitalWrite(ledPin、LOW);
}
if((pot1> =750)&&(pot1 <=400))
{
Serial.println( "Pot 1 Min "); //変更なし
}
else if(pot1> 750)
{
Keyboard.key_code( '-'、KEY_CTRL); //ズームアウト
delay(500);
}
else if(pot1 <=400)
{
Keyboard.key_code( '+'、KEY_CTRL); //ズームイン
delay(500);
}
}
まず、必要なヘッダーファイルをインクルードします。次に、すべての変数を初期化して、セットアップ関数で使用できるようにします。この関数を呼び出すときにも、シリアル通信を設定する必要があります。すべてが正しく初期化されると、ピンにモードが割り当てられます。ループ関数に移動できます。
次の部分は行動です、そしてそれは完全にあなた次第です。設定方法をカスタマイズできます!ただし、もちろん、PCがどのように構成されているかを示します。 (昔ながらのゲームボーイのように)押された場合にのみ応答するボタンを備えた2つのポテンショメータは、ヒットしたときにキーストロークを送信します。
たとえば、button1を押すと、「ctrl + t」が送信されます。これは、画面上の画像のサイズを1回のクイックモーションで変更するのに役立ちます。 pot2を右に押すと、キャンバスにズームインし、左に回すと、代わりに外側にズームしたときに同じ動作が発生します(注:パンと呼ばれる3番目のオプションもあります)。これよりもはるかに多くの方法で機能します!
ボタンを使用すると、さまざまなことができます。押し続けたい時間に応じて、1つか2つ押し続けることができます。私が言ったように、それは完全にあなたの都合次第です!
これで、Arduinoボードを接続し、PhotoshopまたはPremiereを起動して、そのボタンのいずれかを押してみるだけです。これがあなたのスキルセットにとってもはや難しいものではなくなったら、話す価値のあるものは他に何もないと確信しています!
テスト
すべてがテストされたので(ほとんど意味がありません)、適切なテスト対象が必要なときが来ました。言い換えると、チュートリアルで打ち負かされて学んだことを実際に使用できる人は、顔が痛いです…正しい?幸いなことに、事前に完璧な人とペアになっていることに気づきましたが
<図>
製造プロセス
- Arduino Nano RP2040を使用したDIYPhotoshop編集コンソール
- Arduinoを使用してモニターをAmbilightにする
- TeleBallレトロハンドヘルドゲームコンソール
- ハンドヘルドゲームコンソール| Arduboyクローン
- Arduinoとスマートフォンを使用したDIY電圧計
- IoTを使用した心拍数モニター
- 花-ArduinoNano、CrazyCircuits、DFRobot
- Arduinoを使用したDIY赤外線ハートビートセンサー
- Arduino UnoWiFiを使用したWebServerBlink
- DIYバーチャルリアリティスケートボード
- ArduinoとRDA8057Mを使用したFMラジオ