D
daniel2004
Guest
हाय, मैं एक बेवकूफ सवाल है, मुझे लगता है कि मैं यहाँ बहुत बुनियादी कुछ याद आ रही है.
मैं खिचड़ी भाषा को MPLAB में वेतन वृद्धि के लिए TMR0 मिल लगता है, और मुझे लगता है कि यह तस्वीर में काम कर रहा है या नहीं.सेटअप मैं पहले Option_Reg, और सेट T0CS, ताकि टाइमर बंद करना है.मैं टाइमर जब चाहते हैं आंतरिक घड़ी बंद टाइमर वेतन वृद्धि होगी तो मैं स्पष्ट T0CS गिनती.इस dosnt होगा.द्वारा डेटा पत्रक इस मोड में टाइमर वेतन वृद्धि नहीं क्या बात है चाहिए मेरे पढ़ने.मैं MPLAB में जाँच की है कि सभी बिट्स हैं सेट किया गया है और जैसा कि होना चाहिए मंजूरी दे दी, अब भी नसीब नहीं.मुझे आशा है कि यहाँ कोई इस पर कुछ प्रकाश डाला सकता है.
धन्यवाद
डैनियल
# प्रोसेसर 16F84A परिभाषित
सूची पी = 16F84A,, एफ INHX8M =
# <P16F84A.inc> शामिल
__config _CP_OFF और _PWRTE_OFF और _WDT_OFF और _HS_OSC;************************************************* ***********
; मेमोरी EQUATES
;************************************************* ***********
W_Temp EQU 0x20
STATUS_Temp EQU 0x21
देरी EQU 0x22
;************************************************* ***********
; रीसेट करें और इंटरप्ट वैक्टर
0x0000 ओआरजी, वेक्टर रीसेट करें
गोटो प्रारंभ
0x0004 ओआरजी, वेक्टर इंटरप्ट
गोटो IntVector
;************************************************* ***********
; कार्यक्रम यहाँ शुरू होता है
0x005 ओआरजी
प्रारंभ करना
सीमा सुरक्षा बल स्थिति, RP0
MOVLW 'h'FF
MOVWF TRISA
CLRF TRISB
सीमा सुरक्षा बल के TRISB, 7
सीमा सुरक्षा बल के TRISB, 6
, T0CS बीएसएफ OPTION_REG; Timer0 नहीं चल रहे
सीमा सुरक्षा बल के OPTION_REG, T0SE; बढ़ती बढ़त
BCF OPTION_REG, पीएसए; prescaler के लिए इस्तेमाल tmr0
सीमा सुरक्षा बल के OPTION_REG, PS2, अधिकतम prescaler
सीमा सुरक्षा बल के OPTION_REG, PS1
सीमा सुरक्षा बल के OPTION_REG, PS0
CLRF INTCON; प्रारंभ ताज़ा
, T0IE BCF INTCON; TMR0 इंटरप्ट सक्षम करें
BCF INTCON, T0IF; साफ़ TMR0 फ्लैग
BCF स्थिति, RP0; Bank0
CLRF TMR0
सीमा सुरक्षा बल के INTCON, GIE
गोटो मुख्य
मुख्य
; BTFSS Porta, 1
; गोटो मुख्य
CLRF PORTB
सीमा सुरक्षा बल के PORTB, 0
सीमा सुरक्षा बल स्थिति, RP0
BCF OPTION_REG, T0CS; प्रारंभ TMR0
BCF स्थिति, RP0
एक MOVF देरी, डब्ल्यू
SUBLW डी 76 '
BTFSS स्थिति, Z
गोटो एक
सीमा सुरक्षा बल स्थिति, RP0
सीमा सुरक्षा बल के OPTION_REG, T0CS, बंद करो TMR0
BCF स्थिति, RP0
CLRF TMR0
सीमा सुरक्षा बल के PORTB, 1
; गोटो मुख्य
Main_a
गोटो Main_a
IntVector
सीमा सुरक्षा बल के PORTB, 3
MOVWF W_Temp; कॉपी डब्ल्यू अस्थायी पंजीकरण
, डब्ल्यू SWAPF स्थिति; स्वैप स्थिति में डब्ल्यू बचाया जाए
CLRF स्थिति; 0 बैंक, मौजूदा बैंक, साफ़ करता है IRP, RP1, RP0 की परवाह किए बिना
MOVWF STATUS_Temp; बैंक की स्थिति शून्य STATUS_TEMP रजिस्टर सहेजें
INCF देरी
CLRF TMR0
BCF INTCON, T0IF
SWAPF STATUS_Temp, डब्ल्यू, डब्ल्यू स्वैप में STATUS_TEMP रजिस्टर
; (सेट बैंक मूल राज्य के लिए)
MOVWF स्थिति; स्थिति में डब्ल्यू रजिस्टर हटो
, एफ SWAPF W_Temp; W_TEMP स्वैप
SWAPF W_Temp, डब्ल्यू, डब्ल्यू में स्वैप W_TEMP
RETFIE
अंत
मैं खिचड़ी भाषा को MPLAB में वेतन वृद्धि के लिए TMR0 मिल लगता है, और मुझे लगता है कि यह तस्वीर में काम कर रहा है या नहीं.सेटअप मैं पहले Option_Reg, और सेट T0CS, ताकि टाइमर बंद करना है.मैं टाइमर जब चाहते हैं आंतरिक घड़ी बंद टाइमर वेतन वृद्धि होगी तो मैं स्पष्ट T0CS गिनती.इस dosnt होगा.द्वारा डेटा पत्रक इस मोड में टाइमर वेतन वृद्धि नहीं क्या बात है चाहिए मेरे पढ़ने.मैं MPLAB में जाँच की है कि सभी बिट्स हैं सेट किया गया है और जैसा कि होना चाहिए मंजूरी दे दी, अब भी नसीब नहीं.मुझे आशा है कि यहाँ कोई इस पर कुछ प्रकाश डाला सकता है.
धन्यवाद
डैनियल
# प्रोसेसर 16F84A परिभाषित
सूची पी = 16F84A,, एफ INHX8M =
# <P16F84A.inc> शामिल
__config _CP_OFF और _PWRTE_OFF और _WDT_OFF और _HS_OSC;************************************************* ***********
; मेमोरी EQUATES
;************************************************* ***********
W_Temp EQU 0x20
STATUS_Temp EQU 0x21
देरी EQU 0x22
;************************************************* ***********
; रीसेट करें और इंटरप्ट वैक्टर
0x0000 ओआरजी, वेक्टर रीसेट करें
गोटो प्रारंभ
0x0004 ओआरजी, वेक्टर इंटरप्ट
गोटो IntVector
;************************************************* ***********
; कार्यक्रम यहाँ शुरू होता है
0x005 ओआरजी
प्रारंभ करना
सीमा सुरक्षा बल स्थिति, RP0
MOVLW 'h'FF
MOVWF TRISA
CLRF TRISB
सीमा सुरक्षा बल के TRISB, 7
सीमा सुरक्षा बल के TRISB, 6
, T0CS बीएसएफ OPTION_REG; Timer0 नहीं चल रहे
सीमा सुरक्षा बल के OPTION_REG, T0SE; बढ़ती बढ़त
BCF OPTION_REG, पीएसए; prescaler के लिए इस्तेमाल tmr0
सीमा सुरक्षा बल के OPTION_REG, PS2, अधिकतम prescaler
सीमा सुरक्षा बल के OPTION_REG, PS1
सीमा सुरक्षा बल के OPTION_REG, PS0
CLRF INTCON; प्रारंभ ताज़ा
, T0IE BCF INTCON; TMR0 इंटरप्ट सक्षम करें
BCF INTCON, T0IF; साफ़ TMR0 फ्लैग
BCF स्थिति, RP0; Bank0
CLRF TMR0
सीमा सुरक्षा बल के INTCON, GIE
गोटो मुख्य
मुख्य
; BTFSS Porta, 1
; गोटो मुख्य
CLRF PORTB
सीमा सुरक्षा बल के PORTB, 0
सीमा सुरक्षा बल स्थिति, RP0
BCF OPTION_REG, T0CS; प्रारंभ TMR0
BCF स्थिति, RP0
एक MOVF देरी, डब्ल्यू
SUBLW डी 76 '
BTFSS स्थिति, Z
गोटो एक
सीमा सुरक्षा बल स्थिति, RP0
सीमा सुरक्षा बल के OPTION_REG, T0CS, बंद करो TMR0
BCF स्थिति, RP0
CLRF TMR0
सीमा सुरक्षा बल के PORTB, 1
; गोटो मुख्य
Main_a
गोटो Main_a
IntVector
सीमा सुरक्षा बल के PORTB, 3
MOVWF W_Temp; कॉपी डब्ल्यू अस्थायी पंजीकरण
, डब्ल्यू SWAPF स्थिति; स्वैप स्थिति में डब्ल्यू बचाया जाए
CLRF स्थिति; 0 बैंक, मौजूदा बैंक, साफ़ करता है IRP, RP1, RP0 की परवाह किए बिना
MOVWF STATUS_Temp; बैंक की स्थिति शून्य STATUS_TEMP रजिस्टर सहेजें
INCF देरी
CLRF TMR0
BCF INTCON, T0IF
SWAPF STATUS_Temp, डब्ल्यू, डब्ल्यू स्वैप में STATUS_TEMP रजिस्टर
; (सेट बैंक मूल राज्य के लिए)
MOVWF स्थिति; स्थिति में डब्ल्यू रजिस्टर हटो
, एफ SWAPF W_Temp; W_TEMP स्वैप
SWAPF W_Temp, डब्ल्यू, डब्ल्यू में स्वैप W_TEMP
RETFIE
अंत