SlideShare uma empresa Scribd logo
1 de 12
Baixar para ler offline
‫ر‬   ‫: داﻥ ل‬   ‫ﻥ‬                                                                       ‫و‬     ‫و‬                   ‫ز‬
                                                                                                  ‫س ﺏ زر‬             ‫اﺱ د:‬



 ‫"‪$regfile = "m16def.dat‬‬                                                                          ‫ال1 :‬              ‫ح‬
 ‫0000008 = ‪$crystal‬‬              ‫ش .‬                 ‫رت را از را‬                    ‫ه‬                            ‫ا‬
 ‫‪Config Portd = Output‬‬                                                                               ‫1:‬                       ‫ﺕ‬
 ‫‪Dim A As Integer‬‬      ‫م رت را‬        ‫د ،در‬          ‫ر را‬                 ‫،‬                   ‫و را‬          ‫اول‬              ‫در‬
    ‫ان و‬
 ‫:‪Home‬‬                                    ‫.‬          ‫را ﺕ‬   ‫رم‬             ‫ر‬     ‫. ا د از د‬                                  ‫در‬
 ‫‪A = &HFF‬‬                            ‫د‬       ‫ار ده‬   ‫11111111‬             ‫ار‬         ‫د از د ر رو و‬                       ‫ا‬
 ‫0 > ‪While A‬‬      ‫د)‬    ‫ار 1 ار‬   ‫رت‬       ‫ه‬   ‫ﺕ م‬   ‫ن رو‬      ‫در‬              ‫ار ه‬     ‫رت‬  ‫د را رو‬                           ‫ا‬
