The Northern Ireland international had two years remaining on his contract, but will now stay at Turf Moor until the summer of 2013.
The 23-year-old, who joined Burnley from Scunthorpe in 2008 for £1million, agreed his extension the day after it was announced fellow forward Robbie Blake would be leaving the club.
Burnley boss Brian Laws said: "It's absolutely marvellous to see the likes of Martin signing a new, improved contract.
"We feel he is a major player and the fact he is extending his contract now shows he has ambition to help this club back into the Premier League.
"It is a reward for the season he had. Even though he was injured for a good part, Martin certainly made an impact and we want him to be here and nowhere else."