Fórum témák
» Több friss téma |
Erről beszéltem én is(indexelés). De ezen belül is lehet mindezt kétféle módon. Egyik a megszakításban maradás, másik a minden bájtnál kilépéses módszer.
De ha nem tudod előre a csomag hosszát, akkor is megoldható, ha pl. a MODBUS szerinti 3,5 karakteridőre állítod a timeoutot. Persze ilyenkor kell egy CRC, hogy a csonkolt csomagokat ki tudd dobni.
Kedves Hozzáértők!
A PIC-es szobahömérömhöz szeretnék egy windows-os kis programot késziteni kiserleti jelleggel. Végigolvasva az eddigi oldalakat szeretnék tanácsot kérni tőletek hogy hogyan kezdjek hozzá. Pic oldalon arra gondoltam hogy percenként elküldöm a programnak a hömérséklet és páratatalom adatotkat és hogy mikor kapcsolta be-ki a párásítót. Arra gondoltam hogy 2 byte-t használnék az átvitelre (elso az adatmezo a masodik az érték) . Ezzel kapcsolatos az első kérdésem... Jó megoldas az hibakezelésnek hogy kétszer elküldöm a programnak az adatot és ha az kétszer egyforman érkezik meg akkor az adat jó és letárolható-használható? Esetleg kiváncsi lennék a véleményetekre hogy VB2010 vagy Delphi platform az egyzerübb erre a feladatra... köszönettel: Kata
Az ismételt elküldés ilyen kicsi méreteknél jó megoldás.
Bármelyik Visual programmal könnyen lehet kezelni az adatokat a beépített, soros portot lekezelő objektumokkal.
Nagyon hasonlót csináltam, amit talán érdemes elmondani, hogy analóg módon mértem a mennyiséget PIC-cel, és 5-10 mérés átlagát küldtem tovább PC-re. Delphivel csináltam a windowsos felületet mert ahhoz értettem valamennyire, de külön komponenst kell telepíteni hozzá.
Bővebben: Link
Még egy kérdés...
Könnyen lehet ábrázolni az adatokat egy grafkonban a VB alatt? Azt szeretném hogy egy grafikonon látszódjon a hömérséklet a páratartalom a párásító működési idötartama mondjuk egy vizszintes vonallal jelölve. és az asztmás rohamom idötartama Komponens kell hozzá külön vagy már benne van a VB-ben alpból? Köszönöm mindenkinek a gyors választ. Szép napot nektek ![]()
Tartalmazza a szükséges komponenst. Könnyen lehet benne ábrázolni grafikus adatokat. Most ismerkedem a VB.NET-el úgy hogy már előzőleg sokat használtam a VB6-ot. Személyes véleményem a VB.NET-ről hogy már nem olyan egyszerű benne programozni mint a VB6-ban. Ráadásul a két nyelv teljesen más. A VB.NET grafikus megjelenítője is lassabb mint a VB6-é, de számodra ennek nem lesz jelentősége.
Szia! Igen, a feladat megoldásához bőven elég, ami a VB.NET-ben benne van. Amit leírtál, kivéve az asztmás rohamod időtartama
![]() Sajnos eléggé off, de annyit még a .NET-ről, hogy a rajzolás sebessége, ha dupla puffert használsz, gyorsabb is, mint VB6 alatt, de bonyolultabb a program kicsit. Az egész .NET a VB6-hoz képes egy agyrém először, de bele lehet jönni. Lassan az összes programomat átírtam már, nem egyszerű, de megtanulható. Aki ezzel kezd, talán nem annyira nehéz felvenni a szemléletet. A helpek korlátosan használhatók, mert olyan adatmennyiség van, amiből nem tudod eldönteni, melyik kell neked, ezért a google sokat segít. A nyelv ugyanaz, csak az objektum könyvtár más, ezért másképp lehet elérni dolgokat. A hozzászólás módosítva: Okt 16, 2012
De jó lenne ha egy progival lehetne állítani a rohamok idejét... Gondoltam azt felviszem külön
![]() A dokimnak kellene ezeket az adatokat valahogy nem listaszerüen produkálnom. A párásitókapcsolgatást és hö és páramérést már megoldottam... PIC-el. Sokan mondták hogy inkább VB6-al kezdjek... Tanulni szeretek... Motiváció van... Nekilátok akkor VB6 ban... Köszönöm a segítséget. Nekugrok a netnek sample-kutatásilag.
Ne haragudj, én azt hittem viccelsz!
Ha szeretsz tanulni, akkor a .NET! Ha a topic címét nézem, akkor belefér egy kis programozás is! Ha elzavarnak, akkor máshol folytatjuk. ![]()
Szia!
Delphi alól soros port kezelésére bevált a TComPort v.3.1, az USB HID kommunikációra a Delphi Jedi.
Köszönöm...
![]() Biztos igénybe veszem a segítséged(etek). Most a 6-os és a 2010-es VB-vel ismerkedem... de elég zavaros még... igyekszem... Akadt a 6-os hoz könyv is... Olvasom...
Köszönöm a válaszod...
Melyik verziót érdemes egy kezdőnek megpróbálni?
Amit feljebb linkeltem a Lazarus szintén Object Pascal nyelv csak a Delphivel ellentétben ingyenes. Ugyanaz a TComPort használható hozzá mint a Delphi-hez.
Egy kép róla hogy lásd nem egy gagyi. Én még csak ismerkedek vele, de a következő programom ebben fogom készíteni. A hozzászólás módosítva: Okt 19, 2012
Üdv!
VB.NET-hez tudok kézikönyvet, vagy esetleg akár saját programrészletekkel is tudok szolgálni. Én személy szerint a .NET-et ajánlom, mert azért valljuk be fejlettebb, mint a VB6 és gond nélkül működik a megírt program Windows Mobile-tól akár Win7-ig is (esteleg 8-ig).
Szia! VB.NET.
![]()
Sziasztok!
Segítséget kérek. Belekeveredtem a soros port VB.NET alatti programozásába. Valószínűleg aki jártas a soros port kezelésben kapásból tudja a megoldást a problémámra. Már 3 napom ráment. Három program érintett a számomra rejtélyes problémában. A saját fejlesztésű VB.NET programom, a HTERM soros port kezelő program és a Portmon monitorozó. A hardver egy PIC vezérlőre épül. A vezérlés lényege hogy a PC-n futó szoftver vezérlő jelet küld a PIC-nek és az A/D mintavételezett adatokat küld vissza. Abban az esetben amikor a HTERM küldi ki a vezérlő jelet a PIC-től érkező adatokat a Portmon rendre monitorozza. Ellenben ha az én általam írt program küldi akkor a vissza érkező adatokból a Portmon nem lát semmit. Most jutottam el oda hogy végül logikai analizátorral is megnéztem a jelet és a PIC hiánytalanul küldi az adatokat mindkét esetben. Azt már sejtem hogyha a Portmon nem látja az adatokat akkor az valószínűleg azt jelenti hogy a VB.NET-es programom elutasítja a fogadást. Belinkelem a Portmon monitorozott eseményeit mindkét esetre. Számomra is látható a különbség , csak az ismereteim elég hiányosak a soros port kezelésben.
Kisebb sebességgel próbáltad? Sajnos én sem értek a soros porthoz (kudarc/siker arányom nagyon gyatra), de olvastam korábban, hogy magasabb sebességekhez hardveres átvitel vezérlés szükséges. Egyszerűen megoldható a MAX232 másik felének használatával (+ 2 PIC láb), de tovább nem foglalkoztam vele, mert én egyelőre maradok 9600-nál.
Szerintem nem ez a probléma oka. Valami VB forrás beállítási problémám lehet.
Üdv! Volt szerencsém már szórakozni a soros port programozásával .NET alatt, nekem eddig ilyen problémám nem volt.
Milyen módszerrel olvasod a portot? Polling-olod, vagy s beérkező byte event-re olvasod ki a puffert?
Kérdéseddel szerintem már meg is oldottad a problémát. Basszus, még sehogy.
![]() Köszi ! Holnap megírom a kódot, vagy legalább is neki állok. Majd jelentkezem mire jutottam. Esemény vezérelt lesz. Teljesen a Portmonra koncentráltam. A hozzászólás módosítva: Feb 6, 2013
Valami ilyesmi kell neked:
Köszi. Délután neki állok. Egy VB6 forrást írok át. Már úgy emlékeztem a vételi résszel már végeztem, de mégsem. eSDi hozzászólásakor esett le hogy a Portmon hogy is működik. A vételi és adási puffert olvassa, de a port kezelését nem végzi, ezért tud a háttérben maradni.
Köszi. Délután neki állok. Egy VB6 forrást írok át. Már úgy emlékeztem a vételi résszel már végeztem, de mégsem. eSDi hozzászólásakor esett le hogy a Portmon hogy is működik. A vételi és adási puffert olvassa, de a port kezelését nem végzi, ezért tud a háttérben maradni.
Működik a soros port kezelésem. Köszönöm a segítségeteket. Sajnos még nem érkezik be mind a 32766 Byte és ez egyértelműen a soros port szoftveres kezelésnek tudható be. A HTERM programhoz mind a 32766 Byte beérkezik és így az USB-UART átalakító hibás működését is kizártam.
Mit tehetek hát nézegetem tovább a forrás mintákat. Az is megfordult a fejemben hogy külső DLL-t használok.
Úgy tűnik túl vagyok az adat fogadási problémán. Találtam itt egy jó példát gyors adatkezelésre. A kódom így néz ki:
Csatoltam egy futás képet a programomról érdekességnek. A hardvernek még vannak problémái, de úgyis újra tervezem és gyártom. A hozzászólás módosítva: Feb 9, 2013
|
Bejelentkezés
Hirdetés |