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

802 views

Published on

  • Be the first to comment

  • Be the first to like this

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

  1. 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‫ال‬ ‫ح‬ ‫ش‬ ‫ﺹ رت ز‬ ‫رت را‬ ‫ه‬ ‫ا‬ :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 ‫ال‬ ‫ح‬ . ‫ش و روﺵ ﺵ‬ ( ‫ﺹ رت ز )دوﺕ دوﺕ‬ ‫ه‬ ‫در ن‬ ‫ا‬ :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. ‫ر‬ ‫: داﻥ ل‬ ‫ﻥ‬ ‫و‬ ‫و‬ ‫ز‬ ‫س ﺏ زر‬ :‫اﺱ د‬ 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. ‫ر‬ ‫: داﻥ ل‬ ‫ﻥ‬ ‫و‬ ‫و‬ ‫ز‬ ‫س ﺏ زر‬ ‫اﺱ د:‬ ‫ال 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. 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. 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. 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. 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. 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. 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. 12. ‫ر‬ ‫: داﻥ ل‬ ‫ﻥ‬ ‫و‬ ‫و‬ ‫ز‬ ‫س ﺏ زر‬ ‫اﺱ د:‬ ‫اوان از ا د‬ ‫ﺕ‬ ‫زر‬ ‫س‬ ‫21‬

×