タグ

ブックマーク / qiita.com/syousei@github (3)

  • ArduinoをHTTPサーバーっぽくしてブラウザの相手をさせる - Qiita

    こんにちは。 FPGAボードとパソコンを通信させるにあたって、間にArduinoを挟むことにしました。 Arduinoにイーサネットのシールドを装着してPCとArduinoを接続。 ArduinoとFPGAボードはシリアル通信、という目論見です。 Arduinoの役割は、HTTPサーバっぽく振る舞ってブラウザの相手をすることです。 ブラウザから送信されてくるHTTPリクエストからFPGAに送信するデータを抜き出すわけです。 というわけで、以下のようなスケッチを作成してみました。 #include <Arduino.h> #include <WString.h> #include <SPI.h> #include <Ethernet.h> #define LINE_BUF_SIZE (512) byte mac_addr[] = {0x90, 0xA2, 0xDA, 0x00, 0x54,

    ArduinoをHTTPサーバーっぽくしてブラウザの相手をさせる - Qiita
  • DE0-Nanoで100MHzのクロック - Qiita

    こんにちは。 使っているDE0-Nanoのクロックが50MHzであるため、出せるパルスの幅は20ナノ秒が下限と思っていたが違いました。 FPGAに搭載のPLL(Phase Locked Loop 位相同期回路)というものを利用すれば、入力周波数をn倍できるのだそうです。 いったいどんな魔法なのか理屈がさっぱりわかりませんが、とりあえず今日はこれを利用して2倍の100MHzのクロックをつくってみました。 まずQuartus Prime Lite Edition(自分のバージョンは16.0)の「Tools」→「IP Catalog」を選択します。 画面の右端にIP Catalogの検索ボックスが表示されるので、「PLL」と入力します。 すると「ALTPLL」という項目が現れるのでダブルクリック。 「Save IP Variation」というダイアログが表示されます。 「IP variation

    DE0-Nanoで100MHzのクロック - Qiita
    manabou
    manabou 2017/02/16
  • DE0-Nanoでダブルパルス - Qiita

    DE0-Nanoでダブルパルスを出すVerilog HDLのリスト。 初学者ゆえ、よくわかっていないで書いている部分が多々あります。 「こういう書き方のほうがよい」等のアドバイスをいただけると助かります。 module double_pulse(CLOCK, GPIO); input CLOCK; // 50MHz. 1clock = 20nsec. output [33:0] GPIO; parameter [17:0] pulse_cycle = 199999; // 200000*20nsec = 4000usec parameter [17:0] pulse1_start = 0; parameter [17:0] pulse1_width = 200; // 200*20nsec = 4usec parameter [17:0] pulse_interval = 25000; /

    DE0-Nanoでダブルパルス - Qiita
  • 1