Learning assembly the easy way

Not many people program microcontrollers in assembly language. Compilers are very good at generating machine code efficiently. In other hand microcontrollers are also fast enough to overcome some some excess code with speed. But if you really want to be good at microcontrollers, you need to understand what is going on inside. Assembly language allows to see how program runs inside MCU instruction by instruction. Sometimes understanding how processor operates in low level it might be easier to adjust your high level program like C to be close to perfection. To program in assembly might be real pain, but sometimes you may need to write routine o part of the code to get exact timed behavior as you need. For instance very efficient DDS signal generator where every cycle counts. Yasp have built web based assembly language development environment where everyone can write assembly program, debug and even see it running visually on board image. Here you can get generic basics of assembly language without any setup. Continue reading

The Nixie Clock is Incredibly Awesome!

When you’re hearing about Nixie clock, what is you first reaction for it? Or, have you ever heard about it before? For your information, a Nixie tube is an electronic device, which it’s mostly been used for displaying numerals or other information. The glass tube is usually contained a wire-mesh anode and multiple cathodes in the shape of Hindu-Arabic numerals. When you try to apply some power to one cathode, it will soon surround it with an orange glow discharge. The Nixie tube always filled with neon and a little bit of mercury or argon in Penning mixture at low pressure. The main purpose of this project is to show you how to drive a nixie tube display with the help of a PIC16F84A simple microcontroller. This is a better version of Nixie clock, where there are 4 nixie tubes being applied in this project. However, when you’re running the system, the numbers doesn’t seem to appear in the correct order, which the sequence was a little bit messed up as follows 0,1,2,3,7,5,8,4,9,6. Don’t worry, if you having this problem… Continue reading