I read a couple of things online that made oblique references to inverting signals, then decided I wanted to invert a TTL signal, despite having no inverter chips lying around, so... this code allows an Arduino to emulate an inverter that could be made from a couple of resistors and a transistor:
if(digitalRead(7) == HIGH) digitalWrite(8, LOW);
which in turn allowed me to successfully read the NMEA data from my antique Standard Horizon CP150C chart plotter. The plotter provides 2 wire connection for the serial NMEA sentences it shares with the world, but for some unknown reason related to RS232 and RS 422 and NMEA, the data is inverted, 5 volts when the listener expects 0 and 0 when the listener expects 5. Suddenly, by magic, I get
and that GLL sentence would have a whole lot more position data between those commas if the antenna could just see a few satellites from here in the workshop.
I hope the next person who googles for
CP150C NMEA to RS232 serial
finds this page to answer their question quickly.