Problem med MAX203

Övriga diskussioner relaterade till komponenter. Exempelvis radiorör, A/D, kontaktdon eller sensorer.
Chrille
Inlägg: 523
Blev medlem: 24 september 2003, 23:54:12
Ort: Torekov
Kontakt:

Problem med MAX203

Inlägg av Chrille »

Gjorde ett kretskort där jag ska använda mig av seriell kommunikation och så tänkte jag att det skulle bli ordentligt gjort därför använde jag mig av en MAX203 för att få rätt nivåer på spänningar och så. Alltid annars har jag bara kört med SerIn och SerOut kommandona i PicBasic och då bara haft ett motstånd i serie med pinnen på kontakten och då har det alltid fungerat.
Så nu undrar jag om jag kanske har tänkt fel när jag ritade kopplingsschemat? Har nämligen aldrig kört med dom här MAX-kretsarna innan. Har kopplat det så här:

Bild
Användarvisningsbild
Schnegelwerfer
Inlägg: 1863
Blev medlem: 8 november 2004, 13:46:56

Inlägg av Schnegelwerfer »

Det där ser väldigt fel ut måste jag säga!

Kräver inte MAX203 externa kondensatorer för att pumpa upp spänningen?
Det verkar så på symbolen i alla fall.

EDIT: Det ser väldigt rätt ut efter en snabb koll i databladet! :oops:

MAX203 har ju inbyggda kondingar, jag reagerade bara på att det fanns anslutningar för externa kondensatorer. Det är kanske iofs bara för att den ska bli pin-kompatibel med MAX202.
Användarvisningsbild
cykze
EF Sponsor
Inlägg: 1539
Blev medlem: 8 april 2004, 10:40:28
Ort: Uppsala

Inlägg av cykze »

Har du bara kört med motstånd förut så var du väl tvungen att invertera något också för att det skulle fungera? Så, invertera tillbaka det så borde det fungera. :)

edit: åäö
Senast redigerad av cykze 12 maj 2005, 14:18:18, redigerad totalt 1 gång.
Chrille
Inlägg: 523
Blev medlem: 24 september 2003, 23:54:12
Ort: Torekov
Kontakt:

Inlägg av Chrille »

Nja jag vet inte att jag brukar invertera något. Innan skrev jag t.ex. så här för att skicka lite text ifrån PIC:en till datorn: SerOut PORTC.6,N9600,["test"] och då hade jag bara ett 1k ohm motstånd i serie med stift två på comporten. Jag provade att pilla bort MAX kretsen ifrån sockeln och satte ett 1k motstånd mellan ben 1 och 18 och då fungerar allt perfekt så något lurt med MAX kretsen är det, har provat två olika också.
cyr
Inlägg: 2712
Blev medlem: 27 maj 2003, 16:02:39
Ort: linköping
Kontakt:

Inlägg av cyr »

Då är det "serout" funktionen som inverterar det den skickar ut...

Finns det ingen funktion som använder USARTen istället? Eller åtminstone någon variant av serout som är till för att användas ihop med en riktig RS232-krets och därmed inte skickar inverterat?
Chrille
Inlägg: 523
Blev medlem: 24 september 2003, 23:54:12
Ort: Torekov
Kontakt:

Inlägg av Chrille »

Jo kommandot som heter HSerOut borde kanske fungera då, står om det här.
cyr
Inlägg: 2712
Blev medlem: 27 maj 2003, 16:02:39
Ort: linköping
Kontakt:

Inlägg av cyr »

Låter som det skulle funka ja, har du testat?
Chrille
Inlägg: 523
Blev medlem: 24 september 2003, 23:54:12
Ort: Torekov
Kontakt:

Inlägg av Chrille »

Jag provade lite men fick det inte att fungera. Tror det är register som inte är rätt satta för just 16F877A.
Jag provade så här:

DEFINE HSER_RCSTA 90h
DEFINE HSER_TXSTA 20h
DEFINE HSER_BAUD 2400
DEFINE HSER_SPBRG 25

HSEROUT ["test"]

Borde väl räcka med det men är kanske dom fyra första raderna som är fel värden på, ska det stå några andra värden där?
Ska kolla mer på det imorgon och se om det går bättre.
Chrille
Inlägg: 523
Blev medlem: 24 september 2003, 23:54:12
Ort: Torekov
Kontakt:

Inlägg av Chrille »

Fick det att fungera idag. Skrev så här:

TRISC = %10111111
SPBRG = 25
RCSTA = %10010000
TXSTA = %00100000

HSerout ["test"]
Skriv svar