<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://community.arm.com/utility/feedstylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>22 doubts in basics of 8051</title><link>https://community.arm.com/developer/tools-software/tools/f/keil-forum/15457/22-doubts-in-basics-of-8051</link><description> Hi 8051 experts 
 
please help me understanding following:- 
 
1. which was the first microcontroller 
2. what does legacy port means 
3. what is pulse width modulator 
4. what is phase locked loops 
5. what is minimum time for level triggering in 8051</description><dc:language>en-US</dc:language><generator>Telligent Community 10</generator><item><title>RE: 22 doubts in basics of 8051</title><link>https://community.arm.com/thread/54966?ContentTypeID=1</link><pubDate>Mon, 27 Jan 2003 11:46:03 GMT</pubDate><guid isPermaLink="false">dd9e70c8-6d3c-4c71-b136-2456382a7b5c:695411e2-8fc6-4138-a295-9aa47da32c1b</guid><dc:creator>Drew Davis</dc:creator><description>&lt;p&gt;&lt;br /&gt;
To cherry-pick some of the more Keil-specific questions:&lt;br /&gt;
&lt;br /&gt;
#12: Embedded programs can&amp;#39;t &amp;quot;return from main&amp;quot;; there&amp;#39;s nowhere to go.  They should always involve an infinite loop so that they don&amp;#39;t terminate.  In this case, main() tranmits a &amp;#39;C&amp;#39;, and then executes the normal RET instruction to return from the procedure.  Since the stack is full of zeroes, the return address the RET instruction will find is 0, and the program will jump to 0 -- the same location at which it begins execution on a reset.  So, this program will keep executing over and over.&lt;br /&gt;
&lt;br /&gt;
#18: The Keil toolset comes with two linkers.  BL51 is the &amp;quot;old&amp;quot; linker, while LX51 has extra fancy features.  You need to use LX51 to support some of the more advanced options with the Keil tools.  The &amp;quot;Assembler/Utilies&amp;quot; manual can fill you in on the details of the linkers.&lt;br /&gt;
&lt;br /&gt;
#20.  The 8051 has an extremely limited hardware stack.  The Keil C compiler does some compile-time analysis to determine the memory usage of your C code.  It uses the call tree to determine what routines execute in separate branches, and thus can reuse the same memory space.  Most of the information that traditionally gets pushed onto the stack in a typical C implementation, such as parameters and local (&amp;quot;auto&amp;quot;) variables, is thus assigned directly to memory with the Keil tools.  Normally, the stack is used only for return addresses, with some rare usage in the generated code.&lt;br /&gt;
&lt;br /&gt;
This overlay generation is efficient, but imposes some limits on the way C routines can be called, in particular with respect to recursive routines or reentrant routines.  To handle these cases, the Keil tools have an option to declare routines as &amp;quot;reentrant&amp;quot;.  In this case, the compiler will generate code to stuff parameters and locals onto a software-maintained stack, much like a normal implementation.  The resultant code is bigger and slower, but gives you the usual C semantics back when you have to have them.&lt;br /&gt;
&lt;br /&gt;
22.  Currently, 7.02b for C51.  Among other possibilities, uVision&amp;#39;s &amp;quot;Help/About&amp;quot; box shows you your version.&lt;br /&gt;
&lt;br /&gt;
&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: 22 doubts in basics of 8051</title><link>https://community.arm.com/thread/39685?ContentTypeID=1</link><pubDate>Mon, 27 Jan 2003 10:15:33 GMT</pubDate><guid isPermaLink="false">dd9e70c8-6d3c-4c71-b136-2456382a7b5c:5bbd91a8-4d2b-4a9c-aa52-e7f745c8fa4b</guid><dc:creator>erik  malund</dc:creator><description>&lt;p&gt;at &amp;lt;a href=&amp;quot;&lt;a href="http://www.8052.com/links.phtml"&gt;&amp;quot; target=&amp;quot;_blank&amp;quot;&amp;gt;http://www.8052.com/links.phtml&amp;quot;&amp;gt;http://www.8052.com/links.phtml&amp;lt;/a&amp;amp;gt&lt;/a&gt;; you will under &amp;quot;interesting sites&amp;quot; find links to chapters 1,2 and 3 of the &amp;quot;&amp;#39;51 bible&amp;quot;.  Download and read those and when you end up with 1 or 2 questions instead of 22 post again.&lt;br /&gt;
&lt;br /&gt;
Have fun reading&lt;br /&gt;
&lt;br /&gt;
Erik&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>