페이지

글목록

2015년 12월 12일 토요일

PSOC Library Function 사용하기

1. PSOC Project 를 하나 만들어 놓고, Project 폴더 밑에 라이브러리를 넣어 둘 폴더를 1개 만들어 Library 파일을 넣어 둡니다.



2. 메뉴->project->build setting 을 클릭!



3. build settings 에서 라이브러리 이름,위치,파일을 선택하고 지정합니다.
여기서 이전 포스팅에서 주의하라고 했던 부분이 나옵니다.
lib + Lib name 으로 이름을 만들라고 했던 것은 library 이름을 lib가 포함해서 넣으면 아무리 컴파일해도 library를 찾을 수 없다는 에러 메세지를 보게 됩니다.
다시 한번 주의해 주십시요.
따라서 라이브러리 이름을 만들 때는 Lib를 앞에 꼭 붙이고 build settings 의 library 이름을 적을 때는 앞의 Lib를 떼고 이름을 적어 주시면 됩니다.



4. 다음으로 이 라이브러리 함수가 잘 동작하는 지 알아보기 위해서,
UART 함수를 이용해서 입력에 대한 출력값을 확인해 보겠습니다.
다음은 PSOC4에서 UDB를 75%나 사용하는 UART 함수를 만들어 넣어봤습니다.



5. PSOC4 042-KIT에서 테스트해 보려고 PORT는 P2.4에 Txd 를 연결해 두었습니다.



6. 다음은 실제 연결한 H/W 모습입니다.
PSOC4-042 키트의 P2.4(Txd)를 TTL-to-UART 를 거쳐 UART-to-USB로 PC와 연결했습니다.




7. 다음은 결선도를 좀 자세히 그려 보았습니다.



8. 이 H/W 에 의한 출력 결과인데, 입력에 해당하는 코드는 다음과 같습니다.
#include
#include
unsigned int aplusb(unsigned int a, unsigned int b);

int main()
{
    uint8_t tx_data[50];
   
    CyGlobalIntEnable; /* Enable global interrupts. */
    UART_1_Start();
   
    sprintf(tx_data,"a+b func out = %d\n\r",aplusb(10,17));
    UART_1_PutString(tx_data);
    /* Place your initialization/startup code here (e.g. MyInst_Start()) */

    for(;;)
    {
        /* Place your application code here. */
    }
}


9. 예상되는 출력은 10+17 = 27 이 되겠지요? 맞나 보겠습니다.



^^ Library 함수가 잘 동작하는 것이 눈으로 확인 되었습니다. 

"짝짝짝~"

댓글 없음:

댓글 쓰기