Busan IT/제어기초2015. 2. 17. 17:44

제어기초 - AVRARM/Altium으로 반파정류회로 만들기

 

 

AVR이란

 

1.AVR이란.

 

ATMEL사가 개발한AVR은 현재 8비트 AVR32미트 AVR을 제공하고 있는 마이크로 컨트롤러이다.

AVR의 다양한 명령과 쉬운 구조를 띄고 있어 마이크로컨트롤러를 이해하는데 쉽게 접근할 수 있으며, 가격이 저렴하고 응용하

기 쉬워 산업시장에서도 많이 사용되어지고 있다.

AVR1개의 클록사이클에 1개의 명령을 처리할 수 있으며, 1.8V~5.5V까지 어느 전압이든 동작 시킬 수 있다

 

 

AVR의 종류

 

Tiny : 8-24 시리즈 핀수가 핀 정도의 작은 외형으로 대부분 외부 시스템버스가 없고 내부에 정 1K-2K byte도의 플래시 메모리

를 가지고 있어 용량도 작은 편이다 를 지원하지 않고 타이머가 없으며 비트 . UART RTC 16타이머가 없고 비트 타이머만 개 

있는 등 기능이나 성능이 비교적 낮지만 가격이 저렴하여 소형제어기에 8 1-2적당하다.

 

Mega : 28-100 8K-256Kbyte 256-4K byte 시리즈 핀 정도의 외형을 갖고 내부에 정도의 플래시 메모리와정도의 과 의 을 내

장하고 있다 의 클럭에서 의 속도를 갖는 등 성 EEPROM 512-4K byte SRAM . 20MHz 20MIPS능과 기능이 높으나 가격도 높

.

 

AT90 : AT90S . 시리즈 중간정도 사양을 가진 시리즈로 의 경우에는 사양화 되었

 

 

AVR 내부 Block Diagram(Atmega 2560 data sheet)

 

1


 

AVR 특징

 

-프로그램을 다운로드하여 저장할 수 있는 2k ~ 128k 바이트의 플래시 메모리를 내장

 

- 내부 EEPROM 용량: 128에서 512byte까지 가능

- 내부 Ocillator에 의해 동작하는 watchdog timerfull duplex 방식의 다양한 외부 접속 장치를 내장

- 다양한 인터럽트 소스와 파워 절약 모드, 외부 메모리 추가가 가능

- 내장 Device

- Timer/Counter, 직렬 통신 장치, 아날로그 비교기, 외부 데이터 장치 인터페이스, 입출력 포트, SPI, 아날로그 디지털 변환기(ADC)

 

 

ARM

 

ARM이란 무엇인가?

 

-Advanced RISC Machine의 약자

-향상된 RISC 기계

-임베디드 기기에 많이 사용되는 32-bit RISC 프로세서

-1985426일 영국 캠브릿지에 있는 Arcon Computer사에서 처음으로 사용화 -> Arcon RISC Machine의 약자에서 ARM이라는 단어 유래

 

ARM의 종류

 

ARM의 특징

 

- 소비 전력이 적다.

- 빠른 속도에도 발열이 적다.

- 베터리를 전원으로 사용하는 모바일 기기에서 가장 각광받는 요인이 됨.

 

- 칩 면적이 작다.

-소형화에 유리

-발열 문제 적음

 

- 고성능 32비트 RISC프로세서이다.

- 캐쉬메모리를 내장하여 파이프 라인 처리 방식으로 명령을 실행(1명령/1cycle)

- 명령 패치와 데이터 액세서를 동시에 수행할 수 있도록 개선

- 명령 처리 구조 단순화를 위해 모든 데이터 처리나 연산 명령은 내부 레지스터를 중심으로 이루어 지며 레지스터와 메모리 사이에 데이터 이동은 별도의 로드 및 스 토어 명령으로 수행한다.

- 많은 범용 레지스터와 효율적인 명령 세트를 가지고 있다.

- 명령 세트를 확장하기가 매우 용이한 구조(ISA ; Instruction Set Architecture) 로 되어 있다.

- Endian Mode 지원

- ARM사는 반도체 제조사가 아니다.

