Netmax Technologies is an organization which is established in the field of Network Support,
Network training and Embedded systems. It provides support and training in the field of
networking solutions (CISCO, LINUX) and embedded systems (Micro controller based design,
Electronics system design).
In Education, it has strategic alliance with REDHAT Inc. It is also NOVELL EDUCATION
PARTNER with which it provides NOVELL and SUSE LINUX courses. Netmax technologies
also conduct courses in CADENCE based design tools. Netmax Technologies also provide
Technical Research & Development support and consultancy to some Electronics companies.
Their clients for R&D support in field of embedded systems are:
1) Recorders and Medicare ltd Chandigarh.
2) TELEBOX India ltd.
3) Lotus Machines Pvt. Ltd. Chandigarh.
4) Impearl Electronics Pvt. Ltd. Chandigarh.
5) KANTA Electrical Ltd. Mohali.
The partial list of our clients for network field is as below:
1) CEDTI, Mohali
2) Premier ISP, Chandigarh
3) Innovative Solutions, Chandigarh
4) Emmtel ISP, Chandigarh
5) NIPER, Mohali
6) Navik Technologies, Chandigarh
7) Software Technology Parks India, Mohali
8) Glide Internet Services
9) Rana Group
10) IDS
11) HFCL Infotel Ltd.
12) Targus technologies pvt ltd
13) STPI, Mohali
14) BBMB
15) The Tribune
16) Quark
17) Ind Swift


Support Area (Networking Solutions)
1) LINUX / UNIX networks
2) SUN networks
3) CISCO devices (Routers, Switches, Firewalls, Cache Engine, RAS etc.)
4) Bandwidth Manager software and hardware
5) Radio Links
6) Security Solutions
Design Services (Embedded Systems)
1) MCS 51
2) PIC
3) AVR &Arduino
4) ARM & Raspberry Pi (ARM-11)
Network Training
4) WINDOWS Server 2000, 2003, 2008

Netmax Technologies is a leader in education services and developer of innovative embedded
solutions. To meet the demands of Post PC era Netmax provides complete solutions as well as
design-to-order services to satisfy its customers.


2.1 What is Embedded System?
Embedded system employs a combination of software & hardware to perform a specific
function. It is a part of a larger system which may not be a “computer” Works in a
reactive & time constrained environment.
Any electronic system that uses a CPU chip, but that is not a general-purpose
workstation, desktop or laptop computer is known as embedded system. Such systems
generally use microprocessors; microcontroller or they may use custom-designed chips
or both.
They are used in automobiles, planes, trains, space vehicles, machine tools, cameras,
consumer and office appliances, cellphones, PDAs and other handhelds as well as
robots and toys. The uses are endless, and billions of microprocessors are shipper every
year for a myriad of applications.
In embedded systems, the software is permanently set into a read-only memory such as
a ROM or flash memory chip, in contrast to a general-purpose computer that loads its
programs into RAM each time. Sometimes, single board and rack mounted general-
purpose computers are called "embedded computers".
2.2 Embedded System Applications:-
Consumer electronics, e.g., cameras, cell phones etc.
Consumer products, e.g. washers, microwave ovens etc.
Automobiles (anti-lock braking, engine control etc.)
Industrial process controller & defense applications.
Computer/Communication products, e.g. printers, FAX machines etc.
Medical Equipments.
 A Microprocessor is a general purpose digital computer central processing unit
(C.P.U) popularly known as CPU on the chip. The Microprocessors contain no
RAM, no ROM, and no I/P O/P ports on the chip itself.


