福野泰介の一日一創 - create every day

LPC810で光るカセットテープ! 富山高専射水キャンパスにてメンタリングとプログラミングの本質体験のススメ

2017/12/18
#IchigoJam #maker #lpc810 #asm #toyama #kosen 

起業家甲子園出場権を手にしたアントレプレナー研究会のある、富山高専射水キャンパスにてメンタリング。
富山高専本郷キャンパスでjigインターンのOB、すがっちとなぽりたんもジョイン!
高専生ならではの感性と創造力で北陸から一石、投じよう!

北陸、福井、鯖江の銘菓、めがね堅パンのハートエディション!

昨日のLPC810 x WS2812Bにバグが見つかり、無事光るカセットテープのLPC810エディションが点灯!

12MHz版だとちょっと信号はいい加減ですが、ちゃんと光りました!
(原因:asm15の DATA B 0,0,0 が、2byteアラインされてしまうため)

マシン語で作る、簡易キラキラプログラムがこちら!
末尾、16byteを変更すると、アニメーションするLEDの色が変わり、その前4byteでウェイトを調整できます。

10 POKE#700,0,4,0,16,33,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,223,251,255,239,33,72,223,33,1,96,33,72 20 POKE#728,1,104,3,34,210,67,17,64,1,96,31,72,31,73,1,96,31,72,12,33,1,96,31,76,4,34,15,32,32,161,30,75,14,120,30,112,1,49,1,51 30 POKE#750,1,56,249,209,15,32,26,73,128,37,11,120,34,96,43,66,8,208,0,0,0,0,0,0,0,0,0,0,0,0,0,0,34,96,7,224,0,0,34,96 40 POKE#778,0,0,0,0,0,0,0,0,0,0,0,0,109,8,233,209,1,49,1,56,228,209,13,79,1,63,253,209,10,73,14,120,14,32,79,120,15,112,1,49 50 POKE#7A0,1,56,250,209,14,112,213,231,128,128,4,64,16,0,4,64,192,193,0,64,191,255,255,255,0,32,0,160,0,35,0,160,0,0,0,16,128,26,6,0 60 POKE#7C8,20,0,0,20,20,0,20,0,20,20,20,0,0,20,0,0 70 A=#700:L=216:LRUN1 'FILE1 100 'LPC810 Writer 256byte from ADR:A 110 UART3,2:OUT2,0:OUT1,0:WAIT9:OUT1,1 120 CLS:?"?";:GSB@R 130 ?"Synchronized":GSB@R 140 ?12000:?:GSB@R:GSB@R 150 ?"A 0":GSB@R:GSB@R 160 ?"U 23130":GSB@R 170 ?"W 268436096 ";256:GSB@R:UART1,2:LC0,-1:FORI=0TO255:?CHR$(PEEK(A+I));:NEXT:UART3,2:LC0,6 180 ?"P 0 0":GSB@R 190 ?"E 0 0":GSB@R 200 ?"P 0 0":GSB@R 210 ?"C 0 268436096 256":GSB@R 215 '?"G 268436128 T":GSB@R:END 220 OUT2,1:OUT1,0:OUT1,1:END 500 @R:K=INKEY():IF K=13 K=INKEY():WAIT9:RTN ELSE CONT

