아학아학 444

ST의 디자인 툴

ST사에서 웹으로 설계 프로그램을 지원하고 있습니다. NFC쪽을 그리다 안테나 설계를 안테나 회사에 다니는 친구에게 부탁을 할까하면서 구글링을 하다보니 ST에서 지원하는 것을 알게 되었습니다. 여러가지 설계 지원 툴 중 하나지만 제가 필요한 건 이거니까. 값을 변경해가면서 바로바로 결과를 알 수 있으니 좋습니다. 실제 PCB를 제작했을때도 동일하게 나올지는 잘 모르겠네요. 요즘 TI도 그렇고 ST도 그렇고 원하는 결과만 넣으면 값과 회로도까지 툭하고 튀어나오니 진짜 편하네요. 한편으로는 하드웨어 엔지니어인 제 자리가 위험하다는 생각이 드네요. 몇년뒤면 하드웨어 엔지니어는 없어지지 않을까 하는 걱정까지 듭니다. 펌웨어도 설정을 하면 기본 소스가 나오는 걸 보면 그 자리도 위험하긴 매한가지겠네요. 에휴 앞으..

PSOC - Timer 생성

CPLD나 FPGA를 하시는 분들에게는 익숙하신 TopDesign에 들어가서 Timer를 찾아 생성하여 줍니다.(물론 CPLD나 FPGA에서는 이러한 라이브러리들이 지원되지 않아 만들어 쓰거나 구매하여 쓸 수 있습니다...) 생성한 후에는 빌드를 한번하여 주어야만 프로그램 라이브러리들이 생겨서 프로그램에서 사용할 수 있습니다. /* Timer Interrupt */ CY_ISR(Timer_Int_Handler) { DEBUGPRINT("Timer \r\n"); Timer_ClearInterrupt(Timer_INTR_MASK_TC); } int main() { /* Start communication component */ UART_Start(); /* Enable global interrupts */ ..

W7500P - UART 설정

W7500P에서 UART RX를 인터럽트 구조로 잡은 상태에서 UART를 연결하지 않으니 정상동작을 하지 않았습니다. 때문에 UART RX 단자를 처음 셋팅때 연결되어있는지 확인하고 연결이 되어 있으면 인터럽트로 동작하도록 잡았는데 가만 생각해보니 풀업 설정만 해도 될 것 같았습니다. void UART_Config(uint8_t uart, uint32_t baud) { uint8_t RXStatus = 0; GPIO_InitTypeDef GPIO_InitStruct; UART_InitTypeDef UART_InitStructure; if(uart == USART_0){ PAD_AFConfig(PAD_PA, GPIO_Pin_14, PAD_AF0); GPIO_InitStruct.GPIO_Pin = GPIO_..

W7500P - 리셋타이밍

주로 많이들 사용하는 같은 급의(ST, NXP 등등) MCU와 다르게 W7500P의 리셋타이밍에는 문제가 좀 있는 듯 싶습니다. 위즈넷사에서 제공하는 노트에도 명시되어 있는 부분입니다. 20ms를 명시해놓은 걸로 기억하는데 만일 지연 타이밍이 없다면 초기에 동작하지 않을 수 있습니다. 일단 R 200K, C 1uF으로 지연시간을 좀 늦추니 동작을 합니다. 양산시에는 보증할 수 없지만 테스트 용도로는 충분할 것 같습니다.