Willkommen in unserer Community

Werde Teil unserer Community und registriere dich jetzt kostenlos ...

  1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen

SAM D21J17A im Modularen Board System 2017-06-18

Ein ARM SAM D21J17 wird als Prozessor im Modularen System verwendet

  1. achim S.

    achim S. Mitglied

    Registriert seit:
    16. Januar 2010
    Beiträge:
    257
    Zustimmungen:
    5
    Map
    achim S. hat eine neue Ressource erstellt:

    SAM D21J17A im Modularen Board System - Ein ARM SAM D21J17 wird als Prozessor im Modularen System verwendet

    Weitere Informationen zu dieser Ressource...
     
  2. LotadaC

    LotadaC Sehr aktives Mitglied

    Registriert seit:
    22. Januar 2009
    Beiträge:
    2.698
    Zustimmungen:
    38
    Ort:
    Hennigsdorf
    Sprachen:
    BascomAVR, Assembler
    Map
    Hmm...
    irgendwie erschließt sich mir der Sinn dieser Ressource nicht so recht.
    Was konkret willst Du uns damit zur Verfügung stellen?
    (Wie können/sollen wir diese "Quelle" verwenden?)
    Bisher ist das ja nur eine Projekt/Produktvorstellung - veröffentlichst Du dazu noch mehr? (Schaltplan, Layout etc...)
     
  3. achim S.

    achim S. Mitglied

    Registriert seit:
    16. Januar 2010
    Beiträge:
    257
    Zustimmungen:
    5
    Map
    Bin dabei ein entsprechendes Tut zu erstellen, für Hardware mit Platinenbild, Bestückung, Anschlüsse und Software, wie es programmiert werden kann mit Beispielen. Damit kann dann jeder so ein Board verwenden und sein eigenes Programm draufbringen. Leider hält sich die Anzahl der Veröffentlichungen zum Prozessor im Netz sehr klein oder es gibt nur wenige Anleitungen oder Tuts zum Thema. Leider bin ich nicht der Fachmann bei diesem Typ um alles zu können. Hoffe damit auch anderen zu helfen
    achim
     
  4. LotadaC

    LotadaC Sehr aktives Mitglied

    Registriert seit:
    22. Januar 2009
    Beiträge:
    2.698
    Zustimmungen:
    38
    Ort:
    Hennigsdorf
    Sprachen:
    BascomAVR, Assembler
    Map
    Ah ok...
    Sowas kann sich in die Länge ziehen;)...
    hier zumindest mal einen Link auf den Controller.
     
  5. achim S.

    achim S. Mitglied

    Registriert seit:
    16. Januar 2010
    Beiträge:
    257
    Zustimmungen:
    5
    Map
    Hab das was anderes für dich zu lesen. Kannst damit schon die Zeit überbrücken bis das andere fetig ist. Achim
    P5152519_(1024_x_768).jpg
     

    Anhänge:

  6. Dirk

    Dirk Administrator Mitarbeiter

    Registriert seit:
    28. Januar 2007
    Beiträge:
    4.070
    Zustimmungen:
    100
    Ort:
    Mittelhessen, Giessen
    Sprachen:
    C, Assembler, Pascal, C++, PHP, Java
    Map
    Hallo Achim,

    du hast ja eine Mutterplatine für das Mikrocontroller-Modul erstellt. :cool:

    Ich werde für das Modul noch ein Eagle-Device definieren (für dich wahrscheinlich zu spät, falls du Eagle nutzt).

    Dirk :ciao:
     
  7. achim S.

    achim S. Mitglied

    Registriert seit:
    16. Januar 2010
    Beiträge:
    257
    Zustimmungen:
    5
    Map
    Hallo Dirk
    stimmt genau und aufgebaut und in Betrieb genommen. Dazu brauchte ich deine Hilfe, um die grundlegende Programmierung zu begreiffen. Arbeite mit Sprint. Dabei gibt es auch die Version Gerber Datein. Arbeite gerade an der ersten Software - der Anfang. Es könnte das erste Tut für den SAM werden. Schau dir mal die Anzeige (oben) an. Ist dein Lieblings IC drin, der HT16K33, als Matrix Ansteuerung. Habe gefühlte 6 verschiedene Matrix, Bargraph, Bicolor und so dazu. Muss auch noch eine Laufschrift damit zu liegen haben.
    achim
     
  8. Dirk

    Dirk Administrator Mitarbeiter

    Registriert seit:
    28. Januar 2007
    Beiträge:
    4.070
    Zustimmungen:
    100
    Ort:
    Mittelhessen, Giessen
    Sprachen:
    C, Assembler, Pascal, C++, PHP, Java
    Map
    Ich brauche ein bisschen mehr Zeit, dann könnte ich dir ein Atmel Studio Projekt mit I2C Master für den SAMD21 erstellen, sozusagen als Template. Alles andere sollte sich dann so programmieren lassen, wie auf einem AVR.
    Schwierigkeiten sehe ich da noch bei dem I2C Signalpegel SAMD21 (3,3V) <-> (5V) HT16K33, da müsste man etwas anpassen.

    Dirk :ciao:
     
  9. achim S.

    achim S. Mitglied

    Registriert seit:
    16. Januar 2010
    Beiträge:
    257
    Zustimmungen:
    5
    Map
    Hallo Dirk
    ist kein Problem. Habe auf allen Platinen mit Pegel 3,3V einen Pegelwandler drin. Entweder den PCA .. (Bezeichnung gerade entfallen) oder 2x BSS138 mir R und zusätzlich R für den Pegel. Die Schaltungen sind mehrfach aufgebaut und laufen ganz toll. Der Pegel beim Bus ist bei mir immer 5V, wenn was anderes gebraucht wird setze ich es auf der Platine runter. Habe die Matrix mit ca. 500LED aufgebaut. Da geht schon so manches NT in die Knie. 20mA x 500 LED = ganz viel Strom. Das Programm für den Bus würde mich sehr interessieren. Bin gerade an den GPIO dran. Der Sam ist nicht so einfach zu machen. Das ist eine Nummer grösser als so ein AVR, aber eine Herausvorderung. Bei meinem System passt alles zusammen, von der Bauart, den Anschlüssen und Steckverbinder bis zu den Spannungen.
    achim
     
  10. achim S.

    achim S. Mitglied

    Registriert seit:
    16. Januar 2010
    Beiträge:
    257
    Zustimmungen:
    5
    Map
    Hallo
    wie angekündigt gibt es heute das erste Tut zu diesem Board. Es behandelt die Einstellungen zu dem Atmel Studio. Dank Dirk seiner kurzen Anleitung konnte ich es so machen. Habe entsprechende Bilder verwendet. Damit müsste es relativ leicht gehen.
     

    Anhänge:

    Dirk und maik gefällt das.
  11. TommyB

    TommyB Premium Benutzer

    Registriert seit:
    17. Mai 2010
    Beiträge:
    1.612
    Zustimmungen:
    45
    Ort:
    127.0.0.1 ;)
    Sprachen:
    Assembler, LunaAVR, VB.Net, Python, C#
    Gut gemacht :)

    Nur die Wahl der Schriftart würde ich noch mal überdenken.
    Bei Comic Sans kringeln sich bei vielen die Fußnägel hoch ;)
     
  12. Dirk

    Dirk Administrator Mitarbeiter

    Registriert seit:
    28. Januar 2007
    Beiträge:
    4.070
    Zustimmungen:
    100
    Ort:
    Mittelhessen, Giessen
    Sprachen:
    C, Assembler, Pascal, C++, PHP, Java
    Map
    Hallo Achim,

    schöne Erläuterung zum Start mir Atmel Studio :)

    Da du ja gerne I2C verwendest, stelle ich mal ein Beispiel aus einem Projekt von mir in das Forum, bei dem ich das ASF verwende.
    Vielleicht hilft es dir oder auch anderen Usern und Gästen weiter.

    Im ASF Wizard musst du zunächst den Treiber
    SERCOM I2C - Master Mode I2C (driver) [polled]
    einbinden.

    Mein Beispiel verwendet also den polled Modus und nicht den Modus callback (Interrupt)

    Initialisierung
    I2C Master mit SERCOM1

    i2c_master_get_config_defaults() initialisiert obige Standartwerte.
    Ich verändere folgende Werte ...
    • Timeout
    • Zuordnung der Pins für SDA (PA16) und SCL (PA17)



    CodeBox C und C++
    #define CONF_I2C_MASTER_MODULE SERCOM1
    
    #define DATA_LENGTH 32
    
    static uint8_t i2c_write_buffer[DATA_LENGTH];
    static uint8_t i2c_read_buffer[DATA_LENGTH];
    
    #define SLAVE_ADDRESS 0x12
    
    struct i2c_master_module i2c_master_instance;
    struct i2c_master_packet packet;
    
    void touch_configure_i2c_master(void)
    {
       /* Initialize config structure and software module. */
       struct i2c_master_config config_i2c_master;
       i2c_master_get_config_defaults(&config_i2c_master);
     
       /* Change buffer timeout to something longer. */
       config_i2c_master.buffer_timeout = 10000;
       config_i2c_master.pinmux_pad0 = PINMUX_PA16C_SERCOM1_PAD0;   // SDA = PA16
       config_i2c_master.pinmux_pad1 = PINMUX_PA17C_SERCOM1_PAD1;  // SCL = PA17
     
       i2c_master_init(&i2c_master_instance, CONF_I2C_MASTER_MODULE, &config_i2c_master);
       i2c_master_enable(&i2c_master_instance);
     
    }
    


    Write und Read
    Im folgenden Beispiel sende ich zunächst eine Registeradresse 0x00 und lese danach 32 Byte.



    CodeBox C und C++
    void touch_read_data(void)
    {
     
       uint16_t timeout;
      
       timeout = 0;
      
       packet.address     = SLAVE_ADDRESS;
       packet.data_length = 1;
       packet.data        = i2c_write_buffer;  
      
       i2c_write_buffer[0] = 0;
      
       while (i2c_master_write_packet_wait(&i2c_master_instance, &packet) != STATUS_OK)
       {
           if (timeout++ == TIMEOUT)
           {
                // Error LED_PB30_ON
                break;
            }
        }
      
      
       packet.address     = SLAVE_ADDRESS;
       packet.data_length = 32;
       packet.data        = i2c_read_buffer;  
      
       timeout = 0;
      
       while (i2c_master_read_packet_wait(&i2c_master_instance, &packet) != STATUS_OK)
       {
           if (timeout++ == TIMEOUT)
           {
               // Error LED_PB30_ON
               break;
           }
       }      
    }
    


    Off topic: Wegen dem Font Comic Sans MS, gebe ich Tommy schon etwas recht. Ich hatte sogar einmal gelesen, dass es der Entwickler der Schriftart inzwischen bereut, diese erstellt zu haben (ob das Stimmt ... hmmm?), da viele diese Schriftart "gar nicht mögen". Hier ein Link zu Wikipedia https://de.wikipedia.org/wiki/Comic_Sans_MS, siehe auch den Punkt Kritik, wenn du mal eine Suchmaschine bemühst, wirst du sicherlich noch viele weitere Seiten mit "Kritik" finden ;)

    Achso, das Mikrocontrollermodul nennt sich NanoSAMD21, du hast im Text manchmal das "D" vergessen. :)

    Ansonsten ... solche Tutorials sind eine super Sache! Finde ich klasse! Daumen hoch :)

    Dirk :ciao:
     
  13. achim S.

    achim S. Mitglied

    Registriert seit:
    16. Januar 2010
    Beiträge:
    257
    Zustimmungen:
    5
    Map
    Hallo Dirk, Hallo Thomas
    Danke für eure positive Kritik. Bin ja richtig erstaunt das es so gut ankommt. Das mit der Schrift ist so eine Sache. Habe lange rumprobiert bei den ganzen zur Auswahl stehenden Schriften. Bin dann irgendwie bei so einer ähnlichen wie die Handschrift hängen geblieben. Naja, der Bringer ist es nicht. Wenn ihr mal das andere Tut zu der Matrix anschaut, so ist es auch so aufgebaut. Habe leider einen dicken Fehler drin, nicht nur das "D". Habe eine Reihe von Bildern vergessen. Gerade die Einstellung und das Laden des Programmes fehlt total. Werde es so schnell wie möglich nachholen und das neue reinstellen.
    Dirk, wir hatten uns ja schon mal über solche Tuts am Telefon unterhalten. Habe noch so ca. 50 Stück dazu. Kannst sie alle haben. Das Beispiel mit dem I2C Bus ist total wichtig für mich. Kann dann alle meine vorhandenen Module anschliessen und mit den 32 Bit programmieren. Das gibt ganz neue Sachen für alle. Bin jetzt auch an der Hardware dran und erstelle gerade eine Zeichnung dazu.
    Ihr habt jetzt eine grosse Aufgabe. Sorgt einfach für eine grosse Verbreitung. Dann kann jeder etwas damit bauen oder programmieren. Das ist was besonderes für die Anfänger. Eine Anleitung Schritt für Schritt mit vielen Bildern. Da macht das alles viel mehr Spass und man verliert nicht gleich den Mut wenn es mal nicht klappt.
    achim
     
  14. Dirk

    Dirk Administrator Mitarbeiter

    Registriert seit:
    28. Januar 2007
    Beiträge:
    4.070
    Zustimmungen:
    100
    Ort:
    Mittelhessen, Giessen
    Sprachen:
    C, Assembler, Pascal, C++, PHP, Java
    Map
    Hallo Achim,
    ich hatte für Tutorials eine Forenkategorie angelegt, du kannst da schon Themen erstellen. Ich finde allerdings den Ressourcenbereich gut geeignet für Tutorials, diskutieren kann man dort ja auch. Wenn du möchtest, kann ich auch die Themen erstellen, jeweils mit einer kurzen Einführung zum angehängten Tutorial. Du müsstest mir nur erst mal einige PDF zusenden, dann sehe ich, welche Themen vorhanden und kann mir dann überelgen, ob es Sinn macht, in der Forumkategorie oder Ressourcenbereich entsprechende Unterkategorien anzulegen.

    Dirk :ciao:
     
  15. TommyB

    TommyB Premium Benutzer

    Registriert seit:
    17. Mai 2010
    Beiträge:
    1.612
    Zustimmungen:
    45
    Ort:
    127.0.0.1 ;)
    Sprachen:
    Assembler, LunaAVR, VB.Net, Python, C#
    Ich mein ich kann nicht so viel dazu sagen, da ich eher mit den kleineren Käfern arbeite, wenn überhaupt. Da auch nur in Assembler statt C. C lesen kann ich zwar, aber schreiben... Ich musste letztens ein paar Zeilen Quelltext von VB.Net in C# übersetzen. Heiland schmeiß Schei*e... Gefühlt 1000 Fehler.
    Daher kann ich zum Inhalt leider auch nur wenig sagen. Neuere Entwicklungsumgebung, andere Sprache und Hardware die ich noch nie verwendet hatte. Daher wäre es schon interessant, auf jeden Fall.
    Es ist nur schade wenn mühevoll erstellte Arbeit durch Kleinigkeiten zerstört wird.

    Daher das mit der Schriftart... Es stimmt halt, der erste Eindruck überwiegt. Und wenn man Dokumentationen erstellt sollte diese seriös wirken, auf den ersten Blick. Aber der erste Eindruck fiel bei dir auf die Schriftart. Comic Sans wäre ok und ich bin mir sicher dass auch niemand was gegen die Schriftart hätte wenn diese ausschließlich für das verwendet worden wäre wofür sie geschaffen wurde; für Comics. Siehe die Datenblätter von Atmel oder eins meiner alten Werke.

    Seriös wirkende Schriftstücke (wie Dokumentationen) sollten doch eher in gängigen Schriftarten wie Arial, Segoe oder (was eigentlich auch schon grenzwertig ist aber ich nutze) Verdana verfasst sein. Extrembeispiel: Keiner würde eine Bewerbung lesen die plain Text in Notepad geschrieben ist oder noch extremer als Schriftart Wingdings (früher Windings) verfasst ist ;)
    Das passt einfach nicht, wirkt nicht seriös, der Inhalt ist dann schon fast allen egal, auch sollte es der Beste der Welt sein.

    Ich wäre froh wenn du deine Werke mit veröffentlichst, grade weil mich das Thema auch Interessiert. Die Frage ist nur leider ob ich Zeit dafür finde. Aber der Nutzen für Andere ist ja klar.
     
  16. Dirk

    Dirk Administrator Mitarbeiter

    Registriert seit:
    28. Januar 2007
    Beiträge:
    4.070
    Zustimmungen:
    100
    Ort:
    Mittelhessen, Giessen
    Sprachen:
    C, Assembler, Pascal, C++, PHP, Java
    Map
    Wenn Achim damit einverstanden ist, würde ich das "Design" (nicht Inhalt) eines Datenblatts ändern und Achim zusenden.Eventuell erhalten wir so eine Art Template und alle anderen Tutorials lassen sich dadurch leicht anpassen.

    Ich denke das Format ist aber so schon gut, die Tutorials müssen nicht geändert werden, es kommt vor allem auf den Inhalt an ... und der stimmt!

    Dirk :ciao:
     
  17. LotadaC

    LotadaC Sehr aktives Mitglied

    Registriert seit:
    22. Januar 2009
    Beiträge:
    2.698
    Zustimmungen:
    38
    Ort:
    Hennigsdorf
    Sprachen:
    BascomAVR, Assembler
    Map
    Du wechselst häufig zwischen der ersten Person Singular und der ersten Person Plural. Das irritiert etwas.
    Außerdem sind diverse Schreibfehler drin - fachlich maße ich mir keine Kritik an (als Assemblerer), aber Thomas wies ja bereits auf Seriosität hin.

    Mich persönlich(!) erschlagen die vielen bunten Bilder mit den vielen bunten Anmerkungen übrigens irgendwie.
     
  18. achim S.

    achim S. Mitglied

    Registriert seit:
    16. Januar 2010
    Beiträge:
    257
    Zustimmungen:
    5
    Map
    Hallo
    das mit der Person stimmt. Leider ist es manchmal nicht so einfach, die Technik und den Ausdruck zu verbinden. Möchte etwas sagen, aber nicht eine ganze Seite dazu verwenden. Die bunten Bilder brauchen dich nicht zu erschlagen. Nimm einfach das Beispiel der Bibliotheken beim Atmel Studio. Dort gibt es so viele mit fast gleichen Namen.Welchen Klick muss wo hin gemacht werden. Gehe eigentlich vom Grundsatz aus, ein Bild sagt mehr als tausen Worte. Die eigentliche Zielgruppe bei den Sachen sind Anfänger. Könner brauchen keine Hilfe von mir. Habe es selbst erfahren. Nach Aufbau meines ersten Roboters und den Test, kamm die Frage: was mach ich damit? Eine richtige Anleitung erspart viel Frust und macht das erste Programm zum Erfolg. Damit wird der erste Erfolg zum Antrieb für andere Projekte und weckt das Intresse an mehr. Leider sind die Handbücher sehr rar zu diesem Thema. Entweder habe ich andere Hardware, programmiere in einer anderen Sprache, die Hardware ist so alt das sie noch zum C64 passt oder muss erst ein ganzes Buch lesen und auswendig lernen um eine LED blinken zu lassen. Du brauchst auch keinen SAM zu nehmen. Habe auch viel Sachen zum Atmega 1284p. Die gesamten Platinen stellen einen Art Bausatz dar. Jedes Teil passt fast zu jedem Teil, alle Anschlüsse passen. Das Grundboard mit Netzteil kann sofort genutzt werden. Je nach Interesse und Geld kann es erweitert werden. Verwende grundsätzlich nur Platinen mit einer Ebene und falls möglich nur ICs zum Stecken, selten SMD. Dadurch kann es jeder Aufbauen, Erweitern oder selbst was mit machen. Das ist gut für Anfänger oder sogar Anwendern bis (fast) Profis.
    Da alles Open source ist kannst du selbstverständlich die Schrift ändern. Vielleicht finden wir zusammen eine gute Darstellung. Alle Fotos habe ich selber erstellt. Es gibt keine Rechte dritter, ausser an den Namen der Hersteller oder weise extra drauf hin. Das Bild auf der ersten seite stammt von Freunden von mir und habe die Erlaubnis zur Nutzung. Falls du Schreibfehler findest, schick einfach eine mail, werde es sofort ändern. Verlasse mich eigentlich auf die Rechtschreibprüfung von Windows Office. Sicher kann man an den Tuts was verbessern, es ist aber ein Anfang der jederzeit erweiterbar ist. Es soll auch kein fester (Rahmen oder Inhalt) (mir fällt gerade nichts besseres ein) sein. Es soll dem Leser Spass machen und bei ca. 10 Seiten nicht überfordern und Mut zu was eigenen machen.

    achim
     
  19. LotadaC

    LotadaC Sehr aktives Mitglied

    Registriert seit:
    22. Januar 2009
    Beiträge:
    2.698
    Zustimmungen:
    38
    Ort:
    Hennigsdorf
    Sprachen:
    BascomAVR, Assembler
    Map
    Es sind eher grammatische Fehler (insbesondere solche, die beim ändern eines Satzes zustandekommen).
    Für mich brauchst Du die Anleitung nicht zu erstellen, ich wollte Dir nur mitteilen, wie sie auf mich wirkt (bei den Bildern hab ich irgendwie das Gefühl, erstmal 'n Stück zurückrutschen zu müssen - aber ich bin nicht das Maß).
    Du willst mir(!!) doch keinen Tausendfüßer vorschlagen, oder?!
     
  20. achim S.

    achim S. Mitglied

    Registriert seit:
    16. Januar 2010
    Beiträge:
    257
    Zustimmungen:
    5
    Map
    Es geht dabei eigentlich um einen einfachen IC. Es geht natürlich noch kleiner. Der 1284p lässt sich im Vergleich auch weitaus einfacher programmieren und wahrscheinlich für Anfänger besser geeignet. Der SAM ist schon ein ganzes Stück "grösser". Muss jeder machen wie er will. Soll alles eine Hilfe sein. Kann mich noch deutlich erinnern wie ich angefangen habe. Hatte es mir leichter vorgestellt.
    achim
     

Diese Seite empfehlen

  • Über uns

    Unsere immer weiter wachsende Community beschäftigt sich mit Themenbereichen rund um Mikrocontroller- und Kleinstrechnersysteme. Neben den Themen Design von Schaltungen, Layout und Software, beschäftigen wir uns auch mit der herkömmlichen Elektrotechnik.

    Du bist noch kein Mitglied in unserer freundlichen Community? Werde Teil von uns und registriere dich in unserem Forum.
  • Coffee Time

    Unser makerconnect-Team arbeitet hart daran sicherzustellen, dass unser Forum permanent online und schnell erreichbar ist, unsere Forensoftware auf dem aktuellsten Stand ist und unser eigener makerconnekt-Server regelmäßig gewartet wird. Wir nehmen das Thema Datensicherung und Datenschutz sehr ernst und sind hier sehr aktiv, auch sorgen wir uns darum, dass alles Drumherum stimmt!

    Dir gefällt das Forum und die Arbeit unseres Teams und du möchtest es unterstützen? Unterstütze uns durch deine Premium-Mitgliedschaft, unser Team freut sich auch über eine Spende für die Kaffeekasse :-)
    Vielen Dank!
    Dein makerconnect-Team

    Spende uns! (Paypal)