Hallo Zusammen. im Prinzip hab ich zwei Fragen. Einmal Frag ich mich wo die Vor bzw Nachteile bei der Software- und Hardware-Spi sind. Ist die Hardware-Spi schneller? oder ist der Vorteil, dass das Programm andere Sachen machen kann, wärend noch empfangen/gesendet wird? Zum Anderen: ich möchte zwei Module an den Atmega via SPI anschließen. Klar ich könnte zwei mal eine Software SPI implemientieren oder einmal Software und einmal Hardware SPI. Wobei jeweils eine SPI andere Portpins verwendet. Ich dachte mir aber, ich könne die Hardware SPI nehmen. Alle Portpins BUSmäßig an Atmega, Modul 1 und Modul 2 hängen. Für das Chipselect dann natürlich jeweils einen eigenen Pin. Kann ich der HardwareSPI einen anderen als den standart SS-Pin beibringen? dann müsste ich vor jeder Sendefunktion immer nur den SS-Pin ändern. Oder dann doch lieber SoftwareSPI und einen SS-Pin als Parameter an die Funktion übergeben? danke und mfp Peter
Christian Peskov schrieb: > Ist die Hardware-Spi schneller? Nicht unbedingt, kommt wahrscheinlich auf den Controller an. Ein atmega168 kann die Daten mit dem halben externen Takt rausschieben. Das geht mit Software natürlich nicht. > oder ist der Vorteil, dass das Programm > andere Sachen machen kann, wärend noch empfangen/gesendet wird? Ja. Christian Peskov schrieb: > Ich dachte mir aber, ich könne die Hardware SPI nehmen. Alle Portpins > BUSmäßig an Atmega, Modul 1 und Modul 2 hängen. > Für das Chipselect dann natürlich jeweils einen eigenen Pin. > Kann ich der HardwareSPI einen anderen als den standart SS-Pin > beibringen? Würd ich so machen. SS wird (bei den mir bekannten atmegas) immer "zu Fuss" gesetzt. Allerdings muss der SS Pin sauber initialisiert werden, sonst streikt die hardware SPI. Siehe Datenblatt deines Controllers. PS. Standar*d*, nicht Standart(e).
Die Hardware SPI ist um einiges schneller .. biszu f/2 für CLK. Desweiteren muss der dann nur arbeiten um die Daten dem SPI zu übergeben, während dieser dann alles selber raus schaufelt. Den SS kann man auch per Software auf anderen PIN's legen. Bei mir ist er immer als Ausgang deklariert damit ich ich frei habe und nicht am SPI.
Tom M. schrieb: > immer "zu > Fuss" gesetzt du meinst bei der hardware spi? Also da kann ich sagen: du uC du... benutz bitte den PD7 als SS anstelle von PB4" oder setzt ich einfach vor jeder Kommunikation den entsprechenden SS-Pin "von Hand" auf low? habs nicht mehr genau vor augen... aber das wäre ja dann optimal. ja klar standarD, danke ;)
^^und wenn ich euch schonmal "dran" habe... wie lösche ich die das Autorouting von Eagle 6.2? Ich habe eine Platine entworfen und das Autorouting (nach luftlinien berechnen) verwendet. Ich habe aber noch mal etwas hin und her geschoben und nun haben einige Bahnen komische Wege. Daher würde ich gerne das Autorouting noch mal neu starten. Wenn ich es jetzt einfach noch mal ausführe, dann ist bspw. eine Bahn noch immer ausserhalb der Platine. danke und gruß Peter
Christian Peskov schrieb: > ^^und wenn ich euch schonmal "dran" habe... Mach' bitte einen neuen Thread mit aussagekräftigem Titel auf. Vielleicht sucht später mal jemand danach? mfg mf
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.