Niniejszy generator pozwala na wytwarzanie impulsów o szerokości od 0,1 do 0,8 ms i od 1 do 8 ms przy częstotliwościach od 1 do 256 Hz. Amplituda i prąd impulsu określane są przez parametry tranzystora kluczującego. W opisanej niżej realizacji zastosowano tranzystor IRFD123; maksymalne natężenie prądu ograniczono za pomocą rezystora 220 Ω, które przy napięciu zasilającym 9 V w momencie zwarcia nie przekroczy 40 mA. Szerokość impulsu i częstotliwość kodowane są w postaci liczb dwójkowych przy pomocy mikroprzełączników, ustawienia załadowywane są podczas restartu i jakiekolwiek późniejsze zmiany stanu mikroprzełączników nie mają żadnego wpływu na parametry sygnału.
Niedoskonałością opisywanego układu jest to, że w przypadku awarii mikrokontrolera albo w momencie restartu tranzystor pozostaje cały czas otwarty, dlatego nie zaleca się przeprowadzania zmian parametrów impulsu drogą restartu, a jedynie poprzez wyłączenie i ponowne włączenie zasilania kontrolera.
W układzie wykorzystano mikrokontroler AT89C2051, ale równie dobrze można zastosować dowolny inny mikrokontroler typu x51. Opóźnienia i częstotliwości impulsów zmierzono dla rezonatora kwarcowego 24 MHz. Możliwe jest zastosowanie rezonatora o częstotliwości 12 MHz, ale wówczas długość impulsu i jego okres zwiększają się dwukrotnie (natomiast częstotliwość impulsu jest odpowiednio dwukrotnie niższa).
Częstotliwość powtarzania się impulsów określa się za pomocą mikroprzełączników w porcie P1. Wyłączony mikroprzełącznik odpowiada wartości 1, natomiast włączony - 0. Wartość 0 wysłana do portu P1 odpowiada częstotliwości 1 Hz, a wartość 255 - częstotliwości 256 Hz. Odpowiednią liczbę dwójkową można wyznaczyć albo przekształacając liczbę dziesiętną na zapis binarny przy użyciu kalkulatora posiadającego takie możliwości, albo sumując wartości odpowiadające włączanym bitom:
Bit | Wartość |
---|---|
7 | 128 |
6 | 64 |
5 | 32 |
4 | 16 |
3 | 8 |
2 | 4 |
1 | 2 |
0 | 1 |
Na przykład dla częstotliwości 70 Hz należy ustawić wartość 69: 69 = 64 + 4 + 1, tzn. należy nadać wartość 1 bitom o numerach 6 (26 = 64), 2 (22 = 4) oraz 0 (20 = 1).
Szerokość impulsów ustala się w podobny sposób przy pomocy bitów 2-4 portu P3 (wartości od 0 do 7), co odpowiada szerokości od 1 do 8 ms lub od 0,1 do 0,8 ms w zależności od wartości bitu 0 portu P3 (1 lub 0 odpowiednio - ustawienie bitu skutkuje dziesięciokrotnym zwiększeniem szerokości impulsu).
Podobne projekty: http://www.ullasmann.eu/