Page 758 - 3-2
P. 758

begin
                if(!reset) cnt<=0;
                else begin
                    if(state==move)
                        cnt<=(cnt+1)%6;
                end
            end
            always @(posedge clk, negedge reset)
            begin
                if(!reset) state<=move;
                else
                    begin
                        case(state)
                        move: if(sensor==0&&cnt==in) state<=stop; // 센서가 감지되면 멈춤
                                 else state<=move;
                        stop: if(sw[in]==0) state<=sw_detect; // 스위치가 떼어지면 sw detect
                                 else state<=stop;
                        sw_detect: if(sensor==1) state<=move; //  스위치가 떼어진상태로 센서가 감지되어도(0)
            움직임 감지 안되면,       (1) move  상태로 이동
                                        else state<=sw_detect;
                        endcase
                    end
            end


            always @(state)
            begin
                case(state)
                move: motor=1;
                stop: motor=0;
                sw_detect: motor=1;
                endcase
            end
            endmodule
            문제점 –    스위치에 풀다운 저항을 설정하지 않아 스위치 입력으로 모터 제어가 되지 않았음 센서가 감,
            지 될 때마다 cnt     가 증가해야하지만 증가되지 않음


            17.  터치스크린 코드
            < MainFrame.java >


            package com.example.user.appclient;


            import java.awt.Dimension;
            import java.awt.FlowLayout;
            import java.awt.Font;
            import java.awt.GridLayout;


                                                         - 758 -
   753   754   755   756   757   758   759   760   761   762   763