인터넷 연결없이 음성인식이 가능한 음성인식 IC 개발 판매합니다.
 최대 32분까지 음성 재생이 가능한 보이스 IC 개발 판매합니다.
 AVRISP, AVRISP-mkii, JTAGICE, Atmel-ICE, STLINK 판매합니다.
 25년이상 축척된 개발경험과 기술력을 바탕으로 제품개발을 도와 드립니다.
 
디오(DIO) 메뉴
 
 
    기술자료
 

 

--- 소프트웨어 설치 동영상 ---

 

다른 동영상 강의를 들으시려면 기술자료 -> 동영상강의 버튼을 클릭한 후 원하는 강의를
선택하여 클릭하면 자동으로 동영상이 재생됩니다.  

  동영상강의  
시스템 내장형 한글 프로그램 마이크로 컨트롤러

동영상 내용 요약
  • 디오를 이용하여 변수를 선언하고 간단하게 프로그램을 작성하여 봅니다.
  • 변수를 선언할 때에는 변수 속성내에서 변수명을 부여하여 사용할 수도 있고, 또 리본바 내에 아이콘을 직접 클릭하여 프로그램내에 변수를 선언하여 사용할 수도 있습니다.
    #대형 가 0
    로 정의하고 아래와 같이 프로그램으로 변수에 값을 넣을수 있게 명령을 만듭니다. 이때 반드시 문장의 끝은 세미콜론으로 끝나야 합니다. 그러면 "가" 변수에 12345678 이라고 하는 값이 들어가게 됩니다. 만약 변수보다 큰 값을 넣을 경우 값은 잘려나가고 변수보다 작은 값만 들어가게 됩니다.
    논리형 변수일경우 값이 0이면 0이 들어가고 0이 아니면 1이 들어갑니다. 이와같이 디오에서의 데이터값은 소프트웨어에서 알아서 크게되면 잘려나가고 작게되면 채워지는 프로그램용어로 형변환이라고 하는데 자동 형변환이 되는 구조이어서 형변환에 대해서는 신경을 쓰실 필요가 없습니다.
    가 = 12345678 ;
  • 논리형 변수의 경우 변수 속성에서는 정의할 수 없었지만 직접값을 정의할 수 있는 논리형 변수가 있습니다.
    예를 들어서 소형변수 가소3에 논리변수를 할당해 보겠습니다.
    #논리 이순신 가소3:4
    이순신 = 0x78;
    이라고 정의하면 이순신 이라고 하는 논리 변수에 값은 1이 들어갑니다. 여기서 중요한것은 논리형 변수 선언시 콜론을 사용한다는 점입니다.
  • 아래와 같은 프로그램만 있다면 한번 구문를 실행하고 계속 다음 단계로 프로그램이 진행되어 이 위치로는 다시 오지 않습니다. 다라서 원하는 기능의 프로그램을 만들려면 내가 원하는 기능의 주위를 반복적으로 돌아야 가능합니다.
    이순신 = 0x78;
  • 프로그램을 반복적으로 돌게 하려면 프로그램 흐름제어로 명령을 진행해야하는데 아래와같이 먼저 프로그램을 주소위치를 참조할 수 있는 참조위치 변수를 선언하고 마지막에 콜론을 사용합니다. 이 위치는 프로그램이나 함수의 호출이 있을때 콜론으로된 위치를 참조하게 되어 있습니다. 그 다음에 프로그램의 진행을 바꾸는 명령인 이동 명령을 사용 무한히 반복되게 합니다. 또한 이지플로우스튜디오에서 녹색으로 변하는 역슬래쉬 // 표시는 프로그램이 컴파일되지 않고 프로그래머가 이해하기 쉽게 설명하는 구분이 입니다.
    // 여기는 컴파일 안됨!!
    무한히반복합니다:
    이순신 = 0x78;
    이동 무한히반복합니다;
  • 프로그램은 무한히 반복만 된다고 다되는것이 아니라, 어떤 조건에 따라서 방향이 바뀌어야 기능적인 프로그램이 됩니다. 조건에 따라서 방향이 바뀌는 명령이 여러가지가 있지만 가장 대표적인 것이 한쪽 조건과 양쪽 조건이 있습니다. 한쪽조건은 조건이 만족되면 그문장을 실행하고, 조건이 만족되지 않으면 실행하지 않습니다. 하지만 양쪽조건은 조건이 만족하면 만족하는 쪽 문장을 실행하게되고, 조건이 만족되지 않으면 다른쪽 문장을 실행되지 않게 되는것입니다. 둘중의 하나는 반드시 실행되게 됩니다. 만약 조건 명령에 대해서 잘 모르시면 조건 아이콘을 클릭하면 기본적으로 조건문이 어떤 형태로 구성되어야 하는지를 알수 있게 기본 문장이 자동으로 입력됩니다. 여기서 필요한 내용을 편집하시면 됩니다. 예를들어, 기본단자0의 이름을 "홍길동"으로 하고 상태를 "입력"으로 놓으면 어떤 신호가 0 또는 1의 값이 들어오게 됩니다. 문장에서
    만약 ( 홍길동 == 0 ) { 이순신 = 0x78; }
    이라고 하면, 단자0의 값이 1이면 아무 기능을 수행하지 않고 0이면 이순신 변수에 값을 넣게 됩니다. 이것이 한쪽 조건입니다. 양쪽 조건은 조금 다릅니다. 양쪽조건은 아닐때 문장이 더 추가됩니다. 문장에서 단자1의 이름을 "이도령" 으로 하고
    만약 ( 홍길동 == 0 ) { 이도령 = 0; }
    아니면 { 이도령 = 1; }
    이라고 하면, 단자0의 값이 0이면 단자1의 값도 0이되고 단자0의 값이 1이면 단자1의 값도 1이되어 단자0과 동일한 값을 단자1에 출력하게 됩니다.
  • 반복 명령은 조건이 만족되는동안 반복 문장을 계속 실행하고 조건이 만족되지 않으면 더이상 문장을 실행하지 않습니다. 실행반복 명령은 조건에 상관없이 먼저 문장을 실행하고 조건이 만족되는동안 반복 문장을 계속 실행하고 조건이 만족되지 않으면 더이상 문장을 실행하지 않습니다. 따라서 실행반복문은 반복문과 달리 조건과 상관없이 한번은 실행되게 됩니다.
    반복 ( 홍길동 == 0)
    { // }
    이면 홍길동이 0인동안 계속 실행되게 됩니다.
    실행
    { // } 반복 ( 홍길동 == 0 );
    이면 무조건 한번 실행하고 그 다음부터 홍길동이 0인동안 계속 실행되게 됩니다. 문장안에는 계속 중첩하여 문장이 들어갈 수 있습니다.
  • 호출은 프로그램을 기능별로 나열하기 위하여 지정위치로 가서 실행하고 돌아오기 명령으로 호출되기 다음 위치로 돌아오는 기능입니다.
    호출 입력처리;
    이동 무한히반복합니다;
    입력처리:
    { // 돌아오기;
    }
    이면 입력처리를 수행하고 돌아갑니다. 주의할 점은 호출은 중첩하여 4단계이상 호출은 허용하지 않습니다. 처음에서 호출에 호출에 호출에 호출까지만 허용합니다.
 
 

< 디오 프로그램 흐름제어 방법 설명 동영상 >

 
㈜이지플로우 기술개발부  
동영상강의   

에스크로 가입 여부를 확인합니다.