πώς να πολλαπλασιάζουμε δύο αριθμούς στο γ σε μικροελεγκτή PIC;

E

engr.waqas

Guest
Θέλω να πολλαπλασιάζονται με 0,0048828125 819,2 στο pic χρησιμοποιώντας γλώσσα C. ο καθένας μπορεί να εξηγήσει με αυτό και να μου δώσει Γ κωδικοποίηση.
 
MULT άκυρη () {επιπλέει στ? f = 819,2 * 0,0048828125?} η απάντηση είναι 4
 
Ελπίζω u είχε ένα πρόβλημα με την ακρίβεια. u μπορεί να διπλασιάσει ή μεγάλο διπλό για την πιο ακριβή τιμή.
 
στην πραγματικότητα παίρνω δεδομένα από έναν αισθητήρα των οποίων η παραγωγή είναι 4 βολτ, δηλαδή αναλογική είσοδο για pic είναι 4 βολτ. τώρα για Vref = 5 Volt, έχω μέγεθος του βήματος της 0,0048828125 γι 'αυτό έχουν πολλαπλασιάσει την παραγωγή του ενσωματωμένο ελεγκτή A \ D σε 0,0048828125 να να πάρει πραγματική αξία που είναι 4. Πώς να το κάνουμε αυτό A \ D δυαδική έξοδος αποθηκεύεται σε 2 μητρώα, όπως δηλαδή στο ΣΜΕ ADRESl & ADRESH plz βοηθήσει πώς να πολλαπλασιάζουμε τιμή που είναι αποθηκευμένη στο ADRESL & ADRESH σε 0,0048828125
 
επιπλέουν ADnumber = (float) ((int) (((int) ADRESH
 
Αγαπητοί ΣΜΕ δεν έχει 16 bit μητρώο.
 
Ακριβώς επειδή δεν έχουν τα φυσικά δεν σημαίνει ότι δεν μπορείτε να τις χρησιμοποιήσετε σχεδόν. Εάν χρησιμοποιείτε ένα μεταγλωττιστή της C κάθε ποικιλίας (MCC18, mikroC, SourceBoost κλπ.), θα χρησιμοποιήσω δύο 8-bit μητρώα για 16-bit αριθμό. Αυτή είναι μια πραγματικά βασική ιδέα btw. Πίστεψέ με, μπορώ να χρησιμοποιήσω μόνο υπεύθυνοι (κυρίως 18F) και μπορώ να χρησιμοποιήσω 16-bit των μεταβλητών όλη την ώρα.
 
Αυτό θα το κάνω γιατί δεν υπάρχει ανάγκη ενός 16-bit μητρώο σε αυτή την επιχείρηση. Είναι ουσιαστικά μια εφαρμογή 16-bit τιμή χρησιμοποιώντας 2 8-bit καταχωρητές.
 

Welcome to EDABoard.com

Sponsor

Back
Top