- 가격이 저렴하다.

 

/* Endian : 컴퓨터나 메모리와 같은 1차원 공간에 여러 개의 연속된 대상을 배열하는 방법

Little Endian Mode : 큰 단위가 앞에 오는 것

Bit Endian Mode : 작은 단위가 앞에 오는 것

 

ARD의 응용 분야

 

- 임베디드 실시간 시스템 - 데이터 저장 장치, 자동차, 산업용 기기, 네트워크 장비 등과 같이 OS를 탑재하지 않은 프로세서 내장형 실시간 제어 시스템

- 개방형 응용 플랫폼 - Linux, Palm OS, Symbian OS, Windows CE 등의 OS를 탑재하여 다양한 응용 프로그램을 실행할 수 있는 개방형 플랫폼, 휴대용 기기, 오락 기기, 디지털 영상 처리 장비 등에 사용됨.

- 보안 응용 분야 - 스카트 카드, SIM 카드, 화폐지불시스템 등

 

 

 

** Altium 실습으로 반파 정류회로 만들기

 

 

 

 

 

 

 

 

 

 

 

반응형
Posted by newind2000
Busan IT/제어언어2015. 2. 17. 17:40

제어언어 - 연산과 변수의 최적화

 

#1. 쉬프트 연산과 최적과

 

학습목표 - 쉬프트 연산의 효과를 이해하고 사용할 수 있다.

 

char cNum = -1;

int iNum;

iNum = cNum;

 

char변수의 저장 공간이 적더라도 int변수로 옮기는 과정에서 음수를 입력해야 하기 때문에 모든 레지스터의 공간을 FF로 채워서 음수를 만들어야 한다.

 

shift연산 >>에서도 음수일 때 빈 공간을 0이 아닌 1로 채우는 이유도 이와 같다.

 

//cpu최적화를 위해서는 unsigned int 변수가 가장 좋다.

//float을 써 버리면 cpu의 속도는 현저히 줄어든다.

//CPU에도 심장처럼 지속적으로 운동을 하는 부분이 있다. 이것을 oscillator라고 한다.

 

CPU에서 연산 속도는 + > 쉬프트 연산 > 곱하기 순이다.

#2. 자료형의 선언과 사용

학습목표 - 자료형의 종류와 표현 양식을 안다.

 

C언어가 제공하는 기본 자료형의 이해

 

변수의 크기는 compiler에 따라 다르다 때문에 sizeof로 변수의 크기를 확인해 볼 수 있다.

 

//sizeof( )

 



 

char(1) <= short(2) <= long(4) <=long long(8)

 

float(4) <= double(8) <= long double(8)

 

 

p/113 예제 - 원의 넓이)

 



 

double을 사용할 때 표현 방식을 %lf(엘에프)를 사용해야 한다.

#3. 변수와 최적화

 

학습목표 - 변수를 최적화 시키는 변수를 이해한다.

 

ASCII코드는 인간이 인식할 수 있는 문자를 지정하고 이를 그림화하여 화면에 표시해 준다.

 

문자를 사용할 때 작음 따옴표를 입력해주면 ASCII코드로 인식한다.

 

p/119

 

unsigned int형으로 선언하면 cpu에 최적화되지만 문자를 입력하는 경우는 연산을 하지 않기 때문에 굳이 int가 아닌 char을 써 주는 것이 낫다.

 

//문자를 표현해 주기는 하지만 모든 정보는 컴퓨터에서 정수 형태로 저장된다.

 

상수란 변경이 불가능한 값을 뜻한다.

 

p/122 실습 - literal size)

 




끝에 "f“를 삽입해 주어 형을 선언해 주는 것을 접미사라고 한다.

 

 

/* xy좌표 축을 입력하여 사각형의 크기를 구하는 프로그램

 



 

 

 

*/

 

 

#4. 다양한 변수

 

학습목표 - 변수의 형태와 특성을 이해한다.

 

 

 

U - unsigned

 

L - long

 

F - float

 

실수에서는 L을 쓰면 long double이 된다.

 

Symbolic상수는 변수처럼 쓰지만 수정이 안되는 상수이다.

 