I/O ports and a timer all on a single chip. Most PC's use CPU based on this architecture.  The Microprocessors have many operational codes(opcodes) for moving data from external memory to the C. Memory.RICS stands for Reduced Instruction Set Computer.etc. These are: 1) RISC.  They are expensive than Microcontrollers. simpler and faster instructions would be better.e. In common CISC chips are relatively slow (compared to RISC chips)per instruction.  On the other hand a Microcontroller has a C.P.i. Therefore fewer.Reduced instruction set computer. 2) CISC. For instance Intel and AMD CPU's are based on CISC architectures.5 TYPES OF MICROCONTROLLER ARCHITECTURE: There are two types of Microcontroller architecture designed for embedded system development. any amount of external memory can be added to it.  But in controllers there is a fixed amount of memory which makes them ideal for many applications. Timer/counter chip. but use little (less than RISC) instructions.  In order to make a Microprocessor functional we must add RAM.  We need to add some external devices such as PPI chip.P.U (microprocessor) in addition to a fixed amount of RAM. than the large. 2. ROM. MCS-51 family microcontrollers based on CISC architecture . ROM. Typically CISC chips have a large amount of different and complex instructions. 2.6 DIFFERENCE BETWEEN CISC AND RISC: CISC stands for Complex Instruction Set Computer. The philosophy behind it is that almost no one uses complex assembly language instructions as used by CISC . complex and 4 . to make it functional.and people mostly use compilers which never use complex instructions. 2. I/O Ports and timers externally to them .4 DISADVANTAGES OF MICROPROCESSORS OVER MICROCONTROLLERS  System designed using Microprocessors are bulky. Interrupt controller chip.Complex instruction set computer.U  Whereas Microcontrollers may have one or two operational codes.

It's intended for artists. Atmel’s AVR microcontroller based on RISC architecture. Figure 1: Arduino Uno Board 3. The microcontroller on the board is programmed using the Arduino programming language (based on Wiring) and the Arduino development environment (based on Processing). motors.g. Arduino projects can be stand-alone or they can communicate with software running on a computer (e. hobbyists. and anyone interested in creating interactive objects or environments . Processing.1 Some of the Advantages/Features of Arduino:  High speed RISC AVR CPU. Flash. However. more instructions are needed to accomplish a task. MaxMSP). easy-to- use hardware and software. designers. ARDUINO (AVR) What is arduino technology? Arduino is an open-source electronics prototyping platform based on flexible. 5 .slower CISC instructions. and other actuators. 3.Arduino can sense the environment by receiving input from a variety of sensors and can affect its surroundings by controlling lights.

ATMEGA328 is used.  Compact size board.  Applications such as MP3 player.  Easily programmable and applicable. in arduinouno. Automatic Head Tracking using IR Sensors. Polar Plotter. PIC and some AVR controllers.000 Flash/100. Compare Mode.  Directly programmable through USB. and CaptureMode – Real Time Counter with Separate Oscillator 6 . 3.2 Getting Starting with Arduino Technology: Arduino Technology is based upon Advanced Virtual RISC (Microcontroller) simply AVR.  Support more speed than 8051. ATMEGA328 is a 28 pin (PDIP) package microcontroller with various specifications and features as explained below: 3. Low Power AVR8-Bit Microcontroller • Advanced RISC Architecture – 131 Powerful Instructions – Most Single Clock Cycle Execution – 32 x 8 General Purpose Working Registers – Fully Static Operation – Up to 20 MIPS Throughput at 20 MHz – On-chip 2-cycle Multiplier • High Endurance Non-volatile Memory Segments – 4/8/16/32K Bytes of In-System Self-Programmable Flash program memory – 256/512/512/1K Bytes EEPROM – 512/1K/1K/2K Bytes Internal SRAM – Write/Erase Cycles: 10.3 Features: • High Performance.000 EEPROM – Optional Boot Code Section with Independent Lock Bits –In-System Programming by On-chip Boot Program –True Read-While-Write Operation – Programming Lock for Software Security • Peripheral Features – Two 8-bit Timer/Counters with Separate Prescaler and Compare Mode – One 16-bit Timer/Counter with Separate Prescaler.

and Extended Standby 3. ADC Noise Reduction. – Six PWM Channels – 8-channel 10-bit ADC in TQFP and QFN/MLF package Temperature Measurement – 6-channel 10-bit ADC in PDIP Package Temperature Measurement – Programmable Serial USART – Master/Slave SPI Serial Interface – Byte-oriented 2-wire Serial Interface (Philips I2C compatible) – Programmable Watchdog Timer with Separate On-chip Oscillator – On-chip Analog Comparator – Interrupt and Wake-up on Pin Change • Special Microcontroller Features – Power-on Reset and Programmable Brown-out Detection – Internal Calibrated Oscillator – External and Internal Interrupt Sources – Six Sleep Modes: Idle.4 Pin Diagram: Core Architecture: Figure 2: Pin Diagram of ATMega328p 7 . Power-save. Power-down. Standby.

