Torna indietro   Hardware Upgrade Forum > Software > Programmazione

NZXT H9 Flow RGB+, Kraken Elite 420 e F140X: abbiamo provato il tris d'assi di NZXT
NZXT H9 Flow RGB+, Kraken Elite 420 e F140X: abbiamo provato il tris d'assi di NZXT
Nelle ultime settimane abbiamo provato tre delle proposte top di gamma di NZXT nelle categorie case, dissipatori e ventole. Rispettivamente, parliamo dell'H9 Flow RGB+, Kraken Elite 420 e F140X. Si tratta, chiaramente, di prodotti di fascia alta che si rivolgono agli utenti DIY che desiderano il massimo per la propria build. Tuttavia, mentre i primi due dispositivi mantengono questa direzione, le ventole purtroppo hanno mostrato qualche tallone d'Achille di troppo
ASUS ROG Swift OLED PG34WCDN recensione: il primo QD-OLED RGB da 360 Hz
ASUS ROG Swift OLED PG34WCDN recensione: il primo QD-OLED RGB da 360 Hz
ASUS ROG Swift OLED PG34WCDN è il primo monitor gaming con pannello QD-OLED Gen 5 a layout RGB Stripe Pixel e 360 Hz su 34 pollici: lo abbiamo misurato con sonde colorimetriche e NVIDIA LDAT. Ecco tutti i dati
Recensione Nothing Phone (4a) Pro: finalmente in alluminio, ma dal design sempre unico
Recensione Nothing Phone (4a) Pro: finalmente in alluminio, ma dal design sempre unico
Nothing Phone (4a) Pro cambia pelle: l'alluminio unibody sostituisce la trasparenza integrale, portando una solidità inedita. Sotto il cofano troviamo uno Snapdragon 7 Gen 4 che spinge forte, mentre il display è quasi da top dig amma. Con un teleobiettivo 3.5x e la Glyph Matrix evoluta, è la prova di maturità di Carl Pei. C'è qualche compromesso, ma a 499EUR la sostanza hardware e la sua unicità lo rendono un buon "flagship killer" in salsa 2026
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 23-01-2005, 15:46   #1
TheFuture
Senior Member
 
L'Avatar di TheFuture
 
Iscritto dal: Jun 2004
Città: Conegliano (Treviso)
Messaggi: 1009
[VB 6] Seriale

Ciao a tutti, devo realizzare un'applicazione in VB6 che mi riceva i dati provenienti da un PIC18F452 sulla seriale. Ho trovato qualche esempio, e sostanzialmente ho trovato due metodi:

1°Metodo
Codice:
Public Sub LeggeCOM1()
Dim InString As Variant
Dim dato As String
' Recupera tutti i dati disponibili.
Form1.MSComm1.InputMode = comInputModeBinary
Form1.MSComm1.InputLen = 0
' Controlla la presenza di dati.
If Form1.MSComm1.InBufferCount Then
    ' Legge i dati.
     n = Form1.MSComm1.InBufferCount
     InString = Form1.MSComm1.Input
   For i = 0 To n - 1
        dato = InString(i)
        Form1.List1.AddItem dato
    Next i
