Projects

I have done many projects over the years. Currently they are posted in my blog. However for you to reach it quickly I have created this page.

  • Coding for fun: Contains some codes I wrote for fun and no profit.
  • VHDL Game using Spartan 3AN: This is a project that I did for one of my courses. We were told to write a game in VHDL using Spartan 3AN. In the group it was my responsibility to write the VGA component of the system. [Click here to view related posts. ] [ Click here to download the related files. ]
  • The Black Box Project : This project is my end of year project.  It is an IP based Home Automation system over all networks. I designed an embedded system (black box if you prefer) which turns any day to day appliance into a internet capable and automated appliance. The good thing about it all settings are automated and you don’t need a static IP to reach to your appliance from over the internet. This project has ended and we published a paper on it. You can find it among the IEEE papers as : “IP Based Home Automation System” – Alkar, A.Z.;   Roach, J.;   Baysal, D.;Consumer Electronics, IEEE Transactions on November    2010 Issue:4 On page(s): 2201 – 2207 ISSN: 0098-3063
Fork me on GitHub

4 thoughts on “Projects

  1. I am new to fpga programming or in any other programing.
    can you help me with how to program Spartan 3an just to show my name in the display. Your help will be really appreciated.
    Thanks.

    • Hi there Zobaer!
      First of all please check http://johnroach.info/2011/01/15/getting-vga-output-using-vga-and-a-spartan-3an-board/
      Now the second thing you should know that you must create modules for your name.
      Each module will actually be a single character.
      For example let us assume first you will need to create the letter “o” in Zobaer;

      The letter “o” is actually a letter with small pixels. So you will need to actually create a drawing like;

      ---
      - -
      - -
      ---

      Where each “-” is actually a pixel.
      Each module will have two inputs. One is spacing… Like where in the screen will the letter o be written on.
      The second is a simple on off switch.
      So let us write John.
      First the “J” module will need to fire up and write;

      --------
      --
      --
      ------ ^
      ||
      Finished in 8 pixels


      Than quickly (by using the 25MHz clock) you will close the “J” module and get
      where the “J” module ended(8 pixels). Than call “o” module with the option of module o_letter(… ,8)
      That way the letter “o” will be create right after the “J”.
      Doing this with the rest of the letters you will eventually get

      -------- -
      -- --- - - --
      -- - - - - - - -
      ------ --- - - - -

      This will happen because J,o,h and n will be shown very quickly. And to human eyes it will look like one word.

      Couple of tips;
      – First start out with something simple like a square.
      – Than continue and empty the inside of the square
      – Realize you have made your first letter “o” :)

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="" highlight="">