[30 अंक] मदद

T

tension885

Guest
हैलो,
मैं
एक SPI दास के साथ मेरी AT89c51 कनेक्ट करना चाहते हैं (इस दास) SPI मोड 0,0
समर्थन करता है.जब से AT89c51, इसलिए मैं SPI मास्टर के लिए सॉफ्टवेयर में प्रोग्रामिंग करना होगा नहीं हार्डवेयर SPI आधारित है.
मैं SPI तरीकों के बारे में उलझन में हूँ SPI master.but मैं के लिए SPI routines तुम दिखा रहा हूँ.
मैं कुछ मार्गदर्शन की जरूरत है .... कृपया मुझे बताओ कि
इस कोड को सही है??अर्थात् यह SPI दास के साथ () मोड 0,0 समर्थन कर बातचीत कर सकते हैं??
मुझे इसकी बहुत बहुत जरूरी
मदद करो
<img src="http://www.edaboard.com/images/smiles/icon_cry.gif" alt="रो रही है या बहुत दुख की बात है" border="0" /><img src="http://www.edaboard.com/images/smiles/icon_cry.gif" alt="रो रही है या बहुत दुख की बात है" border="0" /><img src="http://www.edaboard.com/images/smiles/icon_cry.gif" alt="रो रही है या बहुत दुख की बात है" border="0" />

: रोना
30 अंकों की मदद के लिए पुरस्कृत किया जाएगा

कोड:
# शामिल <reg51.h>sbit miso = P2 ^ 0;

sbit mosi = P2 ^ 1;

sbit clk = P2 ^ 3; / / घड़ी = 0 शुरू में

sbit CS = P2 ^ 2;शून्य spi_write (अहस्ताक्षरित चार dat)

(अहस्ताक्षरित चार मैं, ग;ग = dat;

के लिए (i = 0; मैं <8, मैं )

(

अगर ((ग & 0x80) == 0x80)

mosi = 1;

अन्यथा

mosi = 0;clk = 1;

ग = ग <<1;

clk = 0;

)

)

अहस्ताक्षरित चार spi_read ()

(अहस्ताक्षरित चार मैं, dat;के लिए (i = 0; मैं <8, मैं )

(

dat = dat <<1;

clk = 1;

(miso) यदि

dat = dat 1;

clk = 0;

)

वापसी dat;

)/ / अपने कोड की समीक्षा करें और मेरी मदद लोग कृपया
 
Microsoft ma ewidentny problem z komunikacją: firma najpierw ogłosiła, że zamierza zaoferować piratom możliwości zaktualizowania swoich systemów do Windows 10, póżniej sprecyzowała, że nie będzie to oznaczało zalegalizowania pirackich kopii. a teraz oświadczyła, że zaktualizowanie nieoryginalnych wersji Windows do "dziesiątki" nie będzie możliwe. Można się pogubić w tych zapowiedziach i korektach.

Read more...
 
