Newhaven NHD-C0220AZ-FSW-FTW

there is 3.3V

Most of those devices require around 4v on the contrast pin vs. the positive rail - thus they are rated for 5v applications.

In a 3.3v environment, you will need to create a negative voltage (-1v or more) and apply it to the contrast pin (Vdd in your case).

There are many ways to create that. A simple one would be to send a pulse train to a charge pump (two diodes + two caps). For example, you can use the analog write function to do that.

The display looks to be hd44780 compliant so the regular code should work.