Sunday, 10 September 2017

Resistor

A resistor is a passive two-terminal electrical component that implements electrical resistance as a circuit element. In electronic circuits, resistors are used to reduce current flow, adjust signal levels, to divide voltages, bias active elements, and terminate transmission lines, among other uses. High-power resistors that can dissipate many watts of electrical power as heat may be used as part of motor controls, in power distribution systems, or as test loads for generators. Fixed resistors have resistances that only change slightly with temperature, time or operating voltage. Variable resistors can be used to adjust circuit elements (such as a volume control or a lamp dimmer), or as sensing devices for heat, light, humidity, force, or chemical activity.
Resistors are common elements of electrical networks and electronic circuits and are ubiquitous in electronic equipment. Practical resistors as discrete components can be composed of various compounds and forms. Resistors are also implemented within

Wednesday, 4 December 2013

Proteus Full version ----microprocessor simulation, schematic capture, and printed circuit board (PCB) design

Proteus is software for microprocessor simulation, schematic capture, and printed circuit board (PCB) design. It is developed by Labcenter Electronics.
The XGameStation Micro Edition was designed using Labcenter's Proteus schematic entry and PCB layout tools.

System Components

  • ISIS Schematic Capture - a tool for entering designs.
  • PROSPICE Mixed mode SPICE simulation - industry standard SPICE3F5 simulator combined with a digital simulator.
  • ARES PCB Layout - PCB design system with automatic component placer, rip-up and retry auto-router and interactive design rule checking.
  • VSM - Virtual System Modelling lets cosimulate embedded software for popular micro-controllers alongside hardware design.
  • System Benefits Integrated package with common user interface and fully context sensitive help.

Download Proteus Full Version Now.....

C/C++ Software For Windows 7 & 8

C++  software
      which will run on Windows 7 and 8  in full screen and  It can support graphical options .
No other sofware like Dosbox is require.....
This software can support Touchpads  also.

C/C++ For Windows 7 and 8


                                                      C++  software
   
  which will run on Windows 7 and 8  in full screen and  It can support graphical options .
No other sofware like Dosbox is require.....


Putty -- RS232 /Terminal Monitoring Software


PUTTY  is a free and open-source terminal emulator, serial console and network file transfer application. It supports several network protocols, including SCP, SSH, Telnet and rlogin.  
PuTTY was originally written for Microsoft Windows, but it has been ported to various other operating systems. Official ports are available for some Unix-like platforms, with work-in-progress ports to Classic Mac OS and Mac OS X, and unofficial ports have been contributed to platforms such as Symbian and Windows Mobile.
To monitor GSM and GPS Output terminals


DOWNLOAD IT NOW

Keil Full Version

Keil makes C compilers, macro assemblers, real-time kernels, debuggers, simulators, integrated environments, evaluation boards, and emulators for the ARM, 8051,8052

Keil :   is  an Embedded Development Tools for ARM, Cortex-M, Cortex-R4 and also

             8051 Microcontroller Development Tools.



DOWNLOAD IT NOW                 

Tuesday, 3 December 2013

PIC16F628A PWM code + Proteus simulation

This post provides the PWM code (using C language) and Proteus simulation for PIC16F628A microcontroller ( written using MPLAB and HI-TECH C compiler ). There are many uses for PWM signal, e-g you can control dc motor speed using PWM. CCP is the name for the built in PWM module in PIC16F628A. There is one built in PWM module available, namely CCP1. This code is using CCP1 module to generate PWM. You can download the complete project code andProteus simulation from the 'Downloads' section at the bottom of this page.

It is assumed that you know how to blink an LED with PIC16F628A microcontroller. If you don't then please read this page first, before proceeding with this article.

The following diagram (made in Proteus) shows the circuit diagram.
//
Figure 1.   PIC16F628A PWM generation circuit
A crystal of 20MHz is used here with PIC16F628A. As we know that any PIC microcontroller has an architecture which executes an instruction in 4 CPU cycles, hence this 20Mhz crystal makes this PIC16F628A run at 5MIPS (Million of instructions per second). In the above figure, it is clear that a PWM of approximately 4.9kHz frequency with 50% duty cycle is being generated at RB3/CCP1 pin.

Code

The code for main function is shown below.
//
Figure 2.   Main code for PC16F628A PWM
In the main function, PWM is initialized using the 'InitPWM()' function. Then PWM duty cycle is set to 50% ( You can verify this value from Figure 1 ). After that microcontroller is free and built in CCP1 module automatically generates desired PWM frequency. When you need to change PWM duty cycle, then just call SetPWMDutyCycle() function and change the duty cycle as per requirement. You can pass a value of 0(0% duty cycle) to 1023(100% duty cycle) in the argument of SetPWMDutyCycle() function.

The code for PWM functions is shown below.
///
Figure 3.   PWM function code for PIC16F628A
InitPWM() function initializes the PWM module CCP1 to generate PWM signal at 4.88KHz using 'Timer 2'. RB3 ( Pin 9 ) gives the output of the CCP1 module. CCP1 module has 10bit PWM resolution. 'SetPWMDutyCycle()' is the function which is used to set the duty cycle value for the PWM of CCP1. This function has 1 input argument which is the required value of the duty cycle of PWM. Write 0 here for 0% duty cycle and write 1023 here for 100% duty cycle. For example, to generate a PWM with 50% duty cycle write 'SetPWMDutyCycle( 512)' in your code.

You can calculate PWM frequency using the formula _XTAL_FREQ/(4*(PR2+1)*Prescalar). Where _XTAL_FREQ is the value of crystal frequency, in the above code it is defined to be 20000000. PR2 is Timer2 register, it's value is defined to be 0xFF ( In the InitPWM() function ). You can set PR2 value in between 0 to 0xFF only. Prescalar value is currently set to be 4 in InitPWM() function. Putting all these values, we get a PWM frequency of 20000000/(4*256*4) = 4.88kHz (This value can be verified from Figure1). You can modify these parameters to change PWM frequency.

As an example, You can use this PWM code to control dc motor with PIC16F628A controller. You will need some sort of dc motor driver circuitry in between PIC16F628A controller and the dc motor. Other than that, using this simple PWM controlling code, you can control dc motor speed with PIC16F628A controller easily. You can leave your comments in the comment section below.

Downloads

IWM code using PIC16F628A was compiled in MPLAB v8.85 with HI-TECH C v9.83 compiler and simulation was made in Proteus v7.10. To download code and Proteus simulation click here.