• Welcome to LusoRobótica - Robótica em Português.
 

ADC interno do 8051 f330

Started by Tiago Silva, 22 de May de 2012, 12:21

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Tiago Silva

Boas Tardes,
Eu tenho um LM35 e queria usar o ADC interno do 8051 f330 mas não consigo entender os procedimentos que vem no datasheet.
Alguem me pode ajudar pf. :)
Cumprimentos,
Tiago Silva

senso

Não parece ser muito complicado, a datasheet até é bastante boa comparada com algumas que já li.
Tens duvidas em que parte?
Avr fanboy

Tiago Silva

Na parte de ler o valor e manda-lo para o registo
Cumprimentos,
Tiago Silva

tr3s

No ponto 5.3.1 acho que explica bastante bem o que é preciso.

Creio que o que vais querer será:


  • No registo ADC0CN, fazer set a 1 do bit AD0BUSY. (Pag 45, fig 5.10. Bit nr 4)
  • Enquanto o bit estiver a 1 a leitura ainda nao terminou. Ele passa a zero quando a leitura terminar. Se quiseres podes associar esta mudança a uma interrupçao, mas isto é mais complicado para agora. O mais simples será num while ires ler o registo ADC0CN e ver se o bit 5 (AD0INT) está a 1 (quando fica a 1 a conversao terminou e os dados estao prontos).
  • No fim vais ler os registos ADC0H e ADC0L para buscar o valor.
  • Meter o bit AD0INT a 0.

Assim em 5 min de ler o datasheet. Força nisso.
Tr3s
Daniel Gonçalves