본문 바로가기

전자, 전기, 프로그래밍

아두이노 패킷 통신 소스 코드 아두이노 패킷 통신 통신 소스코드 패킷 통신이라고 하는게 맞는지 모르겠지만 HEADER - Data - Checksum 의 형식으로 Data을 수신하는 소스코드임 아래 처럼 구성 예정이나 아래 소스코드는 텍스트로 테스트할 수 있도록 작성함 비고 칸 처럼 HEADER를 한글자의 Char로 변경했고, Checksum도 각 data숫자의 합의 1의 자리만 사용하는 Add 방식으로 작성 이름 정보 크기 비고(텍스트로 테스트 용 예시) HEADER 1 0xA5 1byte A A HEADER 2 0x5A 1byte 5 5 Data Size 전송할 데이터의 크기 1byte 3 9 Data 전송 데이터 1~50byte 123 111222333 CheckSum 체크섬 (현재는 Add) 1byte 1+2+3 = 6 1+... 더보기
퀵소트 C 언어 소스코드 회사에서 하는 프로그래밍 시험때문에 가장 짧고 기억하기 쉬운 퀵 소스 코드를 작성해보았다. 숫자 갯수가 홀수, 짝수로 달라지는 경우라던지, 숫자 중에 같은 값들이 있는 경우 문제가 생길수 있다고 해서 테스트해보았는데... 대충 잘 동작한다. 배열을 파라미터로 받는 경우와 그냥 전역 배열로 사용하는 경우에 차이가 있을까? 또한 틀린 동작을 하는 경우 있으면 리플 달아주세요.^^ -> 2016/4/19 : 써티파팅 님이 지적해주셔서 보니 소스에 문제가 있어서 다른 소스를 얻어서 설명 추가해둠. void quicksort(int left, int right){int i = left, j = right;int tmp;int pivot = arr[(left+right)/2]; //피봇을 중심값으로 하고, 바로 값.. 더보기
CSQE 자격증 준비 및 시험 얼마전 회사에서 CSQE 자격증 취득 기회가 생겨서 준비하고 자격증을 취득했다. 대략 50만원 정도의 시험비가 드는데 회사에서 지원해주고 떨어지면 월급에서 뺀다고 해서 긴장하고 준비했다. 우선 CSQE는 ASQ(Armerican Society for Quality)에서 주관하는 주관하는 소프트웨어 품질 관련 자격시험이다. 삼성전자나 다른 대기업에서는 승진시 가산점이 있는것 같기도 하다. (입사할때 쓸수는 없을것임. 경력 8년 필요) 자세한 내용은 시험을 보기로 마음먹은 사람이라면 알고 있으리라 생각하고 생략... 우선 응시 자격은 소프트웨어 경력 8년 필요 : 관련 대학 4년+ 관련 업무 4년 당연히 졸업증명서, 이력서 등등이 필요함. 비용은 50만원선 : ASQ에 가입을 하는 가입비가 130달러정도, .. 더보기
클라우드 컴퓨팅 용어 ㅁ클라우드 컴퓨팅 정의 -인터넷 기술을 활용해 많은 고객들에게 수준 높은 확장성을 가진 자원들을 서비스로 제공하는 컴퓨팅의 한 형태 (Gartner) -인터넷으로 자원들이 제공되는 형태로 인터넷에 기반을 두고 개발하는 컴퓨터 기술의 활용을 의미함 (Wikipedia) -웹 기반 응용 소프트웨어를 활용해 대용량 데이터 베이스를 인터넷 가상공간에서 분산 처리하고 이 데이터를 컴퓨터나 휴대전화, PDA 등 다양한 단말기에서 불러오거나 가공할 수 있게 하는 환경 (IBM) -사용자 중심, 업무 중심의 수백또는 수천 대의 컴퓨터를 연결하여 단일 컴퓨터로는 불가능한 풍부한 컴퓨팅 자원을 활용할 수 있도록 하는 기술(Google) ㅁ클라우트 컴퓨팅 주요 특징 -빠른 탄성 (Rapid Elasticity) 필요에 따라.. 더보기
선점형(preemption), 비선점형(non-preemption) 스케쥴링 스케쥴링에서 대표적인 개념이다. 선점형/비선점형. 여러개의 프로세스가 동시에 돌아간다는 것은 실질적으로는 동시라기 보다는 시분할이라고 봐야한다. (물론 최근의 듀얼 코어 같은 경우에는 다르다고 할수도 있지만, 여기서도 시분할 방식은 사용된다.) 선점형은 하나의 프로세스가 다른 프로세스 대신에 프로세서(CPU)를 차지할수 있다는 뜻이다. 비선점형은 하나의 프로세스가 끝나지 않으면 다른 프로세스는 CPU를 사용할 수 없다. 이게 언뜻 말을 들으면 상당히 혼란스러울수 있다. 우리말로 "선점"하면 왠지 "먼저 점령" 하고 있으니 다른 것이 들어올수 없을것 같다. 즉 "전투에서 승리하려면 저 고지를 선점해야해!!" 이런 뜻에서 처럼. 하지만 여기서는 "다른 프로세스(B)가 CPU를 사용하고 있는 프로세스(A) 대.. 더보기
소스인사이트에서 정규식 사용하기. 소스인사이트에서 정규식 사용하기. http://www.sourceinsight.com/docs35/af1070763.htm 우선 소스인사이트 홈페이지에서 정규식 관련 설명 페이지. 근데 좀 약소하게 설명이 되어있고... 일반 정규식과 사용방법이 약간 다른듯.... (정확하지 않습니다. 아시는 분은 도움 부탁드려요.) 더보기
전기각, 기계각 모터에 관련된 책을 보다보면 전기각, 기계각이라는 용어가 많이 등장한다. 거기 보면 무슨 파이가 어쩌고 저쩌고 하는식으로 시작해서 헷갈리는데 간단히 생각해보자.. 일단 기계각은 그냥 모터가 눈으로 봤을때 한바퀴 돌았다는 뜻이다. 그럼 전기각이란 무엇이냐.. 모터의 전기적인 상태가 한바퀴 돌았다는 뜻이다. --; 3상 모터 설명에서 볼 수 있는 그림이다. 여기서는 3상이 중요한것이 아니므로 대충 넘어가고...^^; 만약 실제로 이렇게 생긴 모터가 있다면 이 모터는 기계각 360 = 전기각 360 도이다. N극 기준으로 생각하면 A'-> B-> C'-> A-> B'-> C 이런 위치로 돌면 전기적으로 한바퀴를 돈것이고, 그것이 기계적으로 한바퀴를 돈것이기 때문이다. 그러나 실제 모터는 A'-> B-> C'-.. 더보기
RPM 계산 방법 M/T 방법(M/T Method) PID 제어를 하려면 에러값(목표값-실제값)을 알아야 하고. 모터 같은 경우는 대체로 모터의 회전 속도가 될 것이다. 그럼 RPM 측정 방법에 대해서 알아보자. 우선 엔코더, 홀센서 등과 같은 모터가 회전하는 속도를 감지하는 장치가 필요하다. 엔코더는 혹시 예전 볼 마우스 뜯어본 사람은 알겠지만 얇고 길쭉한 구멍이 많이 뚫린 원형 판 같은 것으로 광센서 같은것을 이용하여 회전하는 속도를 감지한다. 엔코더의 경우 속도만 알수 있는 엔코더와 모터의 위치까지 알수 있는 엔코더 두가지가 있다. 홀센서는 자석에 반응하는 센서를 이용하는 것으로(홀 이펙트라는것이 있다고 한다.) 모터의 회전자의 자기력에 반응한다. 자세한 것은 좀더 검색해보시고..^^;; 어쨋거나 홀센서든, 엔코더든 어쨋든 MCU의 관점에서는 모터가.. 더보기