PDA

View Full Version : چند برنامه در بسكام



naghmeh_ava
جمعه 19 آذر 1389, 17:30 عصر
3تا برنامه گذاشتم كه اميدوارم به درد دوستان بخوره:لبخندساده:

1-
نمايش متن(مثلا اسم)
بصورت حركت دار:

$regfile = "m32def.dat"
$crystal = 1000000

Config Lcdpin = Pin , Db4 = Portb.0 , Db5 = Portb.1 , Db6 = Portb.2 , Db7 = Portb.3 , Rs = Portd.5 , E = Portd.6
Config Lcd = 16 * 2
Cls
Dim A As Integer

For A = 1 To 16
Locate 1 , A

Lcd "naghmeh"
Waitms 50
Cls
Next A
For A = 1 To 16
Locate 2 , A
Lcd "mona"
Waitms 50
Cls
Next A

For A = 1 To 16
Locate 1 , A

Lcd "najmeh"
Waitms 50
Cls
Next A



2-
فشردن كليد و نمايش ان در مانيتور:

$regfile = "m32def.dat"
$crystal = 1000000
Config Lcdpin = Pin , Db4 = Porta.4 , Db5 = Porta.3 , Db6 = Porta.2 , Db7 = Porta.1 , Rs = Porta.5 , E = Porta.6
Config Lcd = 16 * 2
Config Kbd = Portb , Debounce = 50 , Delay = 100
Dim A As Byte
Do
A = Getkbd()
Select Case A
Case 0
Lcd "f1"
Waitms 300
Cls
Case 1
Lcd "1"
Waitms 300
Cls
Case 2
Lcd "2"
Waitms 300
Cls
Case 3
Lcd "3"
Waitms 300
Cls
Case 4
Lcd "f2"
Waitms 300
Cls
Case 5
Lcd "4"
Waitms 200
Cls
Case 6
Lcd "5"
Waitms 300
Cls
Case 7
Lcd "6"
Waitms 300
Cls
Case 8
Lcd "f3"
Waitms 300
Cls
Case 9
Lcd "7"
Waitms 300
Cls
Case 10
Lcd "8"
Waitms 300
Cls
Case 11
Lcd "9"
Waitms 300
Cls
Case 12
Lcd "f4"
Waitms 300
Cls
Case 13
Lcd "*"
Waitms 300
Cls
Case 14
Lcd "0"
Waitms 300
Cls
Case 15
Lcd "#"
Waitms 200
Cls
End Select
Loop



3-
برنامه ماشين حساب مهندسي:

$regfile = "m32DEF.DAT"
$crystal = 1000000

Config Lcd = 16 * 2
Config Lcdpin = Pin , Db4 = Porta.4 , Db5 = Porta.3 , Db6 = Porta.2 , Db7 = Porta.1 , Rs = Porta.5 , E = Porta.6
Config Kbd = Portb , Debounce = 50 , Delay = 200
Do
H:
Cls
Cursor On
Locate 1 , 1
Lcd "0"
Dim Shiftt As Byte
Dim A As Byte
Dim S As Integer
Dim C As Integer
Dim S1 As Single
Dim Amal As String * 1
Dim F As Integer
Dim G As Integer
Dim D As Byte
Dim G1 As Long
Dim K As Single
S1 = 0
C = 1
F = 1
G1 = 0

Mm:

Do
A = Getkbd()
Select Case A
Case 0
Locate 1 , C
Lcd "1"
C = C + 1
S = 1
S1 = S1 * 10

Case 1
Locate 1 , C
Lcd "4"
C = C + 1
S = 4
S1 = S1 * 10
S1 = S1 + S

Case 2
Locate 1 , C
Lcd "7"
C = C + 1
S = 7
S1 = S1 * 10
S1 = S1 + S

Case 3

C = C - 1
Locate 1 , C
Lcd " "
S1 = S1 \ 10
If C = 1 Then
Locate 1 , 1
Lcd "0"
End If

Case 4
Locate 1 , C
Lcd "2"
C = C + 1
S = 2
S1 = S1 * 10
S1 = S1 + S

Case 5
Locate 1 , C
Lcd "5"
C = C + 1
S = 5
S1 = S1 * 10
S1 = S1 + S

Case 6
Locate 1 , C
Lcd "8"
C = C + 1
S = 8
S1 = S1 * 10
S1 = S1 + S
Case 7
If C = 1 Then
Goto H
End If
Locate 1 , C
Lcd "0"
C = C + 1
S = 0
S1 = S1 * 10
S1 = S1 + S

