2016年1月6日水曜日

STM32F4 Discovery で MicroPython

MicroPython downloads から STM32F4 Discovery boardのdfu fileをdownloadします。
DiscoveryをDFU modeにするため、BOOT0とVDDをジャンパーピンで接続します。
USB ケーブルはCN5側を次にCN1側を接続します。CN1側が接続されると給電されるので
LEDが点灯します。
DfuSe Demo版でdfuを書き込みます。

書き込みが済んだら、CN1側のUSBケーブルを抜いて、ジャンパーピン外して
CN1側のUSBケーブルを接続しました。
(ジャンパーピンを外して、Resetスイッチを押してもよいかも)
PYBFLASHのドライブが見えてくればOK
TeraTermを立ち上げて(9600bps,1stopbit,non-p) Enterで
"MicroPython v............................"が表示されます。

LED(1)〜(4)まで点灯させました。




2015年12月7日月曜日

STBee F4miniでMicroPython


STBee F4miniでMicroPythonを動かすのに改造しました。
VBAS PA9---560Ω---U1(3) USBが接続されているか判断しているとのこと。
BOOT2 PB2---100kΩ---GND
水晶振動子12MHz⇒8MHz
今回は手持ちがなかったので8MHzの発振器を使用しました。
OSC_OUTの抵抗とOSC_INのC10を取り外しました。
この改造で動きました。


ドライブ:PYBFLASH

USBシリアルデバイス(COM3)で登録
ドライバーですが、Windows8以降は、署名無しのドライバーとなっていましたが、
pybv10-2015-12-03-v1.5.1-58-gb4eccfd.dfuにしたら、Windows10では自動で入りました。

スイッチとLEDをPython Boardと同じに取り付けました。
スイッチ PB3---4.7kΩ--GND
LED1 PA13---560Ω---LED---GND
LED2 PA14---560Ω---LED---GND
LED3 PA15---560Ω---LED---GND
LED4 PB4---560Ω---LED---GND

TeraTermからの接続で、LED(1)とLED(3)を点灯、スイッチのOFF,ONの読み取りです。

参考:
http://forum.micropython.org/viewtopic.php?t=454

2015年12月4日金曜日

DfuSe USB device firmware upgrade extension のセットアップ

STSW-STM32080を

からdownloadします。
展開して、DfuSe_Demo_V3.0.5_Setup.exeを実行します。


Quitしてからデバイスドライバーを入れます。
Windows10 64bitなので、DriverはWin8.1ですが、dpinst_smd64.exeを実行して、入れます。
C:\Program Files (x86)\STMicroelectronics\Software\DfuSe v3.0.5\Bin\Driver\Win8.1\x64\
dpinst_amd64.exe

「STBee F4min」をDFU(ブートローダ)モードにして、USBに接続します。

DfuSeDemoを起動します。
DFU Modoに、Vendor ID,Product ID,Versionが表示されます。

MicroPython downloadsからdownloadした。
pybv10-2015-12-03-v1.5.1-58-gb4eccfd.dfuを書き込みます。
Upgrad or Verify Actionの
[Choose]でdfuファイルを選択して[Upgrade]でデバイスに書き込まれます。


2015年12月2日水曜日

STM32マイコンボード 「STBee F4mini」

Strawberry LinuxのSTM32マイコンボード【STBee F4mini】を買った。
CPUはSTM32F405RGTで「pyboard」と同じなのでMicroPythonを入れてみようと思う。





MicroPython downloadsにあるpybv10-2015-12-02-v1.5.1-51-g3376875.dfuを DfuSeで書き込めばいいみたい。

Firmware downloads for the pyboardにFor information about DFU programming on Windows see this PDFとあるのでPDFの"The care and feeding of Pythons at the Redmond Zoo."をみてセットアップしてみる。

ただしpyboradとSTBee F4miniの回路図を見る限り、改造が必要みたい。


MicroPython downloadsにはSTM32F4 Discovery のdfuありますね。

2015年6月16日火曜日

CP/M2.2とTINY BASIC

[C] CP/M80 シミュレーターで懐かしの BDS-C を動かしてみた

を参考に

C:\Altair 8800 simulator を作成
altaiz80.zip
bdsc.zip
を解凍します。
c:\Altair 8800 simulator>dir
・・・・
2013/02/10  17:37           623,104 altairz80.exe
2015/06/03  11:41           923,373 altairz80.zip
2012/08/24  19:37           555,471 altairz80_doc.pdf
2006/11/01  22:04               229 bdsC
2015/06/03  12:13         1,056,967 bdsc.zip
2015/06/12  16:35         1,113,536 bdsc160.dsk
2002/10/21  19:27         1,113,536 bdsc160source.dsk
2006/11/01  21:38         1,113,536 cpm2.dsk
2015/06/12  12:56                63 Hello.c
2015/06/12  14:48         8,388,608 i.dsk
2009/04/12  21:52           141,822 simh_doc.pdf
2009/04/12  21:52           100,894 simh_faq.pdf
・・・
c:\Altair 8800 simulator>altairz80 bdsC
で起動します。
Altair 8800 (Z80) simulator V3.9-0 build 1625 (scp created Feb 10 2013 at 09:37:45 with gcc 4.2.4)

