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

デジタル色メガネで見よう colorsight - テクノロジーと高専生とアフリカと

2018/06/02
#megane #kosen #IchigoJam #codefor #JS #africa 

Code for Sabae発、WebMeganeがCode for Nerimaに飛び火。
WebMegane(色覚体験)

WebMegane、色を文字化してみました。

colorsightsrc on GitHub in JS
時計表示のおまけ付き! 簡単なJavaScriptで改造可能です!


マダガスカル、モロッコからの留学生へIchigoSodaレクチャーする高専生!


夜は高専インターンOG/OBと!

高専生による高専生のための、最高のインターンを目指す、jig.jpインターン、申込み期限間近!
学生インターンプログラム2018~全国高専生向けjig.jpインターンシップ募集開始のお知らせ~

1時間半でわかる叡智の結晶「IoT」 - IchigoJam x sakura.io 情報セキュリティ実習 in 高知高専

2018/05/11
#IchigoJam #kochi #IoT #kosen 

情報セキュリティ人材育成の中核拠点校高知高専にて「情報セキュリティ実習 IchigoSodaで体験、IoT」

受けてくれたのは高知高専ソーシャルデザイン工学科 情報セキュリティコースの3年生、28名+見学の先生2名。
1コマ1時間半、sakura.ioモジュール内蔵型IchigoJam、IchigoSodaを使った手を動かす実習です。

情報の信頼性:見聞きしたこと < 自分の手で動かし体験したこと

人間、聞いたことが正しいとすぐに思ってしまったら世の中詐欺被害だらけ。
まず体験、実験。その後の裏取りとしての座学で理解を深めるが学習の最短手。

こちら実習のプレゼン資料。


