Ignore:
Timestamp:
Jun 24, 2011, 2:15:51 PM (8 years ago)
Author:
neise
Message:
this is v0206   ---   v0205 had a bug:  
when sending 'enable busy' this was not even parsed in firmware. 
now enable/disable busy is being parsed.
NEW BASE PORT = 31919    (this ist 0x7CAF :-) 
File:
1 edited

Legend:

Unmodified
Added
Removed
  • firmware/FAD/FACT_FAD_20MHz_VAR_PS/FACT_FAD_lib/hdl/w5300_modul.vhd

    r11155 r11173  
    108108type state_init_type is (
    109109        INTERRUPT, RESET, WRITE_REG, READ_REG, WRITE_DATA,
    110         INIT, LOCATE, IM, MT, STX, STX1, STX2, STX3, SRX, SRX1, SRX2, SRX3, MAC, MAC1, MAC2, GW, GW1, SNM, SNM1, IP, IP1, TIMEOUT, RETRY,
     110        INIT, LOCATE, IM, MT, STX, STX1, STX2, STX3, SRX, SRX1, SRX2, SRX3, MAC, MAC1, MAC2, GW, GW1, SNM, SNM1, IP, IP1,
     111        TIMEOUT,
     112        --RETRY,
    111113        SI, SI1, SI1b, SI2, SI3, SI4, SI5, SI6, ESTABLISH, EST1,
    112114       
     
    290292signal wait_for_sockets_closed_counter_enable : std_logic := '0';
    291293signal wfscc_1 : integer range 0 to 50000 := 0;
    292 signal wfscc_2 : integer range 0 to 2000 := 0;
     294signal wfscc_2 : integer range 0 to 20000 := 0;
    293295
    294296
     
    714716                                                par_data (7 downto 0) <= conv_std_logic_vector(ip_loc(3),8);
    715717                                                state_init <= WRITE_REG;
     718                                                --next_state <= SI;
     719                                                next_state <= TIMEOUT;
     720                                        when TIMEOUT =>
     721                                                par_addr <=     W5300_RTR;
     722                                                --par_data <= X"07D0"; -- 0x07D0 = 200ms
     723                                                par_data <= X"07D0"; -- unit is 100us, so 0x000A = 10 stnads for 1ms.
     724                                                state_init <= WRITE_REG;
    716725                                                next_state <= SI;
    717 --                                      when TIMEOUT =>
    718 --            par_addr <=       W5300_RTR;
    719 --            par_data <= X"07D0"; -- 0x07D0 = 200ms
    720 --            state_init <= WRITE_REG;
    721 --            next_state <= RETRY;
    722726--          when RETRY =>
    723727--            par_addr <=       W5300_RCR;
     
    741745                                                next_state <= SI1b;
    742746                                        when SI1b =>
    743                                                 par_addr <= W5300_S0_PORTOR + socket_cnt * W5300_S_INC;
    744                                                 par_data <= X"0606"; -- send automatic KEEP ALIVE every 30s.
     747                                                par_addr <= W5300_S0_KPALVTR + socket_cnt * W5300_S_INC;
     748                                                par_data <= X"0200";                    -- send automatic KEEP ALIVE every 10s.
    745749                                                state_init <= WRITE_REG;
    746750                                                next_state <= SI2;                                             
     
    10231027                                                                denable <= '0';
    10241028                                                                state_read_data <= RD_5;
     1029                                                               
     1030                                                        when CMD_BUSY_ON =>
     1031                                                                busy_enable <= '1';
     1032                                                                state_read_data <= RD_5;
     1033                                                        when CMD_BUSY_OFF =>
     1034                                                                busy_enable <= '0';
     1035                                                                state_read_data <= RD_5;
     1036
     1037                                                               
    10251038                                                        when CMD_TRIGGER_C =>
    10261039                                                                c_trigger_enable <= '1';
     
    15311544                                wait_for_sockets_closed_counter_overflow <= '0';
    15321545                                if (wfscc_1 = 50000) then
    1533                                         if (wfscc_2 = 2000) then
     1546                                        if (wfscc_2 = 20000) then
    15341547                                                wait_for_sockets_closed_counter_overflow <= '1';
    1535                                                 wfscc_2 <= 2000;
     1548                                                wfscc_2 <= 20000;
    15361549                                                wfscc_1 <= 50000;
    15371550                                        else
Note: See TracChangeset for help on using the changeset viewer.