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

32ビットマイクロコントローラーIP。ARMコアを設計しているARMの会社は、コントローラー自体を製造していませんが、IPを他のメーカーにライセンスしています。ARMは主要な32ビットコントローラであり、数十のサプライヤから入手できます。

6
最小の組み込みLinuxディストリビューション?
私はそこにいる専門家に尋ねるのが好きです。 フラッシュメモリ〜700Kb ラム〜256Kb プロセッサ:ハイエンドアーム皮質M3(STM32ファミリなど) 必要なモジュール:-カーネルコア-基本ドライバーセット:USB /ネットワーク(WiFi用-APなし、クライアントのみ、セキュリティなし)/ SPI / Uart / I2C これは可能ですか、それとも夢を見ていますか? アイデアは、5ドルのハイエンドCortexM3を使用し、外部メモリを使用しないことです。これにより、SDIO / WiFiなどの準備が整ったドライバーを楽しむことができます。 WiFiに関する説明を追加して質問を更新しました。Wi-Fiは、単純で、ミルクライアントの実行であるという意味で。派手なものは何もありません。おそらく私がそれに合うなら泣きます。 別の更新:uCLinuxはどうですか?

2
ソフトコアプロセッサVSハードコアプロセッサ
ARM9などのマイクロプロセッサとのFPGAインターフェースの研究を行っています。 私の研究では、ソフトコアとハードコアプロセッサの概念に出くわしました。これら2つのタイプの比較を教えてください。実装の類似点または相違点
19 fpga  arm 

8
ARMマイクロコントローラーでのプログラミングを開始する、最も安価で(簡単な)方法[非公開]
閉じた。この質問は意見に基づいています。現在、回答を受け付けていません。 この質問を改善したいですか?この投稿を編集して事実と引用で答えられるように質問を更新してください。 閉じた3年前。 ARMプロセッサの使用を開始し、長年使用していたPICから移行します。8ビットモデルは1ドル未満で利用でき、プログラマーは10ドル未満で利用できましたが、使いやすさと低コストで始められました。しかし、同じ価格でいくつかのARMチップによって彼らの力がis小化され、クローズドソースのソフトウェアにうんざりしているのを見て、切り替えたいと思います。 開発ボードを入手するのを避け、代わりに安価な汎用ブレイクアウトPCB($ 1)を使用して、それを実現するために不可欠な外部コンポーネントを使用するブレッドボードでまっすぐ進みます。 この方法でARMチップをプログラミングするためのオプションは何ですか?USBを使用してPCに接続し、チップとの単純なシリアル接続(ICSPなど)を介してプログラミングするPICKit2などのプログラマーはいますか?ARMメーカー、ARMバージョン、個々のチップごとに、セットアップの違いはどれくらい必要ですか?(ST、Atmel ...)たとえば、各メーカーは独自のコンパイラ、プログラマ、IDEなどを必要としますか?または、すべてに共通のツールはありますか? 編集:わかりましたので、より多くの研究の後、比較的安価なソリューションを考え出したと思います、stm32開発ボードはDAPLINKファームウェアでフラッシュできますが、公式のgithubファームウェアはネイティブに動作するとは思わない(これはすべて推測までメールで私のstm32開発ボードを入手してください)。しかし、readbear mk20に含まれているdaplink_usbボードはstm32チップを実行していることがわかりました。ファームウェアをリリースしました。8mhzクリスタルと互換性を持たせるために行を変更する必要があります(詳細は以下のフォーラム投稿にあります)。それ以外の場合は、水晶を16 MHzのものと交換します。開発キットが到着したときにこれを確認したら、更新します。 GITHUB REPO 良いフォーラムリソースはこちら。 Redbear Githubフォーク

5
Code Sourcery G ++ Liteはまだ実行可能なプロジェクトですか?
ARM用Code Sourcery G ++ Liteの新しいバージョンをダウンロードしようとすると、別の会社にリダイレクトされていることに気づきました。そのサイトでARM用Sourcery G ++ Liteについて何かを見つけるのは非常に困難です。 Sourcery G ++ Lite for ARMプロジェクトのステータスを知っている人はいますか?それはまだ生きていますか、人々はまだそれで働いていますか?将来的に利用可能になりますか? 更新:彼らはプロジェクトの名前をSourcery CodeBench Liteに変更したようですので、質問は関係ないのでしょうか? 更新:Mentor Graphicsはプロジェクトを終了しますが、もはや実行可能な代替手段ではありません。 注:ARMのgccを入手する現在の実行可能な場所は、Linaroからであるようです。 https://www.linaro.org/about/ https://www.linaro.org/downloads/ https://launchpad.net/gcc-arm-embedded
18 arm  compiler  gcc 


