Atmel प्रोसेसर के लिए codevision संकलक में, वहाँ उदाहरणएक चर प्रारंभ करना और भंडारण पते को एक ही समय निर्दिष्ट करना: क्या यह संभव है?
int a @0x100; // will place the variable at the address 0x100 in RAM
बेशक
के लिए, एक वैश्विक चर के भंडारण के पते निर्दिष्ट करने के लिए एक संभावना है, मानक सी के अनुसार, चर पर प्रारंभ किया जा सकता है घोषणा
int a=42;
हालांकि, मुझे दोनों को करने की कोई संभावना नहीं मिली। int a @0x100 = 42
या int a = 42 @0x100;
काम नहीं करते हैं, वे संकलक त्रुटियों का कारण बनते हैं।
आप कारण है कि यह यह करने के लिए बहुत महत्वपूर्ण है पूछ सकते हैं, क्योंकि एक बस
int a @0x100;
int main()
{
a = 42;
//...
}
हो सकता था हालांकि, अगर मैं EEPROM में चर है, मैं उन्हें प्रारंभ करने की आवश्यकता है क्योंकि यह है इसमें मूल्यों के साथ स्वचालित रूप से eeprom फ़ाइल उत्पन्न करने का एकमात्र तरीका। मैं बाद में उन मानों को असाइन नहीं कर सकता, क्योंकि उस स्थिति में यह वास्तव में कार्यक्रम की प्रत्येक शुरुआत में मूल्यों को eeprom में लिख देगा।
कौन सा विशेष एटम प्रोसेसर परिवार? क्या यह धागा http://www.avrfreaks.net/index.php?name=PNphpBB2&file=viewtopic&p=102678? –
एटमेगा में मदद करता है, लेकिन eeprom हैंडलिंग एक ही है। धागा केवल विस्तार से वर्णन करता है कि मैं क्या करता हूं मेरे पिछले पैराग्राफ में लिखा है (यदि मैं घोषणा 'eeprom int a पर एक eeprom चर के लिए मान असाइन करता हूं = 42; 'इसका मतलब है कि यह मान जेनरेट की गई eeprom फ़ाइल में जोड़ा जाएगा जो केवल डिवाइस पर एक बार लिखा जाएगा। जब भी कार्यक्रम शुरू होता है, यह वास्तव में eeprom को लिखा नहीं जाएगा, एक बहुत अच्छी सुविधा)। अगर मैंने एक अलग कमांड में मान असाइन किया था, तो इसे eeprom को लिखने के निर्देश के लिए संकलित किया जाएगा। लिंक के लिए धन्यवाद, अगर मैं यहां कुछ भी उपयोगी नहीं हूं तो मैं वहां पूछने की कोशिश करूंगा। – vsz
कृपया बताएं कि आप वास्तव में क्या करने की कोशिश कर रहे हैं, ऐसा लगता है कि आप कुछ ऐसा करने के लिए गलत पथ नीचे गए हैं।एटम के पास इनमें से किसी के साथ कुछ लेना देना नहीं है। क्या आप एक विशिष्ट पते पर eeprom स्पेस में मौजूद मान को नियंत्रित करना चाहते हैं? क्या आप ऐसे मूल्य को नियंत्रित करना चाहते हैं जो एक रजिस्टर/मेमोरी में है जो eeprom में नहीं है? यदि उत्तरार्द्ध आप पते को नियंत्रित करना चाहते हैं ताकि आपके कार्यक्रम को एक बार शुरू करने के लिए एक चर हो सकता है जो उस रजिस्टर/मेमोरी लोकेशन (जो eeprom में नहीं है) पर इंगित करता है? –