선언: 접두사 cont

 

//const는 대입연산자가 있을 경우 왼쪽에 배치가 안된다.

 

 




 

위에 값들을 분석해 보자면

 

100literal, iNum1variable value, iNum2constant value이다.

 

// warning C4090을 띄운 이유는 포인터를 사용하여 const를 변경할까봐 경고 메시지를 띄우는 것이다.

 

const를 사용하는 변수선언 시 관례적으로 변수 값을 전부 대문자로 사용하는데 이것은 선언한 const변수의 값을 수정하지 말라는 표시이다.

 

 

 

 

 

 

 

 

 

반응형
Posted by newind2000
Busan IT/제어기초2015. 2. 16. 17:35

제어기초 - 데이터시트의 도면 설계 및 시리얼 통신

 

액츄에이터(Actuator) - 전기 에너지를 역학 에너지로 변환시켜주는 도구.

 

USB to Serial

 

USB로 받은 정보를 RS232로 전달

 

USB -> UART -> RS232

1-------------

2--------------

 

1, 2IC 하나씩 선정

 

module을 구글에서 검색해 보면 정보를 얻을 수 있다.

 

1. FT232R

 

2. Maxim에서 만든 max시리즈(max231)

 

 

해당 데이터 시티를 검색하여 기본 outline에 대한 정보 확인 후 설계하면 된다.

 

Datesheet에 나와 있는 circuit boardOrCad에서 직접 작성해 본다.

 



 

 

UART(Universal Asynchronous Receiver and Transmitter)

 

- 범용 비 동기식 serial

- Atmel 사에서 사용하는 직렬 통신 방법

- 송수신이 동시에 가능한 Full Duplex(전이중) 방식의 통신 모드 지원

- 비동기식 또는 동기식 통신 모드 지원

- 동기식으로 동장하는 Master 또는 Slave mode 지원

- 고 분해능의 Baud Rate 발진기를 내장

- 짝수 또는 홀수 Parity 발생/검사 기능을 Hardware로 지원

- 데이터 오버런/프레임 오류 검출 기능을 내장

- 시작 비트 검출과 디지털 저대역 필터 등과 같은 잡음 제거 기능 내장

 

Line Transceiver

 

Line Transmitter & Receiver

- UART의 출력 신호는 보통 TTL(DC5v) 신호 레벨

- TTL 신호를 입력 받아 노이즈에 강하고 멀리 갈 수 있게 해주는 인터페이스 직접회로를 사용 이를 Line driver/Receiver라고 부른다.

- 대표적인 기기는 RS232C, RS422 RS485

Specification

RS232C

RS423

RS422

RS485

동작 모드

Single-Ended

Single-Ended

Differential

Differential

최대 Driver/Receiver

1 Driver 1 Receiver

1 Driver 10 Receivers

1 Driver 32 Receivers

32 Drivers 32 Receivers

최대 통달거리

15 m

1.2 km

1.2 km

1.2 km

최고 통신속도

20 Kb/s

100 Kb/s

10 Mb/s

10 Mb/s

지원 전송방식

Full Duplex

Full Duplex

Full Duplex

Half Duplex

최대 출력전압

±25V

±6V

-0.25V to +6V

-7V to +12V

최대 입력전압

±15V

±12V

-7V to +7V

-7V to +12V

 

RS232C

- 수신: -3V 이하이면 1, +3V 이상이면 0

- 송신: -12V이하이면 1, +12V 이상이면 1

 

수신이 송신보다 레벨이 높아야 한다.

 





 

 

RS422

- Point To point ModeMulti-Drop mode 두 가지 mode 통신 방식 사용

 

 




 

 

 

RS485

- Non-Echo ModeEcho Mode의 두 가지 모드 통신 방식이다.

- 자신이 방출한 신호를 받을 수 있으면 Echo mode 받지 못하면 Non-Echo mode이다.

- 반이중통신 ex) 무전기



 

반응형
Posted by newind2000
Busan IT/제어언어2015. 2. 16. 13:45

C언어 복습 및 비트 연산자

 

#1. 관계연산자

 

