Ja geht auch, wenn Du genug Ports frei hast, warum nicht.

Das Segmentdecoden ist auch kein akt, aber wenn das ganze in einer Schaltung mit mehreren Funktionen ist, dann muss man um jeden Pin Kämpfen.

EDIT:
Kommastellen : NEIN, das wäre ja dann das 8. Segment und das wird nicht als Zahl decodiert. Den muss man dann wieder zusätzlich ansteuern oder wie Du vor hattest mit einem kompletten Port (vom AVR) realisieren.

Also ein Port für die Decaden und ein zusätzlicher Port für die Segmente nebst dezimalpunkt.


Bild hier  
Segmente a-g = 7 PLUS dezimapunkt = 8

Also ohne zusätzliche Harware maximal 8 Decaden (Anzeige) mit mind. 2 Ports realisierbar.