This sketchbook is the IDE + Compiler + Burner Software. a combined package for programming an arduino board.5 Programming in Arduino: In arduino programming is done with sketchbook provided by arduino itself.3. 8 .

1 Advantages of C over Assemble Language programming:  Knowledge of the processor instruction set is not required. Programming and Interfacing 4. this increases efficiency.  Programs get a formal structure and can be divided into separate functions.  Details like register allocation and addressing of memory and data is managed by the compiler.  Keywords and operational functions can be used that come closer to how humans think.Menu Smart Buttons Code Window Status Figure 3: Arduino Sketchbook Port Status 4.  Programming and program test time is drastically reduced. 9 .

CODE FOR BLINKING: int led=0. It is given VCC through resistors of 330E. proper hexadecimal code for its binary is programmed in Arduino. because of the comfortable modular program construction. The interfacing of LED’s shown in the figure above.  The supplied and supported C libraries contain many standard routines such as numeric conversions. the binary given code will be 10101010 and its corresponding hexadecimal code will be 0xAA.  Reusable code: Existing program parts can be more easily included into new programs.: To glow alternative LED’s. Eg. Existing programs can be quickly adapted to other processors as needed. 1: LED interfacing and its blinking (PORT Programming). //LED connected to pin 0.e. also a darlington pair IC is also used i. ULN 2803 which shift the DC level of voltage coming from the port PIC microcontroller. So 0xAA is fed to controller with coding. Now to glow the desired LED.  The C language based on the ANSI standard is very portable. void setup() { 10 .

