Merakit Sendiri Runing Text Atmega16 denga Bahasa Bascom-AVR

Merakit Sendiri Runing Text Atmega16 dengan Bahasa Basic atau Bascom-AVR. silahkan dicoba disimulasikan menggunakan Software Proteus.

skema runing teks atmega16

silahkan kopas kode runing teks dibawah ini. masukkan pada lembar kerja bascom-AVR. kompilasi, lalu masukkan ke lembar kerja Proteus. dan simulasikanlah. jika ada masih awam dengan Bascom-AVR bisa mempelajari pada ling dibawah ini

Baca juga: Pemrograman Mikrokontroler untuk Pemula

$regfile = "m16def.dat"
$crystal = 1000000
$hwstack = 32
$swstack = 32
$framesize = 40

Dim Char As Byte , C As Byte , Digit As Byte , L As Byte , I As Byte
Dim X As Word , Y As Integer
Dim Str_temp As String * 1 , Reeks(250) As Byte , Str_text As String * 50 , Str_len As Byte , Col_len As Byte , R As Byte
Dim Tempmsb As Byte , Templsb As Byte , Tempstr As String * 2
Dim Scroll_speed As Byte

Declare Sub Show_text
Declare Sub Set_text

Config Portb = Output
Config Portc = Output

Scroll_speed = 8

Str_text = "      Dilarang Merokok"
Str_len = Len(str_text)
Col_len = Str_len * 6

Set_text

Do
   Show_text
Loop

End

'set text
Sub Set_text
   C = 1
   For Digit = 1 To Str_len
      Str_temp = Mid(str_text , Digit , 1)
      Char = Asc(str_temp)
      X = Char * 5
      For I = 1 To 5
         Reeks(c) = Lookup(x , Text_data)
         X = X + 1
         C = C + 1
      Next I
      Reeks(c) = 0
      C = C + 1
   Next Digit
End Sub Set_string

'show text
Sub Show_text
   If Str_len > 4 Then
   For L = 0 To Col_len
   C = 1
      For R = 1 To Scroll_speed
         Set Portc.0
         Toggle Portc.1
         Toggle Portc.1
         Toggle Portc.1
         Toggle Portc.1
         Toggle Portc.2
         Toggle Portc.2
         Toggle Portc.2
         Toggle Portc.2
         Char = C + L
         Portb = Reeks(char)
         Waitms 3
         C = C + 1
         Reset Portc.0
            For X = 1 To 19
               Toggle Portc.1
               Toggle Portc.1
               Toggle Portc.1
               Toggle Portc.1
               Toggle Portc.2
               Toggle Portc.2
               Toggle Portc.2
               Toggle Portc.2
               Char = C + L
               Portb = Reeks(char)
               Waitms 3
               C = C + 1
            Next X
            C = 1
      Next R
   Next L
      Else
         For L = 0 To Col_len
            C = 1
            For R = 1 To Scroll_speed
               Set Portc.0
               Toggle Portc.1
               Toggle Portc.1
               Toggle Portc.1
               Toggle Portc.1
               Toggle Portc.2
               Toggle Portc.2
               Toggle Portc.2
               Toggle Portc.2
               Portb = Reeks(c)
               Waitms 3
               C = C + 1
               Reset Portc.0
               For X = 1 To 19
                  Toggle Portc.1
                  Toggle Portc.1
                  Toggle Portc.1
                  Toggle Portc.1
                  Toggle Portc.2
                  Toggle Portc.2
                  Toggle Portc.2
                  Toggle Portc.2
                  Portb = Reeks(c)
                  Waitms 3
                  C = C + 1
               Next X
               C = 1
            Next R
         Next L
   End If
End Sub Show_text