5
Cortex(ARM)マイクロコントローラーでのWFI(割り込み待機)の最適なパターン
EFM Gekkoコントローラー(http://energymicro.com/)を使用したバッテリー駆動ソフトウェアの開発を検討しており、実行するのに役立つものがない場合はコントローラーをスリープ状態にしたいと考えています。この目的には、WFI(割り込み待ち)命令が使用されます。割り込みが発生するまでプロセッサをスリープ状態にします。 何かをどこかに格納することでスリープが行われた場合、ロード専用/ストア専用操作を使用して次のようなことができます。 //何かが起こるとdont_sleepに2がロードされます //メインループを少なくとも1回繰り返します。割り込みの場合 //次のステートメント中に2にリセットされる原因となります。 //割り込みはその後に発生したかのように振る舞います。 store_exclusive(load_exclusive(dont_sleep)>> 1); while(!dont_sleep) { //次のステートメントとstore_exclusiveの間に割り込みが発生した場合、スリープしない load_exclusive(SLEEP_TRIGGER); if(!dont_sleep) store_exclusive(SLEEP_TRIGGER); } load_exclusive操作とstore_exclusive操作の間に割り込みが発生すると、store_exclusiveをスキップし、システムがもう一度ループを実行するようになります(割り込みがdont_sleepを設定したかどうかを確認します)。残念ながら、Gekkoはスリープモードをトリガーするために書き込みアドレスではなくWFI命令を使用します。のようなコードを書く if(!dont_sleep) WFI(); 「if」と「wfi」の間に割り込みが発生し、dont_sleepを設定するリスクが発生しますが、wfiは先に進み、とにかく実行されます。それを防ぐための最良のパターンは何ですか?PRIMASKを1に設定して、WFIを実行する直前に割り込みがプロセッサに割り込まないようにし、すぐにクリアしますか?または、より良いトリックがありますか? 編集 私はイベントビットについて疑問に思っています。一般的な説明では、マルチプロセッサのサポートを目的としているようですが、次のようなものが機能するかどうか疑問に思っていました。 if(dont_sleep) SEV(); / *次のWFEはイベントフラグをクリアしますが、スリープはしません* / WFE(); don't_sleepを設定するすべての割り込みもSEV命令を実行する必要があるため、「if」テストの後に割り込みが発生すると、WFEはイベントフラグをクリアしますが、スリープ状態にはなりません。それは良いパラダイムのように聞こえますか?
18 arm  cortex-m3  sleep 

3
STM32開発ボードのプログラム方法
私はARMマイクロコントローラーのプログラミングに完全に慣れていますが、AVRおよびPICマイクロコントローラーの経験はあります。 数日前、eBayからSTM32F103VET6開発ボードを購入しました。今、このボードをプログラムしようとしていますが、どこから始めればいいのかわかりません。また、いくつかのデータシートといくつかのドキュメント(すべて中国語)を含むCDを受け取りました。 誰かが開始方法を教えてもらえますか?または、誰かがソースサンプルを持っていますか? Keil uVision4はすでにインストールしています。J-linkデバッガーもあります。
17 arm  stm32 

1
ビットバンディングとは何ですか?
ARM Cortex M3リファレンスマニュアルを読んでいますが、「ビットバンド」、「ビットバンド領域」、「ビットバンドエイリアス」という概念が表示されます。 ビットバンディングとは何ですか?
16 embedded  arm 


5
最新のCPU(ARMなど)を使用したサイクルカウント
多くのアプリケーションでは、命令実行が予想される入力刺激と既知のタイミング関係にあるCPUは、関係が不明である場合にはるかに高速なCPUを必要とするタスクを処理できます。たとえば、PSOCを使用してビデオを生成したプロジェクトでは、コードを使用して16 CPUクロックごとに1バイトのビデオデータを出力しました。SPIデバイスの準備ができており、分岐していない場合、IIRCは13クロックかかり、出力データへのロードとストアには11時間がかかるため、バイト間のデバイスの準備をテストする方法はありませんでした。代わりに、最初のバイトの後、各バイトに対して正確に16サイクルのコードをプロセッサに実行させるように単純に調整しました(実際のインデックス付きロード、ダミーインデックス付きロード、およびストアを使用したと思います)。ビデオの開始前に各行の最初のSPI書き込みが行われたため、後続の書き込みごとに、バッファオーバーランまたはアンダーランなしで書き込みが発生する可能性のある16サイクルのウィンドウがありました。分岐ループは不確実性の13サイクルウィンドウを生成しましたが、予測可能な16サイクルの実行により、後続のすべてのバイトの不確実性が同じ13サイクルウィンドウに収まることを意味しました(書き込みが許容できる16サイクルウィンドウ内に収まります)起こる)。 古いCPUの場合、命令のタイミング情報は明確で、利用可能で、明確でした。新しいARMの場合、タイミング情報ははるかに曖昧に見えます。コードがフラッシュから実行されている場合、キャッシュ動作により物事を予測するのがはるかに難しくなるため、サイクルカウントされたコードはすべてRAMから実行されると予想されます。ただし、RAMからコードを実行する場合でも、仕様は少しあいまいに見えます。サイクルカウントされたコードの使用はまだ良い考えですか?もしそうなら、それを確実に動作させるための最良のテクニックは何ですか?チップベンダーが、特定の場合に特定の命令の実行サイクルを削る「新しく改善された」チップを静かにすり抜けることはないと、どの程度安全に想定できますか? 次のループが単語の境界で開始すると仮定すると、仕様に基づいて正確にどれくらい時間がかかるかをどのように決定しますか? マイループ: mov r0、r0; より多くの命令をプリフェッチできるようにする短い単純な命令 mov r0、r0; より多くの命令をプリフェッチできるようにする短い単純な命令 mov r0、r0; より多くの命令をプリフェッチできるようにする短い単純な命令 mov r0、r0; より多くの命令をプリフェッチできるようにする短い単純な命令 mov r0、r0; より多くの命令をプリフェッチできるようにする短い単純な命令 mov r0、r0; より多くの命令をプリフェッチできるようにする短い単純な命令 r2、r1、#0x12000000を追加します。2ワード命令 ; 異なるオペランドを使用して、以下を繰り返します ; キャリーが発生するまで値を追加し続けます itcc addedcc r2、r2、#0x12000000; 2ワード命令、およびitccの追加の「ワード」 itcc addedcc r2、r2、#0x12000000; 2ワード命令、およびitccの追加の「ワード」 itcc addedcc r2、r2、#0x12000000; 2ワード命令、およびitccの追加の「ワード」 itcc addedcc r2、r2、#0x12000000; 2ワード命令、およびitccの追加の「ワード」 ; ... etc、より条件付きの2ワード命令 サブr8、r8、#1 bpl myloop …

