2010/10/09
■ [ele]シリアル-パラレル変換回路を作ってみた(3)
ニコニコ動画に シリアルポートでLEDチカチカしてみた2 全力でチカチカしてみた編 をアップしました。
PCからの38,400bpsのシリアルデータを受信するわけですが、更にボーレートを上げようと手持ちのクリスタルで使えそうな奴を選定。
とりあえず、12MHzに決定(ボーレートは ÷13÷16 の 57,600bps)。 ほんとは24MHz があれば 115,200bpsにできたのになぁ、、、
PC(OSは Ubuntu 10.04) の方も、ボーレートがどの位まで設定できるか調べる。 使ったコマンドでは selserial、 stty ほとんどは sttyだけで設定できるみたい。 stty -F /dev/ttyS0 57600 とか。
ちなみにオシロつないで波形見ながら確認すると、GIGABYTE MA78GM-DS2HPマザーでは 115,200bpsが最高らしい。
関連エントリ:
2010/10/07
■ [ele]シリアル-パラレル変換回路を作ってみた(2)
【ニコニコ動画】シリアルポート(USB)でLEDチカチカしてみた 現在再生回数 490、コメント30、思ったより反応あるんですねぇ、コメントありがとうございます!
ちょっと改良。
- LEDの制限抵抗に1KΩは暗いのて330Ωに変更
- ボーレイトジェネレータ部の ÷4している回路(74HC74)を省略し 38,400bpsに変更
- 74HC04の余っていたインバーターでレベルシフターを構成し、USBシリアル変換モジュールを省略
参考 ChanNさんのページ、RS-232C - TTLレベルの簡易変換方法
関連エントリ:
2010/10/06
■ [ele]シリアル-パラレル変換回路を作ってみた(1)
タンスの肥やしになっていたブレッドボードとC-MOSロジックIC(74HC)で、シリアル-パラレル変換回路を作ってみました。
動画を投稿しました
PCのシリアルポートから9600bpsのデータを受信して8bitのパラレルデータに変換します、受信データは次の受信データが来るまで保持され8個のLEDが光ります。
ブロック図はこんな感じ
回路図はこちらで siripara1.jpeg、部品は8MHz水晶、47HC04、74HC08、74HC164、74HC574が各1個、74HC74、74HC161が各3個、1MΩ、100Ωの抵抗が各1個、回路図に入ってませんがLEDと1KΩの抵抗が8個、0.1μFのパスコンが10個、RS232CドライバIC代わりに秋月のUSBシリアル変換モジュール。
8MHzの水晶発振から÷13÷4で9600bps×16のクロックを作り、スタートビット検出(手抜きしてだたの立ち下がり検出で代用)でシフトレジスタに9個のタイミングパルスを送って最後にラッチし、その後タイミングパルス発生用のカウンタ等をリセットします。
回路のテストは ubuntu Linuxで mimicomというターミナルソフトでシリアルデータを送りました、デバイス名は /dev/ttyUSB0で設定ファイルは /etc/minicom.dflです、また/dev/ttyUSB0のパーミッションを変えて root以外でも使用できるようにします。
関連エントリ: