ようこそBMHの世界へ
BMHは、Bare Metal Hackingの頭文字をとったオリジナルの略語です。その名が示す通り、裸のデバイスやマイクロコントローラの仕組みを一から理解することで、まるごとハッキングする面白さと楽しさ😍を皆さんにお伝えするために立ち上げたプロジェクトです。
申し遅れましたが、私はドクターBMH、本名を西田 亙(にしだ わたる)と申します。職業は糖尿病専門医ですが🩺、浪人時代に出会ったパソコンに一目惚れし、それ以来システムプログラミングのとりこになった一人です。
かっては、プログラミング専門雑誌で連載を担当し、「Linuxから目覚めるぼくらのゲームボーイ」という書籍📖を世に出したこともあります。
私がパソコンに出会ってから40年が立ちますが、パソコンの性能は劇的に進化すると共に、初学者の手には負えないほど、複雑化しました💻。けれど、コンピューターの基本は40年前の昔も今も、全く変わってはいません。
すべての応用は基本の延長線上にあります。BMHワールドを探検された時、きっと皆さんは「物事の核心をつかみ(Grasp of things)💡」、思わず歓声をあげたくなるほどの「喜びと楽しさ(Just for fun)💘」を得られることでしょう。
私の横に控えているのは、ハックちゃんです。彼はまだ、プログラミングの知識はほとんどありませんが、これからantBASICを覚えながら、システムプログラミングの基本であるI/O操作の達人となっていきます。40年前の私と同じように…。
開発基地はラズパイ400
BMHの構想は、10年以上にわたり📆あたため続けてきましたが、最後の最後まで悩んだものが、プログラム開発環境🔧でした。プログラミングを学ぶためには、優れた開発環境が不可欠です。しかしパソコンは高価なため💸、子どもたちが👦👧「マイコン(My computer)」として独り占めすることはできません。
そこで目をつけたのが、英国🇬🇧ラズベリーパイ財団によるラズベリーパイです。2012年に登場した初代ラズパイにはじまり、これまで7タイプが発表されていますが、BMHでは2020年最新版の「ラズパイ400 ⌨」を開発基地に選びました。
4コアのCPUは十二分に高速であり🚀、キーボード内部に本体とUSBハブが組み込まれているため、ディスプレイ🖥とマウス🖱をつなぐだけで、立派な「70ドル・マイコン」として活躍してくれます。I/Oプログラミングに必須の「GPIOヘッダー」が背部に備えられている点も🙆、現代のパソコンにはない大きな魅力です。
しかも、ラズパイに搭載されるOSは、LinuxカーネルとDebianパッケージをベースにしているため、私達は最高のプログラミング開発環境を無料🆓で堪能できるのです。
安価でかつ高性能、デザインも秀逸。子供や学校🏫でも、購入可能な開発環境を世に出してくださった🎁ラズベリーパイ財団に心より感謝します👏。
ドクターBMH
西田 亙 (医師🩺, 医学博士🎓)
💾 antBASIC GitHub
📺 BMH on YouTube
ハッピー・ブレッドボーディング!
-
⛳ ブレッドボードとは
Coming Soon -
⛳ 配線の基本
Coming Soon -
⛳ GPIOコネクタこそ外界に通じる窓
Coming Soon -
⛳ BMHガジェットの入手方法
Coming Soon
「antBASIC」
プログラミング・レッスン
-
⛳ BASICの歴史
Coming Soon -
⛳ antBASICのインストール方法
Coming Soon -
⛳ 数値と文字列
Coming Soon -
⛳ 情報の記憶 (変数・配列)
Coming Soon -
⛳ ユーザーとの対話
Coming Soon -
⛳ プログラムの作成と管理
Coming Soon -
⛳ 演算
Coming Soon -
⛳ 繰り返し
Coming Soon -
⛳ 条件分岐
Coming Soon -
⛳ ループ
Coming Soon -
⛳ サブルーチン
Coming Soon -
⛳ GPIOによる外界との通信
Coming Soon
GPIO ハッキングへの準備
-
⛳ 必要な部品
Coming Soon -
⛳ やってはいけないこと
Coming Soon
GPIO
プログラミング・レッスン
-
⛳ ブザーを鳴らそう
Coming Soon -
⛳ LEDを点灯しよう
Coming Soon -
⛳ スイッチの状態を読む
Coming Soon -
⛳ 7セグメントLEDで数字を表示
Coming Soon -
LCD 1⃣ ⛳ LCDの構造
Coming Soon -
LCD 2⃣ ⛳ HD44780 データシートを読む
Coming Soon -
LCD 3⃣ ⛳ スクリーン上に文字を表示
Coming Soon -
LCD 4⃣ ⛳ スクリーンのスクロール
Coming Soon -
LCD 5⃣ ⛳ オリジナルキャラクターを作ろう
Coming Soon -
SPI 1⃣ ⛳ SPI通信とは (プロトコル仕様書を読む)
Coming Soon -
SPI 2⃣ ⛳ SPIプロトコルの実装
Coming Soon -
SPI 3⃣ ⛳ EEPROM 25LC320 プログラミング
Coming Soon -
I2C 1⃣ ⛳ I2C通信とは (プロトコル仕様書を読む)
Coming Soon -
I2C 2⃣ ⛳ I2Cプロトコルの実装
Coming Soon -
I2C 3⃣ ⛳ EEPROM 24LC01 プログラミング
Coming Soon -
I2C 4⃣ ⛳ DS1621 サーモスタット制御
Coming Soon -
SPI 4⃣ ⛳ ATtiny13 シリアルプログラミング
Coming Soon -
SPI 5⃣ ⛳ ATtiny13 でLED点滅
Coming Soon