Showing posts with label microcontrollers. Show all posts
Showing posts with label microcontrollers. Show all posts
Thursday, November 4, 2010
IR On/Off Switch Using Microcontroller
Turn ON or OFF electrical devices using remote control is not a new idea and you can find so many different devices doing that very well. For realization of this type of device, you must make a receiver, a transmitter and understand their way of communication. Here you will have a chance to make that device, but you will need to make only the receiver, because your transmitter will be the remote controller of your tv, or video …This is one simple example of this kind of device, and I will call it IR On-Off or IR-switch.
How it works:
Choose one key on your remote controller (from tv, video or similar), memorized it following a simple procedure and with that key you will able to turn ON or OFF any electrical device you wish. So, with every short press of that key, you change the state of relay in receiver (Ir-switch). Memorizing remote controller key is simple and you can do it following this procedure: press key on Ir-switch and led-diode will turn ON. Now you can release key on Ir-switch, and press key on your remote controller. If you do that, led-diode will blink, and your memorizing process is finished.
Instructions:
To make this device will be no problem even for beginners in electronic, because it is a simple device and uses only a few components. On schematic you can see that you need microcontroller PIC12F629, ir-receiver TSOP1738 (it can be any type of receiver TSOP or SFH) and for relay you can use any type of relay with 12V coil.
Click here to download source code for PIC12F629-675 . To extract the archive use this password extremecircuits.net
Continue[...]
How it works:
Choose one key on your remote controller (from tv, video or similar), memorized it following a simple procedure and with that key you will able to turn ON or OFF any electrical device you wish. So, with every short press of that key, you change the state of relay in receiver (Ir-switch). Memorizing remote controller key is simple and you can do it following this procedure: press key on Ir-switch and led-diode will turn ON. Now you can release key on Ir-switch, and press key on your remote controller. If you do that, led-diode will blink, and your memorizing process is finished.
Instructions:
To make this device will be no problem even for beginners in electronic, because it is a simple device and uses only a few components. On schematic you can see that you need microcontroller PIC12F629, ir-receiver TSOP1738 (it can be any type of receiver TSOP or SFH) and for relay you can use any type of relay with 12V coil.
click on the images to enlarge | |
Click here to download source code for PIC12F629-675 . To extract the archive use this password extremecircuits.net
Friday, August 20, 2010
PIC Controlled Relay Driver
This circuit is a relay driver that is based on a PIC16F84A microcontroller. The board includes four relays so this lets us to control four distinct electrical devices. The controlled device may be a heater, a lamp, a computer or a motor. To use this board in the industrial area, the supply part is designed more attentively. To minimize the effects of the ac line noises, a 1:1 line filter transformer is used.
The components are listed below.
1 x PIC16F84A Microcontroller
1 x 220V/12V 3.6VA (or 3.2VA) PCB Type Transformer (EI 38/13.6)
1 x Line Filter (2x10mH 1:1 Transformer)
4 x 12V Relay (SPDT Type)
4 x BC141 NPN Transistor
5 x 2 Terminal PCB Terminal Block
4 x 1N4007 Diode
1 x 250V Varistor (20mm Diameter)
1 x PCB Fuse Holder
1 x 400mA Fuse
2 x 100nF/630V Unpolarized Capacitor
1 x 220uF/25V Electrolytic Capacitor
1 x 47uF/16V Electrolytic Capacitor
1 x 10uF/16V Electrolytic Capacitor
2 x 330nF/63V Unpolarized Capacitor
1 x 100nF/63V Unpolarized Capacitor
1 x 4MHz Crystal Oscillator
2 x 22pF Capacitor
1 x 18 Pin 2 Way IC Socket
4 x 820 Ohm 1/4W Resistor
1 x 1K 1/4W Resistor
1 x 4.7K 1/4W Resistor
1 x 7805 Voltage Regulator (TO220)
1 x 7812 Voltage Regulator (TO220)
1 x 1A Bridge Diode
The transformer is a 220V to 12V, 50Hz and 3.6VA PCB type transformer. The model seen in the photo is HRDiemen E3814056. Since it is encapsulated, the transformer is isolated from the external effects. A 250V 400mA glass fuse is used to protect the circuit from damage due to excessive current. A high power device which is connected to the same line may form unwanted high amplitude signals while turning on and off. To bypass this signal effects, a variable resistor (varistor) which has a 20mm diameter is paralelly connected to the input.
Another protective component on the AC line is the line filter. It minimizes the noise of the line too. The connection type determines the common or differential mode filtering. The last components in the filtering part are the unpolarized 100nF 630V capacitors. When the frequency increases, the capacitive reactance (Xc) of the capacitor decreases so it has a important role in reducing the high frequency noise effects. To increase the performance, one is connected to the input and the other one is connected to the output of the filtering part.
After the filtering part, a 1A bridge diode is connected to make a full wave rectification. A 2200 uF capacitor then stabilizes the rectified signal. The PIC controller schematic is given in the project file. It contains PIC16F84A microcontroller, NPN transistors, and SPDT type relays. When a relay is energised, it draws about 40mA. As it is seen on the schematic, the relays are connected to the RB0-RB3 pins of the PIC via BC141 transistors. When the transistor gets cut off, a reverse EMF may occur and the transistor may be defected.
To overcome this unwanted situation, 1N4007 diodes are connected between the supply and the transistor collectors. There are a few number of resistors in the circuit. They are all radially mounted. Example C and HEX code files are included in the project file. It energizes the next relay after every five seconds.
Continue[...]
The components are listed below.
1 x PIC16F84A Microcontroller
1 x 220V/12V 3.6VA (or 3.2VA) PCB Type Transformer (EI 38/13.6)
1 x Line Filter (2x10mH 1:1 Transformer)
4 x 12V Relay (SPDT Type)
4 x BC141 NPN Transistor
5 x 2 Terminal PCB Terminal Block
4 x 1N4007 Diode
1 x 250V Varistor (20mm Diameter)
1 x PCB Fuse Holder
1 x 400mA Fuse
2 x 100nF/630V Unpolarized Capacitor
1 x 220uF/25V Electrolytic Capacitor
1 x 47uF/16V Electrolytic Capacitor
1 x 10uF/16V Electrolytic Capacitor
2 x 330nF/63V Unpolarized Capacitor
1 x 100nF/63V Unpolarized Capacitor
1 x 4MHz Crystal Oscillator
2 x 22pF Capacitor
1 x 18 Pin 2 Way IC Socket
4 x 820 Ohm 1/4W Resistor
1 x 1K 1/4W Resistor
1 x 4.7K 1/4W Resistor
1 x 7805 Voltage Regulator (TO220)
1 x 7812 Voltage Regulator (TO220)
1 x 1A Bridge Diode
The transformer is a 220V to 12V, 50Hz and 3.6VA PCB type transformer. The model seen in the photo is HRDiemen E3814056. Since it is encapsulated, the transformer is isolated from the external effects. A 250V 400mA glass fuse is used to protect the circuit from damage due to excessive current. A high power device which is connected to the same line may form unwanted high amplitude signals while turning on and off. To bypass this signal effects, a variable resistor (varistor) which has a 20mm diameter is paralelly connected to the input.
Another protective component on the AC line is the line filter. It minimizes the noise of the line too. The connection type determines the common or differential mode filtering. The last components in the filtering part are the unpolarized 100nF 630V capacitors. When the frequency increases, the capacitive reactance (Xc) of the capacitor decreases so it has a important role in reducing the high frequency noise effects. To increase the performance, one is connected to the input and the other one is connected to the output of the filtering part.
After the filtering part, a 1A bridge diode is connected to make a full wave rectification. A 2200 uF capacitor then stabilizes the rectified signal. The PIC controller schematic is given in the project file. It contains PIC16F84A microcontroller, NPN transistors, and SPDT type relays. When a relay is energised, it draws about 40mA. As it is seen on the schematic, the relays are connected to the RB0-RB3 pins of the PIC via BC141 transistors. When the transistor gets cut off, a reverse EMF may occur and the transistor may be defected.To overcome this unwanted situation, 1N4007 diodes are connected between the supply and the transistor collectors. There are a few number of resistors in the circuit. They are all radially mounted. Example C and HEX code files are included in the project file. It energizes the next relay after every five seconds.
Tuesday, July 6, 2010
LCD Module in 4-bit Mode
In many projects use is made of alphanumeric LCDs that are driven internally by Hitachi’s industry-standard HD44780 controller. These displays can be driven either in 4-bit or 8-bit mode. In the first case only the high nibble (D4 to D7) of the display’s data bus is used. The four unused connections still deserve some closer attention. The data lines can be used as either inputs or outputs for the display. It is well known that an unloaded output is fine, but that a floating high-impedance input can cause problems. So what should you do with the four unused data lines when the display is used in 4-bit mode? This question arose when a circuit was submitted to us where D0-D3 where tied directly to GND (the same applies if it was to +5 V) to stop the problem of floating inputs.
The LCD module was driven directly by a microcontroller, which was on a development board for testing various programs and I/O functions. There was a switch present for turning off the enable of the display when it wasn’t being used, but this could be forgotten during some experiments. When the R/Wline of the display is permanently tied to GND (data only goes from the microcontroller to the display) then the remaining lines can safely be connected to the supply (+ve or GND). In this application however, the R/Wline was also controlled by the microcontroller. When the display is initialised correctly then nothing much should go wrong. The data sheet for the HD44780 is not very clear as to what happens with the low nibble during initialisation.
After the power-on reset the display will always be in 8-bit mode. A simple experiment (see the accompanying circuit) reveals that it is safer to use pull-down resistors to GND for the four low data lines. The data lines of the display are configured as outputs in this circuit (R/Wis high) and the ‘enable’ is toggled (which can still happen, even though it is not the intention to communicate with the display). Note that in practice the RS line will also be driven by an I/O pin, and in our circuit the R/W line as well. All data lines become high and it’s not certain if (and if so, for how long) the display can survive with four shorted data lines. The moral of the story is: in 4-bit mode you should always tie D0-D3 via resistors to ground or positive.
Continue[...]
The LCD module was driven directly by a microcontroller, which was on a development board for testing various programs and I/O functions. There was a switch present for turning off the enable of the display when it wasn’t being used, but this could be forgotten during some experiments. When the R/Wline of the display is permanently tied to GND (data only goes from the microcontroller to the display) then the remaining lines can safely be connected to the supply (+ve or GND). In this application however, the R/Wline was also controlled by the microcontroller. When the display is initialised correctly then nothing much should go wrong. The data sheet for the HD44780 is not very clear as to what happens with the low nibble during initialisation.
AVR Dongle
This circuit is intended to program AVR controllers such as the AT90S1200 via the parallel port. The circuit is extremely simple. IC1 provides buffering for the signals that travel from the parallel port to the microcontroller and vice versa. This is essentially everything that can be said about the circuit. The two boxheaders (K2 and K3) have the ‘standard’ ISP (in system programming) pinout for the AVR controllers. The manufacturer recommends these two pinouts in an attempt to create a kind of standard for the in-circuit programming of AVR-controllers. These connections can be found on many development boards for these controllers. The software carries out the actual programming task.
It is therefore necessary to have a program (ATMEL AVR ISP), which is available as a free download from http://www.atmel.com. The construction of the circuit will have to made on standard prototype board, since we didn’t design a PCB for this circuit. This should not present any difficulties considering the small number of parts involved. We recommend that inexperienced builders first make a copy of the circuit and cross off each connection on the schematic once it has been made on the board. This makes it easy to check after-wards whether all connections have been made or not.
Continue[...]
Friday, June 18, 2010
USB-Powered PIC Programmer
This simple circuit can be used to program the PIC16F84 and similar "flash memory" type parts. It uses a cheap 555 timer IC to generate the programming voltage from a +5V rail, allowing the circuit to be powered from a computer’s USB port. The 555 timer (IC1) is configured as a free-running oscillator, with a frequency of about 6.5kHz. The output of the timer drives four 100nF capacitors and 1N4148 diodes wir-ed in a Cockroft-Walton voltage multiplier configuration.
The output of the multiplier is switched through to the MCLR/Vpp pin of the PIC during programming via a 4N28 optocoupler. Diodes ZD1 and D5 between the MCLR/Vpp pin and ground clamp the output of the multiplier to about 13.6V, ensuring that the maximum input voltage (Vihh) of the PIC is not exceeded. A 100kΩ resistor pulls the pin down to a valid logic low level (Vil) when the optocoupler is not conducting. The circuit is compatible with the popular "JDM" programmer, so can be used with supporting software such as "ICProg" (see http://www.ic-prog.com).
Continue[...]
The output of the multiplier is switched through to the MCLR/Vpp pin of the PIC during programming via a 4N28 optocoupler. Diodes ZD1 and D5 between the MCLR/Vpp pin and ground clamp the output of the multiplier to about 13.6V, ensuring that the maximum input voltage (Vihh) of the PIC is not exceeded. A 100kΩ resistor pulls the pin down to a valid logic low level (Vil) when the optocoupler is not conducting. The circuit is compatible with the popular "JDM" programmer, so can be used with supporting software such as "ICProg" (see http://www.ic-prog.com).
Thursday, June 17, 2010
Programming The Propeller IC
Parallax, well known for its successful Basic Stamp IC, has recently introduced the Propeller: a new microcontroller with a certain difference. It packs no less than eight 32-bit processors (referred to as COGs in Propeller jargon) into a single package with only 40 pins. That design takes genuine simultaneous multiprocessing possible, and the sophisticated internal structure of the device makes it relatively easy to implement video and signal-processing applications. The Propeller can be programmed in assembly language or the high-level Spin language. The processor and the programming tools were developed entirely in-house by Parallax, with the hardware being designed from scratch starting at the transistor level.
The basic idea behind that was to avoid becoming involved in all sorts of patent disputes with other manufacturers. The result is astounding, and for software developers it certainly requires a change in mental gears. As is customary with modern microprocessors, the Propeller has a simple serial programming interface. The developer’s toolkit from Parallax has a modern USB port for that purpose, but a reasonably simple alternative (illustrated here) is also possible for anyone who prefers to work with the familiar RS232 port. Don’t forget that the Propeller works with a 3.3-V supply voltage.
Continue[...]
The basic idea behind that was to avoid becoming involved in all sorts of patent disputes with other manufacturers. The result is astounding, and for software developers it certainly requires a change in mental gears. As is customary with modern microprocessors, the Propeller has a simple serial programming interface. The developer’s toolkit from Parallax has a modern USB port for that purpose, but a reasonably simple alternative (illustrated here) is also possible for anyone who prefers to work with the familiar RS232 port. Don’t forget that the Propeller works with a 3.3-V supply voltage.
Subscribe to:
Posts (Atom)




