Jon Jay's two-run single highlighted a four-run first inning when the Cardinals batted around against rookie Odrisamer Despaigne (3-4). Peter Bourjos and Tony Cruz each had an RBI single for St. Louis, which took three of four in the series.
Carpenter's two-run double off Tim Stauffer in the sixth made it a three-run cushion for Wainwright (15-7), who joined the Reds' Johnny Cueto at 15 wins. Milwaukee's Wily Peralta was seeking his 15th later Sunday.
Wainwright allowed three earned runs in seven innings with five strikeouts and one walk. He's 5-0 at home with a 1.55 ERA against the Padres.
Seth Maness got two outs for his second save.
Alexi Amarista and Yangvertis Solarte had an RBI apiece in the San Diego fifth. Jake Goebbert had an RBI triple and scored on second baseman Kolten Wong's wild relay as the Padres pulled within 5-4 in the sixth.
Abraham Almonte hit a two-run single on the first pitch from Manees after Trevor Rosenthal walked the bases full in the ninth. First baseman Matt Adams made a nice defensive stop to rob Seth Smith of a game-tying hit for the second out.
Padres: 3B Yangervis Solarte has started the last two games after missing a pair with a mild left oblique strain.
Cardinals: OF Matt Holliday got a day off with a minor knee problem, plus has been scuffling at the plate, going 0 for 18 the previous five games.
Cardinals: Justin Masterson (6-7, 5.58) faces the Reds and Mike Leake (9-11, 3.59) on Monday. Masterson is coming off seven scoreless innings against the Marlins, the best of three starts since arriving at the trade deadline.
Link to box score: St. Louis (66-57) 7, San Diego (58-65) 6
Join the pre-game, in-game and post-game discussion about each contest at The Cardinal Nation message board.