Προς το περιεχόμενο

Τι γλώσσα προγραμματιμού να μάθω;


bravenew

Προτεινόμενες αναρτήσεις

Δημοσ.

Είμαι ηλεκτρονικός και θέλω να μαθω μία γλώσσα προγραμματισμού ετσι ώστε να μπορώ να ελέγχω τις σειρειακές θύρες RS232.

 

 

Παρακαλώ όποιος γνωρίζει ας μου προτείνει.

Δημοσ.

Κοίτα εγώ θα σου πρότεινα να διαβάσεις ένα εισαγωγικό βιβλίο για την γλώσσα για να κατανοήσεις την λειτουργία της και τις βασικές αρχές της. Αφού έχεις διαβάσει το βιβλίο υπάρχουν πολλά tutorials στο Internet για την δουλεία που θέλεις. Ένα καλό εισαγωγικό βιβλίο που διάβασα για C++ είναι του Savitch το "Problem Solving with C++". Επίσης υπάρχει και το "Thinking in C++" του Bruce Eckel το οποίο μπορείς να κατεβάσεις δωρεάν ή να το αγοράσεις από τον Παπασωτηρίου.

  • 3 εβδομάδες αργότερα...
Δημοσ.

ειμαι και εγω ηλεκτρονικος και στην σχολη μαθαινουμε την pascal τωρα δεν ξερω κατα ποσο θα σε βοηθησει σε αυτο που θες

Δημοσ.

Αssembly for the way....παρακατω σου παραθετω λιγο κωδικα για να checkάρεις...

 

Για να προσπελάσεις τις θύρες του UART chip,(υπεύθυνο για την RS-232 διασύνδεση)

κάνεις κλήσεις στο ΒΙΟS με int 14h (υσχιει για intel cpu)

πχ.

Aρχικοποιήση σειριακής θυρας

>mov ah,00h
mov al,eeh (παράμετρος σειριακης θύρας (baud rate,parity,end bit,start bit,lenght)
mov dx,01h  (αριθμος σειριακής θύρας 01h για COM2 και 00h για COM1)
int 14h

To συγκεκριμένο παράδειγμα αρχικοποιει την COM2 me 9600baudrate,περιττη ισοτιμια

2 end bits και μήκος χαρακτήρα 7 bit

 

Aποστολή ενος χαρακτήρα

>mov  ah,01h
mov al,41h (χαρακτήρας προς αποστολή)
mov dx,01h (αριθμος σειριακης θύρας)
int 14h

 

Mε τις παραπάνω 4 εντολές στέλνεις τον χαρακτήρα A (41 hex) στην COM2

Ληψη χαρακτήρα

>mov ah,02h
mov dx,01h (αριθμος σειριακής θύρας)
int14h

 

O παραπάνω κωδικα σου επιστρέφει τον χαρακτηρα (εαν υπάρχει )στον AX καταχωρητη,συγκεκριμένα(AL=τον χαρακτήρα κ ΑΗ=κάτασταση θύρας)

 

Aν πάλι θες να προγραμματισεις με C,αυτο ίσως σε βοηθησει

http://electrosofts.com/serial/

Δημοσ.

guys... για να λέμε τα πράγματα με το όνομά τους... οι C/C++ είναι εξαιρετικές γλώσσες για έναν ηλεκτρονικό, κυρίως γιατί πολλές συσκευές υποστηρίζουν development μόνο σε αυτές.

Κατά τα άλλα η γλώσσα εξαρτάται από το περιβάλλον στο οποίο πρόκειται να γράψεις και από το είδος της δουλειάς που θέλεις να κάνεις. Αν θέλεις να κάνεις κάτι σε windows για να χρησιμοποιήσεις την σειριακή πόρτα και το κάνεις με assembly τότε θα χάσεις πού χρόνο χωρίς να χρειάζεται. Θα μπορούσες να κάνεις το ίδιο πράγμα με κάποια άλλη γλώσσα υψηλότερου επιπέδου όπως η java, η visual basic .net ή η c#.

Αν θέλεις πάλι να επενδύσεις μαθαίνοντας c/c++ ή ακόμα χαμηλότερου επιπέδου όπως η assembly, go ahead, αλλά αυτά θα τα μάθεις για να γράψεις ιδιαίτερα χαμηλού επιπέδου κώδικα και συνήθως για εξειδικευμένες συσκευές. Η διαχείριση της σειριακής θύρας δεν είναι τόσο χαμηλού επιπέδου ανάπτυξη.

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.

  • Δημιουργία νέου...