At the weekend I used an old pair to try and break into some plastic gizmo; I didn’t really care on the damage to the thing… I just wanted to see what was inside.
I’ve blogged about wire cutters previously and why I only ever buy cheap pairs. Old pairs are often kept as they always come in handy for silly jobs. At the weekend I used an old pair to try and break into some plastic gizmo; I didn’t really care on the damage to the thing… I just wanted to see what was inside. I've done some silly things in my time, but I've never had a pair of cutters split like this on me. Add Comment Because a lot of people have asked me about PIC programming using the AMICUS18 BASIC compiler and how to do things, I thought it would be interesting and useful if I wrote a series of articles on the subject (see here). So, to kick things off I’ve placed the first three on this website. I’ve never done anything like this before so please let me know what you think or if there are any topics you would specifically like me to cover. I’ll be adding more parts on an on-going basis. You can find the dedicated page here: I've added a new construction project for a plug-in PCB module for breadboards. It allows one of those cheap and nasty plug-in mains transformer type PSU to be used as the power source for a +5v regulated PSU thats suitable for powering PIC, TTL/CMOS logic and other circuits. Because there's no direct electrical connection to the mains, it's perfectly safe for beginners to create. You can also throw one of these together for less than £2.00 If anybody in the UK is interested, I've got a couple of blank, etched and drilled PCBs that I'll give away on a first come, first served bases. All I ask is for £1.00 to cover my postage and packing costs. All you need to find are the 13 components to assemble the thing. Been really busy over the last few days with a lot going on. I’ve started writing a series of articles on programming PICs with the AMICUS18 PIC BASIC compiler from Crownhill Associates. Each article covers a specific topic starting with how to get everything configured and writing your first “Hello World” BASIC program, and then onto interfacing to common electronic components. Each article includes circuit diagrams and source code. I’ve also added a review on a new toy… I mean tool, for the bench; a Weller gas powered soldering iron which recently arrived from Rapid Electronics. Now I love clocks, I really do. They are great projects because you can place them on the mantelpiece or in other prominent locations as a functional working device, partners can’t complain about it being another piece of junk because they do something useful, they come in all sorts of shapes and sizes and are great beginner projects and once you’ve built it, you can tell people “I made that”. Recently, I’ve been working on a new clock project and it suddenly occurred to me that except for the physical display aspect of the clock, the internals are nearly always the same. A battery-backed RTC for the date/time (usually a Dallas DS1302) with support components, a PSU section of some type that usually puts out 5v for the logic and possible an additional higher voltage for larger LED displays, a PIC to glue everything together and some display driver hardware. The only really custom part is the physical display, and the PIC firmware, and this got me thinking; “Can I construct a generic clock that can have many different displays connected, and just need to update the PIC firmware as required”? So, this is what I’m currently working on. Some more thought is required on some of the projects finer attributes but I have an initial prototype sat on my breadboard that’s driving a strange looking LED display with 60 LEDs on it (I’ll post pictures later) and it seems to be working well. The next part is to design several other display units and make sure that they can be driven by the hardware. I use a DS18B20 temperature sensor IC in several of my projects and I encountered an interesting problem recently. This IC runs over Maxim’s 1-Wire interface and should, in theory, work over cable lengths of several hundred meters or more. However, when I tried to run one of these sensors over a cable longer than around 50cm it refused to work. Shortening the cable always brought the sensor back to life. In desperation I tried a different sensor and hey-presto, it worked on my test 5M cable. So, I purchased 10 sensors off EBay and gave them a try. Each one worked perfectly on my 5M cable so I can only assume that I’d been unlucky to have a semi-faulty sensory IC. I’ve binned this IC as whilst they are rather expensive if you buy from a regular supplier, at less than £2 each off EBay, I wasn’t going to risk having the IC suddenly fail on my at some point in the future; and there’s obviously something wrong with it. At last, it’s completed and this new programmer will make my life so much easier when it comes to PIC development. This has been one of those projects that in some ways, I wished I’d not started as there seemed no end to it and everything just seemed to go wrong. I blame the fact that I never really had any time to just sit down and do this project from start to finish, but now it’s completed and working, I’m really pleased I stuck with it. And here it is. Ok, a bit of explanation as to what this lovely, beautiful piece of equipment can do. Inside the case are six PCBs packed with electronics. There’s a PCB that contains a PSU with 5v regulator and an adjustable voltage regulator; set to around 7.3v that drives the LEDs in the push switches. Also on this board is a MAX232 and associated electronics that provide two RS232 interfaces; more on these in a second. There are four almost identical boards; one per output channel that contain a 16-bit shift register, driver chips and relays. The final board contains the PIC and driver logic that runs everything. Also inside are two Microchip PICKIT programmers (a PICKIT2 and a PICKIT3). On the front panel there are four 9-way D-Type connections that can be used to connect an ICSP cable to a project under development, or, in the case of this new programmer, up to four projects in development; this will make multi-PIC projects a lot simpler to develop and debug. You can select which PICKIT is connected to which of the four ports and you can of course only connect each programmer to one port at a time. The unit also has in-built support for RS232 which I use for project debugging. My custom ICSP cable has provision for serial data to be set from the PIC to the outside world and this makes it possible to send any debugging information from the PIC, into my programmer which level shifts from TTL to RS232 and then out to a dumb terminal emulator. I’ve made provision for up to two serial ports and again, you can select which serial port is attached to which input. The serial ports are also available via four, 4mm banana sockets on the front panel for use within other projects. The upshot of this is that you can connect one port to each PIC project under development, and allocate either of the internal programmers / serial ports on the fly to each port as required without the need to keep unplugging cables all the time. The advantage of this new unit over my now obsolescent one (which only support up to three outputs and was very clunky), is that I could, in theory, expend the design to support as many output ports as required. It would be a lot of additional effort to increase the number of PICKIT programmers that can be supported. This was going to be a six port unit but I didn’t have a case large enough at the time. But now I’ve got all the hardware sorted out, it wouldn’t be too difficult to build a larger one if required. I’d need to tweak the PIC firmware that controls everything of course, but that’s no real hassle. Oh yes, the reason I've used a PICKIT2 and a PICKIT3 is simple. I prefer the PICKIT2 as it's much faster than the 3, but the 3 supportes a couple of PICs that I've started to use that the 2 dosn't. I could have used any combination of programmers if desired, or even completly different programmers. It's just I rather like the Microchip ones. I made a promise to myself to finish my PIC programmer over the holidays. This project, like a many of my projects contain a shift register chain, and this one is 64 bits long which isn’t really a lot, but the firmware controlling the project is quite complex and I’ve been having problems debugging everything. One thing that would be really useful is an external display that I could connect to a project and could give me a visual indication of the state of the shift register chain outpus in the project under construction. So, I took another slight diversion and built a piece of test equipment that can help. The analyser can connect to the set of control signals that control a shift register chain within a project, and display on several bar-LED displays, the status of the shift register chain being monitored. The unit has two inputs so it can monitor two shift register chains in parallel, each of up to 56 bits, or by flicking a switch, combine the two displays together to monitor a single chain of up to 112 bits in length. The project is extendable and could be expanded to monitor shift register chains of any number of bits if required. The unit is a bit of a compromise as I had to use parts and a case I had available, but it does employ fully buffered inputs so presents minimal external load to the project it’s being used to monitor, and has it’s own internal voltage regulator board which will accept a 9v AC/DC input. With all the LED's on, the unit draws just under an amp !! At some point over the next few days, I’ll create a basic construction article and include the PCB foils and circuit diagrams etc. Ok, so busy with things right now that I've not really had much time to work on any personal projects, however, I've got a couple of things in the pipe-line that people may find interesting and hopefully I'll have time over the holidays for some personal play-time I’ve used UV LED’s to build a PCB exposure unit, and that was very successful, so I thought I would see if a UV LED could be used to erase an EPROM. As experiments go, it was rather a long shot. The UV LEDs I’ve got emit UV light at a wavelength of around 400nm, and EPROMs need to be exposed to UV light at around 250nm. However UV is UV so it was worth a try. It didn’t work :( In the end, it had around five hours of exposure and after reading back the EPROM contents, not even one bit had changed state. Still, I suppose it’s nice to know. |
RSS Feed