Σελίδα 1 από 2 1 2 ΤελευταίαΤελευταία
Εμφάνιση αποτελεσμάτων : 1 έως 10 από 16

Θέμα: Μετακινηση απο PIC σε ARM

  1. #1
    Μέλος Το avatar του χρήστη keto
    Όνομα
    Χαρης
    Εγγραφή
    Sep 2017
    Περιοχή
    -
    Μηνύματα
    36

    Προεπιλογή Μετακινηση απο PIC σε ARM

    Καλησπερα,
    ειμαι φοιτητης και εδω και 2 χρονια ασχολουμαι με τους PIC18,32 και θελω να περασω στους ARM και συγκεκριμενα τους STM32.Εχω ψαξει πολυ στο google για tutorials για να αρχισω απο καπου.Θα ηθελα να μου πει καποιος που εχει ασχοληθει πως ακριβως γραφεις firmware για αυτους.Δηλαδη στους PIC που ειμαι απλα ανοιγεις το datasheet του μικροελενχτη διαβασεις πχ για την UART,θετεις τους καταλληλους καταχωρητες και τις συναρτισεις που θες και το τρεχεις(χρησιμοποιω xc8 σαν compiler).Στους STM σε ολα τα tutorials χρησιμοποιουν το RTOS και τις συναρτησεις του χωρις να μπλεκουν με καταχωρητες κλπ.Ετσι δουλευουν οι STM32?Δεν μπορει καποιος να χρησιμοποιεισει καταχωρητες οπως στους PIC με εναν compiler επιπεδου xc8 και οχι υψηλου επιπεδου συναρτισεις μεσω του RTOS?Εγω θελω να αρχισω με κατι που ειναι κοντα στην λογικη των PIC για να μου ερθει πιο ευκολα,ο μονος τροπος στους STM32 ειναι να μαθεις τις συναρτισεις του RTOS?Θα πει καποιος μπορεις να γραψεις και απλη assembly αλλα δεν θελω τοσο χαμηλο επιπεδο,θελω κατι ενδιαμεσο σε assembly και RTOS οπως στους PIC.

    0 Not allowed! Not allowed!

  2. #2
    Συντονιστής Το avatar του χρήστη kioan
    Όνομα
     
    Εγγραφή
    Mar 2005
    Περιοχή
    127.0.0.1
    Μηνύματα
    3.169

    Προεπιλογή

    Υπάρχουν 3 βασικοί δρόμοι που μπορείς να ακολουθήσεις:

    • CMSIS (Cortex Microcontroller Software Interface Standard)
    • SPL (Standard Peripheral Library)
    • HAL (Hardware Abstraction Layer)


    Μια περιγραφή για το τι σημαίνουν τα παρακάτω, μπορείς να βρεις εδώ.


    Αυτό που θέλεις εσύ, τον προγραμματισμό σε επίπεδο καταχωρητών κλπ είναι το CMSIS. Τα άλλα δύο εισάγουν abstraction layers αποκρύπτοντας τις λεπτομέρειες του επεξεργαστή (αλλά κάνουν τον κώδικά σου πιο εύκολα μεταφέρσιμο από μια οικογένεια επεξεργαστών σε κάποια άλλη).

    1 Not allowed! Not allowed!
    There are 10 types of people in the world: Those who understand binary, and those who don't.

  3. #3
    Μέλος Το avatar του χρήστη keto
    Όνομα
    Χαρης
    Εγγραφή
    Sep 2017
    Περιοχή
    -
    Μηνύματα
    36

    Προεπιλογή

    Παράθεση Αρχικό μήνυμα από kioan Εμφάνιση μηνυμάτων
    Υπάρχουν 3 βασικοί δρόμοι που μπορείς να ακολουθήσεις:

    • CMSIS (Cortex Microcontroller Software Interface Standard)
    • SPL (Standard Peripheral Library)
    • HAL (Hardware Abstraction Layer)


    Μια περιγραφή για το τι σημαίνουν τα παρακάτω, μπορείς να βρεις εδώ.


    Αυτό που θέλεις εσύ, τον προγραμματισμό σε επίπεδο καταχωρητών κλπ είναι το CMSIS. Τα άλλα δύο εισάγουν abstraction layers αποκρύπτοντας τις λεπτομέρειες του επεξεργαστή (αλλά κάνουν τον κώδικά σου πιο εύκολα μεταφέρσιμο από μια οικογένεια επεξεργαστών σε κάποια άλλη).
    Eυχαριστω για την πληροφορια,εγω ειχα δει μονο την HAL που δεν μ αρεσε.Την SPL βλεπω την απερριψε ST οποτε ο μονος δρομος ειναι να παω στην CMSIS να δω και αυτην.Υπαρχει καποια εταιρεια που να βγαζει υλικο με ARM αλλα να εχει καλυτερο documentation και καποιον compiler με τα θελω που περιεγραψα πιο πανω και να ειναι αξιοπιστη για να κινηθω προς αυτην(αν και βλεπω πως ολοι που ασχολουνται με ARM ,τους STM χρησιμοποιουν)

    0 Not allowed! Not allowed!

  4. #4
    Μέλος Το avatar του χρήστη picdev
    Όνομα
    akis
    Εγγραφή
    Jul 2007
    Περιοχή
    ____
    Μηνύματα
    7.375

    Προεπιλογή

    στους arm κάθε εταιρεία φτιάχνει τα δικά τους περιφερειακά , οι spl δεν υπάρχουν πλέον οπότε πας αναγκαστηκά σε HAL.

    Οι stm32 έχουν μεγάλη κοινότητα και γενικά ειναι μονόδρομος, επίδης έχουν κάνει κορυφαίες συνεργασίες για GUI, έχουν αγοράσει το true studio που ειναι πολύ καλο εργαλείο ανάπτυξης.

    https://atollic.com/truestudio/


    όπως επίσης και με το touch gfx

    https://www.touchgfx.com/product/stm32-gui/

    Επειδή όπως λες έγινε μεγάλη φασαρία με τους HAL , αφού ειναι πιο abscract απο τους SPL , έχουν βγάλει και τους LL.
    https://www.st.com/content/ccc/resou...DM00105879.pdf

    οι hal δεν ειναι απαραίτητα κάτι κακό αφού μπορείς εύκολα να κάνεις αλλαγή απο τον έναν επεξεργαστή στον άλλον, κανένας mcu δεν θα κυκλοφορεί για πάντα,αλλά σίγουρα θες παραπάνω μνήμη και πόρους.
    οπότε καλό ειναι στο software που γράφεις να διαχωρίζεις τους drivers για τα peripheral με το πρόγραμμα σου, ώστε το intergration να γινεται εύκολα.

    οι stm32 ειναι η καλύτερη επιλογή πιστεύω λόγω των συνεργασιών και αυτά που προσφέρει δωρεάν

    2 Not allowed! Not allowed!

  5. #5
    Μέλος Το avatar του χρήστη SProg
    Όνομα
    Σάββας
    Εγγραφή
    Mar 2014
    Περιοχή
    Θεσσαλονίκη
    Μηνύματα
    2.612

    Προεπιλογή

    HAL. Ξεχνα ASM, αυτα μονο στα προπτυχιακα ή αν γραφεις δικους σου Drivers (προφανως και οχι)

    0 Not allowed! Not allowed!

  6. #6
    Μέλος Το avatar του χρήστη picdev
    Όνομα
    akis
    Εγγραφή
    Jul 2007
    Περιοχή
    ____
    Μηνύματα
    7.375

    Προεπιλογή

    και με C κανονικά γράφεις drivers και σετάρεις bit, δεν χρειάζεται ASM

    0 Not allowed! Not allowed!

  7. #7
    Μέλος Το avatar του χρήστη SProg
    Όνομα
    Σάββας
    Εγγραφή
    Mar 2014
    Περιοχή
    Θεσσαλονίκη
    Μηνύματα
    2.612

    Προεπιλογή

    Είσαι ένα επίπεδο πάνω στη C, εξ ορισμού με τη C εκτελείς περισσότερες εντολές. Ιδανικός C compiler δεν υπάρχει.

    Αν εννοεις πως με τους συγχρονους compilers δεν έχει νοήμα η ASM τότε συμφωνώ (και πάλι πλην σπάνιων εξαιρεσεων).

    1 Not allowed! Not allowed!

  8. #8
    Μέλος Το avatar του χρήστη keto
    Όνομα
    Χαρης
    Εγγραφή
    Sep 2017
    Περιοχή
    -
    Μηνύματα
    36

    Προεπιλογή

    Aρα με HAL παιζουν οι περισσοτεροι?

    0 Not allowed! Not allowed!

  9. #9
    Μέλος
    Όνομα
    Μάνος
    Εγγραφή
    Jan 2012
    Περιοχή
    Κρήτη
    Μηνύματα
    3.951

    Προεπιλογή

    Γενικα να ξερεις οσο περναει ο καιρος οι mcus θα γινοται ποιο γρηγοροι με περισσοτερους πορους κτλπ
    οποτε τα διαφορα optimizations δεν χουνε τοσο νοημα(αυτα θα τα κανουνε στο μελλον ολο και καλυτερα οι compilers)
    οσο εχει η μεταφερσιμοτητα του κωδικα και το ποσο ποιο απλος ειναι.
    Οποτε τα frameworks που εισαγουνε abstraction layers επιταχυνουνε την διαδικασια αναπτυξεις χωρις να σε μπλεκουνε με ανουσιες λεπτομεριες.
    Το ιδιο εγινε και στους υπολογιστες με τη java.
    Οσο περναει ο καιρος οδηγουμαστε σε γλωσες/frameworks υψηλοτερου επιπεδου..
    Η asm εχει καταργηθει στην πραξη για αναπτυξη εδω και πολλα χρονια αλλα δεν θα καταργηθει ποτε για το reverse engineering.
    Στο reverse engineering θα ειναι παντα η μονη και μοναδικη λυση.

    1 Not allowed! Not allowed!

  10. #10
    Μέλος Το avatar του χρήστη picdev
    Όνομα
    akis
    Εγγραφή
    Jul 2007
    Περιοχή
    ____
    Μηνύματα
    7.375

    Προεπιλογή

    ιδανικός compiler για τη C είναι ο GCC , άλλωστε όλοι με αυτό δουλεύουν

    0 Not allowed! Not allowed!

