Se hai proprio gia' usato tutti i 19 pin di arduino uno ti conviente passare ad un arduino mega 2560 R3 che ha 16 pin analogici e 54 pin digitali per un totale di ben 70 pin configurabili.
Il codice che hai gia' scritto per arduino uno lo trasporti pari pari su arduino mega e quindi non perdi nulla di quanto hai gia' fatto. Un arduino mega costa (in italia da futurashop) 49 euro contro i 27 di un arduino uno. Con i 22 euro ti risparmi tanto tempo e pure la circuiteria necessaria a realizzare la trasformazione da pwm a 3-4 uscite binarie (per cui molto probabilmente serve un micro per non diventare matti)
Se per caso stai usando un display lcd con i suoi 6 pin di comando, puoi risparmiarne 4 usando un convertitore I2C/LCD
https://win.adrirobot.it/display_lcd/display-lcd-i2c-16x2-con-retroilumminazione-blu.htmil modulino ha la sua libreria che emula tutti i comandi del lcd classico
Per ultimo puoi cercare in rete se si trova un mux/demux comandato in I2C (pin A4 e A5) oppure SPI (pin 10,11,12,13) che possono essere condivissi con altri oggetti I2C o SPI. Se esiste una libreia gia' pronta meglio, altrimenti devi scriverti tu a amno i comandi con la libreria di base della IDE.