본문 바로가기

PADS 단축키 C : Layer의 화면을 Plane Layer처럼 Thermals와 Anti Pads로 Display되는 Negative 형식으로 보여줍니다. D : Layer Display를 ON/OFF합니다. DO : Pad와 Via의 Drill Outline을 ON/OFF합니다. E : 신호선을 배선할 때 Via mode를 ON/OFF합니다. I : Database의 완전한 상태를 Test합니다. L(n) : n번째 Layer로 이동합니다. N(s) : s(네트명)를 하이라이트 하고, 하이라이트된 Net를 OFF할때는 N enter를 칩니다. PN : 부품의 핀번호를 ON/OFF합니다. PO : Copper Pour의 Hatch Display를 ON/OFF합니다. Q : 커서의 현시점에서 X, Y의 거리를 측정합.. 더보기
recordset - addnew, insert, update 이번의 강좌는 레코드셋 객체를 통한 레코드의 조작방법에 대한 이야기입니다. 레코드 셋을 통해서 데이터를 Insert 하고, Update 하고, Delete 하는 방법을 알아보자는 것입니다. 기존에 우리는 테이블에 데이터를 넣기위해 주로 쿼리를 사용했습니다. 물론, 그 방법이 속도면에서는 빠르고, 데이터의 제어도 탁월한 편이지요. 하지만, 그 쿼리를 이용한 방법은 뭔가 직관적이지 못하다는 문제가 있었습니다. 에러메시지가 빠방!! 터지면 머리가 터질때까지 그 문자열에 작은 따옴표며, 문장 형식이며, 데이터들이 변수에는 잘 들어있는지 등등을...살펴야만 하지요.. 어떤 데이터가 들어갈 경우 에러가 나는 것인지도 모르고 무작정 찾아 헤매야만 합니다. 하나의 레코드에 약 100 개의 컬럼값을 넣는다고 생각해 보세.. 더보기
ADO ADO 객체 객체 설명 Connection 데이터 연결 설정 Command SQL 명령 구현 Parameter SQL 명령에 필요한 파라미터 설정 Recordset 데이터 탐색 및 조작 Field Recordset 객체의 필드를 구현하고 조작 Error Connection 객체의 에러 처리 Property ADO 객체 각각의 특징 구현 ADO 컬렉션 컬렉션 설명 Errors Connection 객체에 발생한 모든 에러 객체 관리 Parameters Command 객체와 관련된 모든 Parameter 객체 관리 Fields Recordset 객체와 관련된 모든 Field 객체 관리 Properties Connection, Command, Recordset, Field 객체의 Property 객체 관리 AD.. 더보기
recordset Append & 연산 필드 추가 1.Append 방법 Recordset 오브젝트의 Fields 컬렉션에 Field 오브젝트를 추가하면 메모리 위에서 새롭게 레코드셋을 작성하는 것이 가능하다.작성한 레코드셋에는 Append 방법이나 Update 방법을 사용하고 레코드를 추가하는 것이 가능하다.【서식】recordset.fields.Append Name,Type, DefinedSize, Attrib, FieldValue recordset:Recordset 오브젝트 Name:레코드셋에 추가하는 필드의 이름 Type:필드의 데이터 형태(adVarChar을 지정한 때는 필드의 사이즈를 지정) DefinedSize:필드의 사이즈(생략 가능) Attrib:필드의 속성.기정치는 adFldDefault. FieldValue:신규 필드의 값을 지정.지정하.. 더보기
Format 함수 ■ FORMAT 함수 사용하기 용도 구분자 기능 사용 예제 결과 숫자 # 숫자의 자리 수를 지정한다. Format(123, "####") 123 무효의 0은 변환하지 않는다. 0 숫자의 자리 수를 지정한다. Format(123, "0000") 123 무효의 0을 변환한다. % 숫자를 %로 변환한다. Format(23, "##%") 2300% , 세 자리마다 ','의 위치를 지정한다. Format(1234, "#,###") 1,234 . 소수점의 위치를 지정한다. Format(12.34, "##.#") 12.3 +- 숫자의 부호를 지정한다. Format(123, "+###") 123 문자 @ 문자열의 길이를 지정한다. Format("ABC", "@@@@") " ABC" 문자열을 우측으로 정렬한다. & 문자.. 더보기
접두어 Control Name 접두어 사용 예 3D Panel ADO Data Animated button Check box Combo box, drop-down list box Command button Common dialog Communications Control(특정 형식이 알려지지 않은 경우 프로시저 내에서 사용됨) Crystal Reports Data Data control Data grid Data repeater Data-bound combo box Data-bound grid Data-bound list box Date picker Directory list box Drive list box File list box Flat scroll bar Form Frame Gauge Graph Grid.. 더보기
Format 함수의 활용 활용 사례 Source Coding (활용예) List1.AddItem (결과값)숫자0의 표현 : 형식이 0일경우 Format(0, "0")0숫자0의 표현 : 형식이 #일경우 Format(0, "#") 시스템일자(현재일자) Now2011-07-25 오후 1:53:18시스템일자(현재일자) Date2011-07-25시스템시간(현재시간) Time오후 1:53:18출고일.Value dtpDate1.Value2011-07-25 오후 1:53:16출고일.DayOfWeek;요일의상수값 일1,월2 dtpDate1.DayOfWeek2시스템일자(현재일자) Format(Date, "Long Date")2011년 7월 25일 월요일시스템일자(현재일자) Format(Time, "Long Time")오후 1:53:18시스템일자(.. 더보기
A Thread to Visual Basic: Multi-Threading In VB5 and VB6 AddressOf 연산자의 등장으로 Visual Basic을 사용하여 이전에는 불가능했던 작업을 수행하는 방법을 설명하는 전체 업계가 저자들 사이에서 발전했습니다. Microsoft Systems Journal 및 Visual Basic Programmer 's Journal의 최근 기사에서는 Visual Basic 프로그래머에게 Visual Basic에서 멀티 스레딩을 직접 지원하기 위해 CreateThread API 함수를 사용할 수있는 가능성을 소개했습니다. 멀티 스레딩의 빠른 검토이미 멀티 스레딩 기술에 정통한 분이라면이 섹션을 건너 뛰고 "The Threading Contract"또는 "Service Pack 2의 새로운 기능"절에서 계속하십시오.단일 CPU가 여러 작업을 수행하는 방법은 무엇입.. 더보기
ODBC 연결문자 및 연결하기 ODBC 추가를 하고 필자의 구성사항 DNS종류:사용자 DSN 원본:MIcrosoft ODBC for Oracle 데이터 원본 이름 : "DDD"(사용하고자하는 이름) 더보기
PCB 설계 계산 ▷ 전류 입력 : [Amps] [전류 입력 범위: 0~35A] ▷ 허용 상승 온도 (=10도 이면 안전한 온도값): 섭시 [도] [허용 상승 온도: 섭씨 10~100도] ▷ 전도체 두께(=보통의 경우는 동박 두께) : [oz. per sq. foot.] [동박 두께 : 0.5~3 온스] ▷ 주위 온도(=보통 섭시 25도를 기준으로 함) : 섭시 [도] ▷ 전도체 길이(=동박 패턴 길이) : [인치] PCB 내층 계산 값: ▷ 권장 패턴 두께 : [Mils] ▷ 동박 면적 : [Square Mils] ▷ 저항값 : [Ohms] ▷ 강하 전압값 : [Volts] ▷ 전력 손실: [Watts]PCB 외층 계산 값: ▷ 권장 패턴 두께 : [Mils] ▷ 동박 면적 : [Square Mils] ▷ 저항값 : [.. 더보기
소프트웨어 요구사항에 대한 보편적인 진리 8가지 보호되어 있는 글입니다. 더보기
Component 만들기 출처 : http://l2j.co.kr/1515 먼저 콤포넌트에 대해서 알아보겠습니다. 왜 콤포넌트을 만들어야하는가? 이것의 해답은 재사용이 가능했으면 좋겠다는 객체모델에 근거을 두고 있습니다. 컴포넌트기반의 애플리케이션이라고도 불립니다. 이것은 응용프로그램을 컴포넌트의 조합으로 개발하는 것을 말합니다. 우리는 많이 자주 사용되는 것이 있다면 함수로 만들어서 사용했었는데, 이런식으로 만든 것을 콤포넌트라고 부릅니다. ADO 객체(콤포넌트)를 우리는 무엇으로 만들었는지는 모르나, 인터페이스만 알고 있는 것으로 잘 사용하고 있는 것이 그 예입니다. cf)인터페이스 (일종의 함수) 우리는 내부는 알지 못하지만 인터페이스을 통해 ADO의 콤포넌트을 잘 사용할수 있었습니다. 그것을 일반적으로 콤 이라고 부릅니다... 더보기
SOA(Site Open API) 활용법 원문 : http://www.sir.co.kr/bbs/tb.php/g4_tiptech/9306 --------------------------------------------------------------------------------------- 문서: SOA(Site Open API) 활용법 제작: ky (thruthesky) , Korean 연락: thruthesky@yahoo.co.kr http://jangnans.com 날짜: 2006년 12월 초(배포 2007년 1월 초) 요약: 본 문서를 통해서 블로그와 Open API 가 무엇인지, 그리고 Open API 구체적인 산물인 SOA의 활용에 대해서 설명합니다. (특히, 원격 블로깅에 대해서 초점을 맞추어서 설명을 합니다.) 요약: Web2... 더보기
정규 표현식 출처 : http://kldp.org/~kabin/doc/regexpress.htm 언제 정규식을 사용하게 되는가? ============================= 여러분은 보통 다음과 같은 경험을 한 적이 있을 것이다. . vi 에디터에서 편집중인 파일 내의 모든 특정 문자열을 또 다른 특정 문자열로 바꾸고 싶은 경우 . ls 명령을 통해 보다 명확한 파일이름을 주고 싶은 경우 . grep 명령을 통해 특정한 문자열을 포함한 파일을 가려 내는 경우 등. 예를 들어 vi 에디터에서 편집중인 내용중에 'body'라는 문자열을 'Body' 로 바꾸고자 할 경우 우리는 다음과 같은 방법을 사용한다. :%s/body/Body/g 위의 명령을 사용할때 정규식을 이용하면 보다 세밀한 지정을 할 수 있다. 예를.. 더보기
Gerber파일의 검사를 위한 몇가지 기능 Gerber파일의 Verification 검사방법 원본 Gerber파일과 수정된 Gerber파일의 비교 검사에는 다음과 같은 방법이 있겠다. 1. 원본 파일과 수정 파일의Graphic적인 비교 비교적 원시적인 방법으로 사용자가 수작업에 의해서 2개의 파일의 차이점을 찾아내는 방법을 그대로 프로그램이 대신하는 방법이다. 그러나 아직 구체적으로 현존하는 프로그램이 있는지 파악이 되지 않고 있다. Graphic적인 비교 방법이기 때문에 Copper의 모양이 틀린 부분도 쉽게 찾을 수 있다. 2. Vender가 제공한 Netlist와 CAM350에서 만들어진 Netlist를 비교하는 방법 Vender가 Netlist를 제공하여 준다면 아주 확실하게 검사를 할 수 있다. 그러나 문제는 Vender가 어떠한 형식의.. 더보기
Real-Time Kernel Concepts 1. Real-Time Kernel Concepts 우선 real-time system은 다음과 같은 두가지로 나뉜다. SOFT real-time system System이 task를 가능한 빨리 수행하나 반드시 명시된 시간안에 끝마칠 필요는 없는 system HARD real-time sysem Task들이 정확히 명시된 시간안에 끝나야 하는 system 본서는 SOFT real-time system을 가정한다. 1.1 Critical Section of Code 우리가 코드의 일정 부분을 critical section으로 나눈다는 말은 critical section이 수행될 때에는 interrupt가 disable됨으로써 발생하지 않도록 한다는 의미이다. 1.2 Task * 하나의 task는 prio.. 더보기
Pads 9.3 및 9.4 설치방법 1.인스톨 PADS9.3_mib.exe 2. 라이센서란 문구 나오면, Skip 한다. 3. PADS 9.3 설치파일 전체 체크 한다. 4. 라이센싱 시스템 인스톨 파일이 자동 으로 설치 된다. skip 선택! 5, 그다음 c++ 2005 가 설치가 되면서 인스톨이 종료! 6, Auto.bat 클릭 Float.bat 클릭 MentorKG.exe 파일 클릭 하고 기다리면, notepad를 자동으로 열리면서 텍스트 문서가 뜬다. 저장을 잘해 놓으세요. 7.환경변수 환경 변수 MGLS_LICENCE_FILE C\Flexlm 폴더 설정 C\ Flexlm 안에 Lisence.dat로 변경( crack Keysen에서 구성된 Lisence 파일) Pads 깔린 폴더에 Lisence.dat 를 넣음 환경변수 : MGL.. 더보기
DxDesinger DxDesigner DxDesigner는 여러 플랫폼을 통하여 PADS Layout과 Expedition Enterprise와 연계하여 사용할 수 있는 회로 설계 툴로써 PADS Logic과 함께 회로설계에 있어 강력한 솔루션을 제공합니다. 제품개요 보다 확장된 환경 및 기능으로 디자인을 생성, 정의, reuse하는데 필요한 모든 솔루션을 제공하고 있으며, 회로의 설계와 검증, 부품의 선택, library management, signal integrity 검증, 프로젝트의 관리와 팀 기반의 설계 시 필요한 요구사항을 충족하여 드립니다. 주요특징 다양한 PCB Layout 제품과 연계가 가능하며 설계 초기에서 마지막까지 단일화된 환경을 제공 전사 시스템과 부품과 디자인 정보를 연계하여 부품 선택의 오류를.. 더보기
Max Layers 설정 변경 PCB Decal Editor 환경에서 Layers Sutep 내에 있는 Max Layers를 설정해버렸는데... 기본모드로 전환을 할 수 없네요... 한 번 Max Layers로 설정되면 바꿀수 없는 건가요?? 오토매틱 백업에선 이미 돌릴수 없게 되었을까요? 아니면 일일이 레이어 번호같은것을 바꾸어야할것 같은데요 모든 프로그램은 간혹 에러를 발생하므로 자주 세이브 하시길 권장합니다. 우선 max 레이어로 된 부품을 eco 모드에서 add part 로 불러 오세요 (물론 max 레이어로 설정이 되어 있어야 불러집니다.) 그리고 file==>export==>XXX.asc파일을 생성할때 설정창에 오른쪽 항목 모두 체크 하시고 그중에 미셀로노스 라고 있습니다. 스펠링이 생각이 나질 안네요 그것 체크 해제 하시.. 더보기
비아 사이즈 계산기 - 마이컴박스 비아 사이즈 계산기 - 마이컴박스 http://www.micombox.com/index.php?document_srl=489570&mid=pcb_pads 더보기
pads와 orcad를 같이 설치시 시스템환경변수 pads와 orcad를 같이 설치시 시스템환경변수에서 path부분의 orcad부분을 맨앞쪽으로 에디트하셔야 됩니다. %CDSROOT%\tools\fet\bin;%CDSROOT%\tools\pcb\bin;%CDSROOT%\tools\specctra\bin;%CDSROOT%\tools\PSpice;%CDSROOT%\tools\PSpice\Library;%CDSROOT%\tools\Capture;%CDSROOT%\OpenAccess\bin\win32\opt; 이부분이 맨앞으로 오게 해야 됩니다. 더보기
VB6에서 WinXP Style 적용하기 1. 먼저 일반적으로 EXE 만들듯이 프로그램을 작성합니다. 테스트를 위해 그냥 기본 컨 트롤 몇가지만 넣어두면 되겠지요. 2. 프로그램을 컴파일합니다. (test.exe) -> 어차피, 나중에 컴파일하더라도 실행 파일 명만 MANIFEST 파일과 맞추면 굳이 여기서 안해도 됩니다.. 3. 메모장으로 test.exe.MANIFEST 이라는 파일을 만듭니다. 뒤에 붙는 MANIFEST는 반드시 모두 대문자여야 하며, 앞부분은 실행파일명으로 합니다. 그 파일 안에 라는 내용을 넣습니다. 4. 다시 비베로 돌아와서, 폼의 선언부에 다음 코드를 넣습니다. Private Type INITCOMMONCONTROLSEX_TYPE dwSize As Long dwICC As Long End Type Private Dec.. 더보기
전자캐드 거버강좌1 김영철 (pcsluh ) [강좌] 전자캐드 거버강좌1 1999-06-22 22:15 484 line [김영철 의 전자캐드 강좌1] 이후 연재 할 강좌는 본인의 순수한 창작물로써 개인적인 용도로 교육 학습 등에 사용 할 경우는 관계 없으나 다른 게시판에 무단으로 전제 복사 도용등 기타 저작권 을 침해 하는 행위를 본인의 서면 동의 없이 하는 것은 삼가 하기 바랍니다. ■ GERBER 요리 하기. 이 강좌를 쓰게된 동기는 하이텔 때문이다. 하이텔내 디지탈 동호회와 CAD 동호회 활동을 하면서 전자관련 PCB ARTWORK을 개인용 컴퓨터로 할때 가장 이해하기 어려워 하는 부분이 GERBER 로 출력 하는것이라는것을 알게 되었다. 제가 직접 격었던 어려움을 떠 올리면서 강좌를 쓰기로 하였다. GERBER 출력.. 더보기
WINXP 완벽하게 복제하는 방법-사양이 다른컴에 고스트 사용법 윈도우 운영체제를 여러대의 컴퓨터에 설치하기 위해서 우리는 GHOST를 씁니다. gho파일을 설치하고 나서 안전모드로 들어가서 각종 드라이버를 삭제하고 부팅하면 드라이버를 다시 설치할 수 있었습니다 - win95 & win98 의 경우 win2000에서는 복제하는 툴이 제공된다는 사실을 아시는 분들이 몇 안된다는 것을 느끼고 이 글을 씁니다. 역시, winXP에서도 같은 복제용 툴이 제공되고 있습니다. Windows XP 제품 CD의 SupportToolsDeploy.cab 파일이 복제 툴입니다. 이제부터 사용하는 방법을 간단하게 설명하겠습니다. 윈도XP를 원본컴퓨터에 설치하고 여러가지 소프트웨어의 셋팅을 완료합니다. Windows XP 제품 CD의 SupportToolsDeploy.cab 파일의 압축을.. 더보기
dsPIC Programming Notes - Debugging Startup Code Microchip dsPIC Programming Notes Microchip has provided very good documentation and tutorial on their website, you can get yourself started with the resources. Here I'd like to present a few notes from my experience of programming with MPLAB IDE and dsPIC30F family chips to save your time. 1. Startup Function If you use the Project Wizard in MPLAB to create a project, you need to supply a main .. 더보기
평균, 표준 편차, RMS 함수 Dim x(5) as double 'x() is an array of measured voltages Dim N as integer 'N is the size of the population Dim Sum, Sum_Sqr, Sum_Sigma as double 'collects the sum Dim Average, RMS, Sigma as double 'results we are calculating x(1) = 1.2: x(2) = 0.8: x(3) = 1.8: x(4) = 0.7: x(5) = 1.2: N = 5 For i = 1 to N Sum = Sum + x(i) Sum_Sqr = Sum_Sqr + (x(i)) ^ 2 Next i Average = Sum / N RMS = (Sum_Sqr / N).. 더보기
dsPIC CNC servo Project Open source Project Description This project was developed as an inexpensive way to drive small dc brushed motors as positioning servos for use on a desktop sized CNC machine. The board is interfaced to the PC through 2 pins of a parallel port. The drive signal on these pins is known as quadrature drive. The power stage consists of a power op amp driven in constant current mode. The internal PIC processor (.. 더보기
MPLab C30 printf 사용하기 write()함수를 오버라이딩. #include 추가하고 아래 write()함수를 추가해 주면 된다. int write(int handle, void *buffer, unsigned int len) { int i; for (i = len; i; --i) { char c = *(char*)buffer++; U1TXREG = c; while(!U1STAbits.TRMT); } return(len); } 그리고 PIC은 Heap영역을 따로 할당해 주어야 한다. MPLAB Project Builder Option에서 힙영역을 할당해 주면 된다. 물론 printf를 사용하면 20%정도 오버헤드가 걸린다. printf 사용하지 않았을 경우 section address length (PC units) length (.. 더보기
모달 다이알로그 시작시 숨기기 고수닷넷 - 데미소다오렌지님 1. Introduction MFC를 사용해서 트레이 기반으로 동작하는 다이알로그 베이스드의 프로그램을 개발해 본 사람이라면 누구나 한번쯤은 이런 생각을 해 보았을것이다. 이놈의 모달 왜 시작하기만 하면 나타나지? ShowWindow API를 사용해서 SW_HIDE를 몇 군데 넣어보아도 뾰족한 수가 없었을 것이다. 최대한 노력을 해 보았자, 화면에 나타났다 금새 사라지는게 전부다. 그럼 왜 이런 현상이 나타날까? 그건 MFC 내부적으로 DoModal안에서 다이알로그를 Show하게 만들기 때문이다. 그렇다면 방법은 없을까? 불행하게도 일반적인 ShowWindow를 사용한 방법은 없다. 이 문서에서는 문제를 해결하는 다른 방법을 제시하고 있다. 그럼 2장에서 좀 더 자세히 살펴보.. 더보기
Doc/View 구조 없는 SDI에서 스플릿 윈도우 만들기 Visual C++ 6 에서 새롭게 지원된 MFC App Wizard 옵션은 바로 다큐먼트 뷰 구조를 사용하지 않고 SDI나 MDI를 할 수 있다는 것입니다. 다큐먼트 뷰 구조가 아닐때 스플릿 윈도우를 만드는 방법을 간단히 알아보도록 합니다. Doc/View 구조 없는 SDI에서 스플릿 윈도우 만들기 다음과 같이 메인 프레임에 스플릿 윈도우 변수를 마련한다. class CMainFrame : public CFrameWnd { public: CMainFrame(); protected: DECLARE_DYNAMIC(CMainFrame) CSplitterWnd m_wndSplitter; 그리고 클래스 위자드를 불러서 OnCreateClient라는 함수를 오버라이드한다. 그후 자신이 올리려는 뷰를 RUNTIME.. 더보기