반응형

 

윈도우 Shell을 이용할수있는 함수는 대표적으로 3가지가 있다. 셋다 거의 같거나 비슷해서 아무거나 사용가능

 

1. sh()

2. shell()

3. system()

 

우리가 cmd창에서 쓰는것과 같이 이함수를 이용하면 똑같이 Window OS Shell을 Allegro PCB 툴 내에서 접근할 수 있다.

아래는 window Shell로 프로그램을 실행시킨 예제다.

notepad : 메모장실행

calc : 계산기 실행

control : 제어판 실행

이를 Allegro PCB에서 SKILL코드로 실행시켜본다.

 

1. sh( )함수로 메모장 실행시켜보기

 

 

2. shell( )함수로 계산기 실행시켜보기

 

3. system( )함수로 제어판 실행시키기

 

background로 이용하고 싶을때는 >start /B "~~.exe"

반응형
반응형

List 내의 String 갯수를 파악해주는 함수

(결과)

각 문자가 몇개 들어있는지 확인하여 그 갯수를 리턴했다.

 

 

 

반응형
반응형

 

리스트내 값을 변경하기 위한 함수로, rplacarplacd 두개의 함수가 필요하다.

맨앞의 값만 변경
앞을 뺸 나머지를 변경

테스트

결과

반응형
반응형

 

Cadence SKILL user-reference에서 발췌.

 

sort 함수

sortcar 함수

간단 테스트

 

반응형
반응형

Cadence SKILL은 LISP 언어를 기반으로 한다.

따라서 LISP에서 지원하는 문법들이 통한다.

 

어떤 리스트내에서 최대값과 최소값을 뽑는다.

최대값은 55, 최소값은 1 이므로 아래와 같이 결과가 리턴

 

(참고)

또한 max()함수와 min()함수가 있는데, 이들은 fixnum 타입의 숫자만 구분한다. 즉 위처럼 list가 들어가면 동작하지 않는다.

-테스트-

 

반응형
반응형

내가 어떤 SKILL파일을 만들고 코드를 공유하고 싶지 않을 때, il 파일을 암호화 하여 eil 파일 확장명으로 바꿀 수 있다.

방법은 매우 간단하다.

 

함수명은 encrypt()이며, 필수인자 2개의 옵션인자 1개를 받는다.

 src파일

 des파일

 암호

아래 간단한 테스트를 해본다.

 

파일명  option.il 이라는 파일이다. (아래 포스팅에서 만듦)

https://ansan-survivor.tistory.com/284

 

[Cadence SKILL] 함수에 옵션 인자 넣기, Cadence SKILL option argument 넣기 (optional argument input)

함수는 기본적으로 input을 받고 output을 내보낸다. 그러나 어떤 함수는 필수적으로 모든 값을 받아야 하지만, 필요에 따라서 선택적으로 받을 때도 있다. 아래 예시는 좌표 (x1, y1) (x2, y2) 를 입력��

ansan-survivor.tistory.com

이를 encrypt() 함수를 이용해 암호화를 해본다. (t가 나오면 성공적으로 된것)

encrypt("test.il" "test.eil")

해당 파일을 열어본다. (아래와 같이 알 수 없는 문자로 암호화가 되었다)

이 암호화된 파일을 실행시켜본다. (정상적으로 실행된다 t리턴)

내부 함수를 실행시키고 인자를 넣어본다. (정상적으로 실행됨을 알 수 있다.)

 

 

반응형
반응형

함수는 기본적으로 input을 받고 output을 내보낸다.

그러나 어떤 함수는 필수적으로 모든 값을 받아야 하지만, 필요에 따라서 선택적으로 받을 때도 있다.

 

아래 예시는 좌표 (x1, y1) (x2, y2) 를 입력받으면, 그 거리가 측정되는 함수이다.

그러나 두번째 좌표인 (x2, y2)를 입력하지 않으면 (0, 0)으로 자동으로 세팅되는 함수이다.

즉, (x2, y2)는 옵션 인자인 것이다. (넣어도 되고 안넣어도 되고)

 

여기에 아래와 같이 값을 입력했다.

1. 입력 : (100 200)

2. 입력 : (100 200 200 100)

 

엑셀로 결과를 확인해보니 실제로 값을 입력하지 않는 경우 0인 디폴트 값이 적용되어 계산되었다.

   

함수에 옵션변수를 넣기 위해서는 @option (변수명 디폴트값)  을 이용한다.

 

 

 

 

 

 

 

 

 

반응형
반응형

add라는 함수와 multi라는 함수는 cal이라는 함수에 종속되어 cal함수가 동작하면 보조로 작동하도록 테스트를 해봤다.

prog() 함수는 값을 리턴시킬 수 있는 함수를 만든다. 또한 prog 인자 옆에 선언하면 지역변수로만 작동하여 함수가 끝나면 자동 메모리 해제된다.

(procedure add(x y)
    prog(( 지역변수 선언 )
		return(x+y)
	);prog
);procedure

 

위 예제에서 SKILL파일을 불러와서 함수를 로드하고 사용하는 법은.

1. 실행한 Allegro PCB파일과 동일한 위치에 SKILL파일(function_use_test.il)을 놓고 로드한다. 

t 가 나오면 정상적으로 load된 것이다.

2. 함수를 호출하고 옆에 x,y값 인자를 넣는다.

x에 3을 넣고 y에 4를 넣었음으로, add함수와 multi함수가 계산되어 cal함수에 대입되어 값을 리턴

반응형
123

+ Recent posts