mikroElektronika
what is new on site
novi broj
old issues
advertizing
download
club mikroElektronika
flash news - MIP
development tools
moduls from magazine
links
about us
services
contact


Spread spectrum transceiver controlled by PIC

In modern telecommunications spread spectrum methods are widely present. Regardless whether it is frequency hooping method, direct sequence method or time hooping method, these aspects have a lot in common:

· Excellent signal/noise ratio,
· Efficient usage of radio spectrum,
· Great immunity on jamming and minimized danger of 'listening'.

Fast development of microcontrollers seeks for the usage of these devices in modern telecommunications. This article is to present the simplicity if a transceiver based on the spread spectrum method of frequency hooping.

Basic principles of frequency hooping
The method of frequency hooping is used for transmission of digital signals. Without FH, in the basic band of the transmission a certain bandwidth is used. However, due to frequent change of carrier frequency the method of frequency hooping uses fairly large portion of radio spectrum. Each change in carrier frequency is called hoop. Two methods of frequency hooping are used today:

· A number of hoops per bit and
· A number of bits per hoop.

The first method means that carrier frequency changes a number of times during the transmission of one bit, for example three hoops per bit. The second method means that a number of bits is transmitted on one carrier frequency, for example two bits per hoop.
In general, for easier understanding we shall analyze the principle of 'one hoop per bit'. Once the method is understood it is easy to make variations and to 'confuse the enemy'.
figure 1.

Principle of operation
Figure 1 presents a block diagram of the device. Digital signal (information) is present on the FSK encoder input (frequency shift keying). This part gives sine output of the frequencies 10kHz and 20kHz, depending whether the input sees logic zero or logic one. The schematics of the encoder is given on figure 3.
figure3.

FSK signal is further brought to the modulator MC1496 (Motorola) which with help of the oscillator raises the signal in the higher frequency range. For each bit of information the oscillator generates a new frequency of the carrier. The schematics of the oscillator is given on figure 4. The schematic of the modulator is given on figure 5.
figure 4.

figure 5.

The heart of the oscillator presents 16F84 (Microchip), which drives the PLL MC145151-2 (Motorola). The PLL has the role to generate and to precisely set the working frequency, i.e. the carrier. As a generator I used current controlled oscillator XR2206 (Exar). The frequency of this oscillator is proportional to the current drawn form the pin number 7.
PIC's output (pins 6,7,8,9,10 and 11) is a binary combination which presents one working frequency. In general, this binary number tells the PLL which frequency should be taken out of the oscillator. Simply, by changing the binary combination it is possible to change the working frequency of the transmitter. For simplicity let's take that the carrier frequency rises from 200kHz to 800kHz with the step of 40Khz. This means that we have 15 working channels. If we take that the binary flow is 1200bps, it is easy to conclude that we have 1200 hoops per second.
The composite signal from the modulator's output is sent to an amplifier and emitted via antenna in the air. The transmitter should not work only in the range from 200kHz to 800kHz and that's why filters and amplifiers are not further analyzed.

Receiver
As far as the receiver is concerned we should reason in the opposite direction (figure 2.). The signal from antenna is amplified an filtered out in order to eliminate noise out of the working range.. The integrated circuit MC1496 demodulates FSK signal and brings it back to the basic band.
figure 2.


The greatest problem in the receiver could be faced due to a bad synchronization. For proper coherent demodulation it is necessary to synchronize oscillators in transmitter and receiver. The synchronization methods are numerous and they present a wide area in telecommunications. Considering the problem would just take too much space, therefore I assume there is a synchro signal Sync which drives both oscillators. In further editions we should deal with more details with synchronization.
Demodulated FSK signal is filtered out so the 20kHz component is taken out of it. So processed signal is 'given' to the tone decoder which recognizes 10kHz and generates logic zero. In the case when there is no 10kHz signal the output of the tone decoder is at logic high, which is what we need. Tone decoder is made of the famous LM567 and the schematics is given on figure 6.
figure 6.

Further improvements
The integrated circuit XR2206 works well up to 1MHz. For work on higher frequencie it is possible to use other voltage controlled oscillators, such as MAX038 (Maxim). MAX038 works up to 20MHz. For increasing the flow rate it is necessary to raise FSK frequencies which demands wider working band and better filter realization between the PLL and the oscillator.
Frequency hooping method is just one of the spread spectrum methods. We saw how a PIC can help to realize a transceiver based on this method. Further improvements are possible which expands the usage of the device

author: Zoran Ristiæ
(mailto: zristic@beotel.yu)

Listing 1

 

PROCESSOR 16c84
INCLUDE "P16c84.INC"

; variables

same equ 1
w_keep equ 0CH ; keeps the acc contents during the rutine
countd equ 0DH 

; origin

org 0
goto init

org 4
goto rutina

init: bsf status,rp0
movlw 11000000b
tris portb ; set portb(5:0) as outputs and portb(7:6) as inputs (interrupts)
bcf status,rp0
clrf portb
movlw 15
movwf countd
bcf intcon,rbif
bsf intcon,gie
bsf intcon,rbie

main: nop ; wait for Sync
nop
goto main

;____________________________________

rutina bcf intcon,rbie
movwf w_keep

btfss portb,7 ;we only need the rising edge
goto exit

decfsz countd,same
goto dalje

movlw 15
movwf countd

dalje: 
movf countd,0
call fhtable
movwf portb

exit: bcf intcon,rbif
bsf intcon,gie
bsf intcon,rbie
movf w_keep,0

return
;____________________________________
fhtable
addwf pcl,same
retlw 50 ;this number is never read
retlw 50 ;800kHz
retlw 4C
retlw 48
retlw 44
retlw 40
retlw 3C
retlw 38
retlw 34
retlw 30
retlw 2C
retlw 28
retlw 24
retlw 20
retlw 1C
retlw 18
retlw 14 ;200kHz 
;____________________________________

END



Articles of interest:

Internet links:

 

 

www.microchip.com


©


| Index | What's new | New issue | Old issues | Advertising  | Download | Club mikroElektronika | News | Development tools | Modules | Link page | About us | Newsletter | Contact
 mikroElektronika  -  For any comments contact webmaster.

 

1