پروژه دفترچه تلفن با میکروکنترلر AVR
پروژه دفترچه تلفن با میکروکنترلر AVR
سلام به همه دوستان این یک پروژه دفترچه تلفن ساده است که برای شما آماده کردیم .
که با زبان بیسک بسکام نوشته شده و با میکرو Atmega32 و صفحه کلید ماتریس و LCD کارکتری کار میکند .
مخصوص ارائه برای درسهای آزمایشگاه میکروکنترلر و دیگر درسهای در این زمینه میباشد .
$regfile = “m32def.dat”
$crystal = 1000000
Config Lcdbus = 4
Config Lcd = 16 * 2
Config Lcdpin = Pin , Db4 = Portc.1 , Db5 = Portc.2 , Db6 = Portc.3 , Db7 = _
Portc.4 , E = Portd.2 , Rs = Portd.3
Config Kbd = Portb , Debounce = 10 , Delay = 64
Declare Sub Save()
Dim A As Byte , Ph1 As Long , Ph2 As Long , _
Ph3 As Long , Ph4 As Long , Ph5 As Long , _
Ph6 As Long , Ph7 As Long , Ph8 As Long , _
Ph9 As Long , D As Byte , B As Byte , Col As Byte , Row As Byte _
, Saving As Byte , Sum As Long , I As Integer , Pp As Long
Ph1 = 09111
Ph2 = 044351
Ph3 = 121332
Ph4 = 789673
Ph5 = 788787
Ph6 = 674555
Ph7 = 676785
Ph8 = 895379
Ph9 = 897770
Col = 1
Row = 1
Cls
Home
Locate 2 , 1
Lcd “enter num”
Waitus 4000
Do
‘ D = 16
‘ While D >= 16
‘ D = Getkbd()
‘ D = Lookup(d , Lable)
‘ Wend
‘A = D
‘ Lcd A
‘ Lcd ” : ”
‘ Wait 10
Mari:
A = Getkbd()
If A > 15 Then Goto Mari
A = Lookup(a , Lable)
Cls
Locate 2 , 1
Lcd A
Lcd “:”
Waitms 2000
If A < 16 Then
Select Case A
Case 1:
Lcd Ph1
Waitms 2000
Cls
Case 2:
Lcd Ph2
Waitms 2000
Cls
Case 3:
Lcd Ph3
Waitms 2000
Cls
Case 4:
Lcd Ph4
Waitms 2000
Cls
Case 5:
Lcd Ph5
Waitms 2000
Cls
Case 6:
Lcd Ph6
Waitms 2000
Cls
Case 7:
Lcd Ph7
Waitms 2000
Cls
Case 8:
Lcd Ph8
Waitms 2000
Cls
Case 9:
Lcd Ph9
Waitms 2000
Cls
Case 0:
Call Save()
End Select
‘Else
End If
Loop
End
Lable:
Data 1 , 2 , 3 , 17 , 4 , 5 , 6 , 18 , 7 , 8 , 9 , 19 , 20 , 0 , 21 , 22
Sub Save
Cls
Dim S As Byte
Sum = 0
I = 5
While I >= 0
Main:
S = Getkbd()
If S > 15 Then Goto Main
S = Lookup(s , La)
Locate Row , Col
Incr Col
Lcd S
Pp = 10 ^ I
Pp = S * Pp
Sum = Sum + Pp
Decr I
Wend
Lcd “entter num 1 to 9″
Waitms 4000
Cls
Main2:
Saving = Getkbd()
If Saving > 15 Thengoto Main2
Saving = Lookup(saving , La)
Lcd Saving
Lcd ” : ”
Waitms 2000
Cls
If Saving < 16 Then
Select Case Saving
Case 1:
Ph1 = Sum
Case 2:
Ph2 = Sum
Case 3:
Ph3 = Sum
Case 4:
Ph4 = Sum
Case 5:
Ph5 = Sum
Case 6:
Ph6 = Sum
Case 7:
Ph7 = Sum
Case 8:
Ph8 = Sum
Case 9:
Ph9 = Sum
End Select
End If
End Sub
La:
Data 1 , 2 , 3 , 17 , 4 , 5 , 6 , 18 , 7 , 8 , 9 , 19 , 20 , 0 , 21 , 22