プログラムの打ち込むところとの対応付きの手元資料、1枚を配布(PDFダウンロード


この20年で無線インターネットの速度は20万倍に。
高速大容量になったからこそ実現したのがsakura.ioというIoT、夢広がる、月64円で1万回通信。
2年後からはじまる5Gはさらに30倍、もっと安くかもっと多くの実現も射程距離。


IoT = Internet + T = Interent + ハード + ソフト
ということで、まずはハードづくりの電子工作はじめのいっぽ、LEDひとつをIchigoSodaのソケットCN4に挿すだけ!


ソフトづくりはプログラミング。「OUT1」コマンドを使うと作ったハードのLEDが点灯します。消灯は「OUT0」でOK。

ディスプレイ、キーボードを一旦外して、スイッチ押しながら電源ONで、Tが完成!
つづいて、IoTづくりの題材、まちなか各地で測定する集中度IoTを想定。


ジャンパー線2本を使った接触センサーを使ったかわくだりゲームの亜種を、集中度センサーと呼びました。
センサーの先に大きなボタンをつけてもよし、画面をプロジェクターで大映しにしてもよし。
まちにIoTがあふれる世界を先取りしましょう。


F4でLIST表示、カーソル移動で赤字の3箇所に移動して変更したら、エンターでIchigoJamの記憶が書き換わります。
F4で編集できたことを確認できたら、F5で実行。集中度センサーができました。(資料左上の黒地にIが、配布資料に対応しています)


さすが高専3年生、タイピングが速いので予定よりちょっと早めに進みます。


「IoT」の「I / Internet」に、計測できたスコアNを送るコード。
sakura.ioモジュールとはI2Cというオープンなプロトコルで相互に通信します。


ぞくぞく届く集中度データ。モジュール裏面のIDと対応したデータをソートして表示するJSプログラムを使用。
Ranking IoT - sakura.io
サーバーレスで手軽に楽しめる、JSでwebアプリづくりも楽しいですよっ。


高専生向けにおすすめ、Armマシン語を使った12回分のテキストもあります。
はじめてのマシン語 - IchigoJamではじめるArmマシン語その1
ラズパイで動かすIchigoJam、IchigoJam RPiでもだいたい使えます!(入出力のハードを使う部分以外)


続く午前中の2コマ目担当、さくらインターネット sakura.io事業部長の山口さん
自分で動かしたものの裏っかわで動いているものが、いろいろ見えたはず!
IoTは、人間が作り上げてきた様々な分野の技術の結集なので、あらゆるテーマ探求への起点と言えそう。


そして同時に、IoTは総力戦。
柔軟な発想を持つこどもたちや、その親世代、更に上を巻き込むプログラミング クラブ ネットワーク(PCN)
高知高専がある南国市、PCN南国やってみない?の呼びかけに


なんと、3人、名乗りを上げてくれました!


プログラミング好きな高専生におすすめ、jig.jp、夏のインターンプログラム。
全国高専生向けjig.jpインターンシップ募集開始のお知らせ
エントリー始まってます。また会いましょう!

links
- こどもIoTハッカソン in 三重!はじめてのプログラミング・電子工作・IoTハンズオン、アイデアソン、ハッカソン、発表までを1日で!
- IoT for everyone! 大人IoTプログラミング体験 at Salesforce.com Tokyo Marunouchi
- 福井県庁職員向けIoTプログラミング講習会、世界初のIchigoSodaワークショップでの気づきと対策
- 学外連携、情報セキュリティ人材育成プログラムで育む高専生と地域のこどもたち

学外連携、情報セキュリティ人材育成プログラムで育む高専生と地域のこどもたち

2018/05/10
#health #opendata #kochi #kosen 

「学外と連携するセキュリティ人材育成プログラム」に取り組む高知高専!
今年からスタートした、新コースソーシャルデザイン工学科情報セキュリティコースの3年生への講義と、情報セキュリティに関する講義見学&情報交換にやってきました。


高知高専、岩崎さんによる1年生向け講義見学。一斉講義座学とグループワークのバランス、大事ですね。


ヘマタイト 茨木さんによる講義見学。ラズパイ、ロボット、SSLを使った情報セキュリティ実習。
町に繰り出し、町の安全を脅かす「脆弱性」を探す遠足とかもいいかも。


企業や外の組織との連携によって最新の情報セキュリティを学んだ高専生が、小中学校など外へと出ていって活躍するモデル! 卒業後も地域の情報セキュリティ力アップを目指すという事業に取り組んでいる高知高専。 すべてがIT企業と化すると言われて久しい現代、地域のIT力低下は日本の地盤沈下にも通じかねない。
security|情報セキュリティコース|高知工業高等専門学校

セキュリティとは守る技術。
情報セキュリティとは、情報を盗まれぬよう(機密性)、壊さないよう(完全性)、いつでも使えるように(可用性)にする技術。

情報かデータか。
個人的には情報は主観的な言葉なので、データセキュリティと呼んだ方が、守るべき対象がはっきりしてしっくりくる。 データの属性や量によって、どういう対象にとってどの程度の利用価値がでてくるかもまたデータとして表せる。

オープンという、攻めの情報セキュリティ。
オープンデータは、データを出処を明示しつつ、無制限なコピーを許諾することで機密性と完全性と可用性を低コストで実現する情報セキュリティ技術とも言える。 攻殻機動隊に登場する「攻性防壁」という好きな響き。 攻撃が最大の防御なることもあり、創造という武器によってガンガン戦う情報セキュリティ人材を理想としたい。


お昼は、学食!


メニューの栄養成分算定値表がステキ!ホットな「カロリー内訳計算機」でバランスと食物繊維含有量をチェック!


このカレーライス、ちょっとたんぱく質が少なめ。カロリーの計算があわない点は完全性に欠ける。
どうしてもエラーが混ざるデータの修復には、紙からデータへ、データの可用性を上げることが慣用。
学生と先生の健康のためにも、学食オープンデータをオススメしたい。


カツカレーだと脂質が多め。こっちはカロリー計算もぴったり合う。


いろいろかわいい高知高専の学食。


南国市からバスで高知市、こちらも南国風。


高知に来たらここに来なきゃと、ひろめ市場。屋台村的フードコートないい雰囲気でした。


塩で食べる初ガツオ!・・・でも、8月下旬から9月の戻りガツオの方がおいしいという話も
「初ガツオ」と「戻りガツオ」……あなたはどちらがお好み?(tenki.jpサプリ 2015年09月05日) - 日本気象協会 tenki.jp


なんと食べるウツボ!意外と美味。


情報セキュリティ人材を生み出す最適教材を研究する、高専を超えた高専つながり。地方創生の要は高専にあり!地元産業団体と自治体との連携をゆるく強化する県域コンテストがオススメです!(福井県では、越前がにロボコン!)


タイピングのスコアなど、一斉に送られてくる数をランキング表示するwebアプリを準備!


明日はいよいよ情報セキュリティ実習として、IchigoSodaでIoT開発体験!

links
- 資料10 国立高専の取組み(教育の質保証と貢献)
- 情報セキュリティ人材育成プログラム|東京都立産業技術高等専門学校
- 高知高専

石川県白山麓で育むグローバルイノベーター、国際高専初訪問としゃべるIchigoJamくん

2018/04/24
#IchigoJam #kosen #ishikawa 

石川県にある私立の高専、金沢高専が、今年、国際高専と名前と場所を改め、リニューアル。

全寮制で歴史の授業以外は英語。3年生ではニュージーランド留学し、4/5年生は金沢工大への合流というユニークな高専。 1/2年生が学ぶ場所、石川県、子供の頃よくいった瀬名高原スキー場近くの白峰に新キャンパス。

やってきました、国際高専。今年4月に開校したばかり!
ICT = International Collage of Technology, Kanazawa と記載あり。
International KOSEN!


白峰の自然に囲まれた国際高専の校舎。


天井高い、ステキ空間。


食事の後は、このスペースで勉強会!


真四角建物の中は体育館。


ジム設備もアリ!


屋内ボルダリング場も整備中。


工作スペースに、ダンボールでできた金沢駅前のオブジェ!


新品設備、あれこれものづくりに思う存分チャレンジできそう。


食堂隣の多目的ルーム。


1ユニット6人の小部屋があるシェアハウスっぽい寮。共有リビングの丸テーブルには椅子6つ。


学校直結の寮(DORM)、そして温泉!


外構工事中の寮。


こちらが国際高専敷地内にある温泉。一般の人もOK!


イノベーションハブにも、いい感じな、ものづくりスペース。企業会員の募集予定とのこと!

国際高専プレイベントからのアップデート、音声合成や音声認識を使ったIchigoJamデモを見てもらいながら、白峰発プロジェクトについてディスカッション。 音声合成でしゃべってくれるIoTは、いろいろ可能性広がりそう!地域の子供や、大人と一緒に、いろんなプロジェクトができるとおもしろい!


顔がI2CWコマンドで発声させると、連動してパクパク。
小学校のクラブでも作った、プログラミングによる「顔づくり」 声に連動すると楽しい!かわいい!


部品を揃えて、はんだづけします


はんだづけした裏面。16MHzのクリスタル、小さな表面実装版のはんだづけは大変なので、こちらのセラロックがオススメ。


できあがり!


リップシンク、しゃべりに合わせてパクパクさせるべく、音声端子をジャンパー線で拝借。
写真、オレンジ、または、緑、どちらかから取得すればOK。
試しに、アナログの値を取得してみましょう

10 S="ohayou" 20 U=I2CW(46,S,LEN(S))&I2CW(46,13) 30 FORI=0TO220:A=ANA(2):IF A<500 ?A,"@@@@" ELSE ?A 40 NEXT

一定の数より大きい時に、口を空けるといい感じ!

10 LET[0],"ohayou gozaimasu","konnitiwa","konbanwa","gokigennyo-","mataasita" 15 S=[RND(5)]:GSB20:CONT 20 U=I2CW(46,S,LEN(S))&I2CW(46,13):CLT 60 N=ANA(2)<500 70 IF M=N GOTO 120 80 CLS:LC5,8:?CHR$(1):LC26,8:?CHR$(1) 90 IF N LC 15,18:?CHR$(1,1,28,28,31,1,1,28,28,31,1,1) 100 IF !N LC 14,19:?CHR$(1,1,1,1) 110 WAIT5:M=N 120 IF TICK()>180 RTN 130 GOTO 60

これでパクパク顔が動きます!


links
- 国際高専:国際高等専門学校
- 音声合成LSI - AquesTalk pico LSI

高専インターン募集開始!鯖江を鯖江でハックしよう / バスのスピードメーターアプリ

2018/04/16
#kosen #opendata #sabae 

今年も開催、jig.jpのサマーインターン!
全国高専から集まる16人、4人4チームに分かれて、企画・開発・発表までの3週間(2018/8/20-9/8)


大変だった開発、あっという間だった生活 - jigintern2017の日記」よりインターン開発風景

初週末には、ゲスト開発者を交えたハッカソンでも腕試し。
IchigoJamが産まれた町、鯖江。
未成年無料のファブスペースHana道場、子供エンジニアやシニアエンジニアに会えるかも?

日本初のオープンデータ都市となった、福井県鯖江市には、楽しいAPIが満載!
鯖江駅から高専も結ぶ、市営のつつじバスのAPI x D3.js で、こんなアプリがすぐできる。

鯖江つつじバス スピードメーターズリアルタイムオープンデータAPI使用
デザインベース「D3.jsでスピードメーターみたいなものを作成 - とあるSEの手順書

Swift/Kotlin/Javaを使ったスマホネイティブアプリで使い勝手を追求するもよし、PWAで手軽に使えるWebアプリづくりもよし、IchigoJamやラズパイでのIoT、オープンデータを活用した機械学習、xRに挑戦するもよし。

がっつり開発スキルをアップしたい人にオススメです!

jig.jpグループは、一般利用者向けに動画配信サービス「ふわっち」、オタク向けフリマアプリ「オタマート」など、スマホなどモバイルを中心としたソフトウェアを企画・開発・提供する会社です。(創業者、福野泰介は福井高専卒。エンジニアの8割が高専卒)

16期目を数える恒例の高専生向け夏のインターンシップ、今年もがっつり3週間開催いたします。全国高専から集まる16名が、4チームに分かれて企画・開発・発表までを体験するプログラムです。

弊社エンジニアや、ゲスト開発者を交えたハッカソンや、BBQ、メガネストラップづくり他、各種アトラクションも用意。初対面で自称コミュ障な高専生も、すぐに打ち解けている様子。

全国の情報系高専生、インターンシップご担当教員の皆様からのエントリー、お問い合わせをお待ちしております。

【募集要項】
■期間 8月20日(月)〜9月8日(土) 朝解散 (チーム開発の為、全日程の参加が必須です)
■場所 株式会社jig.jp(本店・開発センター)福井県鯖江市めがね会館
■応募要件
・高専生(本科・専攻科)であること(学科不問)
・プログラミング・ものづくりが好きであること(自分でつくったサービスを世の中に!)
・インターンシップ保険(傷害保険)に加入可能であること
■支給 往復交通費、宿泊費

選考、エントリーなど、詳しくは下記まで。
学生インターンプログラム2018 ~全国高専生向けjig.jpインターンシップ募集開始のお知らせ~

陰キャの祭典、高専カンファレンス in 高尾 レポート! コミュ障助けるウェアラブルのススメ

2018/03/31
#kosen #kosenconf #kosenconf_118takao #IchigoJam #braille 

八王子にある、東京高専にて開催、通し番号でもう118、高専カンファレンス in 高尾!(GitHub pages 活用)


なぜ高専には陰キャが多いといわれるのか?
→ 何かを心から好きになることができる人が多いから → 打ち込めるものがある力と幸せは世界をリードする
by 東京高専1年生 Kuritain (Tweetは85いいね!

新カテゴリー、陰キャと陽キャ。陰があるから陽がある。内なる光が陰キャの強み?
自分は、どっちかと問われると、陰キャかな。
キャラと固定化するよりも、環境やその場の気分と割り切るくらいが気軽でいいと思うけど。


高専カンファレンスは、ゆるい学会。
それぞれ自由なテーマで持ち寄って発表、自分の知らない世界が広がります。
(発表は、サブスクリーン今昔物語 by @asonas


沖縄高専の紹介とみせかけた、沖縄高専ICT委員会の紹介!
こんな動画もあるよ、IchigoJamでプログラミング! by @shimamiz


今回目立っていた小山高専勢。トヨタ、アクアのモーター。普通のモーターの1000倍!


なんと、持参してきていたアクアのモーター、20kg。
1m先の棒にママチャリをくっつけたものが、毎分5000回転しちゃう代物!?


同小山高専勢、理系がラノベ作家になってわかった”文章力”の話 by @kaname_aizuki
文系的文章と理系的文章の違い。理解か共感か、人が期待していること、伝えたいことの種類を意識してみよう。 舞台も高専な作品「俺たちは異世界に行ったらまず真っ先に物理法則を確認する(ファミ通文庫) - カクヨム」(Kindle版もある!

高専カンファレンスでの発表は、理解するには短いけど、定型がない分、それが熱意となって現れ、共感につながるいいとこどりかも。


ほしいな、高いな、作っちゃおう ← これが高先生の発想
自作の左手キーボード、筐体は3Dプリンター、キーは再利用品 by @N0n5ense


「創ろう!攻殻機動隊の世界、体表点字で有線編 - 高専カンファレンス in 高尾2018 by @taisukef
好きなこと話すって、楽しい!


懇親会での発表「高専カンファレンス、10周年!」


懇親会で目を引く、謎技術で電車の位置を表示するモノ


基板は学校で削り出したもの、こういう設備をサクッと使えちゃうのが高専のいいところ

ウェアラブルメソッド
懇親会で声をかけやすくなるウラワザ → モノに語らせる(纏う=ウェアラブルが楽!)
自分で作ったモノや、自分の好きなモノを持って懇親会に望めば、発表した人とリンクもすぐできるし、その場でしかできない体験になる。
名札に大きく、自分の好きなテーマを書いておくとか、好きな動画を画面にうつしたスマホを首に下げるとかでもいいかも。

こちら、今日の首さげIchigoJam用、3分タイマープログラム

10 F=0:W=60:L=5:U=0 20 @LOOP 25 D=U!=W&&W!=L:U=W 30 LED1:WAIT L:LED0:IF D D=0:WAITL:LED1:WAITL:LED0:WAIT W-L*3 ELSE WAIT W-L,F 35 IF BTN() F=!F:LED1:WAIT60:LED0:CLT 40 IF !F W=60:L=5:GOTO@LOOP 50 C=TICK()/60 60 IF C<60 W=10*60:GOTO@LOOP 70 IF C<120 W=5*60:GOTO@LOOP 80 IF C<150 W=3*60:GOTO@LOOP 90 IF C<160 W=2*60:GOTO@LOOP 100 IF C<170 W=60:GOTO@LOOP 110 IF C<180 W=30:GOTO@LOOP 120 IF C<190 W=600:L=600:GOTO@LOOP 130 IF C<240 W=600:L=0:GOTO@LOOP 140 F=0:W=60:L=5:GOTO@LOOP

普段は省電力で5秒おきに点滅(ボタン電池1つで10時間以上たった今も点滅中)
ボタンを押したらタイマーモード。3分に近づくにつれて点滅が速くなる。サウンダーで音をつけるのもいい。


いろいろな発表、写真アルバム (ライセンス CC BY @taisukef)でのダイジェストでどうぞ!
伝わらないので、ぜひ会場へ、7/7@京都7/15東京(高専生でなくても大歓迎!)


おつかれさまでした!(集合写真 by @heppoko_yuki


会場の東京高専の桜!

links
- 高専カンファレンス Wiki

NICT起業家甲子園発!オープンソースと高専生で育てよう、オタク向けSNS「NU-MA」

2018/03/07
#kosen #numa 

学生によるスタートアップ創出イベント、今年で7回目となる起業家甲子園
参加は5回目、メンター&審査員参加は4回目!

オタク向けSNS「NU-MA」の富山高専と、運転見守り「みまもったろう」の豊田高専チームの合同打ち上げ!
NU-MAはオープン化し、みんなで育てていくことに決定!


NUMAの由来は、スラング「沼にはまる=趣味に夢中になっている状態」から。
ジャンル、沼度に応じた、居心地よく、どんどんはまれる環境を創出します!
GitHubにドキュメントから公開!(NUMA on GitHub


みなさん、ステキなプレゼン、ありがとうございました!


富山高専と豊田高専、姉妹校提携の実現に向けたプレ握手!


豊田高専、みまもったろーずと都筑先生!
胸にはみんなオリジナル衣装をまとった、みまもったろう(中身はロボホン!?)


養殖イノベーション、鳥羽商船高専チーム!
2014年度にはメンター担当していた鳥羽商船高専、また、行きますよ!)


未就学児のこどもプログラミング教育への挑戦、沖縄高専チーム!(福井でもIchigoJamでトライ予定


懇親会をジャックして、さくら&jig.jp特別賞!
2年連続出場、切り口鋭い精神障害者向け仕事マッチング「Tech Job」長滝谷くん!


後輩たちの活躍、うれしい限り!

links
- 2014年 NICT起業家甲子園で活躍する高専生を応援!
- 2015年 はなまるフォームで楽しく始めるスポーツxIT、起業家甲子園で活躍、高専生!
- 2016年 平成27年度「起業家甲子園」 Code for Hakodate 「Pecily ~公共交通情報のプラットフォーム~」総務大臣賞獲得!
- 2017年 Yuge KOSEN got the best prize at NICT Entrepreneurs' Challenge 2017 day 1
- 2018年 NICT起業家甲子園発!オープンソースと高専生で育てよう、オタク向けSNS「NU-MA」

旭川高専出身、Viscuit開発者の原田さん開発、3次元版タートルグラフィック、トンボグラフィックがおもしろそう!ラインアートの3次元版(立体視用)

2018/01/15
#KidsIT #art #kosen #js 

北海道の離島、天売島生まれ旭川高専出身でこどもプログラミングアプリ「Viscuit」を開発・提供する原田さん、来福。 PC-8001をモニターなしでBASICを打ち込み、音でデバッグの話、おもしろい!

コンピューター、電子工作、粘土など、ものづくり話に花咲きます!

「右へ10、前へ20」などと亀を動かし軌跡で絵を描く、タートルグラフィックIchigoJamでの実装例)。これを3次元に拡張した亀ならぬ空間を飛び回るトンボグラフィックを旭川高専5年生の時に開発していたとのこと。 ダイヤモンドや、分子を短いプログラミングでさくっと表現できるとのことで、楽しそう!(実装かも、T3
過去に発明した変な言語1 - ビスケットのあれこれ」 - 原田さんのブログ

平行法や、交差法で手軽に(?)見られる3D(例、点で作った球)を、2012年一日一創のラインアートに適応。

LineArt3D」 - JavaScriptで作った、Webアプリ(オープンデータなオープンソース)

コンピューターの計算速度が上がり、部品が安くなって手軽になってきた Windows MRなどのVR。 先日、7歳以上向けのガイドラインが発表され、こども x VR の可能性もでてきたので、プログラミングで空間を自在に操るWOWなアプリもできちゃいますね!
「7歳未満には利用させない」など,施設型VRコンテンツの利用年齢に関するガイドラインをロケーションベースVR協会がリリース - 4Gamer.net

安いパソコンで、テキスト、2次元グラフィック、3次元グラフィックへと一気にステップアップできてしまう現代の子供達がうらやましい!
「jig.jp」福野泰介社長 ゲーム作りに夢中になった1冊|暮らし|ライフ|日刊ゲンダイDIGITAL

ベーマガイベント大盛況だっととのこと!コンピューターの楽しさは不変!

マイコンベーシックマガジン - Facebook

何事も実質プログラミング! 高専カンファレンスえぶりわん in 大阪

2018/01/13
#kosen #maker #KidsIT #kosenconf #kosenconf_113everyone 

ものづくり好きな高専生による高専生じゃなくても大歓迎なイベント、高専カンファレンスえぶりわん in 大阪
コスプレ衣装づくりは、実質プログラミングだ!と発表する女子高専生、やましーさん。

そう、ものづくりの極意は分解にあり。

何でできているかアタリをつけ、各個撃破、仮組み、うまくいけば完成。いけなければ、リトライ。あきらめたらそこで試合終了。 うまくいかないことで見える、新たな知見が楽しめるなら、そのジャンルは天職かもしれない。


新年らしくめでたい紅白リアルタイム投票戦!主催者、高専生による自作システム。

こちらも新年らしい、自作、あたまのわるいふくわらい。
若干偏り気味な、やわらかさある高専生による仕業 → #kosenconf 想像力豊かな高専生
3Dプリンターで量産したい逸品。

電車通学して目につくモノは、とりあえずつくってみたくなる病。
あるある。実際に作れちゃうからやめられない。

かっこいいスライドに憧れる人、必見!カラー、フォント、スタイル、イメージがポイント!

LTで話した「犬だって歩けば棒にあたるのだから」で、創ってシェアする楽しさをシェア。

プログラミングは楽しいよ!高専2年生達にIchigoJamを題材に、ミニプログラミング講座。

鯖江で人気、Hana道場で学生がこどもにプログラミングとものづくりを伝授してますよっ。

今回お土産にもっていった、かわいいNXP/Armのコンピューター、LPC810ちゃん!
IchigoJamでマシン語でプログラミングできちゃいます。
(ちょっと長いので、まずは、はじめのいっぽ&ミニゲームズで慣れてからどうぞ〜)

RESETLPC810RXD- IchigoJamのTXD
IchigoJamのRXD -TXDGND- IchigoJamのGND
PIO0_33.3V- IchigoJamのOUT1
WS2812B DIN -PIO0_2ISP- IchigoJamのOUT2

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,30,32,32,161,30,75,14,120,30,112,1,49,1,51 30 POKE#750,1,56,249,209,30,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,29,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,10,0,0,7,0,0,5,0,0,3,0,0,2,0,0 70 A=#700:L=216:LRUN1 SAVE0 NEW 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 SAVE1 LRUN0

普通のパソコンから扱う人向けの本もどうぞ!(ボクのLPC810工作ノート

書き込み終わったらこのようにスッキリ配線もコンパクト!
3Vの電源を右側まんなかに、左下からWS2812B用の信号がでるので、DINに接続するだけで、チカチカ完成!
ふんわり、さりげなく、キラリと光らせて、かわいいをアップグレードしちゃいましょう!

なんと実行副委員長賞として、えぶりわんオリジナルフラッグをもらったので、一緒に記念撮影!

楽しいは創れる!

【おまけ】
高専生のためのWS2812B x 10 を、LPC810でチカチカさせるArmマシン語 asm15 assembly 表記版、紹介。

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=30 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=30 ' 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=29 @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, 10, 0, 0, 7, 0, 0, 5, 0, 0, 3, 0, 0, 2, 0, 0

一番最後の行、DATA_LEDがG,R,B(緑赤青)の順にLEDの明るさ設定が10コ分の並んでいます。とりあえず、ここを書き換えることからはじめてみよう。

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 で、プログラミングの基本を、マシン語を使ってコンピューターの真の実力を、それぞれかんたんに体験できます!

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