Forum Discussion

Altera_Forum's avatar
Altera_Forum
Icon for Honored Contributor rankHonored Contributor
12 years ago

Output signal of IRM-V538N7/TR1 (Infrared module of DE2-115)

Hello,

I have a DE2-115 dev board which has an IR-receiver on board.

I would like to make it work within a VHDL-written system.

But there I encountered a problem. As far as I can see the datasheet

doesn't say anything specific about the output signal. Is there anyone

who can help me on my way by telling me something about the protocol used?

Thanks in advance.

edit: I found the datasheet of the IR transmitter. This tells more about the signal transmitted, and thereby also the output signal of the receiver. As far as I understand it now the receiver demodulates the bits sent by the transmitter, and in this process negates them. So the output of the module is NOT(transmitter output).

2 Replies

  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    Hello

    Can you provide any information regarding the hex codes received for each key of the IR remote? Is there any table available that lists all the receive codes?

    Thanks
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    I can, here you go. This is for the remote supplied with the DE2-115 Board.

    You can also find these values by means of the DE2-115 control panel.

    
    when  std_logic_vector'(x"0F") =>
    	Btn_A <= '1';
    when  std_logic_vector'(x"13") =>
    	Btn_B <= '1';
    when  std_logic_vector'(x"10") =>
    	Btn_C <= '1';
    when  std_logic_vector'(x"12") =>
    	Btn_power <= '1';
    when  std_logic_vector'(x"01") =>
    	Btn_1 <= '1';
    when  std_logic_vector'(x"02") =>
    	Btn_2 <= '1';
    when  std_logic_vector'(x"03") =>
    	Btn_3 <= '1';
    when  std_logic_vector'(x"04") =>
    	Btn_4 <= '1';
    when  std_logic_vector'(x"05") =>
    	Btn_5 <= '1';
    when  std_logic_vector'(x"06") =>
    	Btn_6 <= '1';
    when  std_logic_vector'(x"07") =>
    	Btn_7 <= '1';
    when  std_logic_vector'(x"08") =>
    	Btn_8 <= '1';
    when  std_logic_vector'(x"09") =>
    	Btn_9 <= '1';
    when  std_logic_vector'(x"00") =>
    	Btn_0 <= '1';
    when  std_logic_vector'(x"1A") =>
    	Btn_chnl_up <= '1';
    when  std_logic_vector'(x"1E") =>
    	Btn_chnl_down <= '1';
    when  std_logic_vector'(x"1B") =>
    	Btn_vlm_up <= '1';
    when  std_logic_vector'(x"1F") =>
    	Btn_vlm_down <= '1';
    when  std_logic_vector'(x"0C") =>
    	Btn_mute <= '1';
    when  std_logic_vector'(x"11") =>
    	Btn_menu <= '1';
    when  std_logic_vector'(x"17") =>
    	Btn_return <= '1';
    when  std_logic_vector'(x"16") =>
    	Btn_play <= '1';
    when  std_logic_vector'(x"14") =>
    	Btn_left <= '1';
    when  std_logic_vector'(x"18") =>
    	Btn_right <= '1';
    when others =>
    	--do nothing
    

    And for the people out there who are to lazy to read datasheets, I also give you the custom code of the remote: x"68B6" You'll just have to do the codewriting yourself.