senda

PSoC FirstTouch

という名のSecond Touch(謎)

コメント


一覧

08-06-04

書き込み器からの"更なる"独立

先日の野望を実装。

080604_1602~0001.jpg

rev 2.1

使ったもの(追加)

  • 赤色LED(φ3)
  • 抵抗(1kΩ)
  • ピンヘッダ(1x5pin L字型)

進化した点

  • 電源ランプが追加された
  • miniProgでの書き込み・駆動が可能になった
rev210.png

配線

そろそろ裏面がごちゃごちゃしてきたぞ…

08-06-02

PCとの遭遇

まずは、UART用のヘッダピンを立てる。

  1. GND
  2. VDD
  3. RX(PSoCからみて受信)
  4. TX(〃送信)

UART_1を設置。
UARTの設定は、面倒だったので自主課題のときのメモをそのまま使う。

VC1=6で(24MHz/6=)4MHz
VC3 SourceをVC1、VC3 Divider=52で(4MHz/52=)76,923Hz≒76,800Hz(9600Hz×8)
UART_1のClockをVC3。

通信に使うピンは、とりあえずGPIOの4本が簡単に使えそうなので、次のように接続した。

RX Input - GlobalInEven2 - P0.3(GPIO3)
TX Output - GlobalOutEven3 - P0.2(GPIO2)

ドライバ入れて、あくのりっち入れて、接続。
まずはオウム返し。

void main()
{
	BYTE d;
	UART_1_Start(UART_PARITY_NONE);
	while(1)
	{
		d = UART_1_cGetChar();
		UART_1_PutChar(d);
	}
}

あくのりっちで送ってやったデータをそのまま返す。
最初は反応なかったけど、つなぎ直してやると動いた。(原因不明…
問題なく動作することを確認。

つづいて、PWM8を設置。
Periodを255、ClockはVC3でいいか…。
CompareOutをRow_0_Output_0からGlobalOutOdd_4、P1.4(LED(G))につないで、

void main()
{
	BYTE d;
	M8C_EnableGInt;
	PWM8_1_Start();
	UART_1_Start(UART_PARITY_NONE);
	while(1)
	{
		d = UART_1_cGetChar();
		// UART_1_PutChar(d);
		PWM8_1_WritePulseWidth(d);
	}
}

これで、PCから送ったデータに基づいて、LEDの明るさを変えられるようになる。
00を送ってやるとLEDがほぼ消え、FFを送ると最大輝度になる。

書き込み器からの"更なる"独立

プログラムを書き換えるためには、FirstTouchの基板をいちいちつなぎなおさないといけない。
せっかくminiProgが手元にあるので、miniProgで書き込めるようにして、書き込み器からの完全独立を図る。

必要なピンは、

  • VDD
  • GND
  • XRES
  • CLK
  • DAT

FirstTouchでは、それぞれ1,3,5,7,9番ピンに対応。
どうやら、miniProgと同じように並んでいるらしい。

キットが簡単にUSB接続できるというFirstTouchの利点を殺している気がするのは、気のせいということで。

08-05-29

書き込み器からの独立

080529_1635~0001.jpg

rev 2.0

使ったもの

  • ユニバーサル基板
  • トグルスイッチ(基板直刺しタイプ)
  • ピンソケット(2x10pin L字型)←秋田先生ありがとうございます。
  • ピンヘッダ(1x4pin L字型;UART用)
  • MeRL標準プラグ
  • パスコン(0.1uF)
  • ビス・ナット

進化したところ

  • UART用のピンが立った
  • 電源スイッチがついた
  • 基板が広くなった(拡張の余地

PCとの遭遇

とりあえず、ピンを立てただけ。残りはまた今度…。

08-05-23

CapSenseで遊ぶ

CSDとPWM8で、デジタルブロック4つを使い果たすのですよね…。

まずはN sensorsで近接センサを試す。
手を近づけるとLEDがホワンホワンすることを確認。

続いてN Sliders。
こ れ は w
いろいろ使えそう。

書き込み器からの独立

自主課題のときのACアダプタ(5V)が手元にあるので、そこから駆動すればいいかなと思って適当に製作。

080523_1658~0001.jpg

FirstTouch拡張基板 rev 1.0

使ったもの

  • ユニバーサル基板(の切れ端
  • MeRL標準プラグ
  • パスコン
  • ピンソケット(L字がよかったのでなぜか6pin
    • VCCとGNDは隣り合っているので、最低2pinでも足りるかな

はんだづけの腕が落ちている…

08-05-20

PSoC入門:PSoC First Touch編 をとりあえずやる(予定)

↑未来日記かよ!

試しになんか作ってみる:LEDと光センサ

家で時間があったので、手元に基板も何もない状態で例題1まで一気にやる。
→USBメモリにぶちこんで研究室でサクっと書き込み。
→動作確認!

…のつもりが、まぁそううまくは行かず。
青LEDはまったく光らず、なぜか赤LEDが煌々と。


1時間くらい格闘しました。
結局、PWM8のPeriodが0になっていたというオチ。
設定したはずなんだけどなぁ…。

Generateしてなかったか、保存してなかったか。

まぁ、何はともあれ無事に動作しました。

例題1

1.はサクっと。

2.は、PWM8をもう1個追加してやればいいが…それじゃ芸がない(というかリソースがもったいない)ので、Row_0_Output_3の出力を…

ということで、こちらも問題なく動作。
#でも携帯電話の白色LEDを思いっきりセンサに近づけても、赤青50:50くらい(体感)にしかならない…。

CapSenseで遊ぶ

予習(?)

iPodの入力にも使われてるタッチセンサらしい。
へぇ〜。

ってかデジタルブロック3つも使うんスかw


添付ファイル: file080604_1602~0001.jpg 880件 [詳細] file080529_1635~0001.jpg 903件 [詳細] filerev210.png 880件 [詳細] file080523_1658~0001.jpg 872件 [詳細]

トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2022-10-02 (日) 11:12:58