A fórmula parece ser volt * 5.9-6.6 = mhz (válida entre 1.8v e 4.5v), então em 3.3v, isso daria 12.8mhz. Esteja ciente de que, se você estiver rodando a 12,8 mhz, QUALQUER queda abaixo de 3,3 v PODE causar problemas (e muito difícil de diagnosticar também!) Ou PODE se safar.
No entanto, os chips Arduino Atmega328p têm uma detecção de "escurecimento" definida em 4,3v - qualquer queda abaixo disso, o chip é desligado. Você pode solicitar a um provedor de serviços de Internet (AKA ICSP) que troque os fusíveis - vá para http://www.engbedded.com/fusecalc/ para descobrir como definir os fusíveis. Você também pode usar o ISP para ler os fusíveis atuais ou reprogramar o chip sem uma placa Arduino - todos os meus projetos têm um cabeçalho de 6 pinos. Se você fizer isso, antes de reprogramar usando a placa Arduino, precisará "Burn Bootloader" (no menu Ferramentas). Observe que a programação ainda pode ser feita via IDE do Arduino.
Como alternativa, se você quiser ficar "leve" (e possuir um ISP), poderá mudar os fusíveis para usar o relógio interno de 8 mhz - isso libera 2 pinos extras também! Lembre-se, no entanto, de que o relógio interno pode variar 1,2 horas por dia (= 5%), comparado a 1,7 segundos por dia (= 20 partes por milhão) em um cristal de quartzo típico. Se você não usá-lo para cronometragem, isso provavelmente não importa.
Você precisará fazer alterações no tempo, para o seu código - você precisa adicionar um boards.txt com as configurações corretas para o seu chip / velocidade do relógio, etc. - você pode copiar as configurações da entrada do quadro, alterar o nome e alterar a configuração "build.f_cpu"; reinicie (ou inicie) o seu Arduino IDE, vá em "Ferramentas-> Placa" e selecione a placa que você adicionou.
Você pode ativar / desativar o chip na placa e reprogramar a mesma (observe que a placa selecionada em Ferramentas-> Placa é a placa FINAL, não a placa de programação). Cuidado ao conectar / desconectar - eventualmente, você VAI dobrar os pinos! Como alternativa, você pode usar o ISP (ICSP), como mencionado acima - muito recomendado. A programação do provedor também funcionará se o chip for o padrão de fábrica, desde que tenha um relógio funcionando.
A quantidade de energia usada pelo chip depende muito do que você faz com ele - não apenas a velocidade do relógio, a fonte do relógio, etc., mas também os modos de suspensão. Se você estiver dormindo muito, pode demorar menos quando estiver mais rápido do que em um ritmo mais lento - se quase todo o seu tempo estiver adormecido, o consumo de energia deverá ser contado por ciclo de relógio, não por segundo - se seu relógio estiver com metade da velocidade e meia corrente, você desenha a mesma corrente por instrução. Como o resto do seu tempo é gasto no sono, você não recebe nenhum benefício. Consulte http://www.gammon.com.au/power para obter uma análise muito boa do uso de energia, dicas sobre como economizar energia, etc.
Se você desacelerar demais o relógio, o serial e o i2c podem se tornar não confiáveis (a menos que você diminua a velocidade), mas eu esperaria poder diminuir para 1mhz antes que isso seja um problema - um chip de 1mhz tentando fazer 9600bps possui 104 instruções por bit de dados transferidos. O i2c roda a 100khz, portanto, você recebe 10 instruções por bit (a 1mhz) - possivelmente pressionando-o. 8mhz deve estar bem. Teste, teste, teste.
ATUALIZAÇÃO: Existem 3 configurações possíveis para a detecção de escurecimento - existem 3 valores possíveis para o AtMega328p: desativado, 1,8v, 2,7v e 4,3v. Fiquei com a impressão (acima) de que os Arduinos eram normalmente configurados em 4,3v; aparentemente esse não é o caso (veja o comentário abaixo). Lembro-me de ter visto em algum lugar que havia detecção de queda de energia. Isso é algo a ter em mente, se o seu arduino for redefinido, especialmente ao colocar cargas maiores na bateria (motores em funcionamento, leds múltiplos, etc.).