4
BJTトランジスタは飽和状態でどのように機能しますか?
これは、NPN BJT(バイポーラジャンクショントランジスタ)について私が知っていることです。 ベースエミッタ電流はコレクタエミッタでHFE倍に増幅されるため、 Ice = Ibe * HFE Vbeはベースエミッタ間の電圧であり、他のダイオードと同様に、通常は約0.65 Vです。Vecしかし、私は覚えていません。 Vbeが最小しきい値よりも低い場合、トランジスタは開いており、どの接点にも電流は流れません。(大丈夫、たぶん数μAのリーク電流ですが、それは関係ありません) しかし、まだいくつか質問があります。 トランジスタが飽和しているときの動作は? Vbeしきい値より低い以外の条件の下で、トランジスタをオープン状態にすることは可能ですか? さらに、この質問で私が犯した間違いを(回答で)遠慮なく指摘してください。 関連する質問: トランジスタがどのように機能するかは気にしませんが、どのように動作させることができますか?

4
ArduinoとJTAGインターフェースを作成することは可能ですか?
もしそうなら、私はこれを行う方法を教えてくれるサイトに私を向けることができますか?私は方法を見つけたかもしれないと信じていますが、それがまだ機能するかどうかはわかりません(テストするものを見つける必要があります)。 この質問は、ここにある私の以前の質問に関連しています。 より多くの背景情報が必要な場合。
14 arduino  arm  embedded  jtag 

6
最小限のARM回路要件
私はATMegaでいくつかの開発を行ってきましたが、視野を広げたいと考えています。Cortex M4シリーズのチップをいくつか持っていますが、Breadboarduinoと同等のARMを作りたい 自分のボードをエッチングするか、ARM用のブレイクアウトボードを使用して残りをブレッドボードする予定です。最小コンポーネントの参照または概略図をいただければ幸いです。 ARMチップを操作し、理想的にはプログラムするために最低限必要なコンポーネントを決定するための優れたリソースはありますか? 更新: 私は代替ハードウェアの提案を受け入れています。以下は、私が現在取り組んでいるチップです: STM32F407ZGT6 データシート

4
ARMが外部メモリとインターフェイスするための適切な選択は何ですか?
LPC2132チップを使用してプロジェクトを完了しましたが、64 kbのRAMをすべて使用して問題が発生しました。 次のプロジェクトでは、外部のはるかに大きなメモリチップを参照できるものを使用したいと思います。これを行うことができるのはどのような種類のARMであり、2つのデバイスを通信させるには何をする必要がありますか?
13 arm  memory 

2
Keil uVision4(MDK-ARM)でビルドサーバーを使用し、ビルドをスクリプト化し、メイクファイルを使用するにはどうすればよいですか?
Keil MDK-ARMベースのプロジェクトのビルドを毎日実行するか、チェックイン/コミットトリガービルドを実行したいと思います。これまでのところ、IDEのバッチファイル機能を使用して問題を解決しています。これは、バッチファイルにチェックインし、関連した、その後、少なくともIDEで一度プロジェクトをビルドする必要がない.__iし、._iaIDEで作成されたファイル。 さらに、IDEはWindowsのPATH変数など、ユーザー固有の多くのことをバッチファイルに入れます。ビルド用のバッチファイルは、異なる開発者からのコミットごとに変更される可能性があるため、これは複数の開発者にとって問題になる可能性があります。 最終的に、armcc、armasm、およびArmLinkのさまざまなスイッチを追跡する必要があります。 より標準的なメイクファイルを使用してKeil uVisionプロジェクトをビルドする方法はありますか?uVisionプロジェクトファイルをよりメンテナンスしやすいビルドスクリプトに変換する方法はありますか?
13 arm  compiler  keil 

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