タグ付けされた質問 「pic」

PICは、マイクロチップ社が製造した8、16、32ビットRISCマイクロコントローラーのブランドです。「PIC」は、もともとは「Peripheral Interface Controller」の頭字語でした。

5
2つのチップが読み書きできるSRAM
2つのMCUが読み取りまたは書き込みができる、32KB程度の小型のSRAMデバイスを探しています(2つの異なる時点で、同時の読み取り/書き込みは必要ありません)。シリアルインターフェイスも使用するのが良いでしょう。 私が解決しようとしている問題は、他のデバイスがこれを受信するために一時停止する必要がない2つのデバイス間でデータを送信することです。私はオーディオサンプルをバッファに転送し、必要に応じて他のチップがオーディオを読み取り、それを使って何かを行います。 Microchipの23A256 / 23K256のようなシリアルSRAMを見つけましたが、シリアルSRAMが1つしかないようです。2つのチップがこれにアクセスする方法はありますか? さらに、受信デバイスには2KBのデータメモリしかありません(最大)ので、I2Cまたは他のインターフェイスを介してDMAまたは同様の転送メカニズムを使用することはできません。
9 pic  memory  sharedbus 

5
将来、PICマイクロコントローラー用のコードをC ++で作成することは可能でしょうか?
PICのコーディングにC ++を使用することは可能でしょうか?C ++の使用を妨げるハードウェアの制限はありますか?Cの代わりにC ++を使用すると、生成された.hexファイルのサイズとプログラムの実行時間がどれだけ増加しますか?現在のPICにC ++を使用することは実際に可能ですか?これに関する将来の計画や進行中の開発はありますか?

5
コードをマイクロコントローラーに配置するには何が必要ですか?
コントローラのコーディングについて学びましたが、実際にコードを物理デバイスに配置することはありませんでした。基本的な組み込みシステムの開発を開始するために何を注文する必要があるのか​​を理解しようとしています。 たとえば、PIC18F1330を使用している場合、MPLAB IDEとXC8コンパイラを使用しています。すばらしいので、コードをコンパイルしました。これをコントローラーに配置する準備ができました。PC上のコンパイル済みコードをコントローラーに転送するために必要なものは何ですか? インサーキットデバッガーやPICキットなどを見てきました。この時点で私は迷っています。