マシン語のプログラムはこちら。
データを一旦RAM(#10000000)へ転送し、1ループごとにローテートさせています。

DATA L #10000400 ' stack DATA L #21 ' entry point DATA L 0, 0, 0, 0, 0 DATA L #EFFFFBDF ' VALID_CODE = 0x100000000-0x10000400-0x21 @ENTRY R0=[@SYSAHBCLKCTRL]L R1=#DF 'SWM, GPIO, I2C:off, FLASH, FLASHREG, RAM, ROM, SYS [R0]L=R1 R0=[@FLASHCFG]L R1=[R0]L R2=3 ' flash no wait: set 0b00 R2=~R2 R1&=R2 [R0]L=R1 R0=[@PINENABLE0]L R1=[@PINENABLE0_DATA]L [R0]L=R1 R0=[@GPIO_DIR0]L R1=`1100 ' PIO0_2 and PIO0_3 [R0]L=R1 R4=[@GPIO_NOT0]L R2=`100 ' PIO0_2 @COPYTORAM R0=15 R1=@DATA_LED R3=[@RAM]L @COPYTORAM_LOOP R6=[R1] [R3]=R6 R1+=1 R3+=1 R0-=1 IF !0 GOTO @COPYTORAM_LOOP ' WS2812B driver ' R0 - data count ' R1 - data address (G1,R1,B1,G2,R2,B2 ....) ' R2 - OUT value ' R3 - data value ' R4 - GPIO address ' R5 - bit count ' R7 - wait count @WS2812B R0=15 ' R1=@DATA_LED R1=[@RAM]L @LOOP_DATA R5=#80 R3=[R1] @LOOP_BIT [R4]L=R2 R3&R5 IF 0 GOTO @ZERO NOP NOP NOP NOP NOP NOP NOP [R4]L=R2 GOTO @JOIN @ZERO NOP [R4]L=R2 NOP NOP NOP NOP NOP NOP @JOIN R5=R5>>1 IF !0 GOTO @LOOP_BIT R1+=1 '+6clock R0-=1 IF !0 GOTO @LOOP_DATA @WAIT R7=[@WAIT_N]L R7-=1 'wait R7*3+1 clock IF !0 GOTO -1 R1=[@RAM]L R6=[R1] R0=14 @SLIDE R7=[R1+1] [R1]=R7 R1+=1 R0-=1 IF !0 GOTO @SLIDE [R1]=R6 GOTO @WS2812B ' init @SYSAHBCLKCTRL DATA L #40048080 @FLASHCFG DATA L #40040010 @PINENABLE0 DATA L #4000C1C0 @PINENABLE0_DATA DATA L #FFFFFFBF @GPIO_DIR0 DATA L #A0002000 @GPIO_NOT0 DATA L #A0002300 ' WS2812B @RAM DATA L #10000000 @WAIT_N DATA L 400000 @DATA_LED DATA B 20, 0, 0, 20, 20, 0, 20, 0, 20, 20, 20, 0, 0, 20, 0

asm15 assembler」でアセンブルできます!
WS2812Bの信号は、800kHz(秒間80万回、1.2マイクロ秒に1回)の波の形で、0と1とを区別するので、とても人の手では制御できませんが、マシン語ならたった30円のコンピューターにさせれば余裕です。

切っても切れない、社会とコンピューター。誰にでもオススメしたいプログラミング体験。
IchigoJam BASIC で、プログラミングの基本を、マシン語を使ってコンピューターの真の実力を、それぞれかんたんに体験できます!

富山高専祭講演、生活を`100倍楽しむライフハックは創造&シェア!

2017/11/12
#toyama #kosen #doc #IchigoJam 

富山高専からの2016年jigインターンOB、すがっちが学祭に呼んでくれました!

高専祭、パンフレットにも掲載!


講演スライド「時代は高専生を求めている! 高専生活を`100倍楽しむライフハック - 富山高専祭 本郷キャンパス 志峰祭にて // Speaker Deck

富山高専 賞雅校長先生とも対談、エンジニアリングに興味持つ子供が増える中、高専が果たす役割は大きいですね!商船学科、国際ビジネス学科を含めた多様な6学科、グローバルな連携もぜひ!(ルワンダ トゥンバ高専モンゴル高専

学科展示では、感電死しちゃう5万ボルトでも金ザル通せば大丈夫という体を張った展示!

きっと富山ローカル「どんどん焼き」

名産の昆布が入った薄いお好み焼き的なものでした

体育館ではフィナーレイベントのビンゴステージ
(音響、ステージ照明とかも自分達でやっちゃうのもきっと楽しいヨ!DMX512 x IchigoJam

打ち上げ、PCN富山への協力してくれる学生へ「光るカセットテープ一式」贈呈式

あげてしまうと作りたくなる「光るカセットテープ」4代目は、もっとシンプル、ピンソケット仕様

少しニッパーで切り落として横からジャンパーワイヤーで接続(上から、GND / DIN / 5V だけど3Vでもいける!)
テープ状のフルカラーLED(WS2812B、300コで3280円!)を切ってはるだけの簡単工作、IchigoJam / Arduino / Raspberry Pi などお好きなコンピューターにつないで光らせよう!

IchigoJamを使う時、大人はPS/2キーボードもテレビもこだわる必要ありません。
USBシリアルでつないで、シリアルターミナルからコピペでOK!開発環境がいるArduino以上にお手軽ですよっ

シェアが産む創るの連鎖!
私も「光るカセットテープ x IchigoJam」を作ってみました|JO3GBD - ブログ

創って2倍、シェアして4倍、楽しもう!
(`100 = IchigoJamの2進数表記で 4 を表します。確認 on IchigoJam web


すごいよ、ギャル電

どきどきはんだづけ動画 初めての電子工作&プログラミング at 富山県砺波市

2016/03/19
#toyama #IchigoJam #KidsIT 

ドローン、ロボット、バーチャルリアリティ、人工知能。最新技術で楽しむ第一歩「電子工作&プログラミング」の子供向け教室が富山県砺波市で開催! どきどきのはんだづけからプログラミングの第一歩までの様子を動画にまとめました。


こども電子工作&プログラミング教室 / 富山県砺波市 - YouTube


今回の道具一式!


くみたて手順をわかりやすく解説した資料、IchigoJamキット(一部訂正版PDF


2時間で全員はんだづけ完了!5分の休憩を挟んでプログラミング体験、ボタン押しながらスイッチオンの裏ワザを使って、お家でも遊べるネコジャンプゲームができました。 いろいろなサンプルを打ち込んで遊んだり、教科書を見てひとつひとつ理解してみたり、自分のペースでぜひ遊んでみてください!(公式サイト読み物集) ときどきみんなで集まっての発表会や、PCNこどもプロコンへの応募もおすすめです! わからないことがあれば、Facebookグループ「IchigoJam-FAN」やメールにてお気軽にお問い合わせください!


最後はみんなで記念写真!いい笑顔!(写真提供、永井さん)


ワークショップ前には、エフエムとなみさん&ケーブルテレビの生放送にも出演!


高岡駅近くの鋳造もできちゃうものづくりスペース「はんぶんこ」、東海さんを訪ねました。


古代から伝わる砂型鋳造製法の鋳造キット!写真左下の錫のおちょこを自分で作れちゃいます。
IchigoJamケースも鋳造体験できちゃう!?「プログラミング x 鋳造」も楽しそう!


打ち上げは砺波市の居酒屋さん、山菜もおいしい!


今週末、3/20(日),21(月)は、池袋、旧豊島区役所庁舎にてとしまミュージアム
プログラミングワークショップ「イチゴジャムファクトリー
定員:12名、10:30-12:00(はんだづけ)/13:30-15:00(プログラミング初級)/15:30-17:00(プログラミング上級)
受付は当日、先着順!

参考リンク
- 行事・イベント - IchigoJamでこども電子工作&プログラミング教室開催!(3月19日) | 砺波市役所
- IchigoJamでこども電子工作&プログラミング教室開催!(3月19日)|お知らせ|お知らせ|となみ衛星通信テレビ株式会社
- はんぶんこ - モノを知る・作る・使う -
- としまミュージアム

IchigoJam同士でプログラム転送する方法 インターネット技術第163委員会研究会(富山)

2015/05/29
#IchigoJam #opendata #toyama #jig 

Code for Kanazawa, Code for Nanto, Code for Sabae が富山に集結
第37回インターネット技術第163委員会研究会 - シビックテックとオープンデータ」
データシティ鯖江こどもパソコンIchigoJamで仕掛ける次世代のまちづくりを話してきました。
行番号付きBASICで上がる歓声!?

インターネットの研究会ということで、ネットワークの基本、パソコンからパソコンへのデータ転送を、IchigoJam同士をつないでみました。GNDとGND、親機のTXDと子機のRXDをジャンパー線でつなぎます。長文の転送はデフォルトの通信速度11,520bpsでは間に合わなかったので、300bpsに落としています。


子機を2台に増やしてもこの通り!
作ったプログラム、友達みんなにまとめて配ることができますね!


IchigoJam間 プログラム転送例


IchigoJamで学ぶプログラミングの教科書「IchigoJamでプログラミング」が完成しました!
著者は元福井高専電子情報工学科教授、蘆田昇氏、プログラミングを福井高専で担当していて、私の元担任の先生でもあります!

昨日、5/28はjig.jp創立記念日。スタッフ全員にこの教科書をプレゼント!
ますます加速する新しいインターネット社会、次の12年、楽しみです!

Tweet
クリエイティブ・コモンズ・ライセンス
この作品は「Creative Commons — CC BY 4.0」の下に提供されています。
CC BY 福野泰介 - Taisuke Fukuno / @taisukef / アイコン画像 / プロフィール画像