नमस्ते,
आपका कोड
ठीक है, MISO के अलावा लगती उच्च करने के लिए inited होना पड़ता है.क्या आपके शक SPI के संबंध में है?
सादर,
Laktronics

 
जहां MISO shud उच्च होगा???
मेरा शक है
"जाएगा जो spi विधा 0,0 समर्थन करता है एक दास के साथ इस कोड काम???"

 
नमस्ते,
चूंकि MISO एक इनपुट पिन है,
तो आप उसमें उच्च सेट करने के लिए है कि निवेश के रूप में विन्यस्त इसे शुरू करने के लिए ही.हालांकि जब तक,
तुम MISO में नहीं दिख रहे हैं, गुलाम के डेटा MISO करने के लिए आ रहा होगा और अगर बिट यह दास के MISO उत्पादन लोड मई कम है डाटा भेजने.
इस मोड 0 चरण = 0 और घड़ी polarity = 0 घड़ी का उल्लेख है और जो आपके क्या सॉफ्टवेयर का उपयोग कर रहा है.इसके अलावा आप अपने सीएस संकेत चरित्र के दौरान प्राप्त कम या हस्तांतरित अवधि और बना सकते हैं इसे एस एस से जुड़ा हो सकता है, गुलाम के संकेत इनपुट.
क्या आप
से कनेक्ट करना चाहते दास इकाई के विनिर्देशों है?
अपने सॉफ़्टवेयर के अनुसार, आप
MISO, MOSI करने के लिए MOSI CLK को
CLK और सीएस को MISO कनेक्ट करने के लिए एस एस करने के लिए है के बीच मास्टर ans टर्मिनलों गुलाम.) सुनिश्चित करने पर, आप उस पर गुलाम की ओर भी संकेत
है जब सीधे जुड़े पूरक हैं यह सुनिश्चित करने के लिए किया है (जो है, TX RX संपर्क करने के लिए है.

सादर,
Laktronics

 
चूंकि अधिकांश SPI संचार
पूर्ण द्वैध रहे हैं,
तो आप जब भी अपने हस्तांतरित हो रहे हैं पिन MISO पढ़ने की जरूरत है.यह इस तरह से किया जाना चाहिए समारोह संचारित
कोड:अहस्ताक्षरित चार spi_write (अहस्ताक्षरित चार dat)

(

अहस्ताक्षरित चार मैं, ग, retval = 0;ग = dat;

के लिए (i = 0; मैं <8, मैं )

(

retval = retval <<1;अगर ((ग & 0x80) == 0x80)

mosi = 1;

अन्यथा

mosi = 0;clk = 1;(miso) यदि

retval = 1 retval;ग = ग <<1;

clk = 0;

)

वापसी (retval);

)

 
नमस्ते,

अगर आप
एक संयुक्त पढ़ कर के रूप में CMOS कहा गया है /, आप पढ़ने और लिखने के लिए एक अलग दिनचर्या की जरूरत नहीं मई समारोह लिखें.जबकि केवल डेटा पढ़ सकते हैं और यह भी उपेक्षा को लौटा मूल्य जब केवल लेखन इस सॉफ्टवेयर को हमेशा एक डमी कोड भेज सकते हैं.
लेकिन कोड
CMOS द्वारा दी में, यह retval की पारी जोड़ने
के लिए और भी जरूरी है कि MISO बिट का उठा जब घड़ी उच्च है किया जाना है.अपने मूल कोड को देखने के उस बिंदु से परिपूर्ण है.लेकिन आप रखने के लिए उच्च भी जबकि दास से उत्पादन में से हमेशा वहाँ क्या आप यह चाहते हैं या नहीं होगा भेजने पिन MISO की जरूरत है.यदि आप केवल लिखने में रुचि रखते हैं, तो यह भी है कि आप MISO पिन को पढ़ने के लिए है जरूरी नहीं है.

सादर,
Laktronics

 
laktronics लिखा है:

नमस्ते,अगर आप एक संयुक्त पढ़ कर के रूप में CMOS कहा गया है /, आप पढ़ने और लिखने के लिए एक अलग दिनचर्या की जरूरत नहीं मई समारोह लिखें.
जबकि केवल डेटा पढ़ सकते हैं और यह भी उपेक्षा को लौटा मूल्य जब केवल लेखन इस सॉफ्टवेयर को हमेशा एक डमी कोड भेज सकते हैं.

लेकिन कोड CMOS द्वारा दी में, यह retval की पारी जोड़ने के लिए और भी जरूरी है कि MISO बिट का उठा जब घड़ी उच्च है किया जाना है.
अपने मूल कोड को देखने के उस बिंदु से परिपूर्ण है.
लेकिन आप रखने के लिए उच्च भी जबकि दास से उत्पादन में से हमेशा वहाँ क्या आप यह चाहते हैं या नहीं होगा भेजने पिन MISO की जरूरत है.
यदि आप केवल लिखने में रुचि रखते हैं, तो यह भी है कि आप MISO पिन को पढ़ने के लिए है जरूरी नहीं है.सादर,

Laktronics
 
नमस्ते,
हाँ, कोड Mr.CMOS द्वारा दिए एक आम मालिक पक्ष समारोह के रूप में पूर्ण द्वैध या अर्ध द्वैध SPI के लिए इस्तेमाल किया जा सकता है.साथ ही MISO उच्च सेट आप SPI पिन को परिभाषित करने के लिए (यह एक इनपुट) के समारोह से पहले करने के लिए कहा जाता है की है.

सादर,
Laktronics

 
एक बहुत thanx प्रिय frends ....मैं आप से बातें की बहुत कुछ सीखा .. फिर .. thanx
प्रत्येक यू के
30 दे

<img src="http://www.edaboard.com/images/smiles/icon_smile.gif" alt="मुस्कान" border="0" /><img src="http://www.edaboard.com/images/smiles/icon_smile.gif" alt="मुस्कान" border="0" />
[/ कोड]

 
नमस्ते,
यह वास्तव में
आप का भी धन्यवाद अच्छा है.अगर आप अपनी जेब से, बहुत बहुत अंक खोना यदि आप अंकों की जरूरत होती है मुझे जानते हैं तो कृपया इसका मतलब है लेकिन, मैं हमेशा वापस तुम दान कर सकते हैं.
सादर,
Laktronics

 
शुक्रिया ..अगर आप किसी भी अंक की जरूरत है और मैं तुम्हें वापस देने के लिए खुशी होगी. मुझे पता है.

 
मैं तो सिर्फ कि दोनों कोड और काम करता है आवश्यक है [कृपया इसे बदलने और इसके बाद जो दूसरी कोड में बदल रहे हैं जानना चाहता हूँ].

 

Welcome to EDABoard.com

Sponsor

Back
Top