64K CP/M Version 2.2 (SIMH ALTAIR 8800, BIOS V1.23, 2 HD, 08-Oct-06)
A>

たけおかさんが打ち込んだ 東大版 Palo Alto Tiny BASIC ソース,CP/M 2.2
 たけおか ぼちぼち日記
 8bit CPU BASIC 言語の処理系
 僕が打ち込んだ 東大版 Palo Alto Tiny BASIC ソース,CP/M 2.2

pbas.asmaltairz80.exeのあるディレクトリーに置いて、読み込んで、アセンブル、COM化します。
b:
B>R PBAS.ASM

READ V-2.14 (15-Aug-04)  SIMH Interface V004
13.875kB written.

B>ASM PBAS
CP/M ASSEMBLER - VER 2.0
0A00
009H USE FACTOR
END OF ASSEMBLY

B>LOAD PBAS

FIRST ADDRESS 0100
LAST  ADDRESS 08CD
BYTES READ    07CE
RECORDS WRITTEN 10


B>LS PBAS.*
Name    Ext Bytes   Name    Ext Bytes   Name    Ext Bytes   Name    Ext Bytes
PBAS    ASM   14K ! PBAS    COM    2K ! PBAS    HEX    6K ! PBAS    PRN   34K
4 File(s), occupying 56K of 984K total capacity
147 directory entries and 110K bytes remain on B:

アセンブルリストを印刷したいのでwindows側に渡します。
B>W PBAS.PRN

WRITE V-1.09 (30-Oct-06)  SIMH Interface V004
33.25kB written (Text).

B>

Palo Alto TINY BASIを起動します。
B>PBAS
Palo Alto TINY BASIC

OK
>10 FOR I=1 TO 5
>20 PRINT I,"HELLO WORLD !!"
>30 NEXT I
>LIST
  10 FOR I=1 TO 5
  20 PRINT I,"HELLO WORLD !!"
  30 NEXT I

OK
>RUN
     1HELLO WORLD !!
     2HELLO WORLD !!
     3HELLO WORLD !!
     4HELLO WORLD !!
     5HELLO WORLD !!

OK
>SYSTEM 
で終了します。


電子工作 『古典電脳物語』から
80系プログラムの開発
のタイニーBASIC TBCPM.ZIP
TBCPM.COM(CP/Mのもとで実行可能なプログラム)使ってみます。
B>R TBCPM.COM

READ V-2.14 (15-Aug-04)  SIMH Interface V004
2kB written.

B>TBCPM

PALO ALTO TINY BASIC
PORTABLE 8080 VERSION
CP/M EDITION

OK
>100 INPUT "HANKEI ",R
>110 IF R=0 STOP
>120 PRINT "MENSEKI",R*R*3
>130 GOTO 100
>RUN
HANKEI R:72
MENSEKI  15552
HANKEI R:0

OK
>



参考にしたところ:
Altair 8800 simulatorの使い方メモ

はじめにソフトウェアー基礎コースTiny BASIC

東京版 Tiny BASIC シミュレータ

2014年9月30日火曜日

LTspiceでメリゴ方式3 RC Polyphase Filter

RC Polyphase Filterを10K入力op ampで受けましたが、300Hzと2.4kHzで約8dbの差がありました。
Bufferで受けると差はほぼなくなります。

rc_polyphase_filter_5.asc











モンテカルロ解析はねがてぃぶろぐ さんの
ねがてぃぶろぐ LTspiceモンテカルロ解析の定数分布 その1
から
ねがてぃぶろぐ LTspiceモンテカルロ解析の定数分布 その6

を参考に、
一様分布のmc関数
公称誤差が3σとなる正規分布モンテカルロ関数  .funcでgmc(val,tol)を定義
三角関数のモンテカルロ解析関数   .funcでtmc(val.tol)を定義

それぞれ抵抗は±1%、コンデンサーは±5%です



rc_polyphase_filter_5_mc.asc 

rc_polyphase_filter_5_gmc.asc

rc_polyphase_filter_5_tmc.asc

2014年9月26日金曜日

LTspiceでメリゴ方式2 90度位相FF回路


90度位相FF回路をdflopでシミュレーションはエラーとなります。loop backがあるとうまくいきません。















HC74シリーズのLTspiceでのシミュレーションが"wsnakのブログ"
で紹介されていました。

Ltspice用マクロがたくさんあるところ
LTwiki

74HC74libsymLtspiceに登録(Windows8.1では管理者権限でLTspiceを実行の必要がありました)して90度位相FF回路をシミュレーションをしました。

 HC74_loop2.asc