학습목표 - 관계연산자에 결과 값을 이해할 수 있다.

 

관계연산자

 

연산자의 결과는 참(1) 아니면 거짓(0)이다.

 

ex) 1<3 -> 1

 

대입 연산자의 결과는 그 결과 자체이다.

 

ex) A=3 -> A 이고 결론적으로는 3을 뜻한다.

 

모든 연산은 결과를 필요로 한다.

 

-> 논리 연산자는 값이 나와야 하고 비교 연산자는 참 거짓이 나오야 한다.

 

p/64, 66 예제 실습

 



#2. 콤마 연산자/예약어/진법

 

학습목표 - 콤마 연산자/예약어/진법에 대해서 이해하고 활용할 수 있다.

 

p/67 콤마 연산자(,)

 

p/67 예제)

 



 

한꺼번에 변수를 사용할 때 콤마(,)를 사용할 수 있다.

//위와 같이 변수를 선언할 수 있지만 가독성이 좋지 않음으로 따로 변수를 선언하는 것이 //.

 

콤마(,)는 여러 줄에 있는 것들을 합하여 줄 때 사용한다.

 

[ p/69, 03-5 연산자와 우선순위와 결합방향 ]

 

연산 시 한 줄에 여러 가지 연산기호를 쓰지 마라. 가독성이 떨어진다. 굳이 써야 한다면 괄호를 써서 먼저 연산해야 하는 값을 표시해 준다.

// 외울 필요 없이 헷갈리면 둥근 괄호로 묶어줘라.

// 지금까지 배우지 않은 연산자가 있으나 후에 언급할 것이다.

 

같은 서열에 있는 연산자는 결합방향에 따라서 연산을 해준다.

 

입력 연산자에서는 다른 것은 넣지 않고 표현 형식과 저장위치만 입력한다.

 

p/75 예약어

 

해당 페이지에 나온 명령어들은 변수명으로 쓸 수 없다.

// 'main‘ 예약어가 아니다. entry point이다.

 

 

진법은 한자리에서 가장 큰 수가 무엇인가를 따지는 것이다.

 

ex) 16진수 F(진법 -1 까지의 수가 표현)

 

//이진수는 C compiler에서 지원하지 않는다.

#3. 실수의 표현

 

학습목표 - 실수의 표현 방법을 이해한다.

 

8진수를 입력하려면 0으로 시작하여 숫자를 넣어주면 된다.

ex) int num3 = 012

 

16진수를 입력하려면 0x로 시작하여 숫자를 넣어주면 된다.

ex) int num2 = 0xA

 

정수와 실수의 표현방식

 

가장 왼쪽에 부호를 적어서 수를 표현하는 방식을 magnitude방식이라고 한다.

 

실습 - float의 저장형태 이해)

 

float의 저장될 수(0.125)를 직접 메모리에 넣어보자.

 



 

 

#4. &, &&, shift 연산자(비트 연산자)

 

학습목표 - 각 비트 연산의 값의 도출과정을 이해할 수 있다.

 

p/91, 예제

 




double로 할 경우 오차가 없어지는 것이 아니라 보이지 않는 자리에 오차가 생길 뿐이다.

 

1&2 -> and 연산자

 

&iNum -> 주소 연산자

 

3&iNum -> and 연산자

 

// 연산 순서가 헷갈릴 경우 ()를 써서 우선순위를 지정해주자.

&&는 논리연산자로써 좌 우항을 덩어리(참 혹은 거짓)로 계산한다.

 

&의 경우 좌 우측에 있는 숫자를 이진수로 바꾼 후 자리로 비교하여 참과 거짓을 판단한다.

 

실습 - &연산자와 &&연산자의 구분)

 



1 1 1 1

& 1 0 0 1

----------

1 0 0 1

 

그러므로 결과 값은 9가 나온다.

 

//비트 연산자는 후에 칩에 코딩할 때 많이 쓰임으로 잘 알아둘 필요가 있다.

 

“^”XOR 연산을 한다. 다르면 1 같으면 0이 나오는 연산자이다.

 

ex) 10 ^ 7

 

1 0 1 0