‫(‬
 ‫‪Portd = A‬‬       ‫ر از ﺹ‬         ‫رﺕ ز‬     ‫ار ه )ا‬      ‫ر‬     ‫ه و ا ا دو ر رو‬     ‫ﺵ‬                         ‫د را‬
 ‫005 ‪Waitms‬‬                                            ‫د(‬     ‫ا م‬               ‫د ر‬                          ‫ﺵ و‬
 ‫س ‪Shift A , Left‬‬         ‫ط ه‬          ‫شﺵن‬            ‫ﺕ ﺕ ﺕ‬      ‫و ا د‬      ‫دادن ت ز‬                      ‫ه رﺵ‬
  ‫ﺵ‬
 ‫‪Wend‬‬
 ‫0 = ‪Portd‬‬
 ‫005 ‪Waitms‬‬
 ‫‪Goto Home‬‬                                                 ‫م‬   ‫ق دو ر ا‬    ‫ت‬            ‫د و‬   ‫ا ا ش‬                   ‫دو ر‬
 ‫‪‘end program‬‬


               ‫دارد‬       ‫ﺏ ن ﺱ ا از ﺏ‬       ‫ﺏﺵ‬      ‫ﺏ ر‬       ‫ﻥ در زﻥ‬          ‫ه‬




                                               ‫1‬
‫ر‬     ‫: داﻥ ل‬    ‫ﻥ‬                                                                           ‫و‬     ‫و‬            ‫ز‬
                                                                                                           ‫س ﺏ زر‬      :‫اﺱ د‬




                                                                                                                :2‫ال‬       ‫ح‬
                                                      ‫ش‬          ‫ﺹ رت ز‬    ‫رت را‬                ‫ه‬                      ‫ا‬




                                                                                                           :2                  ‫ﺕ‬
1 $regfile = “m16def.dat”
2 $crystal = 8000000                                         ‫د‬   ‫ار‬         ‫ار‬     ‫رت‬      ‫ه‬    ‫6 رو ﺕ م‬         ‫ر‬     ‫ا ا د‬
3 Config portd= output                      .     ‫د‬   ‫ه روﺵ ا را ا‬        ‫ﺕ م‬           ‫د نا‬     ‫ت ز ن زم‬        7      ‫د ر‬

4    Dim A As Integer , I As Integer , J As Integer                        .                  ‫را ا د از دو ﺡ و‬
5    Ds:                                               ‫شو‬       ‫رت‬       ‫رﺕ‬           4 ‫اول در اﺹ‬      ‫ﺹ رت در ﺡ‬
6    Portd = &HFF                                                    .‫رت‬          ‫رﺕ‬        4 ‫دوم‬     ‫و در ﺡ‬         ‫روﺵ‬
7    Waitms 150                            .(12‫11 و‬        ‫)د ر‬           ‫ش‬       7‫0و‬       ‫ا ا‬              ‫اول‬     ‫در ﺡ‬
8    Bb:                                  ‫س د ،ا‬            ‫د‬     ‫11 و 21 ا د‬                 ‫،و ا‬      ‫ﺵ از‬           ‫ﻝ‬
9    J=7                ‫واﺡ از ار‬                 ‫.در ادا‬       ‫را روﺵ‬         ‫د دو ر‬     ‫. ﺕ ﺹ‬          ‫ش‬       ‫ه ن‬
10   For I = 0 To 3                          .             ‫ه 6و1ر‬            ،‫اول‬      ‫در دور دوم ﺡ‬     ‫د. در‬
11   Reset Portd.i.                                                                 .      ‫ﺕ ار‬      ‫د‬       ‫اﺡ در ﺡ‬      ‫ا‬
12   Reset Portd.j.
13   Waitms 150             ‫4و 5 ت ز ن‬                 ‫در ن ا‬         ‫ا‬       . ‫ان ﺹ رت د ﺕ ز ه ﺵ‬                 ‫را‬
14   Set Portd.i. (4 ‫ه 5 و‬       ‫و در ادا‬             ‫ه 4و5ر‬            ‫) ر‬           ‫ار‬      ‫ه در ﺡ ﻝ ر‬
15   Set Portd.j.
16   J=J–1                                     11           Portd = &HFF
17   Next I                                    2            Waitms 150
18   J=2                                       3            J=7
19   For I = 5 To 7                            4              For I = 0 To 7
20   Reset Portd.i                             5               Reset Portd.i
21   Reset Portd.j                             6               Reset Portd.j
22   Waitms 150                                7               Waitms 150
23   Set Portd.i                               8               Set Portd.i
24   Set Portd.j                               9               Set Portd.j
25   J=J–1                                     10              J=J-1
26   Next I                                    11             Next I
27   Goto Bb
28   Goto Ds




                                                             2
‫ر‬   ‫: داﻥ ل‬    ‫ﻥ‬                                                                     ‫و‬     ‫و‬             ‫ز‬
                                                                                                  ‫س ﺏ زر‬       :‫اﺱ د‬




                                                                                                       :3 ‫ال‬       ‫ح‬
                                      .   ‫ش و روﺵ ﺵ‬        ( ‫ﺹ رت ز )دوﺕ دوﺕ‬       ‫ه‬   ‫در ن‬                    ‫ا‬




                                                                                                  :3                   ‫ﺕ‬
 $regfile = “m16def.dat”
 $crystal = 8000000                             ‫را‬        ‫اول از‬      ‫.ﺡ‬      ‫از دو ﺡ ا د‬                ‫در ا‬
 Config Portd = Output                               .             ‫ور‬    ‫ه را‬               ‫دوم از را‬   ‫وﺡ‬
 Dim A As Integer , I As Integer , J As Integer         ‫ت ﺹ رت‬         ‫ﺕ‬      ‫اول ش‬        ‫ﺡ‬      ‫در ا دو ر‬
. ‫ﺕ ار ﺵ‬
 Portd = &HFF                          ‫م ﺡ را دو‬       ‫ا‬         ‫ﺵ ،ﺕ‬      ‫ور‬     ‫ه دوﺕ دوﺕ‬              ‫از ا‬
 Waitms 500                                 .‫د‬     ‫ور را ر‬          ‫مﺡ و‬       ‫ط‬            ‫وه ر‬       ‫ا ب‬
 Ds:                                   ‫از م ﺡ‬      ‫واﺡ‬      ‫و ارش را ه ر‬                ‫را ﺕ‬        ‫ر‬
 For I = 7 To 1 Step -2                                                                            . ‫ار ه‬
 J=I–1                                                        .       ‫ا د‬     ‫دوم‬      ‫رو را ا ﺡ‬        ‫از ه‬
 Reset Portd.i
 Reset Portd.j
 Waitms 500
 Set Portd.i
 Set Portd.j
 Next
 A = &HFF
 For I = 2 To 7 Step 2
 J=I+1
 Reset Portd.i
 Reset Portd.j
 Waitms 500
 Set Portd.i
 et Portd.j
Next I
Goto Ds
end program




                            .   ‫ا شﻥ‬          ‫ا ،ه‬           ‫ﺵ‬     ‫ﺏ‬    ‫را‬     ‫ﻥ‬
                                               " ‫ون‬   ‫"ﺱ‬


                                                      3
‫ر‬     ‫: داﻥ ل‬   ‫ﻥ‬                                                                                       ‫و‬     ‫و‬               ‫ز‬
                                                                                                                      ‫س ﺏ زر‬         :‫اﺱ د‬



                                                                                                                               4‫ال‬     ‫ح‬
  ‫ال3 اﺕ ق ا‬     ‫مت‬           ‫زدن‬     ‫ال2 و‬      ‫دوم ﺡ ﻝ‬           ‫زدن‬    ،1 ‫ال‬       ‫اول ﺡ ﻝ‬          ‫زدن‬                 ‫ا‬
                                                                                  Set Portd.i                         :4                     ‫ﺕ‬
 $regfile = “m16def.dat”                                                          Set Portd.j
$crystal = 8000000                                                                J=J-1
Config Portd = Output                                                             Next I
Config Portc = Input                                                              Goto Ds
Dim A As Integer , I As Integer , J As Integer                                    Led1:
Ds:                                                                               Ss:
If Pinc.0 = 1 Then Goto Led1                                                      A = &HFF
If Pinc.1 = 1 Then Goto Led2                                                      Portd = A
If Pinc.2 = 1 Then Goto Led3                                                      Set Portd
Goto Ds                                                                           Waitms 500
Led3:                                                                             For I = 0 To 7
Portd = &HFF                                                                      Reset Portd.i
Waitms 500                                                                        Waitms 500
Aa:                                                                               Next I
For I = 7 To 1 Step -2                                                            Goto Ds
J=I–1                                                                             'end program

Reset Portd.i                                                              ‫ل )ورود ( ﺕ‬         ‫ان‬      ‫رت را‬                           ‫در ا‬
Reset Portd.j                                       ‫د‬     ‫ل‬          ‫از‬                  ‫ا ا 3 اول رت را‬                             ‫در ا ا‬
Waitms 500                          ‫ﺵ ط دو ر‬        ‫ه‬          ‫د،در ا‬    ‫ﺵ ا م‬          ‫ش د وا ل‬
Set Portd.i                                          .‫د‬           ‫دو ر ا م‬             ‫ت‬     ‫ار ﺵ‬     ‫ه ز‬                       ،‫د‬
Set Portd.j                                    ‫از ﺵ وط‬          ‫ﺕ‬           ‫ش د‬            ‫ا ا‬    ‫ار د دو ر‬                     ‫ﺵ ط‬
Next                                                                                                                            .‫ار دد‬
A = &HFF                                                       (     ‫داد ﺵ ا‬           ‫ﺕ‬           ‫ه‬         ‫در‬        ‫ده‬                    )
For I = 2 To To 7 Step 2
 For I = 2 7 Step 2
J=I+1
Reset Portd.i
Reset Portd.j
Waitms 500
Set Portd.i                                                  PC0/SCL
                                                                           22
Set Portd.j                                                                23
                                                             PC1/SDA
                                                                           24
Next I                                                       PC2/TCK
                                                                           25
                                                             PC3/TMS
If Pinc.2 = 1 Then Goto Aa                                   PC4/TDO
                                                                           26
Goto Ds                                                                    27
                                                              PC5/TDI
                                                                           28
Led2:                                                      PC6/TOSC1
                                                                           29
                                                           PC7/TOSC2
Portd = &HFF
Waitms 250                                                                 14
                                                               PD0/RXD
                                                                           15
Bb:                                                            PD1/TXD
                                                                           16
                                                               PD2/INT0
J=7                                                            PD3/INT1
                                                                           17
For I = 0 To 3                                                             18
                                                              PD4/OC1B
                                                                           19
Reset Portd.i                                                 PD5/OC1A
                                                                           20
                                                               PD6/ICP1
Reset Portd.j                                                  PD7/OC2
                                                                           21
Waitms 250
Set Portd.i
Set Portd.j                                                                32
                                                                   AREF
J=J-1                                                                      30
                                                                   AVCC
Next I
J=2
For I = 5 To 7
Reset Portd.i
Reset Portd.j
Waitms 250
                                                                    4
‫ر‬       ‫: داﻥ ل‬   ‫ﻥ‬                                                                          ‫و‬     ‫و‬               ‫ز‬
                                                                                                                  ‫س ﺏ زر‬         ‫اﺱ د:‬




                                                                                                                       ‫ال 5:‬         ‫ح‬
                                                              ‫رد.‬                 ‫7‬        ‫ا اد 0 ﺕ 9 را رو‬                      ‫ا‬
                                                                                                                  ‫5:‬                     ‫ﺕ‬
         ‫ا‬       ‫8‬           ‫( د‬                    ‫ع ن) ﺕ‬                  ‫ا ا‬        ‫ﺹ رت ا‬                     ‫ن‬        ‫ر‬
                                                                                                                            ‫اه‬
‫ار‬           ‫د‬       ‫ر‬             ‫ن‬         ‫ز‬   ‫ار ده .در ﺵ‬       ‫رت‬         ‫ه‬        ‫ده رو‬           ‫ا‬  ‫ل)د ده (‬  ‫دل د‬
                                                 ‫.‬        ‫)7( وﺹ‬    ‫ﺕ‬         ‫و.‬          ‫ارزﺵ‬             ‫داد ﺵ ا ، ﺕ ﺕ‬
                 ‫وﺹ‬                    ‫ﺵ‬               ‫دد.و ا‬    ‫ا وﺹ‬                                   ‫ﺕ‬    ‫ه‬      ‫در ن‬
                                                                                                                     ‫د.‬
     ‫د‬       ‫ه‬           ‫ار ده‬             ‫ا )‬    ‫ار‬    ‫ﺕ ﺕ‬    ‫ز‬            ‫د 0 ﺕ 9 در‬        ‫د و‬           ‫ﺕ‬           ‫ن‬
                                                              ‫د(‬        ‫د‬     ‫ا‬    ‫8‬          ‫ا اد‬    ‫د،از دل ه‬    ‫ﺕ ﺹ رت‬




 ‫م ﺵ د و "‪$regfile = "m16def.dat‬‬                   ‫را‬    ‫ا‬    ‫ا دار‬     ‫ﺡ‬     ‫ز‬       ‫ده‬        ‫0 ﺕ 9 را‬          ‫ه ا اد‬             ‫ن‬
                                                                                                                        ‫در‬
‫0000008 = ‪$crystal‬‬       ‫را‬     ‫دا‬      ‫ار ده‬    ‫رت و‬       ‫را رو‬                               ‫د رد‬       ‫ه م ار دل ه‬
‫‪Config Portb = Output‬‬                                         ‫ه .‬                               ‫ول ا م‬           ‫ا د از ﺕ‬
‫را رو ‪Dim A As Byte , I As Byte‬‬       ‫.‬        ‫داﺵ ، ن را در د ذ‬                                   ‫د را از ول‬     ‫ه ر ا‬
‫:‪Home‬‬                       ‫.‬      ‫ار‬    ‫و‬    ‫ن ا اد 0 ﺕ 9 رو‬                                    ‫در‬    ‫ار ه‬       ‫رت و‬
‫9 ‪For I = 0 To‬‬                                    ‫د(‬     ‫ار‬     ‫و‬                               ‫از ا اد رو‬      ‫)در ه م ﺡ‬
‫)‪A = Lookup(i , Seg‬‬
‫‪Portb = A‬‬
‫002 ‪Waitms‬‬
‫‪Next I‬‬
‫‪Goto Home‬‬
‫:‪Seg‬‬
‫‪Data &H3F , &H06 , &H5B , &H4F , &H66 , &H6D , &H7D , &H07 , &H7F , &H6F‬‬




                                                               ‫5‬
‫ر‬   ‫: داﻥ ل‬     ‫ﻥ‬                                                                      ‫و‬     ‫و‬             ‫ز‬
                                                                                                         ‫س ﺏ زر‬       :‫اﺱ د‬




                                                                                                              :7 ‫ال‬        ‫ح‬
              ‫ن‬    2 ‫0 ﺕ 99 رو‬        ‫د‬    ‫دوم ا اد‬      ‫زدن‬   ‫0 ﺕ 99 و‬         ‫اول ا اد زوج‬   ‫زدن‬                  ‫ا‬
                                                                                                              ‫داد ﺵ د‬

                                                                                                         :7                     ‫ﺕ‬
$regfile = "m16def.dat"
$crystal = 8000000
Config Porta = Output             ‫ل‬   .7    ‫ل ﺵ ا اد زوج و ا‬          .5   ‫.ا‬   ‫را‬          .7 ‫ه 5. و‬       ‫ا ا‬      ‫ا‬
      ‫ف‬
Config Portb = Output                                                  .‫ه‬                  ‫0 ﺕ 99 را‬    ‫ل ﺵ ا اد د‬
Config Portc = Input                                            ‫ط دوم )ا زوج ﺵ ر‬           ‫ه ﺵ‬           ‫د را‬     ‫ه ر‬
Dim A As Byte , I As Byte ,                                      ،         ‫5( را‬              ‫دﺵ ر ﺵ‬       ‫7 ا‬     ‫ﺵ‬
J As Byte , B As Byte                                     ‫ار‬ ‫ﺵ ط دوم‬       ‫ه وز‬                 ‫ار د ﺵ رش ادا‬        ‫ا‬
Home:                                                 ‫و دو ر از ا ا ﺵ وع ﺵ رش‬                ‫ط نﺵ ط ش‬
If Pinc.0 = 1 Then Goto Zoj                                                                                     .
If Pinc.1 = 1 Then Goto Fard
                                             ‫نر‬                    ‫ده ، م ﺡ‬         ‫د را‬   ‫اه ا اد زوج‬
Fard:                                                                                                           ‫ه‬     ‫ار‬       ‫دو‬
For I = 0 To 9
A = Lookup(i , Seg)
Porta = A
For J = 1 To 9 Step 2
B = Lookup(j , Seg)
Portb = B
Waitms 500
Next I
Next J
Goto Home

Zoj:
For I = 0 To 9
A = Lookup(i , Seg)
Porta = A
For J = 0 To 9 Step 2
B = Lookup(j , Seg)
Portb = B
Waitms 500
Next I
Next J
Goto Home
Seg:
Data &H3F , &H06 , &H5B , &H4F ,
&H66 , &H6D , &H7D , &H07 ,
&H7F , &H6F


                                                               6
‫ر‬   ‫: داﻥ ل‬    ‫ﻥ‬                                                                               ‫و‬     ‫و‬              ‫ز‬
                                                                                                             ‫س ﺏ زر‬        :‫اﺱ د‬

                                                            SW2




                                                                          22
                                                                          23
                                                                          24
                                                                          25
                                                                          26
                                                                          27
                                                                          28
                                                                          29

                                                                                             14
                                                                                             15
                                                                                             16
                                                                                             17
                                                                                             18
                                                                                             19
                                                                                             20
                                                                                             21




                                                                                                                 32
                                                                                                                 30
                                                                                                                          U2




                                                                            PC2/TCK
                                                                            PC3/TMS




                                                                                              PD4/OC1B
                                                                            PC4/TDO




                                                                                                                   AREF
                                                                                               PD0/RXD
                                                                                               PD1/TXD




                                                                                                                   AVCC
                                                                            PC1/SDA




                                                                                              PD5/OC1A
                                                                            PC0/SCL




                                                                             PC5/TDI
                                                                          PC6/TOSC1
                                                                          PC7/TOSC2




                                                                                               PD2/INT0
                                                                                               PD3/INT1


                                                                                               PD6/ICP1
                                                                                               PD7/OC2
                                                                                                                          ATMEGA16
                                                            SW-DPDT-MOM




                                                                                                     PB2/AIN0/INT2
                                                                                                     PB3/AIN1/OC0
                                                                                                     PB0/T0/XCK
                                                                                          PA0/ADC0
                                                                                          PA1/ADC1
                                                                                          PA2/ADC2
                                                                                          PA3/ADC3
                                                                                          PA4/ADC4
                                                                                          PA5/ADC5
                                                                                          PA6/ADC6
                                                                                          PA7/ADC7




                                                                                                     PB6/MISO
                                                                                                     PB5/MOSI

                                                                                                     PB7/SCK
                                                                                                     PB4/SS
                                                                                                     PB1/T1
                                                                          RESET

                                                                                  XTAL1
                                                                                  XTAL2
                                                                          9

                                                                                  12
                                                                                  13

                                                                                          40
                                                                                          39
                                                                                          38
                                                                                          37
                                                                                          36
                                                                                          35
                                                                                          34
                                                                                          33

                                                                                                     1
                                                                                                     2
                                                                                                     3
                                                                                                     4
                                                                                                     5
                                                                                                     6
                                                                                                     7
                                                                                                     8
                                                                                                             : ‫ز‬          ‫ال ا‬
                  .‫رد‬        ‫د‬        ‫د را از ادا‬   ‫دوم زد ﺵ ا اد زوج‬               ‫اول‬        ‫در ﺹ رﺕ‬                     ‫ا‬
1    $regfile = "m16def.dat"
2    $crystal = 8000000
3    Config Porta = Output
4    Config Portb = Output
5    Config Portc = Input
6    Dim A As Byte , I As Byte , J As Byte , B As Byte , X As Byte , Y As Byte , D As Byte , S As Byte
7    Home:
8    If Pinc.5 = 1 Then
9       X=0                     ، ‫ﺵ رش ادا ده‬      (‫ﺵ ط‬         )‫د‬     ‫زوج‬      ‫د‬       ‫اه ه ر از ادا‬        ‫ن‬
10     Y = 0 ( 46‫ط 82 و 92 و54 و‬     ).        ‫ار ده ن و ن ﺵ رش را در ه م ذ‬                         ‫ه را ﺕ‬
11     Goto Zoj                           (39‫ط 91و22و63و‬        ).      ‫ه ﺵ وع‬          ‫از ا‬    ‫ﺡ ه را‬         ‫ه‬
12     End If                    ‫د د‬    ‫ﺕ ﺕ ا زوج ﺵ ر ﺵ‬                       ‫واﺡ ا‬    ‫ار ن م‬            ‫در ه م‬
13     If Pinc.7 = 1 Then             (46 ‫ط 92 و‬     ) ‫د ا‬        ‫را ذ‬     ‫د زوج‬     ‫دﺵ ر ﺵ‬             ‫را و‬
14     D=0
15     S=1
16     Goto Fard
17     End If
18     Fard:
19     For I = D To 9
20     A = Lookup(i , Seg)
21     Porta = A
22     For J = S To 9 Step 2
23     B = Lookup(j , Seg)
24     Portb = B
25     S=1
26     Waitms 500
27     If Pinc.5 = 1 Then
28     X=I
                                                        7
‫ر‬       ‫: داﻥ ل‬       ‫ﻥ‬                                                                    ‫و‬     ‫و‬         ‫ز‬
                                                                                                      ‫س ﺏ زر‬   :‫اﺱ د‬
29 Y = J + 1
30 Goto Zoj
31 End If
32 Next J
33 Next I
34 Goto Home
35 Zoj:
36 For I = X To 9
37 A = Lookup(i , Seg)
38 Porta = A
39 For J = Y To 8 Step 2
40 B = Lookup(j , Seg)
41 Portb = B
42 Y = 0
43 Waitms 500
44 If Pinc.7 = 1 Then
45 D = I
46 S = J + 1
47 Goto Fard
48 End If
49 Next J
50 Next I
51 Goto Home
52 End Program
53 Seg:
54 Data &H3F , &H06 , &H5B , &H4F , &H66 , &H6D , &H7D , &H07 , &H7F , &H6F




           ‫د‬        ‫ش‬    ‫ه‬                  ‫اول زد ﺵ‬     ‫ا‬        ‫ا‬          ‫ﺵ‬           ‫را در‬     ‫ه‬      ‫ان ﺕ م‬
                ‫ط‬                ‫ه‬   ‫ا م ﺵ د .و ا‬                 ‫لا‬         ‫ا‬       ‫ه‬       .      ‫دو ر ﺵ ط را‬
                                            .‫د ﺵ ر( ا م ﺵ د‬       ‫)زوج‬           ‫ل‬     ‫ر‬      ‫ن‬   ‫ل د‬          ‫ن‬

$regfile = "m16def.dat"
$crystal = 8000000                                                    Next W
Config Portd = Output                                                 Goto Dd
Config Porta = Output
Config Portb = Output                                                 Led2:
Config Portc = Input                                                  Portd = &HFF
Dim A As Byte , I As Byte , J As Byte                                 Waitms 250
Dim B As Byte , X As Byte , Y As Byte                                 Bb:
Dim D As Byte , S As Byte                                             R=7
Dim W As Integer , R As Integer                                       For W = 0 To 3
Dd:                                                                   Reset Portd.w
If Pinc.3 = 1 Then Goto Led                                           Reset Portd.r
If Pinc.4 = 1 Then Goto Count                                         Waitms 250
Goto Dd                                                               Set Portd.w
Led:                                                                  Set Portd.r
Porta = &H00                                                          R=R-1
Portb = &H00                                                          Next W
If Pinc.0 = 1 Then Goto Led1                                          zR = 2
If Pinc.1 = 1 Then Goto Led2                                          For W = 5 To 7
If Pinc.2 = 1 Then Goto Led3                                          Reset Portd.w
                                                                      Reset Portd.r
                                                              8       Waitms 250
                                                                      Set Portd.w
                                                                      Set Portd.r
‫ر‬       ‫: داﻥ ل‬        ‫ﻥ‬                                                                                        ‫و‬     ‫و‬         ‫ز‬
                                                                                                                                ‫س ﺏ زر‬   :‫اﺱ د‬
Goto Dd
Led3:
Portd = &HFF
Waitms 500
Aa:
For W = 7 To 1 Step -2
R=W-1
Reset Portd.w
Reset Portd.r
Waitms 500
Set Portd.w
Set Portd.r
Next W
A = &HFF
For W = 2 To 7 Step 2
R=W+1
Reset Portd.w
Reset Portd.r
Waitms 500
Set Portd.w
Set Portd.r
If Pinc.4 = 1 Then Goto Count

                                                                                                                                         LCD
                                                                                                                     ‫ان‬          ‫ا و‬
                                                                                                              ‫ر از‬     ‫و‬       ‫ت، رات‬
                                                                                                                      .‫داد‬       ‫را‬   ‫ا لد‬
                                                                                                                ‫و ﺕ‬       ‫ا‬           ‫دو د‬
                                                                                                              ‫از ع‬           ‫.در ز‬           ‫ﺕ‬
                                                                                                                 .        ‫2*61 ا د‬         ‫ﺕ‬
                                                                                                            .‫ﺵ‬      ‫ن و 2 رد‬       16 ‫دارا‬
                                  . ‫د‬           ‫وﺹ‬                 ‫ه‬        ‫د‬        ‫ذ‬        ‫ﺕ ﺕ‬        ‫را‬    12       ‫دارد‬     16 ‫ع‬       ‫در‬

 ‫ﺵ ر‬            1             2            3             4             5     6           11         12        13       14         15      16

                ‫ا‬        Vcc                             Rs        R/W     Enable                                                 Vcc      ‫ا‬
 ‫ل‬     ‫اﺕ‬

            .            ‫ار ر‬                        ‫ﺕ‬             ‫ا وﺹ‬          ‫ا‬   ،‫ﺵ‬                       ‫ز‬     ‫ل ر‬          3
                                                                                                                      ‫7 ﺕ 41 ﺕ ﺕ‬      ‫از‬
                                                                                 .        ‫ا وﺹ‬                 ‫ان و در‬             ‫رﺕ‬
        .           ‫وﺹ‬                 ‫و‬        ‫از رت‬         ‫ام‬     ‫را‬            ‫ا‬                             6‫ه 4و5و‬         ‫ﺕ‬    ‫ه‬
                                           .‫د‬     ‫ا د‬            ‫د ﺕ د‬      ‫ان از روش‬               ‫در‬            ‫ه‬       ‫ﺕ ﺕ‬
                                                             .‫ز ﺵ د‬              ‫د ﺕ ﺹ‬               ،          ‫ﺵ‬    ‫ﺕ‬      ‫رو‬       ‫در‬




                                                                             9
‫ر‬      ‫: داﻥ ل‬   ‫ﻥ‬                                                                   ‫و‬     ‫و‬              ‫ز‬
                                                                                                  ‫س ﺏ زر‬        ‫اﺱ د:‬
    ‫رت‬       ‫ن در‬             ‫دن‬   ‫ه و‬                                          ‫رو ﺕ‬    ‫د‬         ‫ز‬        ‫ا‬       ‫در ﺹ‬
                                                                                                               ‫داز .‬




                                     ‫داز .‬                  ‫ادا‬       ‫د و‬              ‫رو د‬           ‫دن‬        ‫از ﺕ‬
                                                                                                       ‫ال 8:‬        ‫ح‬
   ‫د.‬           ‫د ورود زوج ا‬             ‫داد و‬               ‫ا . ا رو‬          ‫د را از رت‬                       ‫ا‬
                                                                                              ‫8:‬                        ‫ﺕ‬
‫"‪1 $regfile = "m16def.dat‬‬
‫0000008 = ‪2 $crystal‬‬                                  ‫د .‬         ‫د‬        ‫ا‬
                                                                        ‫ﺵ در‬        ‫ه از روش‬       ‫از‬      ‫ا‬
‫‪3 Config Portd = Input‬‬                                                ‫د.‬‫زن‬         ‫شﺵن‬               ‫6‬   ‫د ر‬
‫‪4 Dim I As Integer , B As Byte‬‬                        ‫ه.‬                    ‫8 رت دا " ... " را رو‬        ‫د ر‬
‫:‪5 Main‬‬                                                                 ‫.‬          ‫را‬            ‫01 ﺹ‬    ‫د ر‬
‫‪6 Cursor Off‬‬                         ‫د.‬                          ‫11 از را‬      ‫رت‬         ‫ﺡ‬      ‫ط 31 ﺕ 61‬
‫5 , 1 ‪7 Locate‬‬                                                      ‫د.‬      ‫ﺵ‬                  ‫81 ن را‬
‫"‪8 Lcd " HELLO‬‬       ‫د.‬    ‫داد‬     ‫رت‬              ‫02 ام‬     ‫و در‬            ‫ذ‬          ‫91 ار رت را در‬
‫002 ‪9 Waitms‬‬         ‫.‬       ‫رت ورود را‬          ‫ﺹ‬          ‫ا‬         ‫د دن د ورود‬           ‫دن زوج‬          ‫ا‬
‫‪10 Cls‬‬                                                          ‫د د زوج ا .‬           ‫د د دوا ﺹ‬               ‫ا‬
‫":‪11 Lcd " the input number in portd is‬‬               ‫72 و در ﺹ رت د دن در‬             ‫در ﺹ رت زوج دن رت‬
‫001 ‪12 Waitms‬‬                                                                  ‫د.‬        ‫داد‬       ‫32‬   ‫رت‬
‫02 ‪13 For I = 0 To‬‬
‫‪14 Shiftlcd Left‬‬
‫56 ‪15 Waitms‬‬
‫‪16 Next I‬‬
‫‪17 Cls‬‬
‫8 , 1 ‪18 Locate‬‬
‫‪19 B = Pind‬‬
‫‪20 Lcd B‬‬
‫‪21 If Pind.0 = 1 Then‬‬
‫1 , 2 ‪22 Locate‬‬
‫"*‪23 Lcd "*number is fard‬‬
‫‪24 Goto Ds‬‬
                                                    ‫01‬
‫ر‬   ‫: داﻥ ل‬   ‫ﻥ‬                                                               ‫و‬     ‫و‬                    ‫ز‬
                                                                                          ‫س ﺏ زر‬              :‫اﺱ د‬
25 End If
26 Locate 2 , 1
27 Lcd " *number is zoj*"
28 Ds:
29 Wait 1
30 Cls
31 Goto Main
32 End 'end program




                                                                                              :‫د‬                    ‫ﺹ‬

                                                         ‫ن د‬                                  ‫ا‬                ‫اه‬
                                                       LCD ‫د را رو‬           ‫ر داد‬        ‫د‬                 ‫در ﺹ‬
$regfile = "m16def.dat"                                                                                   . ‫ده‬
$crystal = 8000000                                ‫ر‬     ‫د‬             ‫ار‬     ‫ﺕ‬                 ‫ا ا‬    ‫ﺕ‬
 " lcd ra ba icone Modify chip setting_"                        .          ‫نذ‬    ‫رو‬    Getkbd()   ‫ا‬
  " tarif kardim"                                     16 ‫ار‬ ‫د‬         ‫د‬     ‫د‬          ‫زم ذ ا‬
Config Kbd = Portc                                     ‫ ا‬if ‫ر‬       ‫د‬           ‫د، ا‬        ‫ ذ‬A ‫در‬
Dim A As Byte                                   ‫ر از 61 ﺵ‬           ‫د‬       ‫.)ا‬      ‫ا ﺵ ط را ر‬
Main:                                                                   (. ‫ﺵ‬    ‫رد‬        ‫د‬      ‫ا‬
A = Getkbd()
If A > 15 Then Goto Main

Lcd A
jmp main
End 'end program




                                           11
‫ر‬   ‫: داﻥ ل‬   ‫ﻥ‬        ‫و‬     ‫و‬         ‫ز‬
                                ‫س ﺏ زر‬   ‫اﺱ د:‬




‫اوان از ا د‬   ‫ﺕ‬
 ‫زر‬         ‫س‬




                       ‫21‬

Mais conteúdo relacionado

کار با میکرو کنترولر Avr

  • 1. ‫ر‬ ‫: داﻥ ل‬ ‫ﻥ‬ ‫و‬ ‫و‬ ‫ز‬ ‫س ﺏ زر‬ ‫اﺱ د:‬ ‫"‪$regfile = "m16def.dat‬‬ ‫ال1 :‬ ‫ح‬ ‫0000008 = ‪$crystal‬‬ ‫ش .‬ ‫رت را از را‬ ‫ه‬ ‫ا‬ ‫‪Config Portd = Output‬‬ ‫1:‬ ‫ﺕ‬ ‫‪Dim A As Integer‬‬ ‫م رت را‬ ‫د ،در‬ ‫ر را‬ ‫،‬ ‫و را‬ ‫اول‬ ‫در‬ ‫ان و‬ ‫:‪Home‬‬ ‫.‬ ‫را ﺕ‬ ‫رم‬ ‫ر‬ ‫. ا د از د‬ ‫در‬ ‫‪A = &HFF‬‬ ‫د‬ ‫ار ده‬ ‫11111111‬ ‫ار‬ ‫د از د ر رو و‬ ‫ا‬ ‫0 > ‪While A‬‬ ‫د)‬ ‫ار 1 ار‬ ‫رت‬ ‫ه‬ ‫ﺕ م‬ ‫ن رو‬ ‫در‬ ‫ار ه‬ ‫رت‬ ‫د را رو‬ ‫ا‬ ‫(‬ ‫‪Portd = A‬‬ ‫ر از ﺹ‬ ‫رﺕ ز‬ ‫ار ه )ا‬ ‫ر‬ ‫ه و ا ا دو ر رو‬ ‫ﺵ‬ ‫د را‬ ‫005 ‪Waitms‬‬ ‫د(‬ ‫ا م‬ ‫د ر‬ ‫ﺵ و‬ ‫س ‪Shift A , Left‬‬ ‫ط ه‬ ‫شﺵن‬ ‫ﺕ ﺕ ﺕ‬ ‫و ا د‬ ‫دادن ت ز‬ ‫ه رﺵ‬ ‫ﺵ‬ ‫‪Wend‬‬ ‫0 = ‪Portd‬‬ ‫005 ‪Waitms‬‬ ‫‪Goto Home‬‬ ‫م‬ ‫ق دو ر ا‬ ‫ت‬ ‫د و‬ ‫ا ا ش‬ ‫دو ر‬ ‫‪‘end program‬‬ ‫دارد‬ ‫ﺏ ن ﺱ ا از ﺏ‬ ‫ﺏﺵ‬ ‫ﺏ ر‬ ‫ﻥ در زﻥ‬ ‫ه‬ ‫1‬
  • 2. ‫ر‬ ‫: داﻥ ل‬ ‫ﻥ‬ ‫و‬ ‫و‬ ‫ز‬ ‫س ﺏ زر‬ :‫اﺱ د‬ :2‫ال‬ ‫ح‬ ‫ش‬ ‫ﺹ رت ز‬ ‫رت را‬ ‫ه‬ ‫ا‬ :2 ‫ﺕ‬ 1 $regfile = “m16def.dat” 2 $crystal = 8000000 ‫د‬ ‫ار‬ ‫ار‬ ‫رت‬ ‫ه‬ ‫6 رو ﺕ م‬ ‫ر‬ ‫ا ا د‬ 3 Config portd= output . ‫د‬ ‫ه روﺵ ا را ا‬ ‫ﺕ م‬ ‫د نا‬ ‫ت ز ن زم‬ 7 ‫د ر‬ 4 Dim A As Integer , I As Integer , J As Integer . ‫را ا د از دو ﺡ و‬ 5 Ds: ‫شو‬ ‫رت‬ ‫رﺕ‬ 4 ‫اول در اﺹ‬ ‫ﺹ رت در ﺡ‬ 6 Portd = &HFF .‫رت‬ ‫رﺕ‬ 4 ‫دوم‬ ‫و در ﺡ‬ ‫روﺵ‬ 7 Waitms 150 .(12‫11 و‬ ‫)د ر‬ ‫ش‬ 7‫0و‬ ‫ا ا‬ ‫اول‬ ‫در ﺡ‬ 8 Bb: ‫س د ،ا‬ ‫د‬ ‫11 و 21 ا د‬ ‫،و ا‬ ‫ﺵ از‬ ‫ﻝ‬ 9 J=7 ‫واﺡ از ار‬ ‫.در ادا‬ ‫را روﺵ‬ ‫د دو ر‬ ‫. ﺕ ﺹ‬ ‫ش‬ ‫ه ن‬ 10 For I = 0 To 3 . ‫ه 6و1ر‬ ،‫اول‬ ‫در دور دوم ﺡ‬ ‫د. در‬ 11 Reset Portd.i. . ‫ﺕ ار‬ ‫د‬ ‫اﺡ در ﺡ‬ ‫ا‬ 12 Reset Portd.j. 13 Waitms 150 ‫4و 5 ت ز ن‬ ‫در ن ا‬ ‫ا‬ . ‫ان ﺹ رت د ﺕ ز ه ﺵ‬ ‫را‬ 14 Set Portd.i. (4 ‫ه 5 و‬ ‫و در ادا‬ ‫ه 4و5ر‬ ‫) ر‬ ‫ار‬ ‫ه در ﺡ ﻝ ر‬ 15 Set Portd.j. 16 J=J–1 11 Portd = &HFF 17 Next I 2 Waitms 150 18 J=2 3 J=7 19 For I = 5 To 7 4 For I = 0 To 7 20 Reset Portd.i 5 Reset Portd.i 21 Reset Portd.j 6 Reset Portd.j 22 Waitms 150 7 Waitms 150 23 Set Portd.i 8 Set Portd.i 24 Set Portd.j 9 Set Portd.j 25 J=J–1 10 J=J-1 26 Next I 11 Next I 27 Goto Bb 28 Goto Ds 2
  • 3. ‫ر‬ ‫: داﻥ ل‬ ‫ﻥ‬ ‫و‬ ‫و‬ ‫ز‬ ‫س ﺏ زر‬ :‫اﺱ د‬ :3 ‫ال‬ ‫ح‬ . ‫ش و روﺵ ﺵ‬ ( ‫ﺹ رت ز )دوﺕ دوﺕ‬ ‫ه‬ ‫در ن‬ ‫ا‬ :3 ‫ﺕ‬ $regfile = “m16def.dat” $crystal = 8000000 ‫را‬ ‫اول از‬ ‫.ﺡ‬ ‫از دو ﺡ ا د‬ ‫در ا‬ Config Portd = Output . ‫ور‬ ‫ه را‬ ‫دوم از را‬ ‫وﺡ‬ Dim A As Integer , I As Integer , J As Integer ‫ت ﺹ رت‬ ‫ﺕ‬ ‫اول ش‬ ‫ﺡ‬ ‫در ا دو ر‬ . ‫ﺕ ار ﺵ‬ Portd = &HFF ‫م ﺡ را دو‬ ‫ا‬ ‫ﺵ ،ﺕ‬ ‫ور‬ ‫ه دوﺕ دوﺕ‬ ‫از ا‬ Waitms 500 .‫د‬ ‫ور را ر‬ ‫مﺡ و‬ ‫ط‬ ‫وه ر‬ ‫ا ب‬ Ds: ‫از م ﺡ‬ ‫واﺡ‬ ‫و ارش را ه ر‬ ‫را ﺕ‬ ‫ر‬ For I = 7 To 1 Step -2 . ‫ار ه‬ J=I–1 . ‫ا د‬ ‫دوم‬ ‫رو را ا ﺡ‬ ‫از ه‬ Reset Portd.i Reset Portd.j Waitms 500 Set Portd.i Set Portd.j Next A = &HFF For I = 2 To 7 Step 2 J=I+1 Reset Portd.i Reset Portd.j Waitms 500 Set Portd.i et Portd.j Next I Goto Ds end program . ‫ا شﻥ‬ ‫ا ،ه‬ ‫ﺵ‬ ‫ﺏ‬ ‫را‬ ‫ﻥ‬ " ‫ون‬ ‫"ﺱ‬ 3
  • 4. ‫ر‬ ‫: داﻥ ل‬ ‫ﻥ‬ ‫و‬ ‫و‬ ‫ز‬ ‫س ﺏ زر‬ :‫اﺱ د‬ 4‫ال‬ ‫ح‬ ‫ال3 اﺕ ق ا‬ ‫مت‬ ‫زدن‬ ‫ال2 و‬ ‫دوم ﺡ ﻝ‬ ‫زدن‬ ،1 ‫ال‬ ‫اول ﺡ ﻝ‬ ‫زدن‬ ‫ا‬ Set Portd.i :4 ‫ﺕ‬ $regfile = “m16def.dat” Set Portd.j $crystal = 8000000 J=J-1 Config Portd = Output Next I Config Portc = Input Goto Ds Dim A As Integer , I As Integer , J As Integer Led1: Ds: Ss: If Pinc.0 = 1 Then Goto Led1 A = &HFF If Pinc.1 = 1 Then Goto Led2 Portd = A If Pinc.2 = 1 Then Goto Led3 Set Portd Goto Ds Waitms 500 Led3: For I = 0 To 7 Portd = &HFF Reset Portd.i Waitms 500 Waitms 500 Aa: Next I For I = 7 To 1 Step -2 Goto Ds J=I–1 'end program Reset Portd.i ‫ل )ورود ( ﺕ‬ ‫ان‬ ‫رت را‬ ‫در ا‬ Reset Portd.j ‫د‬ ‫ل‬ ‫از‬ ‫ا ا 3 اول رت را‬ ‫در ا ا‬ Waitms 500 ‫ﺵ ط دو ر‬ ‫ه‬ ‫د،در ا‬ ‫ﺵ ا م‬ ‫ش د وا ل‬ Set Portd.i .‫د‬ ‫دو ر ا م‬ ‫ت‬ ‫ار ﺵ‬ ‫ه ز‬ ،‫د‬ Set Portd.j ‫از ﺵ وط‬ ‫ﺕ‬ ‫ش د‬ ‫ا ا‬ ‫ار د دو ر‬ ‫ﺵ ط‬ Next .‫ار دد‬ A = &HFF ( ‫داد ﺵ ا‬ ‫ﺕ‬ ‫ه‬ ‫در‬ ‫ده‬ ) For I = 2 To To 7 Step 2 For I = 2 7 Step 2 J=I+1 Reset Portd.i Reset Portd.j Waitms 500 Set Portd.i PC0/SCL 22 Set Portd.j 23 PC1/SDA 24 Next I PC2/TCK 25 PC3/TMS If Pinc.2 = 1 Then Goto Aa PC4/TDO 26 Goto Ds 27 PC5/TDI 28 Led2: PC6/TOSC1 29 PC7/TOSC2 Portd = &HFF Waitms 250 14 PD0/RXD 15 Bb: PD1/TXD 16 PD2/INT0 J=7 PD3/INT1 17 For I = 0 To 3 18 PD4/OC1B 19 Reset Portd.i PD5/OC1A 20 PD6/ICP1 Reset Portd.j PD7/OC2 21 Waitms 250 Set Portd.i Set Portd.j 32 AREF J=J-1 30 AVCC Next I J=2 For I = 5 To 7 Reset Portd.i Reset Portd.j Waitms 250 4
  • 5. ‫ر‬ ‫: داﻥ ل‬ ‫ﻥ‬ ‫و‬ ‫و‬ ‫ز‬ ‫س ﺏ زر‬ ‫اﺱ د:‬ ‫ال 5:‬ ‫ح‬ ‫رد.‬ ‫7‬ ‫ا اد 0 ﺕ 9 را رو‬ ‫ا‬ ‫5:‬ ‫ﺕ‬ ‫ا‬ ‫8‬ ‫( د‬ ‫ع ن) ﺕ‬ ‫ا ا‬ ‫ﺹ رت ا‬ ‫ن‬ ‫ر‬ ‫اه‬ ‫ار‬ ‫د‬ ‫ر‬ ‫ن‬ ‫ز‬ ‫ار ده .در ﺵ‬ ‫رت‬ ‫ه‬ ‫ده رو‬ ‫ا‬ ‫ل)د ده (‬ ‫دل د‬ ‫.‬ ‫)7( وﺹ‬ ‫ﺕ‬ ‫و.‬ ‫ارزﺵ‬ ‫داد ﺵ ا ، ﺕ ﺕ‬ ‫وﺹ‬ ‫ﺵ‬ ‫دد.و ا‬ ‫ا وﺹ‬ ‫ﺕ‬ ‫ه‬ ‫در ن‬ ‫د.‬ ‫د‬ ‫ه‬ ‫ار ده‬ ‫ا )‬ ‫ار‬ ‫ﺕ ﺕ‬ ‫ز‬ ‫د 0 ﺕ 9 در‬ ‫د و‬ ‫ﺕ‬ ‫ن‬ ‫د(‬ ‫د‬ ‫ا‬ ‫8‬ ‫ا اد‬ ‫د،از دل ه‬ ‫ﺕ ﺹ رت‬ ‫م ﺵ د و "‪$regfile = "m16def.dat‬‬ ‫را‬ ‫ا‬ ‫ا دار‬ ‫ﺡ‬ ‫ز‬ ‫ده‬ ‫0 ﺕ 9 را‬ ‫ه ا اد‬ ‫ن‬ ‫در‬ ‫0000008 = ‪$crystal‬‬ ‫را‬ ‫دا‬ ‫ار ده‬ ‫رت و‬ ‫را رو‬ ‫د رد‬ ‫ه م ار دل ه‬ ‫‪Config Portb = Output‬‬ ‫ه .‬ ‫ول ا م‬ ‫ا د از ﺕ‬ ‫را رو ‪Dim A As Byte , I As Byte‬‬ ‫.‬ ‫داﺵ ، ن را در د ذ‬ ‫د را از ول‬ ‫ه ر ا‬ ‫:‪Home‬‬ ‫.‬ ‫ار‬ ‫و‬ ‫ن ا اد 0 ﺕ 9 رو‬ ‫در‬ ‫ار ه‬ ‫رت و‬ ‫9 ‪For I = 0 To‬‬ ‫د(‬ ‫ار‬ ‫و‬ ‫از ا اد رو‬ ‫)در ه م ﺡ‬ ‫)‪A = Lookup(i , Seg‬‬ ‫‪Portb = A‬‬ ‫002 ‪Waitms‬‬ ‫‪Next I‬‬ ‫‪Goto Home‬‬ ‫:‪Seg‬‬ ‫‪Data &H3F , &H06 , &H5B , &H4F , &H66 , &H6D , &H7D , &H07 , &H7F , &H6F‬‬ ‫5‬
  • 6. ‫ر‬ ‫: داﻥ ل‬ ‫ﻥ‬ ‫و‬ ‫و‬ ‫ز‬ ‫س ﺏ زر‬ :‫اﺱ د‬ :7 ‫ال‬ ‫ح‬ ‫ن‬ 2 ‫0 ﺕ 99 رو‬ ‫د‬ ‫دوم ا اد‬ ‫زدن‬ ‫0 ﺕ 99 و‬ ‫اول ا اد زوج‬ ‫زدن‬ ‫ا‬ ‫داد ﺵ د‬ :7 ‫ﺕ‬ $regfile = "m16def.dat" $crystal = 8000000 Config Porta = Output ‫ل‬ .7 ‫ل ﺵ ا اد زوج و ا‬ .5 ‫.ا‬ ‫را‬ .7 ‫ه 5. و‬ ‫ا ا‬ ‫ا‬ ‫ف‬ Config Portb = Output .‫ه‬ ‫0 ﺕ 99 را‬ ‫ل ﺵ ا اد د‬ Config Portc = Input ‫ط دوم )ا زوج ﺵ ر‬ ‫ه ﺵ‬ ‫د را‬ ‫ه ر‬ Dim A As Byte , I As Byte , ، ‫5( را‬ ‫دﺵ ر ﺵ‬ ‫7 ا‬ ‫ﺵ‬ J As Byte , B As Byte ‫ار‬ ‫ﺵ ط دوم‬ ‫ه وز‬ ‫ار د ﺵ رش ادا‬ ‫ا‬ Home: ‫و دو ر از ا ا ﺵ وع ﺵ رش‬ ‫ط نﺵ ط ش‬ If Pinc.0 = 1 Then Goto Zoj . If Pinc.1 = 1 Then Goto Fard ‫نر‬ ‫ده ، م ﺡ‬ ‫د را‬ ‫اه ا اد زوج‬ Fard: ‫ه‬ ‫ار‬ ‫دو‬ For I = 0 To 9 A = Lookup(i , Seg) Porta = A For J = 1 To 9 Step 2 B = Lookup(j , Seg) Portb = B Waitms 500 Next I Next J Goto Home Zoj: For I = 0 To 9 A = Lookup(i , Seg) Porta = A For J = 0 To 9 Step 2 B = Lookup(j , Seg) Portb = B Waitms 500 Next I Next J Goto Home Seg: Data &H3F , &H06 , &H5B , &H4F , &H66 , &H6D , &H7D , &H07 , &H7F , &H6F 6
  • 7. ‫ر‬ ‫: داﻥ ل‬ ‫ﻥ‬ ‫و‬ ‫و‬ ‫ز‬ ‫س ﺏ زر‬ :‫اﺱ د‬ SW2 22 23 24 25 26 27 28 29 14 15 16 17 18 19 20 21 32 30 U2 PC2/TCK PC3/TMS PD4/OC1B PC4/TDO AREF PD0/RXD PD1/TXD AVCC PC1/SDA PD5/OC1A PC0/SCL PC5/TDI PC6/TOSC1 PC7/TOSC2 PD2/INT0 PD3/INT1 PD6/ICP1 PD7/OC2 ATMEGA16 SW-DPDT-MOM PB2/AIN0/INT2 PB3/AIN1/OC0 PB0/T0/XCK PA0/ADC0 PA1/ADC1 PA2/ADC2 PA3/ADC3 PA4/ADC4 PA5/ADC5 PA6/ADC6 PA7/ADC7 PB6/MISO PB5/MOSI PB7/SCK PB4/SS PB1/T1 RESET XTAL1 XTAL2 9 12 13 40 39 38 37 36 35 34 33 1 2 3 4 5 6 7 8 : ‫ز‬ ‫ال ا‬ .‫رد‬ ‫د‬ ‫د را از ادا‬ ‫دوم زد ﺵ ا اد زوج‬ ‫اول‬ ‫در ﺹ رﺕ‬ ‫ا‬ 1 $regfile = "m16def.dat" 2 $crystal = 8000000 3 Config Porta = Output 4 Config Portb = Output 5 Config Portc = Input 6 Dim A As Byte , I As Byte , J As Byte , B As Byte , X As Byte , Y As Byte , D As Byte , S As Byte 7 Home: 8 If Pinc.5 = 1 Then 9 X=0 ، ‫ﺵ رش ادا ده‬ (‫ﺵ ط‬ )‫د‬ ‫زوج‬ ‫د‬ ‫اه ه ر از ادا‬ ‫ن‬ 10 Y = 0 ( 46‫ط 82 و 92 و54 و‬ ). ‫ار ده ن و ن ﺵ رش را در ه م ذ‬ ‫ه را ﺕ‬ 11 Goto Zoj (39‫ط 91و22و63و‬ ). ‫ه ﺵ وع‬ ‫از ا‬ ‫ﺡ ه را‬ ‫ه‬ 12 End If ‫د د‬ ‫ﺕ ﺕ ا زوج ﺵ ر ﺵ‬ ‫واﺡ ا‬ ‫ار ن م‬ ‫در ه م‬ 13 If Pinc.7 = 1 Then (46 ‫ط 92 و‬ ) ‫د ا‬ ‫را ذ‬ ‫د زوج‬ ‫دﺵ ر ﺵ‬ ‫را و‬ 14 D=0 15 S=1 16 Goto Fard 17 End If 18 Fard: 19 For I = D To 9 20 A = Lookup(i , Seg) 21 Porta = A 22 For J = S To 9 Step 2 23 B = Lookup(j , Seg) 24 Portb = B 25 S=1 26 Waitms 500 27 If Pinc.5 = 1 Then 28 X=I 7
  • 8. ‫ر‬ ‫: داﻥ ل‬ ‫ﻥ‬ ‫و‬ ‫و‬ ‫ز‬ ‫س ﺏ زر‬ :‫اﺱ د‬ 29 Y = J + 1 30 Goto Zoj 31 End If 32 Next J 33 Next I 34 Goto Home 35 Zoj: 36 For I = X To 9 37 A = Lookup(i , Seg) 38 Porta = A 39 For J = Y To 8 Step 2 40 B = Lookup(j , Seg) 41 Portb = B 42 Y = 0 43 Waitms 500 44 If Pinc.7 = 1 Then 45 D = I 46 S = J + 1 47 Goto Fard 48 End If 49 Next J 50 Next I 51 Goto Home 52 End Program 53 Seg: 54 Data &H3F , &H06 , &H5B , &H4F , &H66 , &H6D , &H7D , &H07 , &H7F , &H6F ‫د‬ ‫ش‬ ‫ه‬ ‫اول زد ﺵ‬ ‫ا‬ ‫ا‬ ‫ﺵ‬ ‫را در‬ ‫ه‬ ‫ان ﺕ م‬ ‫ط‬ ‫ه‬ ‫ا م ﺵ د .و ا‬ ‫لا‬ ‫ا‬ ‫ه‬ . ‫دو ر ﺵ ط را‬ .‫د ﺵ ر( ا م ﺵ د‬ ‫)زوج‬ ‫ل‬ ‫ر‬ ‫ن‬ ‫ل د‬ ‫ن‬ $regfile = "m16def.dat" $crystal = 8000000 Next W Config Portd = Output Goto Dd Config Porta = Output Config Portb = Output Led2: Config Portc = Input Portd = &HFF Dim A As Byte , I As Byte , J As Byte Waitms 250 Dim B As Byte , X As Byte , Y As Byte Bb: Dim D As Byte , S As Byte R=7 Dim W As Integer , R As Integer For W = 0 To 3 Dd: Reset Portd.w If Pinc.3 = 1 Then Goto Led Reset Portd.r If Pinc.4 = 1 Then Goto Count Waitms 250 Goto Dd Set Portd.w Led: Set Portd.r Porta = &H00 R=R-1 Portb = &H00 Next W If Pinc.0 = 1 Then Goto Led1 zR = 2 If Pinc.1 = 1 Then Goto Led2 For W = 5 To 7 If Pinc.2 = 1 Then Goto Led3 Reset Portd.w Reset Portd.r 8 Waitms 250 Set Portd.w Set Portd.r
  • 9. ‫ر‬ ‫: داﻥ ل‬ ‫ﻥ‬ ‫و‬ ‫و‬ ‫ز‬ ‫س ﺏ زر‬ :‫اﺱ د‬ Goto Dd Led3: Portd = &HFF Waitms 500 Aa: For W = 7 To 1 Step -2 R=W-1 Reset Portd.w Reset Portd.r Waitms 500 Set Portd.w Set Portd.r Next W A = &HFF For W = 2 To 7 Step 2 R=W+1 Reset Portd.w Reset Portd.r Waitms 500 Set Portd.w Set Portd.r If Pinc.4 = 1 Then Goto Count LCD ‫ان‬ ‫ا و‬ ‫ر از‬ ‫و‬ ‫ت، رات‬ .‫داد‬ ‫را‬ ‫ا لد‬ ‫و ﺕ‬ ‫ا‬ ‫دو د‬ ‫از ع‬ ‫.در ز‬ ‫ﺕ‬ . ‫2*61 ا د‬ ‫ﺕ‬ .‫ﺵ‬ ‫ن و 2 رد‬ 16 ‫دارا‬ . ‫د‬ ‫وﺹ‬ ‫ه‬ ‫د‬ ‫ذ‬ ‫ﺕ ﺕ‬ ‫را‬ 12 ‫دارد‬ 16 ‫ع‬ ‫در‬ ‫ﺵ ر‬ 1 2 3 4 5 6 11 12 13 14 15 16 ‫ا‬ Vcc Rs R/W Enable Vcc ‫ا‬ ‫ل‬ ‫اﺕ‬ . ‫ار ر‬ ‫ﺕ‬ ‫ا وﺹ‬ ‫ا‬ ،‫ﺵ‬ ‫ز‬ ‫ل ر‬ 3 ‫7 ﺕ 41 ﺕ ﺕ‬ ‫از‬ . ‫ا وﺹ‬ ‫ان و در‬ ‫رﺕ‬ . ‫وﺹ‬ ‫و‬ ‫از رت‬ ‫ام‬ ‫را‬ ‫ا‬ 6‫ه 4و5و‬ ‫ﺕ‬ ‫ه‬ .‫د‬ ‫ا د‬ ‫د ﺕ د‬ ‫ان از روش‬ ‫در‬ ‫ه‬ ‫ﺕ ﺕ‬ .‫ز ﺵ د‬ ‫د ﺕ ﺹ‬ ، ‫ﺵ‬ ‫ﺕ‬ ‫رو‬ ‫در‬ 9
  • 10. ‫ر‬ ‫: داﻥ ل‬ ‫ﻥ‬ ‫و‬ ‫و‬ ‫ز‬ ‫س ﺏ زر‬ ‫اﺱ د:‬ ‫رت‬ ‫ن در‬ ‫دن‬ ‫ه و‬ ‫رو ﺕ‬ ‫د‬ ‫ز‬ ‫ا‬ ‫در ﺹ‬ ‫داز .‬ ‫داز .‬ ‫ادا‬ ‫د و‬ ‫رو د‬ ‫دن‬ ‫از ﺕ‬ ‫ال 8:‬ ‫ح‬ ‫د.‬ ‫د ورود زوج ا‬ ‫داد و‬ ‫ا . ا رو‬ ‫د را از رت‬ ‫ا‬ ‫8:‬ ‫ﺕ‬ ‫"‪1 $regfile = "m16def.dat‬‬ ‫0000008 = ‪2 $crystal‬‬ ‫د .‬ ‫د‬ ‫ا‬ ‫ﺵ در‬ ‫ه از روش‬ ‫از‬ ‫ا‬ ‫‪3 Config Portd = Input‬‬ ‫د.‬‫زن‬ ‫شﺵن‬ ‫6‬ ‫د ر‬ ‫‪4 Dim I As Integer , B As Byte‬‬ ‫ه.‬ ‫8 رت دا " ... " را رو‬ ‫د ر‬ ‫:‪5 Main‬‬ ‫.‬ ‫را‬ ‫01 ﺹ‬ ‫د ر‬ ‫‪6 Cursor Off‬‬ ‫د.‬ ‫11 از را‬ ‫رت‬ ‫ﺡ‬ ‫ط 31 ﺕ 61‬ ‫5 , 1 ‪7 Locate‬‬ ‫د.‬ ‫ﺵ‬ ‫81 ن را‬ ‫"‪8 Lcd " HELLO‬‬ ‫د.‬ ‫داد‬ ‫رت‬ ‫02 ام‬ ‫و در‬ ‫ذ‬ ‫91 ار رت را در‬ ‫002 ‪9 Waitms‬‬ ‫.‬ ‫رت ورود را‬ ‫ﺹ‬ ‫ا‬ ‫د دن د ورود‬ ‫دن زوج‬ ‫ا‬ ‫‪10 Cls‬‬ ‫د د زوج ا .‬ ‫د د دوا ﺹ‬ ‫ا‬ ‫":‪11 Lcd " the input number in portd is‬‬ ‫72 و در ﺹ رت د دن در‬ ‫در ﺹ رت زوج دن رت‬ ‫001 ‪12 Waitms‬‬ ‫د.‬ ‫داد‬ ‫32‬ ‫رت‬ ‫02 ‪13 For I = 0 To‬‬ ‫‪14 Shiftlcd Left‬‬ ‫56 ‪15 Waitms‬‬ ‫‪16 Next I‬‬ ‫‪17 Cls‬‬ ‫8 , 1 ‪18 Locate‬‬ ‫‪19 B = Pind‬‬ ‫‪20 Lcd B‬‬ ‫‪21 If Pind.0 = 1 Then‬‬ ‫1 , 2 ‪22 Locate‬‬ ‫"*‪23 Lcd "*number is fard‬‬ ‫‪24 Goto Ds‬‬ ‫01‬
  • 11. ‫ر‬ ‫: داﻥ ل‬ ‫ﻥ‬ ‫و‬ ‫و‬ ‫ز‬ ‫س ﺏ زر‬ :‫اﺱ د‬ 25 End If 26 Locate 2 , 1 27 Lcd " *number is zoj*" 28 Ds: 29 Wait 1 30 Cls 31 Goto Main 32 End 'end program :‫د‬ ‫ﺹ‬ ‫ن د‬ ‫ا‬ ‫اه‬ LCD ‫د را رو‬ ‫ر داد‬ ‫د‬ ‫در ﺹ‬ $regfile = "m16def.dat" . ‫ده‬ $crystal = 8000000 ‫ر‬ ‫د‬ ‫ار‬ ‫ﺕ‬ ‫ا ا‬ ‫ﺕ‬ " lcd ra ba icone Modify chip setting_" . ‫نذ‬ ‫رو‬ Getkbd() ‫ا‬ " tarif kardim" 16 ‫ار‬ ‫د‬ ‫د‬ ‫د‬ ‫زم ذ ا‬ Config Kbd = Portc ‫ ا‬if ‫ر‬ ‫د‬ ‫د، ا‬ ‫ ذ‬A ‫در‬ Dim A As Byte ‫ر از 61 ﺵ‬ ‫د‬ ‫.)ا‬ ‫ا ﺵ ط را ر‬ Main: (. ‫ﺵ‬ ‫رد‬ ‫د‬ ‫ا‬ A = Getkbd() If A > 15 Then Goto Main Lcd A jmp main End 'end program 11
  • 12. ‫ر‬ ‫: داﻥ ل‬ ‫ﻥ‬ ‫و‬ ‫و‬ ‫ز‬ ‫س ﺏ زر‬ ‫اﺱ د:‬ ‫اوان از ا د‬ ‫ﺕ‬ ‫زر‬ ‫س‬ ‫21‬