fc2ブログ

迷走の果て・Tiny Objects

迷走する日々の覚え書きです。自分で分かってることは省略してますので、念のため。

74LS624と8pinPSoCで正弦波オシレータもどき

だいぶ以前に「はじめてのPSoCマイコン」のテストオシレータを8pinPSoC CY8C27143-24PXIに移植した記事を書いた
今回のはその続きみたいなもんである。
74LS624という古いVCOが出てきたので使ってみた。
シュミットトリガインバータ74HC14を使った発振回路でもいいのだが、せっかく出てきたICの顔を立ててやりたかったのだ^^;;
sinewaveoscLS624.png

LS624_PSoC.jpg


8pinPSoC側にも手を加えた。三角波出力は止めて、分周比設定スイッチを設けた。
これにより50KHz~2Hzまでの出力が得られる。
sinewaveoscpsoc.png

問題は出力が階段状だってこと、スイッチドキャパシタ使ってるのだから無理ないのだけど。
Psoc2KHz.jpg


ナイトフラッシャー改・ユニバーサル基板に作り直し

ユニバーサル基板に作り直しました。

ナイトフラッシャー改:LEDを8個付ける

PSoCナイトフラッシャーもどき8
CY8C27443を使って、LED8個のナイトフラッシャーに挑戦してみました。
回路図は単純です。PSoCのPWMモジュールを使ったのでソフトも何とか出来ました。
8bitのPWMモジュールを8個並べLEDの明るさを制御します。



CY3210-PSoCEVBAL1を使いました、LEDが4個しか付いてないのでブレッドボード上に4個追加しました。
動作が解りづらいのですが、それなりに残光感が出せたと思います。

ナイトフラッシャー改

ナイトフラッシャーの解説(Wiki)より引用します。

8個以上(基本は8個)の電球が左右に往復を繰り返すように順次点灯、消灯を繰り返し、若干の残光を残しながら光りつづけるというものである。



