ラジオ少年の楽しい電子工作、その他

AVRを使った簡単な回路の実験、そして日々のちょっとした出来事を書きます。

BASINT_SRC_23B

2012年03月31日 | 日記

senshuさんの掲示板に紹介されているAVR用BASIC(BASINT_SRC_23B)をDLしてみました。

AVRStudio4でコンパイルを試みましたがCの文法が違うのか96個のエラーが出てどうにもなりません。

IARの開発環境(期間限定30日間)をDLしてBASINT.ewwをクリックして見るがunable to create

configuration 'DEBUG' using tool chan 'AVR'. これにOKで答えると Not a vlid project file.

これにOKで答えると ふたたび unable to creat,,,,となる。これを何回か繰り返すと xxx.ewp ファイルが

開けないと表示される。

どうも何かがおかしい様ですね。

それにfileが2007年で止まっているのも気になります。

最初からprojectを作ってコンパイルしますが48個もエラーになります。

エラーの原因はina90.hやpgmspace.h等のAVR関連のファイルが軒並みopen出来ない事です。

pgmspace.hの中のio.hがopen出来ないとエラーになるこれを消すと今度はio.hの中でinclude

しているfileがopen出来ないと言ってくる始末。

これではきりがないですね。 次々同じ様な感じのエラーが多分出て来るのでしょう。

 

 

コメント (2)
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

AttoBasicV211(6)

2012年03月30日 | 日記

ATmega328P(12MHz)にAttoBasicV211を入れてみました。

hex fileが無いので適当にfileを修正しbuildしてhex ファイルを作りました。

 

これを328Pに書き込み、RS232Cを繋ぎます。

baud rateが合わずにお化け文字、最初は115200でそれを下げていき結局2400でうまく文字が

出ました。

10 odb $20

20  opb $20

30  delay 10

40  opb $00

50  delay 10

60  goto 10

save でプログラムをEEPROMに書き込みRUNで目出度くLEDが点滅しました。

 

取りあえず12MHzで動いているようですね。

self-startが有るらしいが、これは PINC3をGNDに落としてpowerを入れるとプログラマ(LED点滅)

が起動するとのこと。

チェックして見ましょう。

 

コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

AttoBasicV211(5)

2012年03月29日 | 日記

purogram例(大したprogramでは有りませんが)を書きます。

ダ・ヴィンチ基板にはユーザ用のLEDが用意されています。そのLEDを点滅させるprogramです。

簡単にLEDをON/OFFするには次の用にやっても出来ます。

TeraTermの画面で

>odc  $ 80

>opc $80 enter で点灯。

>opc $00 enter で消灯。

ライン番号は必要ありません。 saveはしていませんのでEEPROMのデータは消えていないようです。

>load

>list でprogramを読み出せます。

次はADC testです。

 

10 adr は ref.voltageを内部にするための記述です。 adr 1 とやると外部になります。

ADCはADC0を指定しています。 ADC 1と記述すれば ADC1が入力になります。

ADCをオープンにするとノイズで適当な値が表示されます。

16進数で表示させるには 20 prx adcと記述します。

CTRL + S で中断し何かキーを押すと再開します。


簡単には試すには次のようにします。

>adr   enter

>print adc  enter

255  と表示されます。



 

 

 

コメント (1)
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

AttoBasicV211(4)

2012年03月28日 | 日記

Attobasicv211 を少しいjくってみた。

先ず、PWM。

>pwm 128 と入力すると8bit PWMが動作してOCA1からduty50%の矩形波がでる。

>pwo と入れると停止する。

そこで次の様な簡単なプログラムを書いてRUNさせてみた。


>10 for i = 0 to 255

>20 delay 15  <--- 150ms delay

>30 pwm i

>40 next

>50 goto 10

>save

Saving to EEP.

>run

duty0%~100%まで増加し0%に戻ることを繰り返す。

10bitPWMの場合は

>pwme $02,$1F と入れればduty=543/1024のの矩形波が出る。

$02が 10bitのMSB側2bit、$1FがLSB側8bitを表している。

止める場合は

>pwo

ADCの場合は簡単にやるには以下の様にする。

>adr

>print adc と入力すると、 ADC0=GNDの場合は0, +5Vの場合は255と表示される。

 

連続して測定するには

>10 adr

>20 print adc

>30 goto 10

でrunすればOK。

インテープリタの便利なところは直ぐに結果が出ることだ。 Cだとこうは行かない。

 

 

 

コメント (5)
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

AttoBasicV211(3)

2012年03月28日 | 日記

AttoBasicV211のサイトに

ATTOBASIC_M32u4_16MHZ_usb_btldr.hex と ATTOBASIC_M32u4_16MHZ_usb_nobtldr.hex

の2種類のファイルがある。

ATTOBASIC_M32u4_16MHZ_usb_nobtldr.hexはmega32U4にbootloaderが存在しない場合に

USBasp等で書き込むでattobasicを起動するためのファイルである。

ATTOBASIC_M32u4_16MHZ_usb_btldr.hex はmega32u4用のbootloaderでUSBasp等でこのhex

ファイルを最初に書き込む。

次にHWB jumperをさしてUSBに接続する。

この状態でATMELのFlip 3.4.5を開く。 Fileを開きATTOBASIC_M32u4_16MHZ_usb_nobtldr.hexを指定し、

Runをクリックする。

これでattobasicがmega32u4に書き込まれる。

後は適当なターミナルソフトでmega32u4にアクセスしてbasicを起動する。


コメント (2)
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする