Friday, 29 March 2024
     
 
Main Menu
Home Home
Shop Shop
News News
BASCOM-AVR BASCOM-AVR
BASCOM-8051 BASCOM-8051
Products Products
Application Notes Application Notes
Publications Publications
Links Links
Support Center Support Center
Downloads Downloads
Forum Forum
Resellers Resellers
Contact Us Contact Us
Updates Updates
MCS Wiki MCS Wiki
Online Help
BASCOM-AVR Help BASCOM-AVR Help
BASCOM-8051 Help BASCOM-8051 Help
Contents in Cart
Show Cart
Your Cart is currently empty.
Search the Shop

Products Search

User Login
Username

Password

If you have problem after log in with disappeared login data, please press F5 in your browser

RSS News
 
     
 

 
   
     
 
AN #166 - Dimmer Print
Light-emitting diode dimmer
Rubashka Vasiliy , Ukraine , 2008


What distinguishes this of eight channel dimmer from of some other similar products?

- Usage of powerful target field transistors
- LCD display used as indicator
-  16 step brightness control of each channel
-  push-button management of modes
-  small dimensions (123x57x25 mm) and certainly a firm trade mark at start!

Source codes (BASCOM AVR) programs are well commented. At start the controller starts to print the address of a favorite site and through time deduces a trade mark.
Then it begin to execute the selected program.
It is possible to change speed of switching and the number of effects. There are 10 programs available.
Each of them has a sixteen step-by-step effect with 16 gradation of brightness in each step.
It is possible to add 22 more effects and to receive the quite good automatic device with 32 programs.
There is some inconvenience? You can control automatic or manual mode with a menu.
Change speed, and change. etc.


'*******************************************************************************
'* Filename    : PWM 8-channel                                                 *
'* Revision    : 1.5                                                           *
'* Controller  : ATMEGA8                                                       *
'* Compiler    : BASCOM-AVR 1.11.9.2                                           *
'* Author      : Rubashka Vasiliy , Ukraine , 2008                             *
'* WWW         : http://ledeffects.net                                         *
'* Mail        : info@ledeffects.net                                           *
'*******************************************************************************

$regfile = "m8def.dat" 'we define controller
$crystal = 8000000                                          'internal generator
$lib "lcd4.lbx" 'we connect library LCD
$lib "mcsbyte.lbx" 'we connect library a function
Config Portd = Output 'adjusting the port D on output (LED 1-8)
Config Pinc.= Input 'adjustment pin c0 on input (S1)
Config Pinc.= Input 'adjustment pin c1 on input (S2)
Config Pinc.= Input 'adjustment pin c2 on input (S3)
Config Pinc.= Input 'adjustment pin c3 on input (S4)
Config Pinc.= Input 'adjustment pin c4 on input (S2)
Config Pinc.= Input 'adjustment pin c5 on input (S3)
Config Pinb.= Input 'adjustment pin b3 on input (S4)
Set Portc.0                                                 ' include internal tightenning resistor
Set Portc.1                                                 ' include internal tightenning resistor
Set Portc.2                                                 ' include internal tightenning resistor
Set Portc.3                                                 ' include internal tightenning resistor
Set Portc.4                                                 ' include internal tightenning resistor
Set Portc.5                                                 ' include internal tightenning resistor
Set Portb.1                                                 ' include internal tightenning resistor

Config Lcdpin = Pin , Rs = Portb., E = Portb., Db4 = Portb., Db5 = Portb., Db6 = Portb., Db7 = Portb.7
Config Lcd = 16 * 2                                         'we adjust LCD

Dim S As Byte 'variable velocity
Dim Tik As Byte 'counter teak timer
Dim Shag As Byte 'counter step effect
Dim Effect As Byte 'counter effect
Dim Channel As Byte 'number of the channel
Dim Lamda As Word 'additional variable
Dim X(8) As Byte 'importances channel from table effect
Dim Y(8) As Byte 'brightness channel from table shades of gray
Dim Temp As Byte 'velocity repetition
Dim Kl As Byte 'variable for drawing graphs
Dim N As Byte 'initial cell of the table effect depending on chosen effect
Dim Takt As Byte 'counter step in main cycle

Dim Line1 As String * 8 , Line1d(8) As Byte At Line1 Overlay 'line 1 for semigraphics
Dim Line2 As String * 8 , Line2d(8) As Byte At Line2 Overlay 'line 2 for semigraphics

Config Timer0 = Timer , Prescale = 1                        'we adjust timer
Enable Timer0 'we allow functioning(working) the timer 0
Enable Interrupts 'We Allow interruptions
On Timer0 Pwms                                              'work on timer 0
Start Timer0 'start of the timer 0

Cursor Off 'Switch off cursor

Y(1) = 255
Y(2) = 255
Y(3) = 255
Y(4) = 255
Y(5) = 255
Y(6) = 255
Y(7) = 255
Y(8) = 255

'Logotype BASCOM-AVR
Cls
Deflcdchar 0 , 30 , 17 , 17 , 30 , 17 , 17 , 17 , 30        ' 1.1
Deflcdchar 1 , 32 , 32 , 32 , 32 , 32 , 32 , 1 , 3          ' 1.2
Deflcdchar 2 , 1 , 3 , 7 , 15 , 31 , 31 , 31 , 31           ' 1.3
Deflcdchar 3 , 32 , 32 , 32 , 1 , 2 , 6 , 14 , 30           ' 2.1
Deflcdchar 4 , 15 , 31 , 31 , 13 , 21 , 21 , 6 , 22         ' 2.2
Deflcdchar 5 , 31 , 31 , 31 , 9 , 10 , 10 , 25 , 26         ' 2.3

Waitms 30
Locate 1 , 1
Lcd "h"
Waitms 30
Locate 1 , 2
Lcd "t"
Waitms 30
Locate 1 , 3
Lcd "t"
Waitms 30
Locate 1 , 4
Lcd "p"
Waitms 30
Locate 1 , 5
Lcd ":"
Waitms 30
Locate 1 , 6
Lcd "/"
Waitms 30
Locate 1 , 7
Lcd "/"
Waitms 30
Locate 1 , 8
Lcd "w"
Waitms 30
Locate 1 , 9
Lcd "w"
Waitms 30
Locate 1 , 10
Lcd "w"
Waitms 30
Locate 1 , 11
Lcd "."
Waitms 100

Locate 2 , 1
Lcd "m"
Waitms 30
Locate 2 , 2
Lcd "c"
Waitms 30
Locate 2 , 3
Lcd "s"
Waitms 30
Locate 2 , 4
Lcd "e"
Waitms 30
Locate 2 , 5
Lcd "l"
Waitms 30
Locate 2 , 6
Lcd "e"
Waitms 30
Locate 2 , 7
Lcd "c"
Waitms 30
Locate 2 , 8
Lcd "."
Waitms 30
Locate 2 , 9
Lcd "c"
Waitms 30
Locate 2 , 10
Lcd "o"
Waitms 30
Locate 2 , 11
Lcd "m"
Waitms 100

Locate 1 , 16
Lcd Chr(0)
Locate 2 , 16
Lcd Chr(3)
Waitms 100
Locate 1 , 15
Lcd Chr(0) ; Chr(1)
Locate 2 , 15
Lcd Chr(3) ; Chr(4)
Waitms 100
Locate 1 , 14
Lcd Chr(0) ; Chr(1) ; Chr(2)
Locate 2 , 14
Lcd Chr(3) ; Chr(4) ; Chr(5)
Wait 1

'we install symbols of the user for graphic image of brightness channel
Deflcdchar 1 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 31
Deflcdchar 2 , 0 , 0 , 0 , 0 , 0 , 0 , 31 , 31
Deflcdchar 3 , 0 , 0 , 0 , 0 , 0 , 31 , 31 , 31
Deflcdchar 4 , 0 , 0 , 0 , 0 , 31 , 31 , 31 , 31
Deflcdchar 5 , 0 , 0 , 0 , 31 , 31 , 31 , 31 , 31
Deflcdchar 6 , 0 , 0 , 31 , 31 , 31 , 31 , 31 , 31
Deflcdchar 7 , 0 , 31 , 31 , 31 , 31 , 31 , 31 , 31
'*******************************************************************************

Cls 'Clear screen
 S = 8                                                      'velocity of the repetition at start (POSSIBLE CHANGE FROM 1 BEFORE 15)
 Temp = Lookup(, Speders) 'Delay in millisecond for chosen velocities a repetition
 Effect = 1                                                 'choice of the effect at start (POSSIBLE CHANGE)
 N = Effect * 16                                            'calculation of the initial cell of the table effect
 N = N - 16
'###############################################################################
'###############################################################################
Do 'main cycle
 For Takt = 0 To 15                                         'step of the effect
 Shag = N + Takt
 'questioning the buttons
 Debounce Pinc., 0 , Plus_speed , Sub
 Debounce Pinc., 0 , Minus_speed , Sub
 Debounce Pinc., 0 , Plus_effect , Sub
 Debounce Pinc., 0 , Minus_effect , Sub

 'building effect according to tables effect
 For Channel = 1 To 8
      Lamda = Shag * 8
      Lamda = Lamda + Channel
 Decr Lamda
      X(channel) = Lookup(lamda , Pwm_led) 'reading of importance of brightness for all 8 channels
            Lamda = X(channel)
 Decr Lamda
      Y(channel) = Lookup(lamda , Pwm_data) 'reading of importances of the constants for PWM
 Next

 Gosub Lcd_disp                                            'transition on conclusion of information on screen
 Waitms Temp                                               'delay for regulation of the velocities

 Next
Loop 'end of the main cycle
'###############################################################################
'###############################################################################
Plus_speed: 'enlarge velocity
Incr S
If S > 15 Then S = 15
Temp = Lookup(, Speders)
Return
'
Minus_speed: 'reduce velocity
Decr S
If S < 1 Then S = 1
Temp = Lookup(, Speders)
Return
'
Plus_effect: 'following effect
Incr Effect
'IT is NECESSARY to CHANGE DEPENDING ON AMOUNT EFFECT In TABLE!
If Effect > 10 Then Effect = 10
= Effect * 16
= N - 16
Return
'
Minus_effect: 'previous effect
Decr Effect
If Effect < 1 Then Effect = 1
= Effect * 16
= N - 16
Return

'*******************************************************************************
'work on timer - an Organization PWM
Pwms:
Incr Tik
 If Tik = 255 Then
  Tik = 0
 Portd = 0
 End If
 If Tik > Y(1) Then Portd.= 1
 If Tik > Y(2) Then Portd.= 1
 If Tik > Y(3) Then Portd.= 1
 If Tik > Y(4) Then Portd.= 1
 If Tik > Y(5) Then Portd.= 1
 If Tik > Y(6) Then Portd.= 1
 If Tik > Y(7) Then Portd.= 1
 If Tik > Y(8) Then Portd.= 1
Return
'*******************************************************************************
'Conclusion to information on screen
Lcd_disp:
'semigraphics
For Kl = 1 To 8
   Line1d(kl) = Lookup(x(kl) , L1)
   Line2d(kl) = Lookup(x(kl) , L2)
Next
Locate 1 , 1
Lcd Line1;
Locate 2 , 1
Lcd Line2;
'text
Locate 1 , 9
If Effect < 10 Then Lcd " Eff: " ; Effect
If Effect >= 10 Then Lcd " Eff:" ; Effect
Locate 2 , 9
If S < 10 Then Lcd " Tmp: " ; S
If S >= 10 Then Lcd " Tmp:" ; S
Return
'*******************************************************************************
'table of the building level to brightness channel for two lines of the screen
'from symbol of the user and started and filled symbol (32 č 255)
L1:
Data 32 , 32 , 32 , 32 , 32 , 32 , 32 , 32 , 32 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 255
L2:
Data 32 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 255 , 255 , 255 , 255 , 255 , 255 , 255 , 255 , 255
'*******************************************************************************
'16 shadeses of gray: 255 - minimum brightness, 0 - maximum.Logarithmic scale
Pwm_data:
Data 255 , 253 , 252 , 251 , 249 , 246 , 243 , 238 , 231 , 221 , 208 , 189 , 162 , 125 , 73 , 0
'*******************************************************************************
'Delays in millisecond for regulation of the velocities effect - a logarithmic scale
Speders:
Data 140 , 100 , 70 , 50 , 39 , 31 , 24 , 18 , 13 , 9 , 6 , 4 , 3 , 2 , 1 , 0
'*******************************************************************************
'Table effect
Pwm_led:

'effect 1 -
Data 1 , 16 , 1 , 16 , 1 , 16 , 1 , 16
Data 2 , 15 , 2 , 15 , 2 , 15 , 2 , 15
Data 3 , 14 , 3 , 14 , 3 , 14 , 3 , 14
Data 4 , 13 , 4 , 13 , 4 , 13 , 4 , 13
Data 5 , 12 , 5 , 12 , 5 , 12 , 5 , 12
Data 6 , 11 , 6 , 11 , 6 , 11 , 6 , 11
Data 7 , 10 , 7 , 10 , 7 , 10 , 7 , 10
Data 8 , 9 , 8 , 9 , 8 , 9 , 8 , 9
Data 9 , 8 , 9 , 8 , 9 , 8 , 9 , 8
Data 10 , 7 , 10 , 7 , 10 , 7 , 10 , 7
Data 11 , 6 , 11 , 6 , 11 , 6 , 11 , 6
Data 12 , 5 , 12 , 5 , 12 , 5 , 12 , 5
Data 13 , 4 , 13 , 4 , 13 , 4 , 13 , 4
Data 14 , 3 , 14 , 3 , 14 , 3 , 14 , 3
Data 15 , 2 , 15 , 2 , 15 , 2 , 15 , 2
Data 16 , 1 , 16 , 1 , 16 , 1 , 16 , 1
'effect 2 -
Data 16 , 15 , 14 , 13 , 12 , 11 , 10 , 9
Data 15 , 14 , 13 , 12 , 11 , 10 , 9 , 8
Data 14 , 13 , 12 , 11 , 10 , 9 , 8 , 7
Data 13 , 12 , 11 , 10 , 9 , 8 , 7 , 6
Data 12 , 11 , 10 , 9 , 8 , 7 , 6 , 5
Data 11 , 10 , 9 , 8 , 7 , 6 , 5 , 4
Data 10 , 9 , 8 , 7 , 6 , 5 , 4 , 3
Data 9 , 8 , 7 , 6 , 5 , 4 , 3 , 2
Data 8 , 7 , 6 , 5 , 4 , 3 , 2 , 1
Data 7 , 6 , 5 , 4 , 3 , 2 , 1 , 16
Data 6 , 5 , 4 , 3 , 2 , 1 , 16 , 15
Data 5 , 4 , 3 , 2 , 1 , 16 , 15 , 14
Data 4 , 3 , 2 , 1 , 16 , 15 , 14 , 13
Data 3 , 2 , 1 , 16 , 15 , 14 , 13 , 12
Data 2 , 1 , 16 , 15 , 14 , 13 , 12 , 11
Data 1 , 16 , 15 , 14 , 13 , 12 , 11 , 10
'effect 3 -
Data 16 , 1 , 2 , 3 , 4 , 5 , 6 , 7
Data 15 , 16 , 1 , 2 , 3 , 4 , 5 , 6
Data 14 , 15 , 16 , 1 , 2 , 3 , 4 , 5
Data 13 , 14 , 15 , 16 , 1 , 2 , 3 , 4
Data 12 , 13 , 14 , 15 , 16 , 1 , 2 , 3
Data 11 , 12 , 13 , 14 , 15 , 16 , 1 , 2
Data 10 , 11 , 12 , 13 , 14 , 15 , 16 , 1
Data 9 , 10 , 11 , 12 , 13 , 14 , 15 , 16
Data 8 , 9 , 10 , 11 , 12 , 13 , 14 , 15
Data 7 , 8 , 9 , 10 , 11 , 12 , 13 , 14
Data 6 , 7 , 8 , 9 , 10 , 11 , 12 , 13
Data 5 , 6 , 7 , 8 , 9 , 10 , 11 , 12
Data 4 , 5 , 6 , 7 , 8 , 9 , 10 , 11
Data 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10
Data 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9
Data 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8
'effect 4 -
Data 1 , 16 , 15 , 14 , 13 , 12 , 11 , 10
Data 2 , 1 , 16 , 15 , 14 , 13 , 12 , 11
Data 3 , 2 , 1 , 16 , 15 , 14 , 13 , 12
Data 4 , 3 , 2 , 1 , 16 , 15 , 14 , 13
Data 5 , 4 , 3 , 2 , 1 , 16 , 15 , 14
Data 6 , 5 , 4 , 3 , 2 , 1 , 16 , 15
Data 7 , 6 , 5 , 4 , 3 , 2 , 1 , 16
Data 8 , 7 , 6 , 5 , 4 , 3 , 2 , 1
Data 9 , 8 , 7 , 6 , 5 , 4 , 3 , 2
Data 10 , 9 , 8 , 7 , 6 , 5 , 4 , 3
Data 11 , 10 , 9 , 8 , 7 , 6 , 5 , 4
Data 12 , 11 , 10 , 9 , 8 , 7 , 6 , 5
Data 13 , 12 , 11 , 10 , 9 , 8 , 7 , 6
Data 14 , 13 , 12 , 11 , 10 , 9 , 8 , 7
Data 15 , 14 , 13 , 12 , 11 , 10 , 9 , 8
Data 16 , 15 , 14 , 13 , 12 , 11 , 10 , 9
'effect 5 -
Data 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8
Data 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9
Data 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10
Data 4 , 5 , 6 , 7 , 8 , 9 , 10 , 11
Data 5 , 6 , 7 , 8 , 9 , 10 , 11 , 12
Data 6 , 7 , 8 , 9 , 10 , 11 , 12 , 13
Data 7 , 8 , 9 , 10 , 11 , 12 , 13 , 14
Data 8 , 9 , 10 , 11 , 12 , 13 , 14 , 15
Data 9 , 10 , 11 , 12 , 13 , 14 , 15 , 16
Data 10 , 11 , 12 , 13 , 14 , 15 , 16 , 1
Data 11 , 12 , 13 , 14 , 15 , 16 , 1 , 2
Data 12 , 13 , 14 , 15 , 16 , 1 , 2 , 3
Data 13 , 14 , 15 , 16 , 1 , 2 , 3 , 4
Data 14 , 15 , 16 , 1 , 2 , 3 , 4 , 5
Data 15 , 16 , 1 , 2 , 3 , 4 , 5 , 6
Data 16 , 1 , 2 , 3 , 4 , 5 , 6 , 7
'effect 6 -
Data 16 , 1 , 16 , 1 , 16 , 1 , 16 , 1
Data 15 , 2 , 15 , 2 , 15 , 2 , 15 , 2
Data 14 , 3 , 14 , 3 , 14 , 3 , 14 , 3
Data 13 , 4 , 13 , 4 , 13 , 4 , 13 , 4
Data 12 , 5 , 12 , 5 , 12 , 5 , 12 , 5
Data 11 , 6 , 11 , 6 , 11 , 6 , 11 , 6
Data 10 , 7 , 10 , 7 , 10 , 7 , 10 , 7
Data 9 , 8 , 9 , 8 , 9 , 8 , 9 , 8
Data 8 , 9 , 8 , 9 , 8 , 9 , 8 , 9
Data 7 , 10 , 7 , 10 , 7 , 10 , 7 , 10
Data 6 , 11 , 6 , 11 , 6 , 11 , 6 , 11
Data 5 , 12 , 5 , 12 , 5 , 12 , 5 , 12
Data 4 , 13 , 4 , 13 , 4 , 13 , 4 , 13
Data 3 , 14 , 3 , 14 , 3 , 14 , 3 , 14
Data 2 , 15 , 2 , 15 , 2 , 15 , 2 , 15
Data 1 , 16 , 1 , 16 , 1 , 16 , 1 , 16
'effect 7 -
Data 1 , 3 , 5 , 7 , 7 , 5 , 3 , 1
Data 3 , 5 , 7 , 9 , 9 , 7 , 5 , 3
Data 5 , 7 , 9 , 11 , 11 , 9 , 7 , 5
Data 7 , 9 , 11 , 13 , 13 , 11 , 9 , 7
Data 9 , 11 , 13 , 15 , 15 , 13 , 11 , 9
Data 11 , 13 , 15 , 15 , 15 , 15 , 13 , 11
Data 13 , 15 , 15 , 15 , 15 , 15 , 15 , 13
Data 15 , 15 , 15 , 15 , 15 , 15 , 15 , 15
Data 15 , 15 , 15 , 13 , 13 , 15 , 15 , 15
Data 15 , 15 , 13 , 11 , 11 , 13 , 15 , 15
Data 15 , 13 , 11 , 9 , 9 , 11 , 13 , 15
Data 13 , 11 , 9 , 7 , 7 , 9 , 11 , 13
Data 11 , 9 , 7 , 5 , 5 , 7 , 9 , 11
Data 9 , 7 , 5 , 3 , 3 , 5 , 7 , 9
Data 7 , 5 , 3 , 1 , 1 , 3 , 5 , 7
Data 5 , 3 , 1 , 1 , 1 , 1 , 3 , 5
'effect 8 -
Data 1 , 5 , 9 , 13 , 1 , 5 , 9 , 13
Data 2 , 6 , 10 , 14 , 2 , 6 , 10 , 14
Data 3 , 7 , 11 , 15 , 3 , 7 , 11 , 15
Data 4 , 8 , 12 , 16 , 4 , 8 , 12 , 16
Data 5 , 9 , 13 , 16 , 5 , 9 , 13 , 16
Data 6 , 10 , 14 , 15 , 6 , 10 , 14 , 15
Data 7 , 11 , 15 , 14 , 7 , 11 , 15 , 14
Data 8 , 12 , 16 , 13 , 8 , 12 , 16 , 13
Data 9 , 13 , 16 , 12 , 9 , 13 , 16 , 12
Data 10 , 14 , 15 , 11 , 10 , 14 , 15 , 11
Data 11 , 15 , 14 , 10 , 11 , 15 , 14 , 10
Data 12 , 16 , 13 , 9 , 12 , 16 , 13 , 9
Data 13 , 16 , 12 , 8 , 13 , 16 , 12 , 8
Data 14 , 15 , 11 , 7 , 14 , 15 , 11 , 7
Data 15 , 14 , 10 , 6 , 15 , 14 , 10 , 6
Data 16 , 13 , 9 , 5 , 16 , 13 , 9 , 5
'effect 9 -
Data 16 , 14 , 12 , 10 , 8 , 6 , 4 , 2
Data 14 , 12 , 10 , 8 , 6 , 4 , 2 , 16
Data 12 , 10 , 8 , 6 , 4 , 2 , 16 , 14
Data 10 , 8 , 6 , 4 , 2 , 16 , 14 , 12
Data 8 , 6 , 4 , 2 , 16 , 14 , 12 , 10
Data 6 , 4 , 2 , 16 , 14 , 12 , 10 , 8
Data 4 , 2 , 16 , 14 , 12 , 10 , 8 , 6
Data 2 , 16 , 14 , 12 , 10 , 8 , 6 , 4
Data 16 , 14 , 12 , 10 , 8 , 6 , 4 , 2
Data 14 , 12 , 10 , 8 , 6 , 4 , 2 , 16
Data 12 , 10 , 8 , 6 , 4 , 2 , 16 , 14
Data 10 , 8 , 6 , 4 , 2 , 16 , 14 , 12
Data 8 , 6 , 4 , 2 , 16 , 14 , 12 , 10
Data 6 , 4 , 2 , 16 , 14 , 12 , 10 , 8
Data 4 , 2 , 16 , 14 , 12 , 10 , 8 , 6
Data 2 , 16 , 14 , 12 , 10 , 8 , 6 , 4
'effect 10 -
Data 16 , 16 , 16 , 16 , 16 , 16 , 16 , 16
Data 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14
Data 12 , 12 , 12 , 12 , 12 , 12 , 12 , 12
Data 10 , 10 , 10 , 10 , 10 , 10 , 10 , 10
Data 8 , 8 , 8 , 8 , 8 , 8 , 8 , 8
Data 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6
Data 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4
Data 2 , 2 , 2 , 2 , 2 , 2 , 2 , 2
Data 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1
Data 2 , 2 , 2 , 2 , 2 , 2 , 2 , 2
Data 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4
Data 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6
Data 8 , 8 , 8 , 8 , 8 , 8 , 8 , 8
Data 10 , 10 , 10 , 10 , 10 , 10 , 10 , 10
Data 12 , 12 , 12 , 12 , 12 , 12 , 12 , 12
Data 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14
'effect 11 -
Data 16 , 16 , 16 , 16 , 16 , 16 , 16 , 16
Data 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14
Data 12 , 12 , 12 , 12 , 12 , 12 , 12 , 12
Data 10 , 10 , 10 , 10 , 10 , 10 , 10 , 10
Data 8 , 8 , 8 , 8 , 8 , 8 , 8 , 8
Data 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6
Data 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4
Data 2 , 2 , 2 , 2 , 2 , 2 , 2 , 2
Data 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1
Data 2 , 2 , 2 , 2 , 2 , 2 , 2 , 2
Data 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4
Data 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6
Data 8 , 8 , 8 , 8 , 8 , 8 , 8 , 8
Data 10 , 10 , 10 , 10 , 10 , 10 , 10 , 10
Data 12 , 12 , 12 , 12 , 12 , 12 , 12 , 12
Data 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14
'effect 12 -
Data 16 , 16 , 16 , 16 , 16 , 16 , 16 , 16
Data 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14
Data 12 , 12 , 12 , 12 , 12 , 12 , 12 , 12
Data 10 , 10 , 10 , 10 , 10 , 10 , 10 , 10
Data 8 , 8 , 8 , 8 , 8 , 8 , 8 , 8
Data 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6
Data 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4
Data 2 , 2 , 2 , 2 , 2 , 2 , 2 , 2
Data 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1
Data 2 , 2 , 2 , 2 , 2 , 2 , 2 , 2
Data 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4
Data 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6
Data 8 , 8 , 8 , 8 , 8 , 8 , 8 , 8
Data 10 , 10 , 10 , 10 , 10 , 10 , 10 , 10
Data 12 , 12 , 12 , 12 , 12 , 12 , 12 , 12
Data 14 , 14 , 14 , 14 , 14 , 14 , 14 , 14