Sarjaliikenne vika.

Anonyymi

Koeajan sarjaliikennettä RS232 tietokoneen ja ohjattavan laitteen välillä.
Ne tietokoneet, joiden käyttöjärjestelmä ei ole NT tekniikkaa, toimivat
oikein. Tietoa voi ajaa niin nopeasti, kuin väylä pystyy välittämään, 2400baudia.

Uudemmat NT-sarjan koneet, win2000 ja winXP, tiedon siirto tökkii.
Tiedon lähetysnopeutta pitää hidastaa noin 1 lähetys sekunnissa.
Testiohjelma (Basic) on sellainen, että se lähettää viestin ja ottaa vastaan laitteen
toistaman sanoman ja vertaa niitä. NT-sarjan koneilla virheitä tulee jo hyvin hitaalla
nopeudella.
Kuitenkin, jos tietoa ajetaan vain yhteen suuntaan, tieto tulee nopeasti ja oikein.
Virhe tulee jotenkin tuossa Basic ohjelmassa NT-koneilla.
Samat ohjelmat toimivat oikein vanhemmissa koneissa, esim Win98.

13

148

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Anonyymi

      NT-koneissa on keskeytykset perseestä.
      Tai niitä ei ole oikeastaan ollenkaan.

    • Anonyymi

      Siis 2400 baud on suurin käyttämäsi nopeus ja uudemmissa wintoosisssa joudut käyttämään vielä alempaa?

      Itse käytän C:tä ja 9200 - 115200 baud nopeuksia. Nykyisessä koneessani ei sarjaporttia enää ole eli käytän USB ja Ethernet virtuaaliportteja. Mutta toimi tuo edellisen W7-koneen oikeallakin sarjaportilla.

      Basiciä en ole käyttänyt 80-luvun jälkeen, joten siinä en osaa auttaa. Joku virhe lienee ohjelmassasi. Yritätkö päästä jotenkin suoraan rautatasolla porttia ohjaamaan. Se voi mennä vaikeaksi "uudemmissa" wintoosissa, jotka eivät enää ole DOS-pohjaisia. W98 taisi vielä olla DOS-pohjainen kyhäelmä.

      Koneetkin ovat muuttuneet niin, että monet DOS-ohjelmat eivät enää toimi, vaikka buuttaisi koneen vanhalla DOS 6.22:lla. Yritin tuota yhdelle 90-luvun ohjelmalle 2007. Ei sitä saanut millään toimimaan enää uudemmissa koneissa, vaikka DOS 6.22 sinänsä toimi OK USB-tikulta bootattuna.

      • Anonyymi

        usb-sarjaportti ei ole enää yhteensopiva vanhan ajan sarjaportin kanssa.. kyllä sen saa toimimaan, mutta dos:iin joutuu porttaamaan usb-stack:in mukaan ja se ei ole kivaa - jos emolta sattuu löytymään usb-emulaatio tuki, niin voi olla mahdollista vähemmällä vaivalla. Yleensä tosin vain floppy-emulaatio muistitikulle oli tuettuna. Joissakin läppäreissa oli usb-sarjaportit kuitenkin tuon emulaation kautta ja ne saattas jopa toimia!


      • Anonyymi
        Anonyymi kirjoitti:

        usb-sarjaportti ei ole enää yhteensopiva vanhan ajan sarjaportin kanssa.. kyllä sen saa toimimaan, mutta dos:iin joutuu porttaamaan usb-stack:in mukaan ja se ei ole kivaa - jos emolta sattuu löytymään usb-emulaatio tuki, niin voi olla mahdollista vähemmällä vaivalla. Yleensä tosin vain floppy-emulaatio muistitikulle oli tuettuna. Joissakin läppäreissa oli usb-sarjaportit kuitenkin tuon emulaation kautta ja ne saattas jopa toimia!

        En tiedä mihin oikein vastasit minun viestiini liittyen.

        Miksi joku haluaisi käyttää USB-sarjaporttia kuten vanhan ajan sarjaporttia? En ole sitä yrittänyt enkä näe siihen syytä. Sarjadataa saa siirrettyä virtuaaliportin kautta tai myös FTDI:n työkauluilla muutenkin. DOSissa nuo eivät tietysti toimi.

        Minulle oli siis yllätys 2007, että edes boottaus DOSiin ei saanut vanhaa DOS-ohjelmaa toimimaan uudemmissa koneissa. Ei siinä ollut kyse USB-sarjaporteista. Ko. koneessa oli ihan perinteinen sarjaportti ja rinnakkaisportti. Ei vaan käynnistynyt koko ohjelma. Joku BIOS-tason epäyhteensopivuus tuossa pitää olla. Toimi kaikissa vanhemmissa koneissa.

        Tein silloin 2007 uuden ohjelman, joka toimii edelleen.


      • Anonyymi
        Anonyymi kirjoitti:

        En tiedä mihin oikein vastasit minun viestiini liittyen.

        Miksi joku haluaisi käyttää USB-sarjaporttia kuten vanhan ajan sarjaporttia? En ole sitä yrittänyt enkä näe siihen syytä. Sarjadataa saa siirrettyä virtuaaliportin kautta tai myös FTDI:n työkauluilla muutenkin. DOSissa nuo eivät tietysti toimi.

        Minulle oli siis yllätys 2007, että edes boottaus DOSiin ei saanut vanhaa DOS-ohjelmaa toimimaan uudemmissa koneissa. Ei siinä ollut kyse USB-sarjaporteista. Ko. koneessa oli ihan perinteinen sarjaportti ja rinnakkaisportti. Ei vaan käynnistynyt koko ohjelma. Joku BIOS-tason epäyhteensopivuus tuossa pitää olla. Toimi kaikissa vanhemmissa koneissa.

        Tein silloin 2007 uuden ohjelman, joka toimii edelleen.

        En tiedä, liittyykö mitenkään asiaan, mutta aikanaan ISA-väylässä DOS-aikaan käytetyt portti-osoitteet ei ole välttämättä käytössä enää uudemmissa emoissa vaan osoitteet arvotaan PCI:n menetelmillä. Minulla on erittäin ärsyttävä kirjoitin-portti PCI-väylässä, joka antaa portille osoitteeksi jotain tyyliin 0x4000000 - aika usein. Toisinaan osoite on jotain muuta. Ongelmahan ei vaikuta tulostamiseen millään lailla, mutta vaatii hiukan lisäkoodia, jos haluaa jotain omia laitteita portissa ohjata.
        PCIe-väylään tulee puolestaan mm. usb-signaalit, jolloin se on suoraan käytettävissä tökätylle kortille - ei ole suoralta kädeltä helppo siis tietää, kumpaa väylää on käytetty: Pitää katsoa piirilevyllä johdotusta, koska ajurilla pystytään piilottamaan lähes kaikki. Sitäkään ei tiedä, mihin väylään emolla olevat laitteet on tökätty välttämättä, kun bios voi piilottaa ne.


    • Anonyymi

      Aloittajan viestistä ei selviä mikä on ongelma.

      Kun puhutaan 2400 baudin siirtonopeudesta niiin tässä voisi mainita että IBM PC/AT eli se alkuperäinen 640 kilotavun muistilla varustettu laite toimi minulla aikanaan ongelmitta MSDOS 3.2 käyttöjärjestelmän kanssa 9600 baudin nopeudella oheislaitteita ohjaavana isäntänä.

      Kun noihin vanhoihin koneisiin ei kuitenkaan löydy osaamista, ohjelmistoa eikä juuri kiinnostustakaan ratkoa ongelmia niin kannattaisi varmaan vaihtaa koneeksi ja käyttikseksi sellainen, jossa sarjaliikenne toimii. Yksi asia joka kannattaa huomata on sitten se, että osa sarjaportilla varustetuista huokeista laitteista käyttää väärennettyjä eli piraattivalmisteisia sarja/usb - muuntimia, joiden windows-ajurit on komponenttien oikea valmistaja FTDI tarkoituksella myöhemmin päivittänyt piraattien kanssa yhteensopimattomiksi.

      Ei siis oteta tavoitteeksi saada vanhaa romua väkisin toimimaan vaan yritetään löytää ratkaisu siihen varsinaiseen ongelmaan jonka vuoksi sarjaliikennettä ylipäätään tarvitaan.

      • Anonyymi

        Jäikö tuo FTDIn temppu lopulliseksi? Tuostahan taitaa olla jo kymmenisen vuotta, kun asiasta nousi iso haloo. FTDI sai paljon lokaa, vaikka kyse olikin vain sen valmistamiksi luulluista mikropiireistä.


      • Anonyymi
        Anonyymi kirjoitti:

        Jäikö tuo FTDIn temppu lopulliseksi? Tuostahan taitaa olla jo kymmenisen vuotta, kun asiasta nousi iso haloo. FTDI sai paljon lokaa, vaikka kyse olikin vain sen valmistamiksi luulluista mikropiireistä.

        Vuonna 2016 oli tilanne tämä eli eivät enää aktiivisesti yrittäneet tuhota piraattipiirejä:

        https://hackaday.com/2016/02/01/ftdi-drivers-break-fake-chips-again/

        Sarja/usb muuntimen piraattiversioita käytettäessä ftdi:n windows - driverit lähettävät oikean datan sekaan roskaa. Ongelmana tietenkin se, että kuluttajalla ei ole mitään keinoa etukäteen tietää onko jonkun laitteen FTDI - muunninpiiri piraatti vai ei. Ja kun noita piirejä päätyi alihankkijoiden kautta muuten ihan viralliseen elektroniikkaankin niin hankaluuksia siitä aiheutui. Itse tapauksen jälkeen olen vältellyt FTDI:n piirejä ja moduuleja mahdollisuuksien mukaan.


      • Anonyymi
        Anonyymi kirjoitti:

        Vuonna 2016 oli tilanne tämä eli eivät enää aktiivisesti yrittäneet tuhota piraattipiirejä:

        https://hackaday.com/2016/02/01/ftdi-drivers-break-fake-chips-again/

        Sarja/usb muuntimen piraattiversioita käytettäessä ftdi:n windows - driverit lähettävät oikean datan sekaan roskaa. Ongelmana tietenkin se, että kuluttajalla ei ole mitään keinoa etukäteen tietää onko jonkun laitteen FTDI - muunninpiiri piraatti vai ei. Ja kun noita piirejä päätyi alihankkijoiden kautta muuten ihan viralliseen elektroniikkaankin niin hankaluuksia siitä aiheutui. Itse tapauksen jälkeen olen vältellyt FTDI:n piirejä ja moduuleja mahdollisuuksien mukaan.

        Olen käyttänyt tuotteissani sekä omissa laitteissa FTDI:n piirejä vuodesta 2007. En kyllä lainkaan tunnista piraattiongelmaa eli ei ole tullut yhtään tapausta, jossa piiri olisi osoittautunut piraatiksi. Eiköhän tämä rajoitu ebaystä/Kiinasta suoraan ostettuun tai vastaavien tuotteiden ostamiseen halpahalleista.

        Vai oletko kuullut piraattipiirien saamisesta Digikey/Mouser/Farnell, elektroniikkakomponenttien virallisilta maahantuojilta tms?


      • Anonyymi
        Anonyymi kirjoitti:

        Olen käyttänyt tuotteissani sekä omissa laitteissa FTDI:n piirejä vuodesta 2007. En kyllä lainkaan tunnista piraattiongelmaa eli ei ole tullut yhtään tapausta, jossa piiri olisi osoittautunut piraatiksi. Eiköhän tämä rajoitu ebaystä/Kiinasta suoraan ostettuun tai vastaavien tuotteiden ostamiseen halpahalleista.

        Vai oletko kuullut piraattipiirien saamisesta Digikey/Mouser/Farnell, elektroniikkakomponenttien virallisilta maahantuojilta tms?

        Ongelma on liittynyt nimenomaan sarjatuotannossa oleviin laitteisiin ja halpamaissa toimiviin alihankkijoihin, jotka ovat ostaneet piraattipiirejä alkuperäisten sijaan joko tarkoituksellisesti tai vahingossa. Niitä piraatteja kun ei ulkonäön perusteella juurikaan erottanut alkuperäisistä.

        Itse olen FTDI:n toimista oppinut sen, että en käytä heidän piirejään missään jos vain voin sen välttää. Nykyään USB/sarjamuunnokseen on tarjolla vaihtoehtoja, joiden valmistaja ei harrasta hyvässä uskossa piraattipiirin sisältävän tuotteen muuttamista käyttökelvottomaksi esimerkiksi 2 vuotta laitteen ostamisen ja käyttöönoton jälkeen Windowsin ja Linuxin driver - päivityksiä käyttäen.


      • Anonyymi
        Anonyymi kirjoitti:

        Ongelma on liittynyt nimenomaan sarjatuotannossa oleviin laitteisiin ja halpamaissa toimiviin alihankkijoihin, jotka ovat ostaneet piraattipiirejä alkuperäisten sijaan joko tarkoituksellisesti tai vahingossa. Niitä piraatteja kun ei ulkonäön perusteella juurikaan erottanut alkuperäisistä.

        Itse olen FTDI:n toimista oppinut sen, että en käytä heidän piirejään missään jos vain voin sen välttää. Nykyään USB/sarjamuunnokseen on tarjolla vaihtoehtoja, joiden valmistaja ei harrasta hyvässä uskossa piraattipiirin sisältävän tuotteen muuttamista käyttökelvottomaksi esimerkiksi 2 vuotta laitteen ostamisen ja käyttöönoton jälkeen Windowsin ja Linuxin driver - päivityksiä käyttäen.

        Ongelmaa lisää se, että eräs kilpaileva piirivalmistaja teki omalla nimellään olevia "klooneja" ftdi:n piiristä ja jätti kertomatta asiasta - omat ajurit oli uudelleen nimettyjä tiedostoja yms. Näin ollen niitä päätyi markkinoille aika kasa, ennen kuin asiaa edes huomattiin - oisko ollu tarkoitus myydä kiinan sisämarkkinoille halvemmalla - vaan toisin kävi?


    • Anonyymi

      Joskus linux:ssa leikitellyt ilman FIFO:a olevalla sarjaportilla ja nopeusasetuksilla. Datan määrä on itse asiassa niin vähäinen vielä 115200 asetuksellakin, että virheilyä ei saa aikaan. Vanhoissa korttimodeemeissa, vaihdoin molemmissa päissä baudi-generaattorin kiteen ja sain nopeudeksi epästandardin n. 335000, jolla alkoi esiintyä satunnaisia virheitä n. 300-400 merkin välein. Eli siellä on joku eventti, joka on korkeammalla prioriteetilla ja vie välillä niin paljon aikaa, ettei bufferoimatonta sarjaliikennettä enää ehditä palvella ajoissa. Lisätestinä, levyn läpikäyminen virheiden varalta sai aikaan sen, että virheitä tuli nyt lähes joka riville(<80 merkin välein).
      Käsittääkseni NT:ssä on vähän saman kaltainen pollaava-järjestelmä ja lisäksi serverityylinen skedulointi - prosesseja ei siis oteta pois ajosta välttämättä kuin ajosiivun lopussa. Eli jos korkeammalla prioriteetilla oleva prosessi vie ajoaikaa, niin sitten ollaan myöhässä.

    • Anonyymi

      Ohjelmointipalstalta saisit varmasti paremman selityksen siihen, miksi basic:lla käy juuri noin..

    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Mies kateissa Lapualla

      Voi ei taas! Toivottavasti tällä on onnellinen loppu. https://poliisi.fi/-/mies-kateissa-lapualla
      Lapua
      37
      2651
    2. Olenko joka hetki

      Ajatuksissasi?
      Ikävä
      38
      2467
    3. Onko kaivattusi perään

      Moni muukin?
      Ikävä
      95
      1779
    4. Joo nyt mä sen tajuan

      Kaipaan sua, ei sitä mikään muuta ja olet oikea❤️ miksi tämän pitää olla niin vaikeaa?
      Ikävä
      86
      1321
    5. Olen aina vain

      Ihmeissäni siitä että oletko niin tosissani minusta? Mitä muut ajattelisi meistä?
      Ikävä
      51
      1320
    6. Olipa ihana rakas

      ❤️🤗😚 Toivottavasti jatkat samalla linjalla ja höpsöttelykin on sallittua, kunhan ei oo loukkaavaa 😉 suloisia unia kau
      Ikävä
      5
      1205
    7. Kansanedustaja Teemu Keskisarja ei osallistu Linnan juhliin vaan natsikulkueeseen

      Kerääkö poliisi taas natsiliput pois osallistujilta?
      Maailman menoa
      287
      1132
    8. Nainen jos pitää sanoa

      Ne huonot puolet mitä omaat niin kestätkö kritiikin.
      Ikävä
      56
      1048
    9. Kumpi teistä rakastui ensin?

      Sinä vai kaipaamasi henkilö (jos siis tunteet ovat molemminpuolisia)? Tai jos kyse ei ole vielä rakkaudesta, niin kumpi
      Ikävä
      38
      799
    10. Niin se vain on

      Haluatko kuulla salaisuuden mies rakastan sua.
      Ikävä
      27
      770
    Aihe