오늘 소개할 'SN754410NE'칩은 바이폴라용 칩입니다.이제까지 소개한 칩들은 유니폴라용 칩이였죠.(참고 : 디바이스 마트 - SN754410NE) 요번에 산 모터가 바이폴라인줄 알았는데 막상 받아보니 하이브리드내요 ㅡ.-;;;그래도 바이폴라용 칩을 받은김에 바이폴라 구성을 해봤습니다. 테스트에 사용한 모터는 'FL42STH33-0956A'입니다.하이브리드 모터 입니다.(참고 : 디바이스마트 - FL42STH33-0956A) 1. 보드 구성원래 바이폴라 결선이 유니폴라보다 어렵다고 합니다.어려운건 둘째치고 16개를 다꼽아야 한다는게 문제내요-_-;결선 자체는 고만고만한데....완성된걸 보면 눈으로 선따라가는게 일입니다 ㅋㅋㅋ참고로 유니폴라칩에 바이폴라로 결선하면 아두이노가 죽습니다 ㅎㅎㅎ 보드구성은 ..
특정 구분자를 이용하여 문자열을 자르는 기능을 'Split'라고 합니다. C++용 'Split'를 구현하는 내용은 많은데 아두이노에 바로 적용할 수 없어서 아두이노용으로 다시 만들었습니다. 1. 구현 방법 스플릿을 구현하는 방법은 간단합니다. 1) 한 문자씩 검사를 한 다음 2) 구분용 문자가 나오면 잘라내고 3) 그 이후부터 다시 검사합니다. 이 과정을 반복하여 구분자를 잘라 냅니다. 문제는 언어마다 이 과정이 약간씩 다를 수 있다는 점입니다. 아두이노에서는 'indexOf'로 구분자의 위치를 찾은 다음 'substring'으로 문자열을 잘라내고 그 과정을 반복합니다. 2. 구현 이제 스플릿을 구현해 봅시다. void Split(String sData, char cSeparator) { int nCou..
왜 그런지는 모르겠지만지만 함수는 '원 리턴(One Return)'이 원칙입니다.(아마도 함수리턴값을 바로 사용하는 기능때문 인것 같네요.) 그래서 여러값을 받고 싶으면 C는 포인터를 이용하고 객체지향언어에서는 클래스(class, 모듈(Model)도 여기에 해당한다.)를 리턴 받는 방법으로 여러값을 받습니다. 언어에 따라 '파라메타 아웃풋(Parameter Output)' 같은 것을 지원 할수도 있습니다. ex> //C#의 경우 public int DataReturn(out string sData) 1. WCF는 객체를 리턴 할수 없다. 문제는 WCF는 객체를 리턴 할수 없습니다. 참고 : MSDN 포럼 - How do I pass a WCF class as a reference parameter? WC..
간만에 웹서비스를 써야 해서 WCF파일을 추가하고 서비스 참조를 했는데..... 어라? 이전과 달리 '[메서드이름]Completed'도 안보이고....뭐지?;;;; 예전에 실버라이트에서 한번 다뤘던 거라 이전 글을 확인해도 모양이 이상합니다;;; (참고 : [Silverlight] 1/4. 한 프로젝트에서 웹서비스 만들기) 1. 테스트 WCF 서비스 만들기 서비스는 간단하게 요청이 들어오면 5초대기를 한 후 받은 값에 문자열을 더해 리턴해주는 형식입니다. [ServiceContract] public interface IUsingAsync { [OperationContract] string GetName(string name); } public class UsingAsync : IUsingAsync { p..
WCF가 예전에 사용하던 방식과 달라 이것저것 테스트하다가 간만에 뜬 에러 크로스 스레드 작업이 잘못되었습니다. 아.... 예전에 WPF에서 한번 소개 하긴 했었습니다만 윈폼에서는 약간 다르죠. (참고 : [WPF] 다른 쓰레드에서 UI쓰레드 접근하기 - Dispatcher.Invoke) 연관글 영역 1. 일반적인 방법 일반적으로 인보크(Invoke)를 사용하려면 델리게이트(Delegate)를 만들어야 합니다. (참고 : MSDN - Control.Invoke 메서드) 일반적인 방법에서는 다음과 같은 순서로 인보크를 사용합니다. 1) 델리게이트 선언 2) 델리게이트에 연결할 함수 생성 3) 델리게이트와 생성한 함수 연결 4) 인보크로 델리게이트 호출 //1) 델리게이트 선언 /// /// 델리게이트 선언..
아무런 플러그인을 적용하지 않았다면 기본적인 자바스크립트로 'add'하거나 제이쿼리(JQuery)의 'append'를 이용하여 추가 할 수 있죠. 문제는 'Bootstrap-select'를 이용하면 되지 않는다는 것이죠 ㅎㅎㅎ 1. 레퍼런스(reference) 확인 뭔가 이상해서 레퍼런스를 확인해 봤습니다. (참고 : silviomoreto - bootstrap-select ) 아.... '부트스트랩-셀랙트'를 사용할 때 옵션이 변경되면 'refresh'를 호출하여 UI에 반영할 수 있다고 설명되어 있습니다. 2. 테스트해 보기 '부트스트랩-셀랙트'의 샘플이 잘돼 있어서 제가 따로 만들 필요가 없을 것 같긴 한데 한번 만들어 봅시다. 2-1. HTML 작성하기 이전에 작성했던 포스트에서 'select'태..
웹폼에서사용했던 안 보이는 버튼을 이용한 비하인드 함수 호출을 'ASP.NET MVC'에서도 사용할 수 있습니다. (참고 : [ASP.Net] 자바스크립트에서 비하인드 호출하기) 그런데 MS가 'ajax.net'을 포기하는 뉘앙스인 데다 MVC에서는 'ajax.net'를 사용하는데 번거로운 편이라 그냥 제이쿼리(JQuery)의 아작스(ajax)기능을 이용하여 비하인드 함수를 호출해 보겠습니다. 0. 테스트용 코드 테스트를 위해 HTML코드를 다음과 같이 작성합니다. 이렇게 코드를 작성했다면 다음과 같이 동작합니다. 비하인드 코드는 다음과 같이 작성합니다. [HttpPost] public JsonResult AjaxCall(string sData) { return Json(new { sReturn = "M..
기본 부트스트랩에는 태그에 대한 스타일 시트나 자바스크립트가 없습니다. 그런데 다행히도 누군가 만들어 둔것이 있군요 ㅎㅎ 1. Bootstrap-select 'Bootstrap-select'라는 프로젝트입니다. 부트스트랩을 사용할때 태그의 디자인과 기능을 확장해줍니다. (참고 : silviomoreto - bootstrap-select ) 1-1. 설치 설치는 간단합니다. 다운로드 받은 파일중 'bootstrap-select.min.js'와 'bootstrap-select.min.css'를 원하는 위치에 넣고 웹페이지에서 임포트 해줍니다. (위치는 제이쿼리 위에 부트스트랩 아래 위치하는게 좋을듯 하네요.) 1-2. 추가 코드 그냥 이상태로 넣고 사용하면 아무런 동작을 하지 않습니다-_-;;; 결국 셈플을..
자바스크립트는 독특한 것들이 많은데 그중 하나가 연관배열입니다. 직접적으로 연관배열이 지원되는 언어는 많지 않은걸로 알고 있는데 말이죠 ㅎㅎㅎ (참고 : 위키백과 - 연관 배열) 1. 연관 배열 이란? 일반적으로 배열에 접근하기 위해서 인덱스(index, 첨자)를 이용하여 접근합니다. int nArray[10]; nArray[3] = 11; nArray[9] = 13; 이런 식입니다. 그런데 자바스크립에서는 위와 같은 일반적인 방법 이외에도 인덱스대신 문자열을 이용하여 접근 할수 있습니다. int nArray = new Array(10); nArray["Val01"] = 11; nArray["Val01"] = 13; 이렇게 말이죠. 이렇게 인덱스가 아닌 키로 배열에 접근하는 것을 연관배열이라고 합니다. ..
아작스의 기원은 특정영역만 갱신하는 것이기 때문에 아작스영역안에서 포스백이 일어나면 '부분 포스트백'이라고 부릅니다. 당연히 페이지 포스트백은 일어나지 않을 것이라고 생각했습니다. 그런데 아니네요 ㅡ,.ㅡ; (참고 : MSDN Magazine - AJAX 응용 프로그램 아키텍처, 1부 ) 1. 문제 발견하기 아작스영역안에 버튼을 넣고 눌러 봅시다. 중단점을 잡아보면 페이지 로드에서 중단점이 잡힙니다. 신기하게도 페이지의 UI는 갱신이 되지 않네요 ㅡ.ㅡ;; 이 이야기는 업데이트페널이 각자 돌아간다고 생각하고 있는 우리의 상식을 벗어납니다. 1-1. 테스트용 코드 테스트를 위해서 '웹응용프로그램'프로젝트를 생성하고 웹폼을 추가 합니다. 그리고 아래 코드를 넣습니다. 페이지 Ajax1 Ajax2 비하인드는 ..