반응형

함수만들기 

 

proc [함수이름] \

{

   내부 함수 구조 생성 후

    return [리턴값]

}

반응형
# 함수만들기

# foo에 3을 대입
set foo 3

# add함수, 입력 인자 a,b에 전역변수  foo까지 더해서 리턴.
proc add {a b} \
{
	global foo ; # 전역변수 선언
	return [expr $a + $b + $foo]
}
# add함수에 1,2인자를 넣어서 출력
puts [add 1 2]
# add함수 리턴값을 addfunc값에 넣어서 출력
set addfunc [add 2 3]
puts $addfunc




# 디폴트 인자(기본값이 정해져있음), 참조형 인자(인자를 넣어도 되고 안 넣어도 되고)
# 여기서 a는 필수인자, ref는 참조인자(넣어도 되고 안넣어도 되고), 1은 값을 안넣을때 자동으로 ref값은 1임.(디폴트 값)
proc plus {a {ref 1}} \
{
	upvar $a r 				; # $a 와 r 을 alias시킴. (r = $a)
	set r [expr $r + $ref]	; # 입력인자 a=r 과 참조인자 더해 r에 대입.
	return $r
}

set var 1
# a에 인자를 대입,  ref값을 안 넣었으므로 자동으로 1이 됨.
puts [plus var]
puts [plus var 2]  ; # 참조변수로 2를 넣었으므로 ref가 2가 들어가게 됨.




#가변인자 (제한 없이 여러 인자 대입 가능)
proc sum {args} \
{
	set s 0
	foreach i $args {
		set s [expr $s + $i]
	}
	return $s
}
puts [sum 1 2 ]
puts [sum 1 2 3 4]	; #인자를 마음데로 넣음. (띄어쓰기가 구분자)

실행 결과

반응형

'TCL\TK' 카테고리의 다른 글

Tcl 기본 문법 예제  (0) 2020.03.27
[TCL/TK] 윈도우10에서 개발 환경 구축  (4) 2020.03.26
TCL/TK Tutorial (튜토리얼)  (0) 2020.03.15
반응형

 

파이참 단축키.pdf
0.21MB

반응형
반응형

3-way handshake : TCP통신에서 상호 신뢰성을 제공하기 위한 통신 방식, 컴퓨터간에 연결을 맺기 위한 초기화 과정.

 

ACK Message : 내가보낸 데이터가 제대로 갔는지 확인하는 절차

 

ARP (Address Resolution Protocol) :

IP주소 (논리적주소)를 기반으로 MAC주소(물리적주소)를 알아오는 프로토콜,

2번째 계층에서 목적지IP주소에 대한 MAC주소 변환 동작을 함.

IP -> MAC, MAC -> IP 으로 주소를 변환시켜줌. / 상대방은 MAC주소가 없는 패킷을 받으면 2계층에서 폐기해버림

auto MDIX (Auto Medium-Dependent Interface Crossover) : 

공유기 허브나 스위티에서 다이렉트 케이블과 크로스 케이블을 자동으로 판단하여, MDI와 MDI-X 의 차이를 자동으로 판단하여 서로 같은 것 끼리 연결되도록 스위칭해줌

 

Bandwidth (대역폭) : 정해진 시간동안 전송될 수 있는 데이터의 양(속도), 대역폭은 제한적이다.

 

Broadcast : 네트워크에 연결된 모든 컴퓨터, 장치에게 일괄적으로 같은 패킷을 전송함.

 

CDM (Code-Division-Multiplexing) :

특정한 코드를 이용해 데이터를 구분하는 다중화 방식, 현재 가장많이 사용

코드가 맞아야 해독할수 있어 비밀보호가 우수, 전파방해에 강함 그러나 사용자가 많아지면 통신이 지연

 

codec (코덱) : 아날로그 신호 -> 디지털 신호로 변환 , 디지털 -> 아날로그신호 변환

 

DNS (Domain Name System) 프로토콜 : IP주소로 되어있는 이름을 사람이 보기 편한 Domain 도메인으로 바꿔줌.

FDM (Frequency-Division-Multiplexing) : 하나의 회선을 다수의 주파수 대역으로 분할하여 다중화 하는 방식

FTP (File Transfer Protocol) : 파일 전송용 프로토콜 (컴퓨터 사이 파일 전송의 규약)

 

HDLC (High-level Data Link Control) 프로토콜 :

프로토콜 데이터 단위 segment / 컴퓨터 데이터 통신에 적합 / 단방향, 전이중, 반이중 통신 모두 지원, 동기식 전송 방식

 

