Archive for February, 2006

16F84 Frequency counter

Monday, February 6th, 2006

In elektronika.lt and in original pages at sprut.de there is placed simple frequency counter schematics. It consists only from Microchip PIC 16F84 cpu and LCD text module. Author states that this counter is capable metering frequencies from 400Hz to 50MHz. I used faster, 20MHz version of 16F84A-20I/P, and it managed to count 80MHz oscillator output.

Frequency counter on PIC MCU

It is made on testing breadboard and uncalibrated. I made it just for testing. And the schematics is almost unmodified.

frequency counter schematics
Circuit diagram for printing.

I used small TTL oscilators for testing. These devices are much more precise that cheap quartz crystal used in schematics. It is possible to adjust 10MHz and so you can calibrate your counter. Here is my testing readings- the device is uncalibrated.

Quartz Freq readings
12.000000 MHz 12000112 Hz
25.175000 MHz 25175456 Hz
28.322000 MHz 28322656 Hz
80.000 MHz 79999616 Hz

Booting router from PCMCIA

Friday, February 3rd, 2006

At my workplace there is old big copying machine- Minolta Dialta. Recently we bought second hand printer module for it. It is called Minolta Pi 1800, GDI printer module. I decided to make it work in intranet.

It was possible to buy small hardware print server for this purpose, but I decided to do it in hard way. I have very old IBM thinkpad notebook without any hdd and fd.
Router-print-server

But this notebook has option to boot from PCMCIA card. This was interesting. Many years ago, in eBay, I bought small Casio PCMCIA flash cards. It is ATA Flash cards, only 1.8Mb size. They were preformatted as hard disks. So I enabled boot from PCMCIA and nothing interesting happened. I received some mystical IBM POST code. I deciphered it as “no boot device”. How to make boot device for PCMCIA card? I was lucky, as I have IDE to PCMCIA adapter. So I formatted cards and installed Win boot block… No boot at all.
Router-print-server
After lots of investigations and testing card on other computers I found, that PCMCIA card “disk” partition is not active. WindowsXP decided, that such devices are not suitable to be active and refused to mark them. Windows 98 was more crazy- when I started fdisk, it informed that fdisk can make active partitions only on primary ide channel… What a fucked programmer done this program?
In internet I found another program- mbrwizard, which let me mark card as active disk. Now I can boot Win98 from flash card. Next step is to squeeze freesco software to small card. It is option to install freesco to hard disk, but whole install is few bytes larger than my card. After consultation with Unix gurus from newsgroup, I downloaded latest version of dd (rawwrite) program for windows xp. It was quite hard to construct such curse:

dd if=image of=\\.\Volume{da77677e-928b-11da-99eb-806d6172696f}
:)

And, at last, I booted freesco linux kernel…
Router-print-server

One of the last problems was to find device for root file system. But while examining kernel boot messages, I found that card is /dev/hdc

The problem was solved:
Router-print-server

Now I needed to configure all the stuff for print server and network. And now everything is working.

Gallium

Thursday, February 2nd, 2006

One day I had small attack of shopping and I bought small pellet of gallium. It is quite strange, non toxic metal. It’s melting point is only 30°c. To be exact- 29.7646°C. And boiling point is very high- 2204°C! It can melt in your hand. The only problem, it will stain your skin.

Gallium is widely used as gallium arsenide in light emitting diodes (LED) and solid state lasers.

Gallium pellet

While I was writing this post, my gallium pellet melted and stained plastic sack.

Now I need to find any use for it. Maybe it can be used to make “super-turbo” high quality audio jacks? No shaking connections, no oxide contacts…