Σελίδα 1 από 2 1 2 ΤελευταίαΤελευταία

Παρόμοια Θέματα

  1. ΑΠΟ ΦΩΤΟΑΝΤΙΣΤΑΣΗ ΣΕ PIC μΑ ή mV
    By elpanos in forum Ερωτήσεις Αρχάριων
    Απαντήσεις: 3
    Τελευταίο Μήνυμα: 25-05-11, 20:05
  2. Feedback απο φαση 220v σε PIC
    By picdev in forum Ηλεκτρονικά
    Απαντήσεις: 36
    Τελευταίο Μήνυμα: 08-03-11, 20:42
  3. πομπός/δέκτης απο pic προς lcd
    By PeGaSuS in forum Αυτοματισμοί
    Απαντήσεις: 5
    Τελευταίο Μήνυμα: 27-04-07, 19:07

Tags for this Thread

Δικαιώματα - Επιλογές

  • Δημιουργία θεμάτων: Όχι
  • Υποβολή μηνυμάτων: Όχι
  • Σύναψη αρχείων: Όχι
  • Επεξεργασία μηνυμάτων: Όχι
  •  
  • BB code: σε λειτουργία
  • Smilies: σε λειτουργία
  • [IMG]: σε λειτουργία
  • [VIDEO] code is σε λειτουργία
  • HTML: εκτός λειτουργίας