End If
End Sub
2°Metodo
Codice:
Dim RxBuffer$
Private Sub MSComm1_OnComm()
    Dim Pos As Integer
    Dim Rx$
    Dim Pacchetto$

    ' Estraggo i dati arrivati
    Rx$ = MSComm1.Input
    If Len(Rx$) = 0 Then Exit Sub

    ' Accodo i dati arrivati al buffer
    RxBuffer$ = RxBuffer$ & Rx$

    ' Mi assicuro di avere il buffer allineato ai pacchetti
    If Left$(RxBuffer$, 1) <> "(" Then
        ' Scarto tutto ciò che sta prima del primo carattere di START
        ' Questo capita quando si ricevono dei caratteri dovuti a disturbi sulla
        ' linea seriale, tutt'altro che rari! es: "ÿs2ÿÿ(12.7"
        ' oppure quando ho aperto la seriale (ed iniziato a bufferizzare i dati)
        ' a metà di un pacchetto dati in ricezione. es: "2.76)(13.16)"
        Pos = InStr(RxBuffer$, "(")
        RxBuffer$ = Mid$(RxBuffer$, Pos)
        If Len(RxBuffer$) = 0 Then
            ' se il buffer è vuoto, tanto vale uscire
            Exit Sub
        End If
    End If

    ' A questo punto controllo se sono arrivati dei pacchetti
    ' completi, li estraggo (tutti) e li elaboro
    Do
        Pos = InStr(RxBuffer$, ")")
        If Pos = 0 Then Exit Do ' nessun'altro pacchetto completo, esco dal loop

        ' Estraggo il pacchetto, togliendo i caratteri di START e di STOP
        Pacchetto$ = Mid$(RxBuffer$, 2, Pos - 2)
        ' Elimino il pacchetto dal buffer
        RxBuffer$ = Mid$(RxBuffer$, Pos + 1)
        ' a questo punto se il buffer conteneva "(12.76)(13.16)", 
        ' Pacchetto$="12.76" e RxBuffer$="(13,16)"

        ' Controllo se ci sono altri caratteri di START nel pacchetto.
        ' Infatti potrebbe capitare che un disturbo simuli un carattere
        ' di START ritrovando nel buffer qualcosa del tipo "(ÿ(12.75)"
        ' oppure un disturbo potrebbe aver eliminato un carattere di STOP,
        ' e quindi ritrovarci quancosa del tipo "(12.75ÿ(13.16) dove la "ÿ"
        ' sarebbe dovuta essere un ")" (in questo caso il primo pacchetto è perso)
        Pos = InStr(Pacchetto$, "(")
        If Pos Then
            ' esempio pacchetto contiene "12.75ÿ(13.16"
            Pacchetto$ = Mid$(Pacchetto$, Pos + 1)
            ' ora Pacchetto$="13.16"
        End If

        ' Il lavoro dello strato ISO/OSI di linea è compiuto,
        ' passo il pacchetto ricevuto al prossimo strato, che si preoccuperà di
        ' interpretare il significato dei dati ricevuti
        Call ElaboraPacchetto(Pacchetto$)
    Loop

End Sub
A questo punto che differenze ci sono nei due metodi di ricezione del pacchetto? Quale mi conviene usare?
__________________
Non ho paura di nulla, non temo nessuno. Avete ragione, certo, non so ancora chi saranno i miei nemici. Ma so molto bene chi sono io!!!
TheFuture è offline   Rispondi citando il messaggio o parte di esso
Old 26-01-2005, 06:23   #2
TheFuture
Senior Member
 
L'Avatar di TheFuture
 
Iscritto dal: Jun 2004
Città: Conegliano (Treviso)
Messaggi: 1009
up
__________________
Non ho paura di nulla, non temo nessuno. Avete ragione, certo, non so ancora chi saranno i miei nemici. Ma so molto bene chi sono io!!!
TheFuture è offline   Rispondi citando il messaggio o parte di esso
Old 30-01-2005, 12:09   #3
TheFuture
Senior Member
 
L'Avatar di TheFuture
 
Iscritto dal: Jun 2004
Città: Conegliano (Treviso)
Messaggi: 1009
uppete!
__________________
Non ho paura di nulla, non temo nessuno. Avete ragione, certo, non so ancora chi saranno i miei nemici. Ma so molto bene chi sono io!!!
TheFuture è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


NZXT H9 Flow RGB+, Kraken Elite 420 e F140X: abbiamo provato il tris d'assi di NZXT NZXT H9 Flow RGB+, Kraken Elite 420 e F140X: abb...
ASUS ROG Swift OLED PG34WCDN recensione: il primo QD-OLED RGB da 360 Hz ASUS ROG Swift OLED PG34WCDN recensione: il prim...
Recensione Nothing Phone (4a) Pro: finalmente in alluminio, ma dal design sempre unico Recensione Nothing Phone (4a) Pro: finalmente in...
WoW: Midnight, Blizzard mette il primo, storico mattone per l'housing e molto altro WoW: Midnight, Blizzard mette il primo, storico ...
Ecovacs Goat O1200 LiDAR Pro: la prova del robot tagliaerba con tagliabordi integrato Ecovacs Goat O1200 LiDAR Pro: la prova del robot...
CAS Space ha lanciato per la prima volta...
Qualcomm boccia Samsung: i futuri chip S...
Il razzo spaziale cinese Tianlong-3 di S...
Samsung cambia i piani: aumenta la produ...
TSMC non si ferma più: fatturato ...
Xiaomi porta in Italia il nuovo Redmi A7...
Mercato smartphone: Q1 2026 positivo (+1...
YouTube punta sull'AI: gli utenti potran...
Il prossimo chip a 2 nm di Samsung punte...
Due smartphone REDMAGIC sono stati rimos...
La beta della One UI 8.5 è ora di...
Addio al Pannello di Controllo di Window...
Il chip N1 di NVIDIA per i laptop del fu...
YouTube Premium costerà di pi&ugr...
I nuovi Samsung Galaxy A57 5G e A37 5G a...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 04:25.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v