έλεγχος

S

simonwai999

Guest
γεια

Κωδικός:

p = 16F690 λίστα

# include <p16F690.inc>

__config (_WDT_OFF & _PWRTE_OFF & _MCLRE_OFF & _CP_OFF & _BOR_OFF & _IESO_OFF & _FCMEN_OFF)# define E PORTC, 0? Ορίστε Ενεργοποίηση λειτουργία για λίγο 0 της PORTC

# define RW PORTC, 1? Ορίστε R / W λειτουργία για λίγο 1 του PORTC

# define RS PORTC, 2? Ορίστε Εγγραφή λειτουργία επιλογής για λίγο 2 του PORTCEQU temp 0x20? Θερμοκρασία εγγραφείτε για να κρατούν στοιχεία που αποστέλλονται για να εμφανίσετε

εσωτερικό EQU 0x21? αντιμετώπιση Loop για Υστέρηση ρουτίνας

;************************************************* ***************************org 0x000

NOP;************************************************* ********************************BANKSEL TRISB

clrf TRISB? Ορισμός PORTB ως έξοδοι

clrf TRISC? Ορισμός PORTC ως έξοδοιBANKSEL PORTB

BSF Ε? Initialize Ενεργοποίηση για να Logic High μέλος

BCF RW? Initialize RW για Χαμηλή Logic (Write)κλήση InitDisp? Βάλτε απεικόνιση σε 4-bit0x28 movlw? Αποστολή έναρξη λειτουργίας Σετ εντολή για 4-bit

κλήση LCDCommand? και 2-line display
0x0E movlw? Στείλτε εντολή για να ενεργοποιήσετε την οθόνη και δρομέα

κλήση LCDCommand
0x06 movlw? Αποστολή έναρξη λειτουργίας Ορίστε εντολή για την αύξηση διεύθυνση

κλήση LCDCommand? από μία βάρδια και το δρομέα προς τα δεξιά
0x80 movlw? Αποστολή Set DDRAM Διεύθυνση για την αντιμετώπιση 0x00

κλήση LCDCommand
movlw "Α"? Αποστολή Χαρακτήρας «Α» με την αναγραφή στην πρώτη γραμμή

κλήση LCDData0xC0 movlw? Αποστολή Set DDRAM Διεύθυνση για την αντιμετώπιση 0x40

κλήση LCDCommandmovlw 'B'? Αποστολή χαρακτήρων Β 'α' στην οθόνη για δεύτερη γραμμή

κλήση LCDDataSelf:

self goto? Loop σε θέση? ************************************************* **

? * Για να αρχικοποιήσετε οθόνη, στέλνουμε ένα 8-bit *

? * Για να εμφανιστεί για να το θέσουμε σε 4-bit. *

? ************************************************* **

InitDisp:

BANKSEL PORTB

λειτουργία 0x02 movlw? που για 4-bit interface

movwf PORTB? Μετακίνηση εντολή να LSB της PORTB

BCF RS? κωδικοποίηση RS (δείχνει εντολή)

BCF Ε? Strobe Ενεργοποίηση

BSF E

κλήση Καθυστέρηση? Αφήστε οθόνη για την επεξεργασία των εντολών

επιστροφή? Επιστροφή στον καλούντα? ************************************************* **

? * Για να στείλετε την εντολή για να την οθόνη, δεδομένα φορτίου σε *

? * W_REG και καλέστε LCDCommand *

? ************************************************* **

LCDCommand:

BCF RS? κωδικοποίηση γραμμής εντολών για RS

goto SendToLCD? ************************************************* **

? * Για να στείλετε δεδομένα στην οθόνη, δεδομένα φορτίου σε *

? * W_REG και καλέστε LCDData *

? ************************************************* **

LCDData:

BSF RS? Ορίστε γραμμή RS για τα δεδομένα? ************************************************* **

? * Υπορουτίνα Universal για να στείλετε ένα byte για την LCD, *

? * Πέρασε στα μέσα της W_REG. *

? ************************************************* **

SendToLCD:

movwf temp? Αποθηκεύστε τα δεδομένα μας σε temp μητρώο

swapf temp, W? nybbles Εναλλαγή και να οδηγήσει τον τόπο σε W

movwf PORTB? Μετακίνηση επάνω nybble των δεδομένων σε LSB της PORTB

BCF Ε? Strobe Ενεργοποίηση

BSF E

movf temp, W? Ανάκτηση αρχικά δεδομένα μας byte σε W

movwf PORTB? Μετακίνηση σε PORTB, κατ 'ουσίαν διάθεση χαμηλότερο nybble

? Σε LSB της PORTB

BCF Ε? Stobe Ενεργοποίηση

BSF E

κλήση Delay? Δώστε χρόνο στην οθόνη διαδικασία εντολή ή δεδομένα

επιστροφή? επιστροφή σε καλούντα? ************************************************* *****

? * Δημιουργήστε μια καθυστέρηση για να επιτρέψει στην Οθόνη διαδικασία εντολή *

? ************************************************* *****Υστέρηση:

clrf εσωτερικό

DLoop:

NOP

NOP

decfsz εσωτερικό

DLoop goto

επιστροφήΤΕΛΟΣ
 
Γεια σου,
Ναι, έχετε δίκιο, θα πρέπει να λειτουργήσει.Αλλά, ως συνήθως ξέρω Ενεργοποίηση σήμα είναι ve παλμό, αλλά το πρόγραμμα χρησιμοποιεί ένα-ve παλμό.Μπορεί να μην έχει σημασία αν ο ελεγκτής χρησιμοποιεί μόνο τα άκρα για τη φόρτωση.
Χαιρετισμοί,
Laktronics

 
hi thanks
buddy
αλλά σε ό, τι u μέρος μπορεί να δει χρησιμοποιεί-ve;
Δεν μπορώ να βρω αυτό το
εις υγεία

 
Γεια σου,
Μπορείτε να δείτε τον κώδικα δύο γραμμής σε χώρους υπό τον τίτλο «strobe επιτρέψει 'σχόλιο.Είναι ένα BitClear (BCF) Ε ακολουθούμενο από BitSet (BSF) Ε. Επίσης είναι η αρχική κατάσταση της Ε bit που καθορίζεται από ένα BSF Ε. Αλλά, όπως έχω ήδη αναφέρει, δεν μπορεί να είναι σημαντικό.

Χαιρετισμοί,
Laktronics

 
γεια
πολύ δροσερό απάντηση στην ερώτησή μου
φίλε είσαι τόσο καλός σε ηλεκτρονική
Υποθέτω ότι θα πρέπει να μελετήσει πιο σκληρά για να φτάσετε στο επίπεδο σας, μία ημέρα
Ευχαριστώ πολύ και πάλι για τις εξηγήσεις σας και όλα
χαιρετισμοί

 

Welcome to EDABoard.com

Sponsor

Back
Top