MCP2221 Baustein ansprechen

Für allgemeine Fragen zur Programmierung, welche nicht! direkt mit Lazarus zu tun haben.

Re: MCP2221 Baustein ansprechen

Beitragvon mschnell » 24. Nov 2016, 13:18 Re: MCP2221 Baustein ansprechen

pluto hat geschrieben:Beim Speicher stecht nur 16 welcher Speicher ist damit gemeint? RAM? FlASH? welche Einheit? KB?
16 K RAM, 64 K Flash. Und USB OTG on Chip !
-Michael
mschnell
 
Beiträge: 3159
Registriert: 11. Sep 2006, 09:24
Wohnort: Krefeld
OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ) | 
CPU-Target: X32 / X64 / ARMv5
Nach oben

Beitragvon marcov » 24. Nov 2016, 14:52 Re: MCP2221 Baustein ansprechen

Wenn Mega nicht genug ist, dann gibst es noch Arduino DUE ?
marcov
 
Beiträge: 999
Registriert: 5. Aug 2008, 08:37
Wohnort: Eindhoven (Niederlande)
OS, Lazarus, FPC: Windows ,Linux,FreeBSD,Dos (L trunk FPC trunk) | 
CPU-Target: 32/64,PPC(+64), ARM
Nach oben

Beitragvon Mathias » 24. Nov 2016, 17:30 Re: MCP2221 Baustein ansprechen

Wenn Mega nicht genug ist, dann gibst es noch Arduino DUE ?

Ich brauche kein riessen Print mit zig Ein und Ausgängen.

Ich denke der 32MX130F064B-ISP ist dem atMega328 weit überlegen. der atMega328 kostet ja noch mehr und kann noch weniger....

Ich habe gerade gesehen, das dieser PIC gar keine direkte USB-Anbindung hat. Und arbeiten tut er mit 3,3V.
Aber der 32MX220F032B hätte USB. Der 32MX210F016B-ISP hat auch USB und kostet nur €2.88, etwa gleich viel wie der Atmega328.
Noch besser, der Atmega328 ist bei Reichelt ausverkauft.

Unter dem Strich, ich muss mir die PICs mal genauer angucken. Nur die Frage, sind die gleich einfach zu programmieren und flashen wie Atmegas ?
Mit Lazarus sehe ich gün
Mit Java und C/C++ sehe ich rot
Mathias
 
Beiträge: 3255
Registriert: 2. Jan 2014, 17:21
Wohnort: Schweiz
OS, Lazarus, FPC: Linux (die neusten Trunc) | 
CPU-Target: 64Bit
Nach oben

Beitragvon Mathias » 9. Dez 2016, 17:54 Re: MCP2221 Baustein ansprechen

Ich habe mit einen Arduino Leonardo gekauft, da kommt richtig Dampf aus dem COM-Port.
Jetzt ist die Verbindung sogar etwas höher als beim Nano mit 1'000'000 Baud.

Jetzt ist das Ziel momentan erreicht, da ich jetzt schneller auslesen kann, als die ADS1115 Messwerte liefern können.
Demnächst werde ich den Alert/Rdy-Pin des Wandler mit dem Leonardo verbinden, diese Pin schaltet auf HIGH, sobald die Daten im Wandler parat sind.

So wie es scheint, hat der ein ähnliches Verhalten, wie der PIC der oben beschrieben ist. Egal wie man die Baudrate einstelle, der Speed ist immer gleich hoch.
Gemäss Beschreiben, ist der USB-Anschluss direkt im Atmega verbaut, es gibt keinen Umweg über einen UART.
Mit Lazarus sehe ich gün
Mit Java und C/C++ sehe ich rot
Mathias
 
Beiträge: 3255
Registriert: 2. Jan 2014, 17:21
Wohnort: Schweiz
OS, Lazarus, FPC: Linux (die neusten Trunc) | 
CPU-Target: 64Bit
Nach oben

Beitragvon Mathias » 13. Dez 2016, 21:30 Re: MCP2221 Baustein ansprechen

Ich habe es nun endlich mal geschaft, die GPIO vom MCP2221 anzusprechnen, aber ich denke, das ist noch nicht der richtige Weg.
Irgendwie mache ich da einen Umweg übers SRAM.
http://ww1.microchip.com/downloads/en/D ... 05292B.pdf Seite 49.

Code: Alles auswählen
const
  USB_CMD_SETGPIO = $50;
  USB_CMD_GETGPIO = $51;
  report_size = 64;     // 64
 
var
  fd: cint;
  report: array [0..report_size - 1] of byte;
 
begin
  fd := FpOpen('/dev/hidraw3', O_RDWR or O_NONBLOCK);       // Device-Name
  if fd < 0 then begin
    Memo1.Lines.Add('Unable to open device');
  end;
 
  FillChar(report, report_size, $00);
 
  report[0] := $60;
  //    report[0] := USB_CMD_SETGPIO;
 
  report[7] := %11000000;
  if ToggleBox1.Checked then begin
    report[8] := %00010000;
  end;
  if ToggleBox2.Checked then begin
    report[9] := %00010000;
  end;
  if ToggleBox3.Checked then begin
    report[10] := %00010000;
  end;
  if ToggleBox4.Checked then begin
    report[11] := %00010000;
  end;
 
  FpWrite(fd, report, report_size);
 
  FpClose(fd);
end;


Aber immerhin ist dies mal ein Anfang. :idea:
Mit Lazarus sehe ich gün
Mit Java und C/C++ sehe ich rot
Mathias
 
Beiträge: 3255
Registriert: 2. Jan 2014, 17:21
Wohnort: Schweiz
OS, Lazarus, FPC: Linux (die neusten Trunc) | 
CPU-Target: 64Bit
Nach oben

Beitragvon Mathias » 29. Jan 2017, 20:43 Re: MCP2221 Baustein ansprechen

marcov hat geschrieben:Wenn Mega nicht genug ist, dann gibst es noch Arduino DUE ?

Ich habe jetzt eine due angeschlossen, dieser macht richtig Dampf in I²C.
Den Raspi 2 habe ich auch probiert, bei dem habe ich I²C direkt verwendet. Dieser arbeitet aber sehr gemütlich an I²C, das ist ein normaler Arduino sogar um einiges schneller.

Jetzt ist das Ziel momentan erreicht, da ich jetzt schneller auslesen kann, als die ADS1115 Messwerte liefern können.

Dies wurde mit dem due noch einiges überboten, :shock:
Mit Lazarus sehe ich gün
Mit Java und C/C++ sehe ich rot
Mathias
 
Beiträge: 3255
Registriert: 2. Jan 2014, 17:21
Wohnort: Schweiz
OS, Lazarus, FPC: Linux (die neusten Trunc) | 
CPU-Target: 64Bit
Nach oben

• Themenende •
Vorherige

Zurück zu Programmierung



Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 2 Gäste

porpoises-institution
accuracy-worried