Sida 1 av 2

Varför bytte Arduino från FT232RL till ATmega16U2?

Postat: 18 oktober 2014, 15:13:15
av Al_Bundy
Nyfiken fråga!

Jag surfar runt lite i desperathet om vad jag ska använda för att få seriell kommunikation mellan uC och PC. Jag har redan testat SparkFuns FT232RL och det har visat sig sämre än just Atmels ATmega16U2 som Arduino använder som UART. Nu är det så att Arduinos ATmega328P har inte inbyggt UART och därför så är man beroende att använda en seriell till USB omvandlare.

Men tiderna har ändrats. Nu är det bara ATmega16U2 som skickas med Arduinokorten och, tja, dessa fungerar hur bra som helst. Därför undrar jag varför Arduino valde att ersätta FTDI med Atmels lilla uC och använda den som seriell till USB omvandlare? Är FTDI:n sämre?

Jag har också hört att fake FT232RL från Kina är svåra att använda då FTDIchip.com har gjort så att fake FT232RL inte går att använda med drivrutinerna.

Denna tråd handlar om FT232RL VS ATmega16U2.

Re: Varför bytte Arduino från FT232RL till ATmega16U2?

Postat: 18 oktober 2014, 15:21:56
av Icecap
Det är ganska säkert en ekonomifråga. Atmel kan använda sina egna kretsar och det är nog billigare än att köpa från FTDI. Det kan även vara leveranssäkerhet.

Dina problem härrör rimligt säkert på att du inte vet vad du håller på med och inte gör den felsökning som behövs för att fastställa den verkliga felorsak.

Re: Varför bytte Arduino från FT232RL till ATmega16U2?

Postat: 18 oktober 2014, 15:27:16
av Al_Bundy
Jag har kört min kod och med ATmega16U2 så fungerar det felfritt jämfört med FT232RL, som sagt.

Så FTDI är dyrt?
Jag har ÄKTA 20 stycken hemma, från Farnell, som bara ligger och skräpar. Dock är dessa från 2007.

Re: Varför bytte Arduino från FT232RL till ATmega16U2?

Postat: 18 oktober 2014, 15:32:28
av Icecap
OK, jag skriver detta långsamt så du hinner läsa det.

Det kan vara billigare för en tillverkare att använda sina egna produkter än att köpa in från andra. FTDI är inte dyra men för Atmel kan Atmel's produkter vara billigare.

Läs ovanstående ett par gångar och försök förstå innehållet.

Re: Varför bytte Arduino från FT232RL till ATmega16U2?

Postat: 18 oktober 2014, 15:33:47
av Al_Bundy
Jo, jag förstår detta. Men jag fick en känsla att FTDI var kostsamt när du skrev detta.
Då menar jag typ 50 kr chippet.

Re: Varför bytte Arduino från FT232RL till ATmega16U2?

Postat: 18 oktober 2014, 15:34:40
av Icecap
Om man köper 10000 st eller mer över ett år får man oftast en ganska annan pris.

Re: Varför bytte Arduino från FT232RL till ATmega16U2?

Postat: 18 oktober 2014, 15:40:44
av Al_Bundy
Angående mina FT232RL chip från 2007. Visst är det en dålig..norm..att använda gamla chip, trots att dem idag fortfarande produceras?

Att det skulle vara bättre att använda ett FT232RL chip från 2014 än som är ca 7 år gammal. Jag tänkte mest på drivrutiner och säkerhet att det blir korrekt kommunikation.

Re: Varför bytte Arduino från FT232RL till ATmega16U2?

Postat: 18 oktober 2014, 15:51:48
av Icecap
Det är bara att gå in på FTDI's sida och kolla skillnaden i revisioner för att se om det finns skillnader. Det finns datablad för detta - men du brukar ju inte läsa sådana så glöm det bara.

Ett tips är att läsa errata-data, där står det mycket matnyttigt.

Men efter vad jag vet är FTDI's grejer rimligt skottsäkra.

Re: Varför bytte Arduino från FT232RL till ATmega16U2?

Postat: 18 oktober 2014, 16:19:27
av Al_Bundy
Jo, jag läser datablad, men när det kommer, som sagt, till konstiga betecknar så blir jag frågvis. Men däremot när det handlar om hur mycket spänning den klarar så står det klart och tydligt.

