人気ブログランキング | 話題のタグを見る

おもしろいもの、いろいろ
by f_s_x
カテゴリ
全体
写真
カメラ・レンズ
赤外写真
デジタル画像
コンピューター
電気・電子



天文
ダム
橋・水門・円筒分水

狛犬・稲荷・盃状穴
動植物
廃キング
レトロ探訪
その他
未分類
リンク
お気に入りブログ
風景のある生活
USS.SHONAN
flarist
日々是平凡(or あれも...
真四角の窓から見た世界
カルイオモイ ~phot...
coolys creek...
バシャコン!アルバム
M k Cool Pic...
日々思うこと~幸せの部品
空っぽの時間
光と共に… Это мо...
ブリキの箱
In The Soup
まぁいいか、とものぐさの日々
Paper crip
おじさんの出来心
ふろどうらく
All those......
まぁいいか、とものぐさの...
明暮日の茶ばしら
もやっと&ノラ
視神経的写真術
14番目の月
最新のコメント
マイクロチップ化......
by こみやま at 14:10
スプロケット(フィルムの..
by f_s_x at 09:54
詳しくありがとうございま..
by こみやま at 09:03
遅くなりました。 当時の..
by f_s_x at 22:17
こんにちは。 すごく前の..
by こみやま at 09:30
こちらこそ、よろしくお願..
by f_s_x at 18:36
サンピラー!! 本年も..
by afuroyan at 10:19
どうもです~。 天気に恵..
by f_s_x at 20:33
良いですねぇ ウチは少..
by afuroyan at 22:37
ブドウの様な味でした!
by f_s_x at 09:34
最新のトラックバック
以前の記事
2025年 12月
2025年 11月
2025年 10月
2025年 09月
2025年 08月
2025年 07月
2025年 06月
2025年 05月
2025年 04月
2025年 03月
more...
ライフログ
検索
ファン
記事ランキング
ブログジャンル
画像一覧


AT90S22313,AT90S2323をサクッと開発する

 この所、マイコンもかなり値上げされているが、その中でも忘れ去られようとしているAVRがAT90S22313とAT90S2323があり、秋月で100円で手に入る。ただ、古いチップだけあって使い難いところはある。

 AT90S2313はATTiny2313とほぼ同じで、違いはAT90S2313は内蔵発振器が無いので外部発振子が必須ということ。でも正確な周波数が必要な周波数カウンター等の用途には外部の水晶発振子が必要だし、I/Oピンも豊富で7セグメントLEDの駆動にも適している。

 そこで部品も少なく簡単な周波数カウンターを作ってみた。
プログラムの開発には、AtmelStudio7でも対応してないのでavr-gccを使う。

 Linux(Ubuntu)での環境構築は次の通り(WindowsのWSL2でも可能)

sudo apt update
sudo apt install binutils gcc-avr avr-libc avrdude

 プログラムのビルド方法は、
avr-gcc -Os -Wall -mmcu=at90s2313 test.c -o test.elf
avr-objcopy -I elf32-avr -O ihex test.elf test.hex
でインテルHEXファイルが作成される。
シェルスクリプトにしておけば便利。

 回路の方は、0~7まで連続したPORTBを電流制限抵抗を介して7セグLEDの各セグメントの出力に使い、PORTDの方を7セグLEDコモン側の桁ドライブに使用する。
ただ、外部クロック入力ピンがPD5になっているので、PD5を避けるようにしなければならない。

 電流制限抵抗の値を適切に選んで4mA程度に抑えれば、電流増幅用にトランジスタ等を使わなくても済ませられる。

 クロックは最大10MHzなので、ここでは8.192MHzの水晶発振子を使い分周を簡単にしている。
タイマー0でシステムクロックを分周して1秒を作る。これを基準としてタイマー1を1秒間有効にして計測する。

 タイマー1を外部クロック入力にして、カウンターとして使う。
オーバーフローしたらそれもカウントしておき、合算して16ビット以上カウントできるようにする。

 あとは測定値を桁ごとに分解して7セグ用に出力する処理等をメインループに入れて完成。(必要に応じてゼロサプレス処理等も)
チップへのプログラムの書き込みは、MiniProが対応しているのでそれを使うと簡単。
AT90S22313,AT90S2323をサクッと開発する_c0026142_12234378.jpg



 一方AT90S2323の方は8ピンなのに外部クロックが必須で、電源とリセットを除くとI/Oとして使えるピンは3つしかない。
 必然的にシリアルインターフェースの用途に向いているので、TM1637(互換)が使われているaitendoで特売の7セグLEDモジュールを繋いでみる。

 メモリーも1Kワードと少ないので、ライブラリを使わず最低限のプログラムでTM1637を駆動する。

 コンパイルは、上記の-mmcuパラメータをat90s2323にするだけ。

 書き込みにはMiniProが対応していないので、USBAspとavrdudeを使うことにする。
ただ問題があり、avrdudeの設定ファイルを修正する必要がある。
avrdude.confをテキストエディタで開き、「AT90s2323」の記述を見つける。
id = "2343";
desc = "AT90S2343";

id = "2323";
desc = "AT90S2323";
に書き換えて保存する。

 ブレッドボードでセラロックを付けてUSBAspと繋ぐ。

 書き込みはWindowsの場合、
avrdude.exe -C avrdude.conf -v -p 2323 -c usbasp -P usb -B 1kHz -F -U flash:w:"test.hex":i
で書き込む事ができた。
AT90S22313,AT90S2323をサクッと開発する_c0026142_12234054.jpg

 ちなみにこの7セグモジュールは、2桁目のビット8がコロンに割り当てられているので、時計のような用途に使える。
 I/Oピンもまだ1つ残っているので、スイッチを付けて長押しを併用すれば時刻合わせとかも可能。


.
# by f_s_x | 2025-12-13 12:00 | コンピューター | Comments(0)

赤城北麓円筒分水

赤城北麓第1円筒分水
赤城北麓円筒分水_c0026142_16434464.jpg


赤城北麓第2円筒分水
赤城北麓円筒分水_c0026142_16434610.jpg


赤城北麓第3円筒分水
赤城北麓円筒分水_c0026142_16434882.jpg


赤城北麓第4円筒分水
赤城北麓円筒分水_c0026142_16434983.jpg




.
# by f_s_x | 2025-11-09 16:44 | 橋・水門・円筒分水 | Comments(0)

レモン彗星

レモン彗星_c0026142_22005635.jpg

18枚コンポジット合成



.
# by f_s_x | 2025-11-01 18:20 | 天文 | Comments(0)

ジャンプ台?!

ジャンプ台?!_c0026142_09144325.jpg

ジャンプ台?!_c0026142_09144390.jpg

茨城県猿島郡境町



.
# by f_s_x | 2025-10-05 09:15 | 写真 | Comments(0)

PICを外部RCオシレータで動かす

 PICは水晶発振子等の外部クロック源を使用できるが、抵抗とコンデンサだけのRC回路でも使用できるという。
データシートにも載っているが、実際に動かしている例はほとんど見当たらない。

 ここを参照し、PIC12F675を使って実際に試してみる。
GP5(CLKIN)に10kΩの抵抗を介してVDDへ、更に22pFのコンデンサを介してVSSに繋ぐ。

 プログラムは以下の通り

#pragma config FOSC = EXTRCCLK
#pragma config WDTE = OFF
#pragma config PWRTE = OFF
#pragma config MCLRE = OFF
#pragma config BOREN = OFF
#pragma config CP = OFF
#pragma config CPD = OFF
#include <xc.h>
void main(void) {
 ANSEL = 0x00000000;
 CMCON = 0x00000111;
 TRISIO = 0b00101111;
 while(1) {
  NOP();
 }
}

 FOSCをEXTRCCLKに設定しているのがポイント。
動作しているのか分からないので、GP4をCLKOUTとしてクロックを出力させている。(CLKOUTにはクロックの1/4の周波数が出力される)

 動かしてみると、電源5Vでは約2.2MHz, 3.3Vでは1.7MHzがCLKOUTに出力された。
参照先にもある通り、抵抗やコンデンサの精度、電源電圧、気温等にも左右されるため正確な値ではない。

 クロック精度も低いしクロック入力に1ピン使うし、使い道としては内蔵クロックに無い低い周波数で低消費電力を実現できる事くらいか。



.
# by f_s_x | 2025-09-13 09:00 | コンピューター | Comments(0)