^ 0 1 1 1

---------

1 1 0 1

 

"~"은 틸드 연산자라 부르고 이진수가 뒤집어져 버리는 결과가 나온다.

 

ex) ~1 = -2

Shift 연산(<<, >>)

 

>>는 오른쪽으로 다 한 칸씩 옮겨지고 빈칸은 양수일 때 0으로 채워진다.

 

ex) iNum >> 1 iNum을 오른쪽으로 1씩 한 칸씩 민다는 뜻이다.

 

! signed - 부호에서는 빈자리가 1로 채워진다.

 

<<는 왼쪽으로 다 한 칸씩 옮겨지고 빈칸은 무조건 0으로 채워진다.

 

 

 

반응형
Posted by newind2000
Busan IT/제어기초2015. 2. 13. 17:31

반파 정류 회로 PCB 만들기

 

기판의 종류에는 단면/양면/4/6/8층이 있다.

 

Art Work의 작업 순서

 

1. 부품의 위치 선정

 

2. 선긋기

 

3. 거버(Gerber) 파일 변환

 



기판의 층을 세팅하여 준다.

 

Layout Plus에서 옵션,



 

Solder Mask 기판 위에 납이 묻지 않도록 초록색으로 코팅하는 것.



 

Topbottom 체크 박스에 있는 3가지 항목에 모두 체크 표시를 해준다.




Component tool을 누른 후 부품을 알맞게 배치해 준다.



Autopath Route Mode를 사용하여 선을 연결해준다.

 




Obstable tool을 활용하여 board ouline을 설정해준다.

 



다시 Obstacle tool을 사용하여 obstacle type에서 copper pour을 선택하고 내부에 copper를 씌워준다.



Optionsgerber setting을 선택한 후 그냥 엔터를 눌러준다.

 



optionspost process를 선택한 후 batch enabled에서 pcb작업이 필요한 항목만 yes로 바꿔준다.



바꾸는 방법은 options에 있는 enable for post processing에서 체크박스를 클릭하여 변경해주면 된다. 체크 박스를 클릭하면 YES가 되고 해지하면 NO가 된다.



디자인 룰체크(DRC)를 수행 후 문제가 없는 경우 auto - run post processor를 선택한다.



아래와 같은 메모장이 생성되고 batch enabledyes가 선택된 항목들이 파일로 작성되어 폴더에 저장되는데 이것을 PCB제작하는 곳에 맡기면 PCB를 제작하여 준다.

 

대표적인 PCB제작 회사는 https://www.hsdgt.com/ 이다.




 

 

반응형
Posted by newind2000
Busan IT/제어언어2015. 2. 13. 13:27

C프로그래밍 책과 함께 기초 복습

 

#1. C프로그래밍 목차 설명과 C언어 개론

 

나누어진 책의 목차를 보며 현재까지 배운 내용과 배우지 않은 내용의 구분과 주의해서 봐야 할 챕터들에 대해 언급.

 

책으로 다시 봐야 할 부분.

 

Chap. 6 printf 함수와 scnaf 함수 -> 두 함수의 세부 내용을 참고 할 필요가 있다.

Chap. 7 - 2. do~while문의 의한 문장의 반복 -> 수업시간에 다루지 않은 내용이다.

 

복잡한 부분이라 따로 공부한 필요한 부분.

 

Chap. 14 - 포인터와 함수에 대한 이해 -> 복잡한 부분

Chap. 17 - 포인터의 포인터 -> 2개 이상이 붙는 포인터

// Part 03. 포인터와 배열의 완성 은 따로 학습을 해둘 필요가 있다.

 

 

함수의 이름을 사용할 때 기존의 명령어들은 쓸 수 없다. 이러한 명령어들을 예약어라고 하다. 예를 들면 int 변수를 선언할 때 이 변수의 이름을 int라고 지정할 수 없다.

 

프로그램 작동 시 시작되는 것을 진입점(Entry Point)라 한다. CJava에서 진입점은 main함수이다.

 

 

 

 

 

 

 

 

 

#2. 기본문에 대한 이해

 

Main함수의 정식 표현은 아래와 같다.

 

