SPI FRAM Board mit Bascom nutzen

    $regfile = "m328pdef.dat"
    $crystal = 16000000
    $baud = 19200

    $hwstack = 40
    $swstack = 16
    $framesize = 32

    ' External EEPROM Config
    Config Portb.2 = Output                                     'ss
    Config Portb.5 = Output                                     'clk
    Config Portb.3 = Output                                     'mosi
    Fram_cs Alias Portb.2 : Const Fram_csp = 2 : Const Fram_csport = Portb
    Fram_so Alias Pinb.4 : Const Fram_sop = 4 : Const Fram_soport = Pinb       'miso
    Fram_si Alias Portb.3 : Const Fram_sip = 3 : Const Fram_siport = Portb
    Fram_sck Alias Portb.5 : Const Fram_sckp = 5 : Const Fram_sckport = Portb

    $eepromsize = &H2000        '8kb
    '$eepromsize = &H8000        '32kb
    $lib "fm25c256.lib"
    ' External EEPROM Config


    Dim A(101) As Eram Byte
    Dim B As Byte
    Dim C As Byte
    Dim D As Byte

    Do

      Input "Data to write ? (0-255)" , D

      Print "Reading content of EEPROM (via ERAM Byte)"
      For C = 0 To 100
         B = A(c)
        Print "Read " ; C ; ":" ; B ; "/" ; Hex(b)
        Waitms 4
      Next

      Wait 1

      Print "Writing data to EEPROM (via ERAM Byte)"
      For C = 0 To 100
         A(c) = D
        Print "Write " ; C ; ":" ; D ; "/" ; Hex(d)
        Waitms 4
      Next

      Wait 1

      Print "Reading back data from EEPROM (via ERAM Byte)"
      For C = 0 To 100
         B = A(c)
        Print "Read " ; C ; ":" ; B ; "/" ; Hex(b)
        Waitms 4
      Next

      Wait 2

      Input "Data to write ? (0-255)" , D

      Print "Reading content of EEPROM (via READEEPROM)"
      For C = 0 To 100
        Readeeprom B , C
        Print "Read " ; C ; ":" ; B ; "/" ; Hex(b)
        Waitms 4
      Next

      Wait 1

      Print "Writing data to EEPROM (via WRITEEEPROM)"
      For C = 0 To 100
        Writeeeprom D , C
        Print "Writing " ; C ; ":" ; D ; "/" ; Hex(d)
        Waitms 4
      Next

      Wait 1

      Print "Reading content of EEPROM (via READEEPROM)"
      For C = 0 To 100
        Readeeprom B , C
        Print "Read " ; C ; ":" ; B ; "/" ; Hex(b)
        Waitms 4
      Next

      Wait 2


    Loop

    End

    Werbung

    Please publish modules in offcanvas position.