본문 바로가기
반응형

2017/08202

추천 납땜 인두기 FX-951 HAKKO는 일본의 유명한 납땜 인두기 제조업체이다. HAKKO에서 나온 FX-951은 인두 손잡이와 인두팁이 작아 정밀한 작업을 할 수 있다. FX-951의 스펙은 다음과 같다. 온도 : 200 ~ 450도 전력 : 75W 가격 : 약 280,000원 인두 팁을 닫는 쇠 수세미가 들어 있는데 물에 적힌 스펀지보다 쇠 수세미가 더 좋다. FX-951은 인두 팁에 온도 센서가 내장되어 온도를 제어한다. 인두 팁에 공급되는 전압이 24V로 낮아 감전의 위험이 없다. 전류는 약 3A 정도 흐른다. FX-951는 고주파 인두기가 아닌 일반 히터를 사용한 인두기이다. HAKKO의 보다 저렴한 제품은 FX-888D가 있다. ☞ 일반 인두기와 고주파 인두기의 차이 2017. 8. 6.
C에서 static 사용 C에서 static은 전혀 다른 2가지 용법으로 사용된다. 1. 지역변수에서 static 선언될 때지역변수에 static을 사용하면 변수가 저장되는 메모리가 함수 리턴시에도 사라지지 않고 유지된다. 그래서, 함수를 여러 차례 호출해도 변수 값을 유지 하고 있다. 2. 전역변수에서 static 선언될 때프로젝트가 여러 파일로 되어 있을 때 static으로 선언된 전역변수는 다른 파일에서 사용하면 컴파일 할 때 에러 메세지를 출력한다. 2017. 8. 6.
CPU 온도 측정 프로그램 작업 표시줄에 CPU의 온도가 표시되게 할 수도 있고, 과열일 때 경보 표시가 되게 할 수도 있다. 여기에서 다운받을 수 있다. 2017. 8. 6.
CRC의 에러 검출 확률 CRC (Cyclic Redundancy Checks)의 에러 검출 확률을 계산하는 것은 매우 복잡하다.대략적으로 다음 식을 사용할 수 있다.P = 1 / 2X여기서, X는 CRC 비트이고, P는 CRC가 검출하지 못하는 에러가 발생할 확률이다.예를 들면, 16비트 CRC를 사용한다면 에러가 발생했을 때 그 에러를 검출하지 못할 확률이 0.00153%이다.여기서 0.00153%은 에러가 발생할 확률을 의미하는 것이 아니라 에러가 발생했을 때 검출 못하는 확률을 의미한다. 100번의 통신 동안 1번 에러가 발생한다면 그 에러를 검출하지 못할 확률은 0.0000153%이 되고, 6553600번의 통신 중 1번은 검출하지 못하는 에러가 발생한다. 2017. 8. 6.
인터넷 프로토콜에 사용하는 Checksum, CRC MAC 프로토콜에서는 32비트 CRC를 사용한다.IP 프로토콜 중에서 IPv4에서는 헤드 데이터만 16비트 Checksum을 사용하고 IPv6에서는 Checksum이 없다.TCP 프로토콜에서는 16비트 Checksum을 사용한다. Checksum은 16bit one's complement sum을 사용한다.현재 기술로 MAC Layer 아래에서 대부분의 에러를 검출할 수 있다고 생각하기 때문에 IPv6에는 Checksum이 없고 TCP/IP Layer에서는 CRC가 아닌 간단한 Checksum만을 사용한다. @ CRC 에러 검출 확률 2017. 8. 6.
C에서 가장 실수하기 쉬운 버그 C에서 가장 심각하고 흔하게 하는 실수는 배열이 Overflow되는 것이다. int a[5];int i = 5;a[i]=1; 위와 같은 코드에서 배열 a의 인덱스는 0~4인데 i에 5을 넣어 배열의 범위를 넘었다. 이때 넘어간 영역은 다른 변수의 값이 저장되어 있는 영역인데 그곳에 의도하지 않은 값이 저장되어 프로그램이 이상 동작을 한다. Visual C++에서는 실행 중 Overflow 되면 Run-time 에러 메세지를 띄우지만, 일반적인 C에서는 이러한 문제를 검출하여 메세지를 띄우지 않기 때문에 프로그래머가 직접 찾아야 하지만 이러한 버그는 찾기가 매우 어렵다. C에서 이러한 문제를 그대로 둔 이유는 프로그램 실행 속도 때문이다. 배열에 접근할 때마다 일일이 검사를 하면 프로그램 실행 속도가 매우.. 2017. 8. 6.
인간의 욕구 인간의 욕구 또는 다르게 표현하면 의지, 욕심, 꿈, 희망 등은 인간이 살아가는 핵심적인 요소이다. 욕구는 인간의 삶에 지대한 영향을 미치는 요소이고 어떻게 보면 욕구는 인간의 삶을 결정짓는 유일한 요소이다. 불교에서 욕심을 버리라는 것을 모토로 삼은 것은 욕구가 인간에 미치는 영향을 정확하게 간파한 통찰을 보여준다. 불교에서는 욕심을 버리라고 했지만 그것이 옳은지는 의문이다. 주의주의 철학에서 쇼펜하우어는 맹목적인 의지라고 표현했고 니체는 권력에의 의지라고 했다. 심리학에서 프로이드는 성에 대한 욕구라고 했다. 이러한 욕구는 두뇌의 보상회로와 연관되어 있다. 특정 호르몬의 분비와 이로 인한 쾌감이 보상회로의 기본 구조이다. 2017. 8. 6.
스위치 채터링(Chattering) 제거 방법 스위치를 On 또는 Off 할 때 채터링(Chattering)이 발생한다. 채터링은 On 또는 Off 되는 순간 On/Off가 반복되는 노이즈가 발생하는 것이다. 채터링 시간은 스위치 종류에 따라 수백ms 정도까지 될 수도 있다. 채터링을 제거하기 위해 하드웨어적으로 스위치 양단에 Snubber 회로를 달 수도 있고 소프트웨어적으로 처리할 수도 있다. 대부분 소프트웨어로 처리하는 경우가 많은데 코드는 다음과 같다. key_loop() { key0 = Read_GPIO(); if(key0==key1 && key0==key2 && key0==key3) { key = key0; // 최종 출력 : key } key3 = key2; key2 = key1; key1 = key0; } 스위치 뿐만 아니라 기계적인 .. 2017. 8. 6.
정수로 제곱근 SQRT 계산하는 알고리즘 임베디드 시스템에서 저사양의 MCU를 사용할 때 라이브러리에 있는 SQRT 함수를 사용하면 시간이 많이 걸린다. 그래서, SQRT 함수를 직접 만들어 사용하는 경우가 많다. n이 8,16,32비트일 때는 다음과 같이 코드를 수정한다. n이 32비트 : p = 0x40000000n이 16비트 : p = 0x4000n이 8비트 : p = 0x40 uint32_t sqrt32 (uint32_t n){ uint32_t v, re, p; v = 0; r = n; p = 0x40000000; while (p > r)p = p >> 2; while (p) { if (r >= v + p) { r = r - v - p; v = v + (p > 1; p = p >> 2; } return v; } SQRT를 계산하는 다른 .. 2017. 8. 6.
반응형