0
Υπάρχουν νεότερα. Με τον ακόλουθο κώδικα πέτυχα 2 κύκλους οπότε πάμε στα 125nsec. Ποιο κάτω δεν πάει! Δεν υπάρχει εντολή που ταυτόχρονα να διαβάζει και να γράφει...
Κώδικας:BOOL RS485SerialBusCtrlHold() { asm ( "cli \n" "ldi r25, 0b00000100 \n" // load bit 2 "in r24, 0x03 \n" // read PORTB (1 cycle) "out 0x03, r25 \n" // set bus_ctrl high [D10 pin-16] (1 cycle) "sei \n" "andi r24, 0b00000010 \n" // check bus_state [D9 pin-15] "brne _bus_ok \n" "out 0x03, r25 \n" // set bus_ctrl low "ldi r24, 0x00 \n" // not take it the bus "ret \n" "_bus_ok: \n" "ldi r24, 0x01 \n" // take it the bus ); }