//Write Logic 1 (HIGH) to Pin 0 delay(500).2. intledup = 7.5. void setup() { for(inti=0. delay(50). //Delay of 500 miliseconds digitalWrite(led. } } void loop() { while(n!=0) { for(inti=0.1. HIGH). i++) { digitalWrite(led[i].4. } for(inti=7. } CODE FOR RUNNING LED’s: int led[] = {0. digitalWrite(led[i]. OUTPUT). LOW). i--) 11 . i>=leddn. HIGH). OUTPUT). i++) { pinMode(led[i]. //Write Logic 0 (LOW) to Pin 0 delay(500). i<=ledup. LOW).3. intleddn = 0. i<=ledup.7}. int n = 20. pinMode(led. //Make LED Pin 0 OUTPUT } void loop() { digitalWrite(led. delay(5).6.

} n--. HIGH). Now also we can display more than one seven segment display simultaneously but it will take a number of pins of controller. delay(50). 12 . LOW). So we have to give BCD code for desired digit to be displayed on it. digitalWrite(led[i]. } Thus LED blinking practical is done successfully 2: SEVEN SEGMENT DISPLAY AND INTERFACING A Seven segment display consists of seven LED’s arranged in a pattern of digit 8. This is done by providing a very small delay such that our eyes can’t even detect the change over from one display to another. delay(5). { digitalWrite(led[i]. } n=0. so we use two pins from controller to control the display of seven segment display one by one from port such that it appears to be displaying simultaneously. We use BCD to seven segment decoder which saves a pin of microcontroller from seven (one for each LED) to four.

6.2.h> //set counter to zero initially int count = 0.4. /*display count n 7 segment with 1 second delay function uses 1 as 100 milli second delay sosegment_Disp(count. void setup() { //set up the 7 segment data and switching pins sevenSeg_Init(0.3. } void loop() { //Increment counting count++. 5) means = 500 ms delay andsegment_Disp(count. 10) means = 1000 ms delay */ segment_Disp(count.5.Coding for Display: // include the library code: #include <SevenSegment. 10).7). } 13 .1.

phases) arranged around a central gear-shaped piece of iron. Fundamentals of Operation: Stepper motors operate much differently from normal DC motors. So when the next electromagnet is turned on and the first is turned off. first 1 electromagnet is given power. which makes the gear’s teeth magnetically attracted to the electromagnet’s teeth. To make the motor shaft turn.e. synchronous electric motor that can divide a full rotation into large number of steps. effectively have multiple “toothed” electromagnets (a. without any feedback mechanism. A Stepper motor is brushless. and from the process is repeated.3: INTERFACING AND CONTROLLING STEPPER MOTOR WITH ARDUINO. Each of those slight rotations is called a “step”. Stepper motor is that which rotates in steps like all motors it is also based on electromagnetic induction i. The motor’s position can be controlled precisely. which are very large stepping motors with a reduced pole count and generally are closed loop commutated. electric field produces a magnetic field whose variation causes a torque which rotates the motor. The electromagnets are energized by an external control circuit. the gear rotates slightly to align with the next one. When the gear’s teeth are thus aligned to the first electromagnet. they are slightly offset from the next electromagnet. Stepper motors are similar to switched reluctance motors.a. Stepper motors. such as microcontroller. on the other hand. In that way. the motor can be 14 . which rotate when voltage is applied to their terminals.k.

Now to run the motor we have to feed the binary code to turn on the current of that winding. 15 .1. } } void loop() { digitalWrite(M[0]. LOW). i++) { pinMode(M[i]. LOW).turned a precise angle. LOW). digitalWrite(M[1]. delay(20). HIGH). LOW). digitalWrite(M[1]. LOW). void setup() { for(inti=0. LOW). LOW). LOW). digitalWrite(M[3]. delay(20). delay(20). HIGH). digitalWrite(M[3]. OUTPUT). digitalWrite(M[3].3}. digitalWrite(M[0]. digitalWrite(M[0]. digitalWrite(M[2]. HIGH). digitalWrite(M[2]. digitalWrite(M[0]. digitalWrite(M[2]. For pair 1st – 0b00000011 – 0x03 For pair 2nd – 0b00000110 – 0x06 For pair 3rd – 0b00001100 – 0x0c For pair 4th – 0b00011000 – 0x09 Arduino code: int M[] = {0.i<4.2. LOW). digitalWrite(M[1]. LOW).

digitalWrite(M[3]. delay(20). The stepper motor has been studied successfully. } void loop() { Lcd.begin(16.5. void setup() { lcd.7 Arduino Code: #include <LiquidCrystal. LOW). we need command signals and supply voltage.4.digitalWrite(M[1].h> LiquidCrystallcd(7. Name Function 1 VSS Ground 2 VDD +ve Supply 3 VEE Set Contrast 4 RS Register Select 5 R/W Read/Write Mode 6 E Enable 7 – 14 D0 – D7 Data Bits 0 .print(“Hello”). The signal that is required to display character is produced by an IC which is already embedded on it which is HD44780. To run it via PIC16F73.2). LOW).6.3. 16 . } The above code will rotate the motor in forward direction. 4: LCD INETRFACING WITH ARDUINO LCD Stands for Liquid Crystalline Display. digitalWrite(M[2]. HIGH).2). PIN Description of the LCD is provided below in the table Pin No.

2).} The above code will display Hello on LCD. lcd. void setup() { lcd.scrollDisplayRight().print("Hello").4. Thus LCD Display studied successfully. i++) { lcd. i++) { lcd. i<32. delay(250). 17 .begin(16. i<16.scrollDisplayLeft(). } for(inti=0. } void loop() { lcd. i++) { lcd.0). i<16. } for(inti=0. Arduino Code for Scrolling: #include <LiquidCrystal.5.6.2). } } It will shift the character to right& left with a delay of 1 second between it.scrollDisplayRight(). delay(250).3.setCursor(0.h> LiquidCrystallcd(7. for(inti=0. delay(250).

OrCAD 5. 18 . Introduction to Capture CIS This document introduces you to a suite of computer programs that are used to design electronic circuits. Cadence OrCAD PCB Designer with PSpice comprises three main applications.

select OrCAD Unison Ultra. It offers great flexibility compared with a traditional pencil and paper drawing. 19 . You may be offered a choice of product as in figure 1. either a new one when you are starting a design or an existing one if you are returning to a previous design. Always create a separate directory (folder) to hold the files for each project. it is much faster to develop the outline of a circuit using pencil and paper. There will be a short delay while the software is loaded and the licence server is accessed. Follow these steps to create a new project. Your first action must always be to open a project. (On the other hand. Do not store files in any other place on the network or on a computer – they will be erased. A sub-window shows the Session Log unless it is minimised. OrCAD creates a large number of files as it runs. • Always create a new folder whenever you start work on a new project with OrCAD. known formally as schematic capture. accessed via the network as the H drive.Capture is used to drawn a circuit on the screen.) Figure 1: Dialogue box to choose product when Capture starts. The screen will then show the OrCAD Capture main window with a menu bar and a dimmed tool bar. as design changes can be incorporated and errors corrected quickly and easily. Select OrCAD Unison Ultra 5.1 Starting OrCAD Select Capture with Start > Programs > OrCAD16.0 > OrCAD Capture (the version number may be different if the software has been updated). which are organised into a project. Terrible things go wrong if you attempt to store more than one project in the same directory! • Save your work frequently and take regular backups of important circuits. Wait until the red splash screen disappears. in which case open it. These files should be stored in your workspace on the University’s central system.

Figure 2: Dialogue boxes to create a directory for a new project 1. . . 20 . key. . This brings up the New Project dialogue box 2. such as potdiv 5.) 3. This should open a Schematics window as shown in figure 4. 6. such as potdiv and click OK. Create a directory for the new project if you have not done this already. and click OK. other than copying your circuit into a new project. Select the Create a blank project button in the small dialogue box that appears. • Select drive H and navigate to a suitable location. • Enter a suitable name for a subdirectory. from the menu bar. Click on OK in the New Project dialogue box to create the project. In principle the path and new directory now show in the Location box but in practice the box is too short. which brings up the Select Directory box. button. 4. This is essential or you will not be able to use PSpice. . • Double-click on this new directory to select it. Enter a name for the project. (There is no easy remedy if you get this wrong. . • Click the Create Dir. • Click on the Browse. Select File > New > Project. Select the Analog or Mixed A/D button. shown in figure 3 on the following page. . which brings up the Create Directory box. See figure 2.

The top bar is for Capture commands and falls into several groups. The manuals are also installed as pdf files. 21 .Figure 3: Final dialogue box to create a PSPice project. • Under the title is the type of project. If you close the schematic window by mistake.dsn. which provides all the commands. Project manager – usually in the top left corner of the screen. 1. • The body of the window shows the various files that are used by your project. expand the tree and double-click on PAGE1. Please note the Help menu on the right. The toolbar down the right-hand edge of the screen appears when this window is active. Most of the material written to this window can be ignored but you should read it if an error occurs because this is where you find the explanation. shown in figure 5 on the next page. Many of the shortcuts use unmodified letters. each of which can comprise several pages. as in many Windows applications.2 Capture windows There are three windows in the screenshot of capture shown in figure 4 on the following page. Schematic – where you draw your circuit. and do not need the Ctrl or Alt key. • First are the usual buttons for dealing with files and editing. I have expanded the tree for . Go here first if you need assistance. 5. by clicking on the + signs. • Its title is that of the project. It provides the usual index and search. such as P for Place Part.3 Capture menus and toolbars There is the usual menu bar along the top. 5./potdiv. except that it’s far too long to display because it shows the whole path. Each design can contain several schematic drawings. Here is the function of the button bars. Select Create a blank project. which is the current design. Remember that this should be Analog or Mixed A/D if you want to use PSpice. but usually there is only one of each. Session Log – often hidden behind the other windows and can be minimized out of the way. although you don’t have to bother with most of them. Some commands are used so often that there are buttons and keyboard shortcuts as well. Here is what it contains.

they are more useful for larger circuits and laying out PCBs.Figure 4: Screen of Capture for a new project before the circuit is drawn. Always use the grid (which is the default) or you will 22 . • We won’t use the next set in this tutorial. • The next button is important because it controls whether components are placed on a grid or can be moved freely. • The dropdown list in the middle contains recently used components so that you can select them quickly when drawing your circuit. The Schematic window is active and the toolbar on the right is therefore visible. We haven’t drawn anything yet so the list is empty. • The next set of four buttons are for zooming in and out so that the circuit is drawn on the screen at a convenient scale.

first check the type of project. I’ll explain the functions of the buttons later 3. which can also be activated from the Window menu.5 Place the components Make the Schematic window active. .  There is a button to select the Project Manager.  The final button is for Help. is for drawing circuits and is shown only when a Schematic window is active. We next need to find the components: two resistors to form the potential divider. . which must be Analog or Mixed A/D. a DC voltage source (battery) and a ground. You are in trouble if this is missing! If this happens.4 Capture and simulation of a potential divider We’ll first draw and simulate a very simple circuit: a potential divider supplied by a battery. The third toolbar. down the right-hand side of the screen. Of course you can solve this circuit mentally in a second or two but the aim is to gain familiarity with the software. Let’s put this into action and simulate a simple circuit: a potential divider 5. place the components. Their symbols are shown in figure 7 on the next page. click the Place 23 . The second toolbar along the top is for PSpice commands. have terrible trouble joining the wires to them. I’ve resized it and labelled the buttons in figure 6. from the menu bar. First. 2. Choose Place > Part. 5. .

olb library. This contains ‘sources’ such as batteries. • If there are libraries included already. This brings up the dialogue box with a list of parts shown in figure 8 on the following page. shown in the bottom left list.olb and click OK. We must first select the desired libraries. which brings up the dialogue box shown in figure 9. . Almost every analogue circuit needs these two libraries. . • Repeat this for the source. which are organised into libraries for convenience. Capture will warn you that it cannot remove the Design Cache – dismiss the box. select them all and click the Remove Library button. from which you choose the desired component Figure 7: Components for potential divider before connecting them Capture includes a database with a vast number of components. 24 . Select analog. Always check that the libraries are in the pspice folder and navigate to it if necessary. This library contains basic analogue components such as resistors and capacitors. • Click Add Library.Part button on the right-hand toolbar or type P. .

which is very easy! The reason is that all voltages in PSpice are measured from a particular node. Figure 10: Dialogue box for adding a ground connection A circuit must always have a ground (earth) connection called 0 (zero) if you wish to simulate it in PSpice.6 Set the values of the components Capture gives each component a default value when it is placed but this must usually be changed. and this must be defined as ground. you have probably double-clicked in the wrong place. for instance. If you see something different. You will get puzzling error messages if you forget this. All resistors are initially 1 kΩ. 25 . Close the box and try again. numbered zero. The unit is not shown – ohms are assumed by default so the display is just 1k. Your circuit should now look something like figure 7 although the components need not be in exactly the same positions. This brings up the dialogue box shown in figure 11 on the next page for the battery (VDC). Change the values of the resistances and voltage to those shown in figure 12. Double-click on a value to change it. 5.

• interconnecting wires can be repeated until the wiring is complete.5. • Place the cursor where you wish to start connecting the circuit and left-click to start a wire. usually on another component or an existing wire. • Left-click again to end the wire. • Move parallel to the grid. Unwanted wires can be highlighted and deleted. horizontally or vertically. Exit the wire drawing mode as usual with Esc or right-clicking and choosing End Mode.7 Wire the components The final step is to connect the components using the wiring tool from the toolbar (or Place > Wire or typing W). VDC here. • Left-click again to create a corner if necessary. 26 . Your circuit should now resemble figure 12 on the next page Figure 11: Dialogue box for changing the value of a component.

Layout Plus will display the dialog shown in figure 2 after you apply ECO. do not change the output file extension (. you will need to give the footprints to all missing components to complete AutoECO. go to Help Æ Layout Help) 6. And then enter the location and file name that you want the design file to be saved in “Output Layout” textbox. Figure3 shows the Layout Plus window after importing a netlist. If you change the output file. routing and generating output files and reports. 27 .) Hit “Accept this ECO” to import the netlist into Layout Plus. Enter the default technology template located on C:\Cadence\PSD_15. (As explained in Capture CIS tutorial. Enter the netlist (generated from Capture CIS) of your design in “Input MNL” textbox. placing components. Then click Apply ECO.Figure 12: Final circuit of potential divider. For more information about Layout Plus. select Program Æ Cadence PSD 15.tch in “Input Layout TCH” textbox. it is better to specify footprints to all parts during schematic creation. Go to File Æ New to create a new design. from Windows Start Menu. Simple steps in producing PCB layout involve importing netlist.0 Æ Layout Plus. with the correct values 6.Orcad Layout Plus Layout Plus is a circuit board layout tool that accepts a layout-compatible circuit netlist (ex.0\tools\layout_plus\data\_default. You will see the dialog as shown in figure 1.max). Layout Plus will give the output layout file name as same as the input netlist file by default. fully connected. from Capture CIS) and generates an output layout files that suitable for PCB fabrication. In case of footprint linking error (missing footprints on some components). please refer to Layout Help (From Layout Plus menu.1 Opening Layout Plus and Creating New Design To open Layout Plus. (You might want to save it on your network drive if you’re running Capture CIS in campus’s laboratory).

Figure 1: New Design Dialog 28 .

Figure 3: Layout Plus Window after importing netlist 6. track-to-via. specify layer type and mirror layer (usually the most outer layers. are the mirror layers of each other). track-to-pad. There are many other 29 . you can modify track-to-track. via-to-via. grids. via-to-pad. After modify layer stack. you will need to define the layer stack for your design. BOTTOM. An example of layer stack for 4-layer board design (TOP. Next.2 Setting Design Environment To set the design environment (display unit. you will need to specify routing spacing (Options Æ Global Spacing). Figure 6 shows all routing spacing set to 6 mil. Modify the setting that suitable for your design. www. rotation. go to View Æ Database Spreadsheets Æ Layers.pcbexpress. (for example. From here.com ). POWER and GND) with POWER and GND layers as power and ground plans and TOP and BOTTOM as routing layers is shown in figure 5. and pad-to-pad spacing according to the capabilities of preferred PCB manufacturer. Figure 4 shows the system setting dialog. TOP and BOTTOM. snap) go to Options Æ System Settings.

set obstacle type to “Board Outline” and obstacle layer to “Global Layer” as shown in figure 7. 30 . If you plan to fabricate your boards. To create board outline.3 Creating Board Outline Board Outline is the outline for all components and net routings of your PCB.parameters that you can set and should be carefully checked with the recommended parameters from PCB manufacturer (drill sizes. padstacks. please consult the PCB manufacturer 6. minimum track width.) In this tutorial we will use all default parameter values. the Edit Obstacle dialog will popup. click on Obstacle Tool on the toolbar or go to Tool Æ Obstacle Æ Select Tool. Then double click on one corner point you want to make an outline. etc.

first. You will need to click on four corners of the obstacle. Figure 9 shows the preplaced and locked header before auto placement.Click OK and then draw your board outline as shown in figure 8. Move the component to the desired location and then right click and select “Lock” or press L. power connectors and headers).4 Placing components You can either manually place components on the board or use auto placement feature of Layout Plus. 31 . Place all components inside the board outline . 6. For auto placement. click on Component Tool on the toolbar or go to Tool Æ Component Æ Select Tool. To manually place components. and then press ESC or left click and select “End Command”. you will need to preplace some of the components that you want them to be placed on specific locations (ex.

Figure 9: Preplace components After preplace components. 32 . Then you can adjust the board outline to a proper size. go to Auto Æ Place Æ Board. Layout plus will auto place components within your board outline. Figure 10 shows the board after autoplaced.

select the layer that you set to be used as a power plane (ex. uncheck “Routing Enabled” and then click on Net Layers button. Repeat the same step for ground net (GND) except assign the other layer for ground plane (ex. Next step is to perform an autoroute. go to Auto Æ Autoroute Æ Board. GND). After disable routing on power and ground nets and assign appropriate layers to them.5 Routing the board This section will show simple steps involved in autorouting. Before start routing. From Layers Enabled for Routing dialog. The result of this step is shown in figure 12.6. double click on power net (VCC). For manual routing. make sure that all other nets have a routing enabled attribute. you need to assign plane layers to power and ground net and disable routing for power and ground nets. go to View Æ Database Spreadsheets Æ Nets. Figure 12: Board after autorouting 33 . The nets spreadsheet dialog will show up. POWER) in “Plane Layers” box as shown in figure 11. First. please refer to Layout Plus Help.

6. REFERENCES 1.gla.ac.davies/orcad 3.org/wiki/OrCAD 34 . http://userweb.6 Design Rules Check To run DRC. go to Auto Æ Design Rules Check.uk/john. You can check the option “Print/Plot Current View” if you want to print only the layer(s) that are being displayed.wikipedia.unm. DRC command will use system environment parameters that you specified (or default values if you did not modify) as the design rules. http://ece-research.eng.edu/jimp/ES 2. https://en. You can select options you want to be checked. 6. the dialog as shown in figure 13 will show up.7 Print PCB layout Go to File Æ Print/Plot.