ATLANTA -- The Atlanta Hawks didn't talk about ending their nine-game losing streak against Miami.
The Hawks only wanted to make up for the last loss in the streak -- an overtime defeat in Miami last month.
"To us, this was a get-back game," said Atlanta's Lou Williams, who had 12 points. "We felt we should have won the last one in Miami that we lost in overtime."
James blamed poor defense for Miami's fourth loss in its past six games.
"We scored enough points to win, so obviously it was defense," James said. "Especially in the first half."
The Hawks led 71-70 at halftime.
DeMarre Carroll finished with 19 points and Pero Antic had 17 for the Hawks, who beat Miami for the first time since Jan 2, 2012. It was Atlanta's first home victory against the Heat since Nov. 18, 2009.
The Hawks have been rebuilt under second-year general manager Danny Ferry and first-year coach Mike Budenholzer. Most Atlanta players said they had no idea the Hawks had gone so long without beating the Heat.
"I never even knew that," Millsap said, adding the Hawks' were more motivated by Miami's back-to-back NBA championships.
"Anytime you play Miami or any great team, you want to step up and play your best," Millsap said. "I think that's what we did today."
The Hawks set a season high for points in a half and points allowed by a Miami opponent in a half.
The Heat trailed despite matching their season high for points in a half. It was only the second time in Miami's franchise history both teams had at least 70 points in a half.
"I can't just pinpoint what it is," James said of the defensive woes. "It's a little bit of everything. At some point we've got to figure it out. It's just not good basketball right now."
Miami coach Erik Spoelstra said the defensive problems were "all across the board, A through Z."
"There just wasn't a lot of pride on that side of the court tonight," Spoelstra said. "We tried to win it on a shootout and then when our offense came up dry on the road toward the end, a couple missed shots and turnovers, we weren't able to secure a win."
The Hawks led 57-45 late in the first half and kept a 97-92 advantage entering the final period. Even so, Miami appeared bound for its eighth comeback from double-digit deficits of the season.
With a large portion of the Atlanta crowd chanting "Let's go, Heat!" James sank a 3-pointer with 7:06 remaining for a 104-all tie. James made another jumper on Miami's next possession to give the Heat the lead.
Carroll's 3-pointer for Atlanta tied it at 107. Miami took its last lead when Mario Chalmers, who had 17 points, made one of two free throws.
The Hawks regrouped to lead 112-108 following two free throws by Millsap.
James had a turnover on a bad pass and a missed 3-pointer on Miami's next two possessions.
Wade, who missed his second straight game, said before the game there is "still a little soreness" in his knees.
Some players on each team wore purple shoes on Martin Luther King Jr. Day in King's hometown. Both teams and the officials wore "Dream Big" logos on their warm-up shirts.
King's daughter, Bernice King, delivered a brief message before the game.
Korver hit a 3-pointer to open the second period, extending to 109 his NBA record of consecutive games with a 3.
James was slow to return to his feet after he was hit in the back of his head by Korver, who was trying to block a shot with 3:18 remaining in the first half. Korver was called for a flagrant foul, but the call was overturned following a review.
The Heat and the Celtics each had 70 or more points in the second half on April 12, 1990, at Boston, the only other time Miami and its opponent each scored at least 70 points in a half. ... Spoelstra said G Toney Douglas, acquired in a three-team trade on Wednesday, was working out in Miami. ... Forward-center Chris Andersen, who missed the Heat's previous three games with a right knee contusion, returned with eight points. ... C Greg Oden did not play. ... Detroit Lions quarterback Matthew Stafford, the former University of Georgia star, attended the game.