1
ADCでPIC自身のVDD入力電圧を測定
プロセッサー:PIC18F66K22 コンパイラ:C18(XC8も問題ありません) AN4アナログピンの電圧を測定するコードを作成しました(そしてテストに成功しました)。 今、私は何か他のことを試したいのですが、それが理論的に可能かどうかはわかりません。 私のテストボードにはPICプロセッサがあり、VDD、AVVDが電源に接続されています(範囲は0(バッテリーが空の場合または接続されていない場合)から4、2(フルバッテリー)まで)。 ADCを使用してボードのVDD(-in)を測定できますか? 何故なの?: それはANxピンではありません、ADCにそれを測定させる方法がわかりませんか?(チャネル?) VDD(-in)の電圧が低下した場合、ADCの基準電圧も低下しますか?(私のPICが3,3Vしか得られない場合でも、ADCはそれが100%であると言います(チップの最大電圧として、リファレンスも3,3Vです)。 なぜ/何を尋ねますか?: チャネル30(VDDCORE)だけを測定できますか? VrefをVddに設定して、A / Dコンバーターで高精度電圧リファレンスを測定できますか?(わからない) または、VDD-inからANxピンにワイヤを追加できますか? VDD-inが約3,4Vの場合、内部VREF +(4.096V)は4 + Vのままですか?そうするようなトランスフォーマーの種類はありますか? 内部VREF +(4.096V)はバッテリーの最大値(4,2V)より少し低いですが、これはADCを損傷する可能性があることを意味しますか?または、バッテリーがいっぱいになると結果が最大になります。(4,096Vのうち4,2V) エレクトロニクスに関する私の知識は「低い」ことに注意してください。私は教育のソフトウェアの部分についてより多くを学びましたが、それは組み込みエンジニアリングの重要な部分であるため、(組み込み)エレクトロニクスについてもっと知りたいです。(私の学校がこれを見ていないのは悲しいです。)
8 pic  adc 

2
マイクロコントローラによって制御されるMOSFETを選択してバイアスをかけますが、電流は重要ですか?
ここで説明した回路用のMOSFETを選択するのに助けが必要です。これは、もともとBJTを使用して設計しましたが、この場合はFETの方が意味があると判断しました。 FETは、論理ハイまたは論理ローをFETに送信するPIC24によって制御されます。私はFETが電圧制御デバイスであることを知っていますが、FETをオンに切り替えるために必要な最小電流もあるのでしょうか。 その場合、PIC24がFETをオンにするのに十分な電流を供給できるように、FETにバイアスをかける必要がありますか? FETのバイアスについてもあまり詳しくないので、内部でバイアスされているFETについても知りたいのですが、Googleで見つけるのは少し難しいです。他のリソースをお勧めできますか?
8 voltage  pic  mosfet  fet 

5
コンクリートの音速を測定する回路
具体的には1μs以上の音速を計測する回路が必要です。これは、建設を勉強する学生がこの回路を使用して、コンクリートのサンプルの音速を測定し、コンクリートの品質を判断する学校のデモ用です。 私は2つの40kHzトランスデューサーを使用しています。1つはパルスを送信し、もう1つは厚さが約10cmのコンクリートサンプルの反対側でパルスを検出します。 PICプロセッサを使用してパルスを生成し、パルスを検出します。 しかし、多くの市販の超音波コンクリート試験機を見ると http://www.alibaba.com/trade/search?sb=y&IndexArea=product_en&CatId=&SearchText=Ultrasonic+Concrete+Tester 彼らの仕様から、それらはmhzではなくkhzトランスデューサで動作しているように見えます。彼らは200kHzより高い周波数については触れていません。おそらく、mhz周波数が減衰されるため、khz周波数へのコンクリートの音の良好な伝達には制限があるのでしょうか? 非常に低コストの学生用システムを構築する必要があり、安価な40kHzトランスデューサーしか見つかりません。私が見つけることができるMhzトランスデューサーは私の要件に対して高すぎる。 商用デバイスの仕様から、20us〜20msのパルスを使用し、レシーバーの検出を待ってから別のパルスを送信するように見えます。したがって、最も短いパルスは1つの完全な40 kHzの正弦波になり、長いパルスはいくつかの完全な40 kHzの正弦波になります。彼らは狭帯域周波数を検出していないので、歪みは重要ではないかもしれませんが、受信機からのパルスの最初の立ち上がりだけですか? これは誰にとっても意味がありますか?つまり、誰かがこの問題を解決するのを手伝ってくれる... ありがとうございました。

3
PICマイクロコントローラー用の水晶を選択できますか?
PIC16F690を使用していますが、内部発振器に特定の値(20、8、4 ...)があることを知っています。 外部に8MHzの水晶を入れたいのですが、8.8MHzまたは7.6MHzしか見つかりませんでした。 これらのいずれかをPICに配置できるかどうか、または正確に8MHzにする必要があるかどうかを知りたいのですが。また、それぞれのコンデンサをどのように選ぶべきですか?

2
極度の高温範囲を持つマイクロコントローラ[クローズド]
閉まっている。この質問はトピックから外れています。現在、回答を受け付けていません。 この質問を改善してみませんか? 電気工学スタック交換のトピックになるように質問を更新します。 昨年休業。 高温で動作する部品を探しています。特に、180°C〜200°Cで動作するマイクロコントローラーを探しています。極限状態でも問題なく動作するマイクロコントローラを見つける必要があります。マイクロコントローラにCANインターフェースが組み込まれている場合、それは本当に素晴らしいでしょうか?または、プロジェクトに使用できるその他の方法とマイクロコントローラー。マイクロコントローラーの目的は、さまざまなセンサーから情報を取得し、いくつかのキャリブレーションを実行することです。 TEXASからSM320F28335-HTである1つのマイクロコントローラーを見つけましたが、そのマイクロコントローラーのコストは非常に高くなっています。低コストで高温で動作するマイクロコントローラはありますか?

3
PIC12のプログラミング方法を教えてください。
プログラムする必要があるPIC12F675を持っています。Pickit 2とPickit 2ソフトウェアを使用しています。おそらくこの回路を使用してプログラムできるはずですが、Pickit 2ソフトウェアはチップをまったく検出していません。 何が問題になっていますか? 編集:私は私の回路のブレッドボードアウトの画像を追加しました。そして、ここに PIC12F675のデータシートがあります。ピン配置については、4ページにスキップしてください。 EDIT2:私は実際にチップを調べただけです(ダムですが、注文したものをマウサーが送ってくれると思い込んでいました)。実際にはPIC12C671であることに気付きました。これにより、どの程度の違いが生じますか? 最終編集:うわー!これで私を助けてくれたみんなに感謝します!このような反応は期待していませんでした。それは私が思ったように、小さな愚かな問題になってしまいました。Mouserからパッケージを受け取ったときにすべてを再確認しないのは私のせいでした。

2
PICのSPIクロックが不安定
PIC18F25K22の MSSPモジュールをSPIマスターモードに構成しようとしています。タイミングを見ていると、送信全体を通してクロックが安定していません。写真は言葉よりもそれをよく示しています。 ビットが送信された後、クロックは短くなり、毎回同じ量ではありません。これまでにSPIを使用したことはありませんが、ウィキペディアや他のリソースで見つけた図には、これが表示されていません。私はArduinoも接続しましたが、この動作は見られませんでした。私のコードは: #pragma config FOSC = INTIO67 // Oscillator Selection bits (Internal oscillator block) #pragma config PLLCFG = OFF // 4X PLL Enable (Oscillator used directly) #pragma config BOREN = OFF // Brown-out Reset Enable bits (Brown-out Reset disabled in hardware and software) #pragma config WDTEN = OFF // …
8 pic  spi  timing 

3
Microchip XC16の関数の絶対アドレス
デバイス:dsPIC33FJ128GP802 次のようにいくつかの* .sファイルがあります .global _D1 .section .speex, code _D1: .pword 0x66C821, 0x1B0090, 0xD96C36, 0x9B60B0, 0xDD4E36, 0xBF4E53 .pword 0xD1098B, 0x719BD9, 0x873989, 0x003B69, 0x279035, 0xED4244 .pword 0xE1403C, 0x54D439, 0x826550, 0xC59627, 0xDD0432, 0x88FA29 同じことを* .hで宣言しました extern void D1(void); 今、私はD1をテーブル読み取り関数に渡します nowPlaying.file1 = (unsigned long) D1; function(nowPlaying.file1); 私の問題は、D1のアドレスが0X8000より大きい場合、ルーチンが正しくないことです。大小のコードモデルを試しましたが、結果は同じです。これはポインタの16ビット制限によるものだと思います。コードからD1の絶対アドレスに直接アクセスする方法はありますか。組み込み関数やマクロのようなものかもしれません。

3
PIC18のI2C以降
プロジェクトでは、3つのPIC(2つのスレーブPIC18F4620、1つのマスターPIC18F46K22)でI2Cバスを介して通信したいと考えています。後で、さらに多くのスレーブが追加される可能性があります(EEPROM、SRAMなど)。C18コンパイラを使用して、これらのPICのコードをCで記述しています。私はインターネットをよく見て回りましたが、(M)SSP周辺機器を処理するためのライブラリーが見つかりませんでした。I2Cモードの(M)SSPペリフェラルの両方のPICのデータシートを読みましたが、バスのインターフェース方法を見つけることができませんでした。 だから私はマスターとスレーブのライブラリが必要です。 何がお勧めですか?どこかにそのような図書館はありますか?コンパイラーに組み込まれていますか?はい、組み込まれていますか?ネット上のどこかに良いチュートリアルがありますか?

4
スイッチを開いたときにデバウンスする必要がありますか?
マイクロコントローラーの入力に5Vへのプルアップ抵抗とそれに接続されたグラウンドへのスイッチ(通常はオープン)があるとします。スイッチを閉じるとデバウンス(私の場合はソフトウェア)する必要があることを知っていますが、スイッチを開くとデバウンスが必要ですか?

5
PICマイクロコントローラーの配線方法は?
私はPICマイクロコントローラーと電気工学の世界にまったく新しいので、気楽に行ってください:) とにかく、私はPIC 16f627をプログラムして、プッシュボタン(トリガーボタン)が押されたときに3つのLEDをオンにし、別のプッシュボタンが押されたときにシャットダウンシーケンスを開始しました(基本的に、各LEDは5秒の遅延で次々にオフになります)。押された(リセットボタン)。私はこれをVellemanのK8048 PICプログラマ/実験ボードでテストしています。ピンRA0およびRA2はそれぞれトリガーおよびリセットプッシュボタンの入力であり、ピンRB0、RB1、およびRB2はLEDの出力ピンです。 実験ボードでの作業は素晴らしいですが、これを実際の回路に移動したいと思います。問題は、どこから始めればよいかわからないことです。3つのLED(それぞれ3.3ボルト)、いくつかの押しボタン、およびワイヤを購入し、次の回路を構築しました。 (恐ろしい回路図のため申し訳ありません) 私が作成した回路では、最初にテストして、LEDが3個の1.5ボルトAAバッテリーで動作するかどうかを確認しました。 しかし、これは機能せず、私は完全に迷っています。参考までに、PICのコードを示します。そのMikroCを使用してCで書かれました。実験ボード上で動作するので問題ないと思います void main() { TRISB.RB0 = 0; TRISB.RB1 = 0; TRISB.RB2 = 0; PORTB.RB0 = 0; PORTB.RB1 = 0; PORTB.RB2 = 0; CMCON = 0x07; TRISA = 255; for(;;){ if(PORTA.RA0 == 1 && PORTB.RB0 == 1 && PORTB.RB1 == 1 && PORTB.RB2 == …

1
PIC18F4550をデュアルパワーにする方法
データシートには、18F4550のデュアル電源を使用する方法が記載されています。ただし、使用するトランジスタと抵抗値を指定していません。コンデンサには100uF(ダイオード側)と470nF(Vusb側)を使用しています。自宅にあるBJTを何でも入れてみましたが、Vselfが利用できない場合、Vbusに切り替わりませんでした。 誰かがどのBJTを使用するか(モデル番号)と、どの抵抗が付属するかを提案してください。BJTは私にとって暗い森のようなものです。
8 pic  transistors  bjt 

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.