#include <stdio.h>

 

int main (void)

{

 

return 0;

}

 

‘#’은 전처리 언어를 선언하는 부호이다.

 

기본적으로 명령어들이 설정되어 있지 않고 특정 전처리 언어를 불러와야 하는 이유는 라이브러리(명령어들의 집합)의 크기가 크기에 간단한 프로그램을 작성할 때는 크기가 큰 라이브러리를 사용할 필요가 없기에 필요한 전처리 언어가 있을 경우 그때마다 불러서 사용하는 것이 효율적이다.

 

return은 함수를 종료시키는 명령어이다. 윈도우에서는 그 값이 무엇이 입력되든 버리지만 linux0이 아닌 값을 로그파일로 저장한다.

//return 프로그램을 실행하기 전의 상태로 돌아간다는 것을 의미한다.

#3. 주석과 변수

 

Ch02. 프로그램의 기본구성의 주석 부분을 읽고 연습문제를 풀어본다.

 

주석은 코드를 읽는 자나 만든 자에게 코드에 대한 해설을 해주고 대체 코드를 시험해 볼 수 있는 기회를 제공한다.

 

주석에는 “/* */” 형식과 “//” 형식이 있다.

/* */ 형식은 한줄 이상의 주석에서 사용 될 수 있고 해당 기호 안에 내용을 모두 주석 처리한다.

// 형식은 해당 행을 주석 처리한다.

 

/* */안에 //을 사용할 수 있지만 /* */안에 /* */을 중첩사용하게 되면 두 번째 사용된 */에 의해 이하의 주석 부분은 주석이 아닌 것으로 컴파일러가 인식하게 된다.

 

 

Ch03. 변수와 연산자

 

변수는 지정된 것을 1회 이상 사용하고자 할 때 사용자의 편의를 위해 저장해 놓고자 할 때 쓰인다.

 

 

 

 

#4. 연산자

 

Ch.03 변수와 연산자

 

읽어보기

- 복합 대입 연산자

- 증감 연산자

 

 

복합 대입 연산자는

//C++에서는 전치가 대입 증감 연산자를 쓸 경우 속도가 후치보다 빠르기 때문에 전치를 써//서 습관을 들이는 것이 좋다.

 

반응형

'Busan IT > 제어언어' 카테고리의 다른 글

연산과 변수의 최적화  (0) 2015.02.17
C언어 복습 및 비트 연산자  (0) 2015.02.16
반복문을 활용한 배열과 포인터 연산  (0) 2015.02.12
제어문(if~else, for, while)  (0) 2015.02.11
제어문(if~else, for)  (0) 2015.02.10
Posted by newind2000
Busan IT/제어기초2015. 2. 12. 17:38

 반파 정류 회로 Capture 설계

 

 

RMS(Root Means Square)


 

AC 220V는 220v * 루트2 = 311.12...




 


반응형
Posted by newind2000
Busan IT/제어언어2015. 2. 12. 13:24

반복문을 활용한 배열과 포인터 연산

 

#1. 반복문의 활용

 

실습 - 반복문의 활용)

 

구구단 2단부터 9단까지 출력해 보자.

 



 

//프로그래밍시 막힌 부분이 있으면 그림을 그려 이해를 하자. 컴퓨터가 일을 어떻게 시행하//는지 처리 순서대로 하나씩 대입해 보면서 막힌 부분을 풀어봐야 한다.

#2. 반복문의 활용

 

실습 - 반복문의 활용)

 

10미만의 소수를 구하여라.

 



 

프로그래밍을 할 때 일을 세부적으로 나누어보고 작은 것부터 프로그램을 작성하여 올라간다.

 

 

배열

 

배열을 쓸 때 배열의 숫자가 많아질 경우 이것을 반복문을 사용하여 넣어줄 수 있다.



#3. 반복문을 활용한 배열과 포인터 연산

 

실습 - 반복문의 활용)

 

위의 iArray 0 - 9번까지의 주소를 출력한다.

 



 

 

 

 

 

 

//array에서 배열의 숫자를 넣어주지 않으면 주소가 출력되어 버린다. 배열의 값을 출력하고 싶으면 배열의 번호까지 넣어주어야 한다.

 