:)

Re: Varför bytte Arduino från FT232RL till ATmega16U2?

Postat: 22 oktober 2014, 03:21:34
av Wedge
Al_Bundy skrev:Nu är det så att Arduinos ATmega328P har inte inbyggt UART och därför så är man beroende att använda en seriell till USB omvandlare.
Nu är det så att ATmega328P HAR en inbyggd UART, och det är den som omvandlaren är kopplad till.
Icecap skrev:Det kan vara billigare för en tillverkare att använda sina egna produkter än att köpa in från andra. FTDI är inte dyra men för Atmel kan Atmel's produkter vara billigare.
Förvisso, men det är inte Atmel som designat/tillverkar Arduinon.

Re: Varför bytte Arduino från FT232RL till ATmega16U2?

Postat: 22 oktober 2014, 09:43:27
av Mr Andersson
Al_Bundy skrev:Jag surfar runt lite i desperathet om vad jag ska använda för att få seriell kommunikation mellan uC och PC. Jag har redan testat SparkFuns FT232RL och det har visat sig sämre än just Atmels ATmega16U2 som Arduino använder som UART. Nu är det så att Arduinos ATmega328P har inte inbyggt UART och därför så är man beroende att använda en seriell till USB omvandlare.
Efter att ha läst din andra tråd om serial<->usb så har jag fått den uppfattningen (som givetvis kan vara felaktig) att när bufferten på FT232 blir full så säger den "stopp, jag kan inte skicka nå mer tills du tar emot det på pcn" medans ATmegan kastar bort det som inte rymms och lurar programmeraren att allt har skickats.
Vilket som är bättre är ju specifikt från fall till fall, men i mitt tycke bör man ju implementera någon form av verifiering att data som "skickats" verkligen kommer fram.

Ang. varför Arduino bytt chip så tror jag det är enbart en ekonomisk fråga. Om man redan köper in tonvis med mcu:er från Atmel så gissar jag att det blir billigare att köpa komm.-chippet därifrån också.

Re: Varför bytte Arduino från FT232RL till ATmega16U2?

Postat: 22 oktober 2014, 10:21:05
av netrunner
Är det inte en inställning i Windows?

Re: Varför bytte Arduino från FT232RL till ATmega16U2?

Postat: 23 oktober 2014, 18:19:44
av Al_Bundy
Jo, jag tror det är en inställning i Windows.
Däremot så blidas det kö. Om vi skickar värderna 45,56,4,6,4466,46534,6,67,5 osv så kommer det i denna ordning om vi skulle läsa av dessa.

Alltså inte var det inte min C-kod som det var fel på som Kunskapens Centrum här på EF hävdade.

The Bundys VS Kunskapens Centrum 1-0
:wink:

Re: Varför bytte Arduino från FT232RL till ATmega16U2?

Postat: 23 oktober 2014, 18:43:30
av svanted
vad nu Kunskapens Centrum har sagt?
om du nu inte tror på kunskapens centrum?
varför är du här jämt och frågar allt?

vet inte varför jag ger mig in i detta? :(
bildas kö?
var?
är inte serietrafiken dubbelriktad?
så att mottagaren skickar bekrftelse typ "ACK" till din sändare som bekräftar att data tagits emot?
och inte bara data utan ett helt protokoll med korrekt data och felkorrigering?
ett protokoll kan vara <startbyte, antal byte, data, data, data,data,kontrollbyte, cr,lf>
eller "NACK" om det är fel på protokollet...
så din burk kan skick aom samma data...
OCH INTE SKICKAR MERA DATA TILL EN BLIVANDE KÖ??

Re: Varför bytte Arduino från FT232RL till ATmega16U2?

Postat: 23 oktober 2014, 18:50:19
av Icecap
Alltså - Al skickar data som h*n lever: aldrig lyssna, bara spotta ur sig en massa. Ingen koll om det kom fram, blev förstådd eller om mottagaren är klar.

Och då är det bra klarat att vinna över "Kunskapens Centrum" som lösta sådana saker för många år sedan. Men OK, att inte ha gjort bort sig totalt kan väl för somliga vara en seger... så Bra Gjort Al! :bravo: