0

SAM3S-EK デモ ボードを使用してプロジェクトを開発しています。サンプル コードと ASF で USB CDC と MSC ドライバーを使用したところ、すべて正常に動作しました。ここで、コードをカスタム カード (SAM3S1B を使用) に挿入したいと考えています。しかし、それは私の問題です。ピンを割り当て、クロック構成を変更しましたが、デバイスが Windows に認識されません。ディスクリプタはすべてゼロです (USBLyser による)。

誰かが私を助けることができますか?

それは私の時計設定ファイルです(私は16MHzの水晶を持っています):

// ===== System Clock (MCK) Source Options
#define CONFIG_SYSCLK_SOURCE        SYSCLK_SRC_PLLACK

// ===== System Clock (MCK) Prescaler Options   (Fmck = Fsys / (SYSCLK_PRES))
#define CONFIG_SYSCLK_PRES          SYSCLK_PRES_4

// ===== PLL0 (A) Options   (Fpll = (Fclk * PLL_mul) / PLL_div)
// Use mul and div effective values here.
#define CONFIG_PLL0_SOURCE          PLL_SRC_MAINCK_XTAL
#define CONFIG_PLL0_MUL             32
#define CONFIG_PLL0_DIV             2

// ===== PLL1 (B) Options   (Fpll = (Fclk * PLL_mul) / PLL_div)
// Use mul and div effective values here.
#define CONFIG_PLL1_SOURCE          PLL_SRC_MAINCK_12M_RC
#define CONFIG_PLL1_MUL             16
#define CONFIG_PLL1_DIV             2

// ===== USB Clock Source Options   (Fusb = FpllX / USB_div)
// Use div effective value here.
//#define CONFIG_USBCLK_SOURCE        USBCLK_SRC_PLL0
#define CONFIG_USBCLK_SOURCE        USBCLK_SRC_PLL1
#define CONFIG_USBCLK_DIV           2

// ===== Target frequency (System clock)
// - XTAL frequency: 16MHz
// - System clock source: PLLA
// - System clock prescaler: 4 (divided by 4)
// - PLLA source: XTAL
// - PLLA output: XTAL * 32 / 3
// - System clock is: 16 * 32 / 4 / 2 = 64MHz
// ===== Target frequency (USB Clock)
// - USB clock source: PLLB
// - USB clock divider: 2 (divided by 2)
// - PLLB output: XTAL * 12 / 2
// - USB clock: 16 * 12 / 2 / 2 = 48MHz

4

2 に答える 2

0

Windows で使用されるすべての USB デバイスと同様に、接続するデバイスに固有の Windows 側 USB ドライバーを最初にインストールする必要があります。

Atmel Studio 6.2 以降をインストールすると、ファームウェアで使用している Atmel ASF USB ドライバー用の Windows 側 USB ドライバーがインストールされます。その Windows ドライバーは、私の SAM4E ターゲット プロセッサで動作します。Windows でのドライバーのロードには時間がかかることに注意してください。ハングしているように見えます。しばらく待つと、最終的にドライバーがインストールされます。署名されていないドライバーのインストールを許可するには、おそらくポップアップ警告に応答する必要があります。

Windows ドライバーは、個別にダウンロードしてインストールすることもできます。このリンクを使用してください:

https://gallery.atmel.com/Products/Details/6272a8fd-68fe-43d8-a990-741878cfe7b6 ?

于 2015-08-01T14:14:11.920 に答える
0

クロックレートを再確認してください。SAM4L パーツを使用していますが、48 MHz クロックを生成するには PLL を OSC0 から実行する必要があります。ABDACB が同じクロックを使用し、レートを変更したため、しばらく同じ問題が発生しました。私が理解しているように、USB デバイスを接続すると、速度に応じてピン DP または DN の単一のプルアップ抵抗が検出されます。これが、ウィンドウ (ホスト) に通信を試みるように指示するものです。クロック レートが正しくない場合、ウィンドウのプロパティはすべて 0 を表示します。

于 2015-09-15T17:24:13.740 に答える