A Charlotte-Mecklenburg police officer has been charged with driving while impaired after a Union County traffic stop on New Year’s Eve. State troopers said 44-year-old Matthew Thompson was driving his Ford Explorer at around 6 p.m. Monday when he was stopped for swerving.