HTTP (HyperText Transfer Protocol) : 웹 사이트를 볼때 사용하는 프로토콜

 

Ipsec 프로토콜 : 암호 기술 프로토콜 VPN에서 거점간의 접속을 할때

 

IP-VPN : MPLS라는 기술을 사용해, 인터넷이 아닌 통신사업자 전용 폐쇄망을 사용. 제3자의 해킹시도로 부터 안전

 

ISP (Internet Service Provider) : 인터넷 접속 서비스를 제공하는 업체, 인터넷 서비스 제공자 (KT, LG 같은)

 

L3 Switch : IP주소 인식 가능한 스위치, 분산처리 등의 다양한 기능 지원

 

LAN (Local Area Network) :

집, 사무실, 공장, 빌딩 등과 같은 제한된 지역에서 여러대의 장치를 연결하기 위한 최적, 신뢰성있는 고속통신 네트워크

이더넷이 나오면서 다수의 독립된 컴퓨터기기의 상호간 통신이 가능하도록 하는 데이터 통신 시스템

MAC Address (Media Acess Control Address) :

네트워크 장비의 하드웨어에 연결된 48비트짜리 식별자. / 변경불가한 실제 주소

Max232 : RS232 와 TTL 시리얼통신이 혼용해서 쓸 수 없으므로 변환시켜주는 레벨 시프터

 

MDI(Media Dependent Interface) : 컴퓨터나 라우터의 연결 인터페이스

MDI-X (Media Dependent Interface Crossover) : 스위치나 허브 연결 인터페이스

MPLS (Multi Protocol Label Switching) :

기존 방식인 데이터 목적지 IP주소를 확인하는대신, 'Label' 이라는 패킷에 더해진 식별자를 확인하여 목적지까지 데이터를 전달함. Multi-Rrotocol을 지원하여 다양한 네트워크 환경(Ethernet, ATM, Frame-Relay 등)에서 동작

NAT (Network Address Translation) :

네트워크 주소 변환, IP패킷의 TCP/UDP 포트 숫자와 소스, 목적지의 IP주소 를 재기록하며 Router를 통해 네트워크 트래픽을 주고 받는 기술

OSI 7 Layer : 인터넷을 구성하는 7개의 계층 (국제표준화기구개발)

PDU (Protocol Data Unit) : 프로토콜 데이터 단위 segment

 

POP3 프로토콜 (Post Office Protocol) : 메일을 수신할때 쓰는 프로토콜

port number (포트 번호) : 

컴퓨터가 데이터통신 할 때, 통신하고자 하는 네트워크 서비스나 특정 프로세스를 식별하는 논리단위

