hier kurz eine demo mit fastavr , mit asm als sub und wert einlesen als zahl , weiterhin eine sub und wert einlesen als übergebene variable.
hier sieht man auch, wie klar die programmierdisziplin ist.
es wird die gleiche disziplin verlangt wie bei winavr-c, darum ist fastavr-basic auch genause schnell wie winavr-c, wie ich festgestellt habe.
man braucht nur einmal den asm-code gegenüberstellen. fast kein unterschied.
mfg pebisoft
Code:$Device= m16 $Stack = 32 $Clock = 8 $Baud = 19200 $Source= On Dim wert As Byte Dim wert_adr As Word Dim wert_1 As Byte Dim wert_adr_1 As Word Declare Sub test() Declare Sub test_1() wert_adr=VarPtr(wert) ' adr der variable im sram wert_adr_1=VarPtr(wert_1) wert_1=123 Do test() Print wert WaitMs 250 test_1() Print wert WaitMs 250 Loop End ' können auch in einer sub declariert werden $Asm .def pebi_1=r24 $EndAsm ' zahl 77 direkt einlesen Sub test() $Asm ldi pebi_1,77 STS wert, pebi_1 $EndAsm End Sub ' wert_1 als variable einlesen Sub test_1() $Asm lds pebi_1,wert_1 STS wert, pebi_1 $EndAsm End Sub







Zitieren

Lesezeichen