AVRXPLAIN

Panavise JRをmouserで買うが、送料がもったいないのでAVRXPLAINも買ってしまった。
搭載されているチップはATxmega128A1で暗号を扱う機能があるらしく、輸出規制の対象となっている。発送前に誓約書みたいなのにサインしてFAXで送れという面倒な手続がありました。

USB用にAT90USB1287というチップも載っています。Windows用にFLIPというツールがありますが、linuxやMacOSXでは使えません。
dfu-programmerというものがあるようですが、まだ試していません。
現状ではUSB経由でアップロードするのは簡単でないので、AVRISPmkIIのPDIモードを使うか、JTAGでということになります。

なぜかこんなことを予想していたかのようにAVR dragonが手元にあるので、JTAGでやってみます。JTAGだと10ピンのケーブルを差すだけなので簡単です。



AVRISPmkIIでPDIを使うときはISPの6ピンが次のようになります。

pin func
1 PDI-DATA
2 VCC
3
4
5 PDI-CLK
6 GND

電源はAVRXPLAINのUSBから供給できます。

dragon JTAG

avrdude -c dragon_jtag -p atxmega128a1 -P usb

AVRISP mkII PDI

avrdude -c avrisp2 -p atxmega128a1 -P usb

でそれぞれ認識できた。

LEDが左右に4個ずつ付いていて、PORTEになっています。
ピンヘッダはPA0-7とPD0-7の2ポート。

コードサンプルを見ると、これまでのAVRとはポートの使い方が少し違います。
マニュアルを見るといろいろありますが、とりあえず
DDRx → PORTx.DIR
PORTx → PORTx.OUT
のような対応であることがわかるので、最小限のLチカは次のようになります。

#include <avr/io.h>
#include <util/delay.h>

int main(void)
{
  PORTE.DIR = 0xff;
  PORTE.OUT = 0x00;
  while(1){
    PORTE.OUT ^= 0xff;
    _delay_ms(200);
  }
  return 0;
}

また、OUTTGLというレジスタがあり、文字通りトグルなので

- PORTE.OUT ^= 0xff;
+ PORTE.OUTTGL = 0xff;

のような対応があるようです。LEDが多いためか負論理になっています。

広告
カテゴリー: AVR

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中

カテゴリー
2010年9月
« 8月   10月 »
 12345
6789101112
13141516171819
20212223242526
27282930  
%d人のブロガーが「いいね」をつけました。