Text_data:
Data 0 , 6 , 9 , 9 , 6                                      '
Data 6 , 9 , 9 , 6 , 0                                      '
Data 14 , 31 , 62 , 31 , 14                                 ' hart
Data 0 , 0 , 0 , 0 , 0                                      '
Data 0 , 0 , 0 , 0 , 0                                      '
Data 0 , 0 , 0 , 0 , 0                                      '
Data 0 , 0 , 0 , 0 , 0                                      '
Data 0 , 0 , 0 , 0 , 0                                      '
Data 0 , 0 , 0 , 0 , 0                                      '
Data 0 , 0 , 0 , 0 , 0                                      '
Data 0 , 0 , 0 , 0 , 0                                      '
Data 0 , 0 , 0 , 0 , 0                                      '
Data 0 , 0 , 0 , 0 , 0                                      '
Data 0 , 0 , 0 , 0 , 0                                      '
Data 0 , 0 , 0 , 0 , 0                                      '
Data 0 , 0 , 0 , 0 , 0                                      '
Data 0 , 0 , 0 , 0 , 0                                      '
Data 0 , 0 , 0 , 0 , 0                                      '
Data 0 , 0 , 0 , 0 , 0                                      '
Data 0 , 0 , 0 , 0 , 0                                      '
Data 0 , 0 , 0 , 0 , 0                                      '
Data 0 , 0 , 0 , 0 , 0                                      '
Data 0 , 0 , 0 , 0 , 0                                      '
Data 0 , 0 , 0 , 0 , 0                                      '
Data 0 , 0 , 0 , 0 , 0                                      '
Data 0 , 0 , 0 , 0 , 0                                      '
Data 0 , 0 , 0 , 0 , 0                                      '
Data 0 , 0 , 0 , 0 , 0                                      '
Data 0 , 0 , 0 , 0 , 0                                      '
Data 0 , 0 , 0 , 0 , 0                                      '
Data 0 , 0 , 0 , 0 , 0                                      '
Data 0 , 0 , 0 , 0 , 0                                      '
Data 0 , 0 , 0 , 0 , 0                                      'space
Data 0 , 0 , 95 , 0 , 0                                     '!
Data 0 , 7 , 0 , 7 , 0                                      '''
Data 20 , 127 , 20 , 127 , 20                               '#
Data 36 , 42 , 127 , 42 , 18                                '$
Data 39 , 21 , 107 , 84 , 114                               '%
Data 54 , 73 , 86 , 32 , 80                                 '&
Data 0 , 0 , 11 , 7 , 0                                     ''
Data 0 , 28 , 34 , 65 , 0                                   ' (
Data 0 , 65 , 34 , 28 , 0                                   ')
Data 42 , 28 , 127 , 28 , 42                                '*
Data 8 , 8 , 62 , 8 , 8                                     '+
Data 0 , 88 , 56 , 0 , 0                                    ',
Data 8 , 8 , 8 , 8 , 8                                      '-
Data 0 , 96 , 96 , 0 , 0                                    '.
Data 32 , 16 , 8 , 4 , 2                                    '/
Data 62 , 81 , 73 , 69 , 62                                 '0
Data 0 , 66 , 127 , 64 , 0                                  '1
Data 114 , 73 , 73 , 73 , 70                                '2
Data 34 , 65 , 73 , 73 , 54                                 '3
Data 24 , 20 , 18 , 127 , 16                                '4
Data 39 , 69 , 69 , 69 , 57                                 '5
Data 60 , 74 , 73 , 73 , 48                                 '6
Data 1 , 113 , 9 , 5 , 3                                    '7
Data 54 , 73 , 73 , 73 , 54                                 '8
Data 6 , 73 , 73 , 41 , 30                                  '9
Data 0 , 54 , 54 , 0 , 0                                    ':
Data 0 , 91 , 59 , 0 , 0                                    ';
Data 8 , 20 , 34 , 65 , 0                                   '<
Data 20 , 20 , 20 , 20 , 20                                 '=
Data 0 , 65 , 34 , 20 , 8                                   '>
Data 2 , 1 , 81 , 9 , 6                                     '?
Data 50 , 73 , 121 , 65 , 62                                '@
Data 124 , 18 , 17 , 18 , 124                               'A
Data 65 , 127 , 73 , 73 , 62                                'B
Data 62 , 65 , 65 , 65 , 34                                 'C
Data 65 , 127 , 65 , 65 , 62                                'D
Data 127 , 73 , 73 , 65 , 65                                'E
Data 127 , 9 , 9 , 1 , 1                                    'F
Data 62 , 65 , 73 , 73 , 58                                 'G
Data 127 , 8 , 8 , 8 , 127                                  'H
Data 0 , 65 , 127 , 65 , 0                                  'I
Data 32 , 64 , 65 , 63 , 1                                  'J
Data 127 , 8 , 20 , 34 , 65                                 'K
Data 127 , 64 , 64 , 64 , 64                                'L
Data 127 , 2 , 12 , 2 , 127                                 'M
Data 127 , 2 , 4 , 8 , 127                                  'N
Data 62 , 65 , 65 , 65 , 62                                 'O
Data 127 , 9 , 9 , 9 , 6                                    'P
Data 62 , 65 , 65 , 33 , 94                                 'Q
Data 127 , 9 , 25 , 41 , 70                                 'R
Data 38 , 73 , 73 , 73 , 50                                 'S
Data 1 , 1 , 127 , 1 , 1                                    'T
Data 63 , 64 , 64 , 64 , 63                                 'U
Data 7 , 24 , 96 , 24 , 7                                   'V
Data 127 , 32 , 24 , 32 , 127                               'W
Data 99 , 20 , 8 , 20 , 99                                  'X
Data 3 , 4 , 120 , 4 , 3                                    'Y
Data 97 , 81 , 73 , 69 , 67                                 'Z
Data 0 , 127 , 65 , 65 , 0                                  '[
Data 2 , 4 , 8 , 16 , 32                                    '\
Data 0 , 65 , 65 , 127 , 0                                  ']
Data 4 , 2 , 1 , 2 , 4                                      '^
Data 64 , 64 , 64 , 64 , 64                                 '_
Data 0 , 0 , 7 , 11 , 0                                     ''
Data 32 , 84 , 84 , 84 , 56                                 'a
Data 127 , 40 , 68 , 68 , 56                                'b
Data 0 , 56 , 68 , 68 , 68                                  'c
Data 56 , 68 , 68 , 40 , 127                                'd
Data 56 , 84 , 84 , 84 , 24                                 'e
Data 8 , 126 , 9 , 9 , 2                                    'f
Data 8 , 84 , 84 , 84 , 60                                  'g
Data 127 , 16 , 8 , 8 , 112                                 'h
Data 0 , 68 , 125 , 0 , 0                                   'i
Data 32 , 64 , 68 , 61 , 0                                  'j
Data 0 , 127 , 16 , 40 , 68                                 'k
Data 0 , 65 , 127 , 64 , 0                                  'l
Data 124 , 4 , 120 , 4 , 120                                'm
Data 124 , 8 , 4 , 4 , 120                                  'n
Data 56 , 68 , 68 , 68 , 56                                 'o
Data 124 , 20 , 20 , 20 , 8                                 'p
Data 8 , 20 , 20 , 20 , 124                                 'q
Data 124 , 8 , 4 , 4 , 8                                    'r
Data 72 , 84 , 84 , 84 , 36                                 's
Data 0 , 4 , 63 , 68 , 68                                   't
Data 60 , 64 , 64 , 32 , 124                                'u
Data 28 , 32 , 64 , 32 , 28                                 'v
Data 60 , 64 , 60 , 64 , 60                                 'w
Data 68 , 40 , 16 , 40 , 68                                 'x
Data 12 , 80 , 80 , 80 , 60                                 'y
Data 68 , 100 , 84 , 76 , 68                                'z
Data 0 , 8 , 54 , 65 , 0                                    '{
Data 0 , 0 , 119 , 0 , 0                                    '|
Data 0 , 65 , 54 , 8 , 0                                    '}
Data 2 , 1 , 2 , 4 , 2                                      '~
Data 42 , 85 , 42 , 85 , 42                                 '

untuk led bisa menggunakan dotmatrix 5x7 sebayak 8 buah, atau menggunakan 8x8 sebanyak 5 buah. atau bisa juga pakai led yang kamu susun sendiri jika ingin menghemat biaya. akan tetapi bikin display dot matrix sendiri sangat menyita waktu. capek ngebor, njumper, dan nyoldernya.

Artikel Terkait

Merakit Sendiri Runing Text Atmega16 denga Bahasa Bascom-AVR
4/ 5

1 komentar:

30 November 2021 pukul 02.27 delete

Hello.
How to make symbols thin?

Reply
avatar