Case 8
Locate 1 , C
Lcd "3"
C = C + 1
S = 3
S1 = S1 * 10
S1 = S1 + S

Case 9
Locate 1 , C
Lcd "6"
C = C + 1
S = 6
S1 = S1 * 10
S1 = S1 + S

Case 10
Locate 1 , C
Lcd "9"
C = C + 1
S = 9
S1 = S1 * 10
S1 = S1 + S

Case 11
If C > 1 Then
Locate 1 , C
Lcd "+"
C = C + 1
Amal = "+"
Exit Do
End If
Goto H
Case 12
If C > 1 Then
Locate 1 , C
Lcd "-"
Amal = "-"
C = C + 1
Exit Do
End If
Goto H
Case 13
If C > 1 Then
Locate 1 , C
Lcd "*"
Amal = "*"
C = C + 1
Exit Do
End If
Goto H
Case 14
If C > 1 Then
Locate 1 , C
Lcd "/"
C = C + 1
Amal = "/"
Exit Do
End If
Goto H
Case 15
Do
Shiftt = Getkbd()
Select Case Shiftt
Case 0
K = Sin(s1)
Locate 1 , 13
Lcd "sin"
Locate 2 , 1
Lcd K
Case 1
K = Cos(s1)
Locate 1 , 13
Lcd "cos"
Locate 2 , 1
Lcd K
Case 2
K = Tan(s1)
Locate 1 , 13
Lcd "tan"
Locate 2 , 1
Lcd K
Case 4
K = Atn(s1)
Locate 1 , 13
Lcd "atn"
Locate 2 , 1
Lcd K
Case 5
K = Log(s1)
Locate 1 , 13
Lcd "log"
Locate 2 , 1
Lcd K
Case 6
K = Exp(s1)
Locate 1 , 13
Lcd "exp"
Locate 2 , 1
Lcd K
Case 8
K = Hex(s1)
Locate 1 , 13
Lcd "hex"
Locate 2 , 1
Lcd K
Case 9
Locate 1 , 13
Lcd "sqr"
Locate 2 , 1
Lcd K
Case 11
Goto H


End Select
Loop

End Select


Loop
Nn:
Do
D = Getkbd()
Select Case D
Case 0
Locate 2 , F
Lcd "1"
G = 1
F = F + 1
G1 = G1 * 10
G1 = G1 + G
Case 1
Locate 2 , F
Lcd "4"
G = 4
F = F + 1
G1 = G1 * 10
G1 = G1 + G
Case 2
Locate 2 , F
Lcd "7"
G = 7
F = F + 1
G1 = G1 * 10
G1 = G1 + G
Case 3

F = F - 1
Locate 2 , F
Lcd " "
G1 = G1 \ 10
If F = 1 Then
Locate 2 , 1
Lcd "0"
End If

Case 4
Locate 2 , F
Lcd "2"
G = 2
F = F + 1
G1 = G1 * 10
G1 = G1 + G
Case 5
Locate 2 , F
Lcd "5"
G = 5
F = F + 1
G1 = G1 * 10
G1 = G1 + G
Case 6
Locate 2 , F
Lcd "8"
G = 8
F = F + 1
G1 = G1 * 10
G1 = G1 + G
Case 7
If F = 1 Then
Goto Nn
End If
Locate 2 , F
Lcd "0"
G = 0
F = F + 1
G1 = G1 * 10
G1 = G1 + G
Case 8
Locate 2 , F
Lcd "3"
G = 3
F = F + 1
G1 = G1 * 10
G1 = G1 + G
Case 9
Locate 2 , F
Lcd "6"
G = 6
F = F + 1
G1 = G1 * 10
G1 = G1 + G
Case 10
Locate 2 , F
Lcd "9"
G = 9
F = F + 1
G1 = G1 * 10
G1 = G1 + G
Case 15
Select Case Amal
Case "+"
K = S1 + G1
K = Int(k)
Cls
Lcd K
Case "-"
K = S1 - G1
K = Int(k)
Cls
Lcd K
Case "*"
K = S1 * G1
K = Int(k)
Cls
Lcd K
Case "/"
K = S1 / G1
Cls
Lcd K
End Select
Case 11
Exit Do



End Select

Loop
Loop

'************************************************* **********************