Im Forum und im Wiki
-
Thread
SPI für ADC MCP3204 auf ATXMega256A3 initialisieren
Guten Tag, ich möchte den 12Bit 4-Kanal ADC MCP3204 (siehe Reichelt) über SPI mit Hilfe eines ATXMegas256A3 an Port C auslesen. Prinzipiell möchte ich den unten umgesetzten/gefundenen Code auf dem ATX umsetzen. Hierfür bietet mir die Bibilothek von
Die Kommunikation mit dem MCP3204 funkioniert soweit. Ich kann eine analoge Spannung auf Kanal 0 geben und der Wert in der Testvariable gintI variiert zwischen 0 und 4095, 12Bit halt. Das Auslesen des ADCs läuft mit ca. 2,7kHz, das
-
Thread
MI0283QT-2 Touchscreen Probleme
100K Pulldown auf GND gezogen // ADC 3x einlesen und mittelwertbildung delay_us(50); v0 := MCP3204_Read(2); delay_us(10); v1 := MCP3204_Read(2); delay_us(10); v2 := MCP3204_Read(2); result := (v0+v1+v2) div 3; // Alle Touchscreenports auf eingang TOUCH_XPos_Direction := 0;
100K Pulldown auf GND gezogen // ADC 3x einlesen und mittelwertbildung delay_us(50); v0 := MCP3204_Read(3); delay_us(10); v1 := MCP3204_Read(3); delay_us(10); v2 := MCP3204_Read(3); result := (v0+v1+v2) div 3; // Alle Touchscreenports auf eingang TOUCH_XPos_Direction :=
-
Thread
Tipps zum Routen
Auf meiner Platine ist ein ATMEGA16,FTDI232RL , MCP4921 ( 12 Bit DAC,SPI ), MCP3204 ( 12 Bit ADC,4CH,SPI ) 2 Operationsverstärker ( OPA2340 ) einen TL431 und noch einen 74HCT4052. Die Versorgungspannung kommt von einen 78L05 und die Versorgungsspannung für die Analog IC's wird
Vergessen: In der Appnote vom MCP3204 wird im Text weiter erwähnt das ein Wert von 1µF Empfohlen ist. ( Ok Sind keine 10µF aber auch keine 100nF mehr )
-
Thread
Was bedeutet dieser Code in C?
MCP3204 (ADC) return result; } [/C] Meine Frage ist nun, was dieser Code in den einzelnen Zeilen genau macht!? aufgerufen wird diese Methode mit getADC(Kanalnummer), wobei die Kanalnummer 0 bis 3 sein
>result |= SPI_Read(0); Jetzt kommt noch das low-byte dazu. > ADC_CS = 1; // deselect MCP3204 (ADC) Chip select des ADC wird deaktiviert. Oliver
-
Thread
Vergleich 12 Bit-AD-Wandler mit 8-Bit
Ich bekomme Ergebnisse von MCP3204, der mit einer Referenzspannung von 5.05 V. Ein 8-Bit und 10 Bit-Wandler habe ich nicht, werden per Software durch löschen 2 bzw. 4 LSB-Bits berechnet.
Ich wollte vergleichen, wie genau ein 12-Bit AD-Wandler ist. Die > Umwandlungen des AD-Wandlers (MCP3204) sind wie folgt Nur mal aus Interesse: dieser MCP3204 kostet 3 EUR und kann bei 12-bit 100 ksps. Dazu noch die Kosten für den uC z.B. AVR Ein 8051 uC EFM8BB mit integriertem 12-bit 100 ksps
-
Thread
Finde Baustein nicht: "MCP3008"
(und du hast ja schon eine Quelle die dich glücklich macht), aber eine Alternative wäre zb. der MCP3204 der bei Reichelt zu bekommen ist und auch eine SPI Schnittstelle hat: http://www.reichelt.de/ICs-MCP-3-5-/MCP-3204-CI-P/3/index.html?;ACTION=3;LA=446;ARTICLE=90076;GROUPID=5472;artnr=MCP+3204-CI
-
Thread
SPI Master Dataübertragung über MISO avr-mc(Atmega2560-Atega328u)
<< SPR1) | (1 << CPOL) | (1 << CPHA)); SPSR = 1 << SPI2X; PORTB |= (1 << PORTB0); // SS (MCP3204) HIGH setzen PORTL|=(1<<PORTL3); //SS (NANO) High setzen } void READ_Data_NANO(uint8_t DW) { PORTL&=~(1<<PORTL3); //SS (NANO) lows etzen SPDR = DW; while (!(SPSR & (1 <<
------- void KONF_SPI_MASTER() { DDRB |= (1 << DDB0) | (1 << DDB1) | (1 << DDB2);//MISO,SS(MCP3204) und SCK als Ausgang DDRL |= (1 << DDL3); // SS(NANO) als Ausgang SPCR |= (1 << SPE) | (1 << MSTR) | (1 << SPR0) | (1 << SPR1); SPCR &= ~((1 << CPOL) | (1 << CPHA)); SPSR &= ~(1 <<