pages/htdocs/2022-06-10_game-dentak/index.html

278 lines
14 KiB
HTML
Raw Normal View History

2023-04-02 08:31:07 +00:00
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>『ゲーム電卓パイ』プロジェクト | おこげ俱楽部</title>
<meta name="title" content="『ゲーム電卓パイ』プロジェクト | おこげ俱楽部">
<meta name="description" content="Raspberry Pi と LCD キャラクタディスプレイモジュールで「ゲーム電卓」を再現してみる">
<meta name="keywords" content="オコゲ,デスクトップアプリ版,オコゲ,blockly,プログラミング,上野学習塾">
<meta name="author" content="ocogeclub">
<meta name="robots" content="index, follow">
<link rel="canonical" href="https://ocoge.club/2022-06-10_game-dentak/">
<link rel="shortcut icon" type="image/png" href="/assets/img/favicon.png">
<link rel="apple-touch-icon" href="/assets/img/apple-touch-icon.png">
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Nunito:wght@500&display=swap" rel="stylesheet">
<link href="https://fonts.googleapis.com/css2?family=Kosugi+Maru&display=swap" rel="stylesheet">
<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&display=swap">
<script src="https://kit.fontawesome.com/73f7be0650.js" crossorigin="anonymous"></script>
<link rel="stylesheet" href="/assets/floatbox/floatbox.css" />
<script src="/assets/floatbox/floatbox.js" defer></script>
<link rel="stylesheet" href="/assets/css/ocmain.css">
<link rel="stylesheet" href="/assets/css/main.css">
<link rel="stylesheet" href="/assets/css/footer.css">
<link rel="stylesheet" href="/assets/css/post.css">
<meta property="og:image" content="https://ocoge.club/assets/img/ogp_game-dentak.webp">
<meta property="og:title" content="『ゲーム電卓パイ』プロジェクト | おこげ俱楽部">
<meta property="og:description" content="Raspberry Pi と LCD キャラクタディスプレイモジュールで「ゲーム電卓」を再現してみる">
<meta property="og:url" content="https://ocoge.club/2022-06-10_game-dentak/">
<meta property="og:site_name" content="おこげ俱楽部">
<meta name="twitter:card" content="summary">
<meta name="twitter:site" content="@ocogeclub">
</head>
<body class="flex flex-col h-screen bg-white text-gray-800 break-words">
<header id="header" class="header-shadow bg-white px-6 py-5 z-50 fixed w-full top-0 transition-all transform ease-in-out duration-500">
<div class="max-w-5xl mx-auto flex items-center flex-wrap justify-between">
<div class="sm:mr-8">
<a class="flex items-center" href="/">
<span class="text-xl text-teal-700 font-semibold self-center"><img src="/assets/img/ocoge_title_kogecha.webp" title="おこげ俱楽部" alt="おこげ俱楽部" id="site_title"></span>
</a>
</div>
<nav id="menu" class="order-last md:order-none items-center flex-grow w-full md:w-auto md:flex hidden mt-2 md:mt-0">
<a href="/about" class="block mt-4 md:inline-block md:mt-0 font-medium text-gray-700 hover:text-teal-600 text-base mr-4">About</a>
<a href="/tags" class="block mt-4 md:inline-block md:mt-0 font-medium text-gray-700 hover:text-teal-600 text-base mr-4">Tag List</a>
<a href="https://cloud.ocoge.club/" target="_blank" rel="noopener" class="block mt-4 md:inline-block md:mt-0 font-medium text-gray-700 hover:text-teal-600 text-base mr-4">Cloud/Mail</a>
<a href="https://git.ocoge.club/ocogeclub/pages" target="_blank" rel="noopener" class="block mt-4 md:inline-block md:mt-0 font-medium text-gray-700 hover:text-teal-600 text-base mr-4">ocogIt</a>
</nav>
<form id="search" action="/search" class="order-last sm:order-none flex-grow items-center justify-end hidden sm:block mt-6 sm:mt-0">
<label class="visually-hidden" for="header-searchbox">記事タイトル/概要を検索 ...</label>
<input type="text" id="header-searchbox" name="q" placeholder="記事タイトル/概要を検索 ..." class="w-full sm:max-w-xs bg-gray-200 border border-transparent float-right focus:bg-white focus:border-gray-300 focus:outline-none h-8 p-4 placeholder-gray-500 rounded text-gray-700 text-sm">
</form>
<div id="menu-toggle" class="flex items-center md:hidden text-gray-700 hover:text-teal-600 cursor-pointer sm:ml-6">
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-menu">
<line x1="3" y1="12" x2="21" y2="12"></line>
<line x1="3" y1="6" x2="21" y2="6"></line>
<line x1="3" y1="18" x2="21" y2="18"></line>
</svg>
</div>
</div>
</header>
<main class="mx-7 lg:mx-6 mt-32 flex-grow">
<article class="max-w-5xl mx-auto">
<header class="mb-14">
<h1 class="text-3xl text-center font-bold leading-normal text-gray-900 mt-0 mb-3">『ゲーム電卓パイ』プロジェクト</h1>
<div class="text-center"><i class="fa-regular fa-clock"></i> 2022年6月14日</div>
<div class="mt-3 text-center">
<a href="/tags/オコゲ" class="inline-block bg-gray-200 rounded-full px-3 py-1 text-sm font-medium text-gray-700 m-0.5">#オコゲ</a>
<a href="/tags/デスクトップアプリ版" class="inline-block bg-gray-200 rounded-full px-3 py-1 text-sm font-medium text-gray-700 m-0.5">#デスクトップアプリ版</a>
</div>
<div class="mt-10 -mx-7 md:mx-0">
<img class="w-full max-w-2xl mx-auto" src="/assets/img/ogp_game-dentak.webp" alt="This post thumbnail">
</div>
</header>
<div id="content" class="prose text-gray-800 max-w-none">
<div class="box_stripe"><p>CASIO のレトロガジェット「ゲーム電卓」を、『オコゲ』と LCD キャラクタディスプレイモジュールで作成します。<br>
※ コード開発と記事は同時進行ですので、まったり更新&内容変更有です。</p></div>
<h2>「ゲーム電卓」とは</h2>
<blockquote>
<p>ゲーム電卓ゲームでんたくは、卓上電子計算機にコンピュータゲームの機能を盛り込んだ多機能化商品。1980年代の電子ゲーム流行の際に大手電卓メーカー等から発売された。 <a href="https://ja.wikipedia.org/wiki/%E3%82%B2%E3%83%BC%E3%83%A0%E9%9B%BB%E5%8D%93" target="_new" title="Wikipedia">Wikipedia | ゲーム電卓 <span style="color: gray; font-size: smaller;"><i class="fa-solid fa-arrow-up-right-from-square"></i></span> </a></p>
</blockquote>
<p>ここでは、CASIO から発売された「デジタルインベーダー」SM880 の復刻版である SL-880 を指すこととします。プレイのイメージは、以下のサイトの動画をご覧ください。</p>
<p><a href="https://www.casio.com/jp/basic-calculators/product.SL-880/" target="_new" title="">メーカー製品ページ <span style="color: gray; font-size: smaller;"><i class="fa-solid fa-arrow-up-right-from-square"></i></span> </a><br>
<a href="https://www.casio.com/content/dam/casio/global/support/manuals/calculators/pdf/004-ja/s/SL-880_WA_JA.pdf" target="_new" title="">取扱説明書 <span style="color: gray; font-size: smaller;"><i class="fa-solid fa-arrow-up-right-from-square"></i></span> </a><br>
<a href="https://kakakumag.com/houseware/?id=11983" target="_new" title="">価格.comマガジン <span style="color: gray; font-size: smaller;"><i class="fa-solid fa-arrow-up-right-from-square"></i></span> </a></p>
<div class="balloon_right">
<div class="faceicon_right">
<img src="/assets/img/mimmy.webp">
<p>ミミィ</p>
</div><div class="chatting">
<div class="says_right"><p>
懐かしいヮ・・・<br>
「AIM」キーと「FIRE」キーがユルユルになるまで遊んだものョ・・・ハッ
</p></div>
</div>
</div>
<div class="balloon">
<div class="faceicon">
<img src="/assets/img/tama.webp">
<p>タマちー</p>
</div> <div class="chatting">
<div class="think-l-bal-s"></div>
<div class="think-l-bal-l"></div>
<div class="tamathink">
<p>
ミミィって歳いくつなんだろ・・・
</p>
</div>
</div>
</div>
<h2>準備</h2>
<p>以下の記事に従ってデスクトップアプリ『オコゲ』の導入と設定を行ってください。</p>
<div class="card"><article class="blogcard"><h4 class="blogcard__heading"><a class="blogcard__link" href="/2022-06-13_ocoge-desktop/">『オコゲ』デスクトップ | おこげ俱楽部</a></h4><img loading="lazy" class="blogcard__image" src="/assets/img/ogp_ocoge-desktop.webp"><p class="blogcard__description">Raspberry Pi デスクトップアプリ版『オコゲ』について</p><div class="blogcard__meta"><img loading="lazy" class="blogcard__logo" src="/assets/img/favicon.png"><span class="blogcard__publisher">おこげ俱楽部</span></div></article></div>
<h2>ハードウェア</h2>
<ul>
<li>Raspberry Pi 4B (8GB)</li>
<li><a href="https://akizukidenshi.com/catalog/g/gK-12238/" target="_new" title="">I2C 接続小型 LCD モジュール <span style="color: gray; font-size: smaller;"><i class="fa-solid fa-arrow-up-right-from-square"></i></span> </a></li>
<li><a href="https://akizukidenshi.com/catalog/g/gP-04118/" target="_new" title="">圧電サウンダ <span style="color: gray; font-size: smaller;"><i class="fa-solid fa-arrow-up-right-from-square"></i></span> </a></li>
<li><a href="https://www.google.com/search?q=b3f-1000&oq=b3f-1000&aqs=edge..69i57j0i512l2j0i30l2j0i5i30.6451j0j9&sourceid=chrome&ie=UTF-8" target="_new" title="">タクトスイッチ <span style="color: gray; font-size: smaller;"><i class="fa-solid fa-arrow-up-right-from-square"></i></span> </a></li>
</ul>
<p>記事中では、これらの部品をブレッドボードとワイヤ類で接続して使用します。</p>
<h2>回路構成</h2>
<figure style="max-width: 300px; margin: 0 auto;"><div class="floatbox"
data-fb-options="colorTheme:silver" style="width: 100%;">
<a href="/assets/img/game-dentak_fritzing.webp" title="ゲーム電卓パイ"><img loading="lazy" src="/assets/img/game-dentak_fritzing.webp" style="width: 100%;"></a></div>
<figcaption>
<i class="fa-solid fa-magnifying-glass"></i> クリックで拡大
</figcaption>
</figure>
<p>以下は配線の一例です。</p>
<table>
<thead>
<tr>
<th>LCD キャラクタディスプレイ</th>
<th>Raspberry Pi GPIO (BCM)</th>
</tr>
</thead>
<tbody>
<tr>
<td>A</td>
<td>3V3バックライト不要の場合は接続不要</td>
</tr>
<tr>
<td>VDD</td>
<td>3V3</td>
</tr>
<tr>
<td>RESET</td>
<td>3V3 または 10kΩ でプルアップ</td>
</tr>
<tr>
<td>GND</td>
<td>GND</td>
</tr>
<tr>
<td>SDA</td>
<td>22<sup>*</sup></td>
</tr>
<tr>
<td>SCL</td>
<td>23<sup>*</sup></td>
</tr>
<tr>
<td>K</td>
<td>GNDバックライト不要の場合は接続不要</td>
</tr>
</tbody>
</table>
<p>* I2C バスGPIO2-3を使用する場合、キャラクタディスプレイには<a href="https://akizukidenshi.com/catalog/g/gK-11354/" target="_new" title="">こちら <span style="color: gray; font-size: smaller;"><i class="fa-solid fa-arrow-up-right-from-square"></i></span> </a>を使用</p>
<table>
<thead>
<tr>
<th>圧電サウンダ</th>
<th>Raspberry Pi GPIO (BCM)</th>
</tr>
</thead>
<tbody>
<tr>
<td>片方</td>
<td>20</td>
</tr>
<tr>
<td>もう片方</td>
<td>GND</td>
</tr>
</tbody>
</table>
<table>
<thead>
<tr>
<th>タクトスイッチ</th>
<th>Raspberry Pi GPIO (BCM)</th>
</tr>
</thead>
<tbody>
<tr>
<td></td>
<td>26</td>
</tr>
<tr>
<td></td>
<td>19</td>
</tr>
<tr>
<td>左右 GND</td>
<td>GND</td>
</tr>
</tbody>
</table>
<div class="balloon">
<div class="faceicon">
<img src="/assets/img/tama.webp">
<p></p>
</div><div class="chatting">
<div class="says">
次回に続く・・・
</div>
</div>
</div>
<div class="balloon_right">
<div class="faceicon_right">
<img src="/assets/img/mimmy.webp">
<p></p>
</div><div class="chatting">
<div class="says_right"><p>
キャラクタディスプレイに文字を表示してみるわ!
</p></div>
</div>
</div>
<div class="card"><article class="blogcard"><h4 class="blogcard__heading"><a class="blogcard__link" href="/2022-06-21_aqm0802a/">AQM0802A に文字を表示してみる | おこげ俱楽部</a></h4><img loading="lazy" class="blogcard__image" src="/assets/img/ogp_aqm0802a.webp"><p class="blogcard__description">『ゲーム電卓パイ』プロジェクトそのLCD キャラクタディスプレイモジュール AQM0802A を試してみる</p><div class="blogcard__meta"><img loading="lazy" class="blogcard__logo" src="/assets/img/favicon.png"><span class="blogcard__publisher">おこげ俱楽部</span></div></article></div>
</div>
<div class="mt-10">
<div class="italic text-gray-700">Disqus comments only available for production</div>
</div>
</article>
</main>
<footer class="mt-20 px-10 py-8 bg-gray-200">
<div id="footer-badge"><a href="https://git.ocoge.club/" target=_new><img loading="lazy" src="/assets/img/git-ocogeclub.svg" class="footer-img"></a><a href="http://creativecommons.org/licenses/by-sa/4.0/deed.ja" target=_new><img loading="lazy" src="/assets/img/License_BY-SA_4.0.svg" class="footer-img"></a></div>
<div class="max-w-5xl mx-auto text-gray-700 text-center">
© 2023 <a href="/" class="font-medium" target="_blank" rel="noopener">おこげ俱楽部</a>.
Made by <a href="https://ocoge.club" target="_blank" rel="noopener">ocogeclub</a>
using <a href="https://www.11ty.dev" target="_blank" rel="noopener">Eleventy</a> and <a href="https://github.com/dafiulh/vredeburg" target="_blank" rel="noopener">Vredeburg</a>.<br>
</div>
</footer>
<script src="/assets/js/bundle.js"></script>
</body>
<script>
window.addEventListener('load', (event) => {
document.getElementsByTagName('html')[0].style.display='block';
});
</script>
</html>