PHOENIX - For nearly 57 minutes, the Arizona Cardinals played poorly.
The offense sputtered and the injury-weakened defense committed costly penalties and failed to rattle Mike Glennon until persistence paid off against Tampa Bay's rookie quarterback.
Patrick Peterson had two interceptions in the closing minutes for the Cardinals (2-2), one setting up Carson Palmer's 13-yard touchdown pass to Larry Fitzgerald and the other sealing a 13-10 victory over the winless Buccaneers (0-4) on Sunday.
"It was a great exhibition of 60-minute football," first-year coach Bruce Arians said after the comeback from a 10-point fourth-quarter deficit ended what would have been a tough extended road trip on a positive note.
"The game is played for 60 minutes, and it doesn't matter really what goes on as long as you can maintain the chase that something good is going to happen," Arians added.
"That fourth quarter was some of the best football we've played all year. It was just a matter of doing it. It was there to be done."
The Cardinals pressured Glennon all game until the third-round draft pick out of North Carolina State made a costly mistake.
Peterson's first interception set up Arizona's first TD in six quarters. The other ended any chance of Glennon bringing the Bucs back after Jay Feely's 27-yard field goal snapped a 10-10 tie with 1:29 remaining.
Starting in place of the benched Josh Freeman, Glennon was steady -- if not spectacular -- for most of the day to give Tampa Bay the type of performance it had been wanting from a quarterback.
Freeman was declared inactive for the game and was not in uniform, instead watching the game from a suite at Raymond James Stadium.
Coach Greg Schiano said it was a "mutual" decision. Freeman declined to comment as he left Raymond James Stadium.
"With all the happenings of the week, it was the best thing for our team," Schiano said. "There's stuff that I'm not going to get into, but that was the best thing for our football team."
Glennon's day shifted suddenly when Peterson stepped in front of a pass intended for Vincent Jackson and returned the pick 11 yards to the Bucs 13.
Fitzgerald beat cornerback Darrelle Revis on the next play for his 80th career TD reception with 3:06 left.
Arians couldn't say enough about Peterson, a third-year cornerback with a knack for game-changing plays.
"I'm really surprised they threw toward him. And with a rookie quarterback, he's going to make you pay," the coach said. "I think he's the best in the league. Some will argue that Darrelle is, but it's not even close in my opinion."
The Cardinals moved 29 yards after forcing a punt to win it. Palmer threw 19 yards to Jaron Brown on the first play of the drive, and an unnecessary roughness penalty on Bucs safety Dashon Goldson moved the ball to the Tampa Bay 9.
Palmer overcame a slow start to complete 21 of 38 passes for 248 yards, one touchdown and two interceptions. Fitzgerald had six catches for 68 yards, all in the second half.
Revis and Johnthan Banks had Tampa Bay's interceptions, and Leonard Johnson set up Glennon's first career TD pass by forcing a fumble that Gerald McCoy recovered at the Cardinals 41.
"It's just an unfortunate way to end the game. The defense played great the whole game," Glennon said. "The offense looked good in the first half. At the end, I just can't make that throw. Definitely a learning experience, but also a tough one to swallow."
Arizona had trouble moving the ball until Palmer got Fitzgerald involved in the third quarter. The seven-time Pro Bowler was matched up most of the day against Revis, and Palmer didn't even attempt to throw the ball his way in the first half.
"That was bad ball in the first half all around, and our defense just kept fighting and fighting for us, kept the game manageable for us, and we're so thankful those guys played their tail off," Fitzgerald said. "We lost a lot of bodies last week, and guys continued to step up in new roles, and that's what being a team is about."
The Cardinals lost linebackers Sam Acho, Lorenzo Alexander and Alex Okafor to season-ending injuries during the previous week's lopsided loss at New Orleans, then flew straight to Florida to practice in nearby Bradenton instead of returning home to prepare for the Bucs.
Glennon was 24 of 43 for 193 yards, including an 8-yard TD pass to Mike Williams in the first quarter. He threw two interceptions and was sacked twice.