The Conservative leader said yesterday he would only take part in one live broadcast contest involving at least seven party leaders, rejecting a head-to-head debate with opposition Labour leader Ed Miliband.
His office said this was a "final offer" after months of discussions with the four main broadcasters over the format, and was intended to "cut through this chaotic situation".
But Labour and the Scottish National Party accused him of "running scared", while the UK Independence Party said Cameron was "acting chicken".
He will take part in "one 90-minute debate" during the week beginning March 23 involving Labour, the Liberal Democrat junior coalition partners, the SNP, UKIP, the Welsh nationalists Plaid Cymru and the Green party.
More From This Section
The broadcasters had proposed two seven-way debates followed by one head-to-head with Labour leader Ed Miliband on April 30, just days before the May 7 poll.
"This is our final offer, and to be clear, given the fact this has been a deeply unsatisfactory process and we are within a month of the short campaign, the prime minister will not be participating in more than one debate," Oliver said.
"What on earth is he frightened of?" Cameron had asked Labour prime minister Gordon Brown before the 2010 election.
Former Labour communications chief Alistair Campbell told the BBC that it was "pathetic... To watch his wriggling and weaselling".
"A seven-way debate is going to be absurd, it's going to be like a Family Fortunes for politicians. It's got to be Ed (Miliband) against David Cameron, and David Cameron is running scared of it," he said.