PSoCのPWMモジュールを使って各LEDの明るさを制御し、「若干の残光を残しながら光りつづける」ようにしてみました。
相変わらずLEDは5個しか付いてないんですが(汗


28ピンのCY827443を使えばLED8個点灯も可能です。

PSoCでナイトフラッシャーもどき

(ナイトライダー改め)ナイトフラッシャーの周期を変えられる様にしてみました。
PSoCナイトフラッシャーもどき

ポート設定ですがP0[5]はOpen Drain Lowにしてあります。他はStrongでもOpen Drain LowでもOKです。
LEDのビットパターンはあらかじめ配列に入れておきます。
CPUはスリープさせています。スリープをさせなくても動作させられますが、電池動作を考えているのでなるだけ消費電流が少なくなるようにしています。
コンデンサを抵抗で充電し電圧が0.5Vddに達したら割り込みをかけてスリープを解除します。

PSoCナイトフラッシャーもどき2

CmpLPでスリープ中に割り込みをかける方法がなかなかわからず苦労しました。実のところ今でもこれでいいのか疑問なんですが^^;とりあえず動いてます。
CmpLPのデータシートに次のような注意書きがあります。
Note
To achieve LPCMP interrupt generation during sleep, the comparator bus signal must be set to unlatched using the CLDIS bits in the CMP_CR1 register.
一応書いてあるとおりにしたつもりです(汗

スリープから復帰したら次のビットパターンを表示し、コンデンサを放電させてスリープします。

プログラムの一部を記しておきます。

M8C_EnableGInt;
M8C_EnableIntMask(INT_MSK0,INT_MSK0_ACOLUMN_0);
CmpLP_1_Start();
CmpLP_1_EnableInt();
CmpLP_2_Start();
CMP_CR1 = CMP_CR1 | 0x10 ; // スリープ中にCmpLP_1からの割り込みを可能にする

繰り返しますが、これで正しいのかどうかわかりません。



手持ちのLEDを使ったので不揃いです。8pinPSoCを使ったのでLEDは5個しか付けられません。
ピン数の多いPSoCを使うか、74HC595等のシフトレジスタを使うと増やせます。
ポートが余ればスイッチを付けてビットパターンを変えることも出来るでしょう。
真ん中のICみたいなのは330Ωの集積抵抗です。
半固定抵抗を動かすと点滅周期が変わります。

続きを読む »

PSoCでナイトライダーもどき

PSoCナイトライダーもどき
最近PSoCにさわってないので急遽実験してみました。
ナイトライダーもどきです。
プログラムは簡単なので10分程度で出来ました。

http://www.youtube.com/watch?v=ZOrwZvyoU3o" target="_blank" title="YouTube動画">YouTube動画

手持ちの部品を使ったのでLEDが不揃いです。
あと、点灯パターンは変えた方がいいかも。
周期ももうちょっと速いほうがいかな?

AD584JHを使った基準電源の実験

手持ちのAD584JHを使って基準電圧源を試作しました。
実は前から何度も設計はするものの、あれやこれやと機能を満載しようとしてしまい、結局作らずにいました。
今回、10Vと1Vを出すだけにとどめました。
10VはAD584の出力を出すだけですが、1Vは抵抗分割の上、OP-07のバッファを入れました。
分割抵抗の比は9:1でなければなりません。
たとえば27KΩと3KΩ、いくつか買い込んでデジタルテスタで測定し、9:1のペアを見つける事も考えました。
でも27KΩはデジタルテスタの200KΩレンジ、3KΩは20KΩレンジで測定することになります。違うレンジで測って精度が出るのかわかりません。
AD584を使った基準電圧源
そこで上の回路のように同じ抵抗を三個ずつ直列と並列に接続し9:1の比を得ることにしました。
同じレンジでほとんど同じ抵抗値を測るのだから少なくとも相対精度はいいでしょう。
8本の抵抗を測ってその中から9:1になる組み合わせを決めました。

基準電圧源2

秋月電子の電圧計キットでLOBATを表示できるようにする。

秋月電子の電圧計キットをいくつか購入して電圧計や電流計として使っていますが、
電池の電圧が7V以下で表示が狂うことがわかりました。

キットを使った自作電圧計で手元にあった古い単三電池を測ってみた結果です。

電源電圧 表示
8.5V  1.22
7.0V  1.22
6.5V  1.29
6.0V  1.38
5.5V  1.49
5.0V  1.61

このぐらいまで電源電圧が低下しても表示が薄くなったりしないので気付きません。
そこで電池の電圧が低下したときに警告する機能を追加してみました。
キットの液晶パネルSP-521はLO BAT表示ができるので、電圧低下を検出してLOBATを表示させます。
オペアンプにはICL7611を使いました、設定によって消費電流を10μAまで抑えられます。
DPも表示できるようにしておきます、この部分はICL7136のデータシートにある通りの回路です。


ICL8136_lobat1.jpg
R3~R5には手持ちにあった680KΩの集積抵抗を使いました、8素子入りのうち三つしか使わないのでもったいないのですが、「今使わねばいつ使うのだ」というわけです^^;。
R1も手持ちに適当なのがなかったので470K+220K+100K半固定としてあります。
とりあえず動作確認ですから「これでいいのだ」
いずれ修正します。

ICL8136_lobat_cut.jpg
LOBATを表示させるには一カ所パターンカットが必要です。

 | HOME | 

文字サイズの変更

プロフィール

edy

最新記事一覧(サムネイル画像付き)

ブッダマシーン基板(1) 2024/03/06
退職前の一泊旅行 2023/10/29
弛張発振回路 2023/05/26
デジットで買ったインダクタの再測定 2023/05/23
PSoC1(CY8C24223)を使ったスポットオシレータに3次LPFをつなぐ。(2) 2023/05/22
PSoC1(CY8C24223)を使ったスポットオシレータに3次LPFをつなぐ。(1) 2023/05/15
Raspberry Pi Pico オシロスコープ 2023/03/13
ダイソーTapeLight 2023/01/30
シリコンハウス共立 フィラメントLED 2023/01/09
DIME 2023年 2・3月合併号 付録のLEDアクリルメモボードを改造してみる。 2022/12/27

全記事表示リンク

全ての記事を表示する

リンク

このブログをリンクに追加する

月別アーカイブ

03  10  05  03  01  12  11  10  09  08  05  04  03  12  10  07  12  11  10  09  07  05  04  02  01  12  11  10  09  08  07  06  05  04  03  02  01  12  11  10  09  08  07  06  05  04  03  02  01  12  11  10  09  08  07  06  05  04  03  02  01  12  11  10  09  08  07  06  05  04  03  02  01  12  11  10  09  08  07  06  05  04  03  02  01  12  11  10  09  08  07  06  05  04  03  02  12  11  10  09  07  05  04  03  04  03  01  12  11  10  08  07  06  05  03  02  01  12  11  10  09  08  07  06  05  04  03  02  01  12  11  10  09  08  07  06  05  04  02  01  12  10  09  08  07  06  05  04  03  02  01  12  11  10  09  08  07  06  05  03  02  01  12  11  10  09  08  07  06  05  04  03  02  01  12  10  09  08  07  06  05  04  03 

カテゴリ

プログラミング (0)
freescale (1)
AVR (3)
テルミン (16)
緊急警報放送 (3)
78K (1)
PSoC (297)
地上デジタル放送 (2)
電子工作 (532)
HX711 (2)
ACS712 (6)
DDS (3)
数学 (6)
パソコン (16)
PLC (14)
未分類 (45)
ブログ関係 (16)
スカイプ (36)
ロボット (1)
LTSpice (8)
OCXO (0)
arduino (40)
maxima (1)
フランクリン発振回路 (3)
GPS (3)
DTMF (1)
Linux (1)
KOMAINO (7)
Android (1)
obniz (7)
M5Stack (15)
M5StickC (0)
Analog Discovery (1)
レジン (8)
Wio Terminal (1)
Raspberry Pi Pico (5)

タグリスト

最近のコメント

最近のトラックバック

メールフォーム

名前:
メール:
件名:
本文:

検索フォーム

アクセス

RSSリンクの表示

ブログリンク

Template by たけやん