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="">0>
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. */
}
댓글 없음:
댓글 쓰기