To measure pyroelectric coefficient by varying temperature

Go To Last Post
5 posts / 0 new
Author
Message
#1
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

 

Next I need to write a code for the sinusoidal temperature modulation in which I ve to consider 3 main factors i.e mean temperature , frequency modulation and amplitude modulation

 

 

 

 

Last Edited: Fri. Nov 10, 2017 - 10:41 PM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I see huge issues with your idea of using an external SPI ADC converter:

a) your DUE has already 15 internal ADCs, and they are accurate enough -12 bits- for your application

b) external 16 bits converters are expensive, need to be soldered/plugged, adding failure risks and complexity (and you do not want to pay for extra troubles, do you).

 

c) clock for the external ADC should be 2 Mhz, not 2 mhz (else, you would sample 16 bits evevy 2 hours, which is very slow...) This circuit is obviously a great  -and expensive- source of conFuSiOn.

 

If you suppress tha 7705,  and wire directly the 8465 to a Due ADC, the only trick with respect to a classical ARduino is to specify it is 12 bits (else, it will work with 10 bits, to be avr-Arduino downward compatible). I do not remember how.

 

You should first test this idea (remove the 7705, wire directly to DUE ADC and write, check and post the code yopu wrote)

From a previous post which got locked, you seem to use semi professional equipment. Nobody can give you a finite solution (if you are a student, you can get a degree with personal work; if you are professional, and there is a me, things may become terrible for those who tried to help you), but , if you make things simple, one can help you in some blocking points.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Thank you for your opinion

 

i just need codes to move further.

 

 

Last Edited: Fri. Nov 10, 2017 - 10:41 PM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

1st task is to read voltage from ad8495 and display it on the Arduino tft display

 

Which tft?  -who built it, where was it bought? an IT link would solve this mystery?

Can you print "Hello world" on this tft?

Do you want a character output or a graphical output (time series)?

 

Edited :thanks for reminding me the name of the function, arduino Due specific, analogreadresolution, in your very first post....

analogReadResolution()

[Arduino DUE only]

Description

analogReadResolution() is an extension of the Analog API for the Arduino Due.

Sets the size (in bits) of the value returned by analogRead(). It defaults to 10 bits (returns values between 0-1023) for backward compatibility with AVR based boards.

The Due has 12-bit ADC capabilities that can be accessed by changing the resolution to 12. This will return values from analogRead() between 0 and 4095.

 

from https://www.arduino.cc/reference... (this is official arduino site: the lazy internet is not likely to bring back crap with this site).

 

analogRead only copes with Arduino ADC : there is no need for an external ADC, unless you really need 16 bits resolution instead of 12 bits Due provides (it manages to give a 16 word, if specified, but lowest 4 bits are garbage.)

If this resolution is enough, wiring a resistor between 8495 output and one of the DUE's ADC channels is straightforward, and avoids trying to bit bang the 7705 (it is left unused, if it is already wired): this is maybe 3 lines of code, instead of >20 for bitbanging.... Software is much simpler (I do not know whether you are good at writing software....).

First tests should consist :

a) try to print "hello" on your tft (maybe there are demo softwware who do it for Arduino)

b) put a potentiometer , fed with 0-3v, and middle leg of it goes to a DUE ADC channel; read the value with adcread; send it on the serail terminal; send it on the tft instead of "hello"

c) replace potentiometer with 8495....

 

 

 

Last Edited: Tue. Nov 7, 2017 - 12:44 PM