포트번호는 0~65535번 까지 사용 가능. (0~1023 번은 Well-known ports로 예약된 포트번호 이다.

 

PPP (Point-To-Point Protocol) :

컴퓨터 두대가 직렬 인터페이스를 이용하여 통신

전화회선을 통해 서버에 연결하는 PC가 자주사용

RARP (Re-Address Resolution Protocol) :

ARP의 반대로, IP호스트가 자신의 MAC주소는 알고 IP주소를 모를때 서버로부터 IP주소를 요청

 

Repeater (리피터) : 

근거리통신망(LAN)의 전송매체상에 흐르는 신호를 증폭, 중계 하는 장치

데이터가 전송되는 동안 케이블에서는 신호의 손실(감쇄)가 일어나는데 이를 막기위해 증폭시킴

 

Router (라우터) : 중계기 (아래 참고)

RJ-45 : 컴퓨터 랜선 커넥터이름

RS-232C 통신 : TTL의 시리얼통신 신호는 너무 약해 이를 -12 ~ +12V 로 변환시켜 멀리 보내줄수 있도록함

 

RS-232통신 (RS : Recommended Standard ) : PC에서 사용하는 시리얼통신 -12 ~ +12V사용

(구글 검색 이미지)

RS-485통신 : 

반이중(Half-Duplex)통신, 동시에 불가능, 데이터전송을 완료하고 수신할 수 있음 (무전기처럼)

여러 네트워크에 분산된 장비와 통신에서 소음이 있는 환경에서 다수장비와 통신해야한다면 이 시리얼통신이 적합

 

sequence number :

TCP에서 데이터를 보낼때마다 데이터에 고유번호를 붙여서 전송, 이번호를 이용하여 TCP패킷의 순서를 제어함.

 

Session layer (OSI계층 중 하나):

재시작/종료/체크포인트를 포함한 end유저 응용프로그램 절차

상대방과 연결을 하기 위해 세션을 만들고 없애는 과정을 책임짐

SMTP ( Simple Mail Transfer Protocol ) : 메일을 보낼때 사용하는 프로토콜

 

STP cable ( Shielded Twisted Pair ) : 인터넷선으로 사용하는 차폐된 선(외부 잡음에 강함)

TCP ( Transmission Control Protocol ) :

신뢰성 확인절차가 있는 통신, 자료를 다운로드 받거나 손실이 생기면 안될 때 사용

 

TDM ( Time-Division-Multiplexing ) :

하나의 회선을 시간 간격으로 분할하여 다중화 하는 방식

가입자는 자신에게 할당된 시간에만 통신할수 있음

 

TTL ( Transistor Transistor Logic ) : AVR에서 사용하는 0 ~ 5V(3.3V) 를 사용, Vcc Gnd Tx Rx 4개 핀 필요

 

UDP ( User Datagram Protocol ) :

신뢰성 확인절차 없이 그냥 보냄. 한 두개 정도 손실이 생겨도 상관없음. 

실시간으로 동기화 시켜주는 상황에서 사용 (youtube같은)

 

UTP cable ( Unshielded Twisted Pair ) :

인터넷선으로 사용하는 차폐되지 않은 선, 구리선 8개를 꼬아 사용 (가장많이 사용)

VLSM ( variable length subnet mask ) :

한 개의 네트워크를 서브넷마스크를 이용해 2개 이상의 네트워크로 만드는 것.

 

VPN ( Virtual Private Network ) : 가상 사설망

 

WAN ( Wide Area Network ) : 광역 통신망

Well-known ports : 특정 API(어플리케이션이) 사용할 수 있도록 예약되어있는 포트로 1~1023번 포트를 말한다.

 

WLAN ( Wireless LAN ) : 무선 랜

 

 

(전자백과사전)

이미지 출처: https://www.pcmag.com/encyclopedia

 

Encyclopedia Index

The PCMag Encyclopedia contains definitions on common technical and computer-related terms.

www.pcmag.com

 

 

 

반응형
반응형

참조: https://ko.wikipedia.org/wiki/IPC_(%EB%8B%A8%EC%B2%B4)

 

IPC (단체) - 위키백과, 우리 모두의 백과사전

위키백과, 우리 모두의 백과사전. IPC 또는 국제전자산업표준협회(영어: Association Connecting Electronics Industries)는 전자장비 및 소자부품의 조립 및 생산 규격의 표준화를 목적으로 하는 협회이다. 1957년 인쇄회로 연구조합(영어: Institute for Printed Circuits)을 모태로 출범하여 중간에 공식 명칭을 베어보드로부터 패키징과 전자 어셈블리산업을 포함하는 전자회로 상호연결 및 패키징 연구조합으

ko.wikipedia.org

 

IPC 또는 국제전자산업표준협회(영어: Association Connecting Electronics Industries)는 전자장비 및 소자부품의 조립 및 생산 규격의 표준화를 목적으로 하는 협회이다. 1957년 인쇄회로 연구조합(영어: Institute for Printed Circuits)을 모태로 출범하여 중간에 공식 명칭을 베어보드로부터 패키징과 전자 어셈블리산업을 포함하는 전자회로 상호연결 및 패키징 연구조합으로 바꾸었다가, 1999년부터 현재의 명칭을 공식적으로 사용하고 있다.

각 분야별 규정 IPC (아래 pdf링크)

 

IPC Spec-Tree.pdf
0.28MB

 

 

 

전자제품 및 소자부품의 제조, 생산 규격을 표준화하는 것을 목표로 하고있다. IPC는 미국 국립 표준 협회 표준 개발 기구에 의해 표준개발 및 제정기관으로 인정을 받았으며, 이미 제정된 표준들은 전세계적으로 활용되고 있다. 또한 전자산업계에서 가장 널리 사용되는 허용가능성 표준들을 제정 및 보급한다.

 

IPC는 일리노이주의 베낙번에 본부를 두고 있으며, 뉴멕시코 타오스, 버지니아 알링톤, 스웨덴 스톡홀름, 러시아 모스크바, 인디아 방갈로, 중국 상하이, 그리고 선전과 베이징에 직영 사무실을 두고 있다.

 

아래는 IPC 홈페이지

http://www.ipc.org/ContentPage.aspx?pageid=IPC-Fact-Sheet-Korean

 

IPC Fact Sheet - Korean | IPC

IPC 는 전세계 3,400개 회원사의 재정적 성공과 경쟁력을 확보하기 위해 전념하고 있는 세계적인 무역 협회입니다. IPC 는 특히 인쇄기판 설계업체, 인쇄기판 제조업체, 전자 제조업체 등과 같은 전자업계를 위해 일하고 있습니다. 또한 인쇄기판과 조립 서비스의 규격 지정업체 및 구매업체(OEM), 훈련업체, 공급업체, 교육기관, 정부 기관, 실험실, 서비스 제공업체 등이 IPC 표준 및 우리 조직 참여로부터 혜택을 누릴 수 있습니다. 전세계 소재지 IP

www.ipc.org

 

 

** PCB Footprint 설계시 IPC규격에 맞춰 설계

 

PCB Design 설계시 중요한 IPC Standard

 

* IPC-2220

* IPC-2226

 

Pad 네이밍 Convention

 

* IPC-7251 & 7351

ansan-survivor.tistory.com/256

 

IPC padstack naming 에 관해서, PCB pad(패드) 이름 짓기 국제 컨벤션 convention

PCB 설계전에 Package Footprint를 만들어야 하는데, pad를 만들고 그 이름을 어떻게 지어야 할지 모를 때가 있다. 그러나 강제적이지 않지만, 국제적으로 이미 Convention을 만들어 이렇게 이름을 지어라~

ansan-survivor.tistory.com

 

반응형
반응형

다음작업은 OrCAD Capture 17.2 버전에서 진행했다. 

 

1.  심볼을 생성하기 위해 이전에 라이브러리를 생성

2. 생성된 Library아래에서 New part를 눌러 새로운 파트를 생성.

(풋프린트 이름도 나중에 ATMEGA8 으로 작성할 예정이므로)
파트를 만들 수 있는 창이 열린다.

3. 외곽선과 핀 만들기, ATMEGA8 핀은 총 32개 이다.

해당 데이터시트를 참고하여 PIN생성
Place - Rectangle
대충 크게 그려준다 (어차피 나중에 수정)

 

여러 핀이므로 Pin array
핀이름은 수정해야되서 의미가 없다. 32개 핀을 만든다.
대충 배치하고 사각박스도 수정
모든 핀을 드레그, Edit Pins 선택
이창에서 수정해도 되지만 편집이 불편하다. 그러나, 엑셀로 편집하여 데이터 불러오기가 가능하다.
엑셀로 데이터 작성하여 복사 붙여넣기
Normal View: Pin Name 셀에 모두 붙여넣기
그럼 다음과 같이 Pin을 구성할 수 있다.
Edit pin에서 VCC, GND, AVCC 핀 타입을 모두 Power로 변경한다.
핀을 움직여 회로를 편의에 맞게 수정
마우스 우클릭하여 저장

4. Schematic에서 불러오기

만든 Atmega8이 불러와진다.
더블클릭하여 속성을 보면, Footprint가 아까 지정한데로 저장되어있다.

 

Footprint(풋프린트) 만드는 법은 아래 참고

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

 

<전자캐드기능사> OrCAD/Allegro PCB Editor로 풋프린트(패키지) 쉽게 만들기 (Package wizard 사용 atmega 8 제작)

OrCAD/Allegro PCB Editor에서 제공하는 Package Designer wizard를 이용해 쉽게 풋프린트를 만들어본다. Atmega8 을 만들어본다. 위 Datasheet를 보고 Atmega8를 측정해보면, 아래와 같다. 아트메가의 핀은 0.3x..

ansan-survivor.tistory.com

 

반응형
반응형

Tcl에 관한 콘솔창 입출력에 대한 테스트

#!/usr/bin/tclsh
# 1st line is for Linux user

# Tcl syntax

# 콘솔창에 hello world 출력 (모두 같음)
# puts : 콘솔에 출력

puts "hello world"
puts {hello world}
puts stdout {hello world}
puts stdout "hello world"

# 변수 선언과 사용 #동일한 줄에 ;로 구분 가능
# set {변수명} {값} : 변수에 값 대입
# ${변수명} : 변수값 불러오기

set a 1 ; set b 2 ;  
puts stdout $a ;     
puts stdout $b ;

# 계산하여 출력

puts [expr 3 + 2]
puts [expr $a - $b]
set c [expr $a * $b] ; # 두 계산값을 c에 저장
puts $c

# 문자열도 타입상관 없이 변수에 들어감
# 여러 문자열을 묶을 때, "" 나 {} 사용
set a hello ; set b world ;
set c "hello world yo"
set d {I am also hello world}
puts stdout $a ;  
puts stdout $b ;
puts stdout $c ;
puts stdout $d ;

# 리스트 만들기
# lindex로 몇번쨰 인덱스인지 추출하기
set myList {red green blue}
puts [lindex $myList 2]
puts [lindex $myList 0]

tcl은 'tclsh'라는 프롬프트를 사용함으로, 앞에 아래처럼 붙여주고 .tcl파일을 실행시켜주면 된다.

이를 실행 시키면,

실행 결과

반응형

10진수 + 16진수 + 8진수 산수하기

부동소수점과 삼각함수 계산

" "와 { }의 차이, { }는 하나의 문자열으로 묶을 때

역슬래쉬\ 를 사용하여 특수문자 출력

scan 이용해보기

# a변수에 십진수 10 + 16진수 10 + 8진수 10 을 더함. 그리고 출력
set a [expr 10 + 0x10 + 010]
puts $a

# b변수에 부동소수점과 삼각함수를 곱하여 출력. 
set b [expr 2.0 * asin(1.0)]
puts $b


# " " 내에서 $를 이용해 변수의 값 참조.
set var 123
puts "result = $var" ; 

# { }로 묶을 시 참조없이 문자 그데로 인식
puts {result = $var}

# \백 슬래쉬를 이용하면 특수문자를 자체로 출력하게 함.
puts "result = \$var"

#현재 경로를 나타내는 예약어 pwd, ""랑 {}랑 비교해보기
puts "result = [pwd]"
puts {result = [pwd]}
puts "result = \[pwd\]"

# 앞과 뒤의 모양을 스캔하여 a, b변수에 넣어줌
scan "123.456" "%d.%d" a b
puts $a
puts $b

실행결과

반응형

'TCL\TK' 카테고리의 다른 글

Tcl 함수 만들기, 함수 구조 예제  (0) 2020.03.28
[TCL/TK] 윈도우10에서 개발 환경 구축  (4) 2020.03.26
TCL/TK Tutorial (튜토리얼)  (0) 2020.03.15
반응형

Tcl/Tk를 하기 위해서는 2가지가 필요하다.

 

1. 텍스트편집을 위한 에디터

2. Tcl/tk 인터프리터.

 

 

1.

텍스트 편집은 본인 취향에 맞게 아무거나 선택한다. 추천하는 텍스트는 Notepad++, Sublime text 3 등이 있다. 필자는 Sublime text 3가 더 좋은것 같다. 윈도우에서 다운로드를 위해서는 아래 링크를 클릭한다.

https://www.sublimetext.com/3

 

Download - Sublime Text

Sublime Text 3 is the current version of Sublime Text. For bleeding-edge releases, see the dev builds. Sublime Text may be downloaded and evaluated for free, however a license must be purchased for continued use. There is currently no enforced time limit f

www.sublimetext.com

window64bit 다운

 

반응형

 

2. 윈도우는 아래 링크로 Tcl/Tk 인터프리터를 다운받는다.

https://www.activestate.com/products/tcl/downloads/

 

Download and Install Tcl: ActiveTcl | ActiveState

Download and install Tcl with ActiveTcl, the precompiled, supported Tcl distribution. ActiveTcl Community Edition is free to use in development.

www.activestate.com

다운로드를 위해서는 회원가입 또는 로그인이 필요하다.

 

다운로드 완료

그럼 확장명 .tcl 이 모두 이 인터프리터를 이용해 실행이 된다.

더블클릭하여 실행시키면 tcl 코드에 작성된 프로그램이 실행된다.

설치를 완료하면, Tclsh 라는 쉘을 이용하여 Tcl코드를 인터프리팅 할 수있다.

프롬프트 기호로는 %를 쓴다.

 

 

반응형

'TCL\TK' 카테고리의 다른 글

Tcl 함수 만들기, 함수 구조 예제  (0) 2020.03.28
Tcl 기본 문법 예제  (0) 2020.03.27
TCL/TK Tutorial (튜토리얼)  (0) 2020.03.15
반응형

https://blog.naver.com/nodong210/220858272913

 

한글 네모 체크박스에 v 표시 넣기

노과장은 업무상 한글문서를 작성하다 보면 종종 네모 모양(□)의 체크박스에 'v'자로 표시를 해야 할 때가...

blog.naver.com

위 블로거님 참고!

반응형
1···161162163164165166167···181

+ Recent posts