問題タブ [dspic]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
bit-manipulation - 単語内のビットを回転させる方法
dsPIC33F と GCC を使用しています。次のように、単語内のビットを左または右に 1 回回転させたい:
(明確でない場合、LSB は右回転の MSB の位置に移動し、その逆も同様です。)
私のプロセッサにはすでに右回転 (rrnc、rrc) 命令と左回転命令 (rlnc、rlc) があるので、コンパイラがこれを最適化してくれることを期待しています。そうでない場合は、インライン アセンブリを使用する必要があるかもしれません。
c - 8x8ブロックのビットをビットに転置する最速の方法は何ですか?
私がやろうとしていることの正確な用語はわかりません。に格納された8x8
ブロックがあり、各バイトは1行を格納します。終了したら、各バイトに1つの列を格納します。bits
8 bytes
たとえば、私が終了したとき:
What is the easiest way to do this in C which performs well? This will run on a dsPIC microcontroller
c - dsPic30F4011 のマスクとフィルター処理
CAN 用に dsPIC30F4011 をプログラミングしています。しかし、識別子、マスク、フィルターの指定に問題があります。
私は標準識別子とエクステンデット識別子を使用します。ビット 16-23 には、トランシーバーのアドレスを書き込みます。したがって、00000 00000001 0000000000000001 のように見えます。スペースは、次のビットを設定したトランシーバー部分を示すためのものです。
今、マスクと設定したフィルターに問題があります
今、私は何も受け取りません。私が設定した場合
すべてのメッセージを受け取ります。トランシーバーアドレスで試してみました
と
それで、私は何か悪いことをしましたか?(そう思うのですが、よくわかりません)
microchip - dsPIC33EV256GM002 の PWM 設定
dsPIC33EV256GM002 で PWM 波形を生成する簡単なプログラムを開発しましたが、無効にできません。PWM1 と PWM2 を使用し、PWM1L1 ピン (DIP パッケージのピン 26) で PWM 波形を生成し、PWM1H1 (DIP パッケージのピン 25) をデジタル I/O として維持します。理論的には PWM レジスタの設定: IOCON1bits.PENL = 1; /* PWM1L は PWM モジュールによって制御されます/ IOCON1bits.PENH = 0; / PWM1H は GPIO モジュールによって制御されます */ そうする必要がありますが、オシロスコープを使用して、PWM1H1 ピンの PWM 波形が反対の値 (PWM1L が 1 の場合、PWM1H が 0 で、その逆) であることに気付きました。 O.
同様の問題は見つかりましたか?
何卒ご理解とご協力を賜りますようお願い申し上げます
よろしく
次のコードを使用しました。
c# - Unity と dsPIC33F を使用したシリアル ポートの読み取り
14 バイト目が改行である dsPIC 側から 14 バイトのデータを送信しています。Unity5ゲームエンジンを使用してシリアルポートデータを読み取るにはどうすればよいですか。私はさまざまな方法 (read()、readline()、readBytes() など) を使用していくつかのブログを読みました。一般的な提案は、serial.Read を使用することです。これを試したところ、Unity が動かなくなってしまいました。以下に示すサンプル プログラムでも同じ問題が発生します。誰かがこれを処理する適切な方法を提供できますか。
ありがとう、よろしく、アキル。
uart - dspic33ev256gm002 UART
dsPIC33EV256GM002 を使用してプロジェクトを開発しており、その UART を使用したいと考えています。
そこで、PIN18 を RX として、PIN17 を TX として使用することにしたので、PPS を次のようにプログラムしました。
PIN18 (RB 9) を入力として、TRISB の bit9 を設定します。
外部 8M XTAL を使用し、M、N1、および N2 パラメータを次のように設定しました。
TX/RX ポートを 31250,N,8,1 (標準 MIDI パラメータ) に設定したい
参考までに、これは OSC 構成です
フレーミングエラーを検出したためにシリアル RX からのデータを検出できないため、使用した設定が正しいかどうかを知ることができます。
同様の経験はありますか?
comparator - dsPIC33EP512MU810 アナログ コンパレータが動作しない
dsPIC33EP512MU810 でアナログ コンパレータを動作させるのに問題があります。2 つの外部電圧を比較したい。C1IN1+ に接続されているのは基準電圧 (1.5V) で、C1IN1- は可変電圧 (1.1 - 1.9V) です。立ち上がりエッジと立ち下がりエッジの両方でイベント トリガーを生成するように設定しましたが、プログラムの開始時にのみ割り込みが発生し、その後は何も発生しません。
arrays - ある配列から別の配列に n 番目ごとの要素をコピーする
ある配列から別の配列に n 番目ごとの要素をコピーする方法を知っている人はいますか? たとえば、配列 Data[x] があり、3 つおきの要素 (Data[0]、Data[3]、Data[6] など) を新しい配列 Data2[j] にコピーしたいとします。for ループを使用しようとしましたが、成功しませんでした。