iArray+1를 출력해 보면 iArray+1가장 앞에 있는 배열의 주소이고 &iArray+1의 경우는 전체의 iArray가 끝나는 주소 값에서 +1을 한 것이다.

 

 

 

 

포인터 연산

 

포인터의 연산에서는 선언된 변수의 크기에 맞춰서 연산을 한다.

ex) int형일 때 주소 +1 = +4 -> +1 = +1*sizeof(int)



 

#4. 반복문을 활용한 배열과 포인터 연산

 

for문에서 두 개 이상의 초기화 값을 적을때는 ‘,’로 분류해 준다. 다만 중간값(참일 때 멈추는 값은) 하나만 쓸 수 있다.

 

실습 - 변수에 따른 포인터의 주소 변화를 이해한다)

 

배열을 활용하여 변수 5개를 설정해 주고 포인터와 반복문을 사용하여 배열의 값을 출력해 보자.

 



 

 

 

 

 

 

 

반응형
Posted by newind2000
Busan IT/제어기초2015. 2. 11. 17:40

OrCAD 매뉴얼 및 반파정류, 전파정류


제어기초 - OrCAD 매뉴얼 및 반파정류, 전파정류

 



 

<BUS의 사용>

 

선이 복합할 경우 이를 단순하게 표현하기 위하여 BUS를 사용한다. 버스에는 네트 네임을 적는데 형식은[네트시작번호..네트 끝번호]이다. ex) A[1...5]

 

핀을 wire와 그리고 wirebus사이에 entry를 이용하여 연결.

 

연결된 pin에 해당 네트 네임을 net alias를 이용하여 표기.

 

<교차점의 사용>

 

교차점

교차점 마크는 두 wire가 가로지를 때 wire를 연결해 주는 역할을 한다. 가로지를 때 wire상에서 한번 클릭을 해주면 되고 그냥 지나가면 생성이 되지 않는다.






































반응형
Posted by newind2000
Busan IT/제어언어2015. 2. 11. 13:39

제어문(if~else, for, while)

 

#1. 반복문의 활용

 

지금까지 제어문에는 if1. if 2. if-else 3. if-else else if) 

for("초기값“;반복조건;반복이 끝나면 수행할 내용)

{

반복할 내용

}

 

실습 - 반복문의 활용)

printf문 하나만을 사용하여 5단 출력하기




 

// 무엇이 반복되고 무엇이 반복되지 않는지 파악한 후 코딩을 해야 한다.

 

#2&#3. 가정문과 반복문의 활용

 

실습 - if~else문과 for의 활용)

 

숫자를 양수, 정수로 입력 받고 소수인지 판단하는 프로그램




//코드를 짜기 전에 문제를 정확하게 파악하여야 한다.

//조금이라도 최적화시키기 위한 코드를 만들어야 한다.

//break; 중괄호 밖으로 빠져나오는 명령어이다.

 

For문에서 괄호를 루프라고 부른다.

 

무한루프에 빠졌을 때 Ctrl + C 혹은 Ctrl + Pause Break키를 누르면 빠져 나올 수 있다.

위에 명령어들은 실행을 멈추게 한다.

 

반복문에는 for 말고도 while이 있다.

 

While문의 문법은 for과 비교하여보면 비교적 간단하다.

 

while("종료조건“)

{

X

}

 

For문과 while문 비교

 

For(초기값; 종료조건; 참일 때 시행할 명령어)

{

X

}

초기값

while(종료조건)

{

X

참일 시 시행할 명령어

}

 

두 반복문의 실행 속도는 동일하다.

 

while문은 무한 반복을 위해서는 조건문에 0이 아닌 자료를 입력해야 한다.

 

#4. 반복문의 활용

 

실습- )

 

키보드를 누르면 ASCII코드가 나오는 프로그램을 작성해 보자




 

이중 for

 

문법

 

for()

{

for()

{

}

}

 

실습 - 이중 for문의 활용)

구구단 2단부터 9단까지를 출력해 보자. 




반응형
Posted by newind2000