페이지

글목록

2016년 1월 6일 수요일

[PSOC] Psoc4 GPIO INPUT (IN/OUT Test 2/2)

이번에는 입력 테스트를 해 보겠습니다.

1. 먼저 Digital Input Pin [v2.10] 콤포넌트를 선택해서 cysch 파일에 넣습니다.
이름은 적당히 지어 줍니다. 저는 SW_IN_1,SW_IN_2,SW_IN_3 이라고 지었고, 나중에 컴파일하면 자동으로 입력함수인 SW_IN_1_Read() ,SW_IN_2_Read() ,SW_IN_3_Read() 함수가 생깁니다.


2. 입력 핀 설정 중에서 , HW connection 옵션을 제거합니다.
또한 핀 Drive mode 에서 resistive pullup으로 내부 풀업을 걸어 줍니다.


3. cydwr 파일에서 핀을 회로도에 맞게 지정을 해 줍니다.


PSOC4 IC 의 입력핀 회로도와 이에 연결된 SW 회로도 첨부합니다.


5. 이제 컴파일을 하면 자동으로 SW_IN_x_Read() 함수가 생기는데 이것을 사용해서 포트값을 읽으면 됩니다.
코드의 예는 다음과 같습니다.
    for(;;)
    {
        if (f_50ms)
        {
            f_50ms = 0;
            sw_stat_old = sw_stat_new;
            sw_stat_new = (((SW_IN_1_Read()<<0 b="" ead="" x07="">
           
            if (sw_stat_new != sw_stat_old)
            {
                UART_1_UartPutString("switch stat = ");
                ser_tx_buf[0] = htoa(sw_stat_new);
                ser_tx_buf[1] = '\n';
                ser_tx_buf[2] = '\r';
                ser_tx_buf[3] = '\0';
                user_UART_PutString(ser_tx_buf);
            }
        }
        /* Place your application code here. */
    }

댓글 없음:

댓글 쓰기