<?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>Atmel, PG302</title><link>https://community.arm.com/developer/tools-software/tools/f/keil-forum/18056/atmel-pg302</link><description> I am programming AT89C2051 in uVision2. 
I am using programmer PG302. 
 
When I flash controller with hex file created using Assembler, everything is OK. 
But when I flash controller with hex file created using C51, I get message &amp;quot;Device not equal to</description><dc:language>en-US</dc:language><generator>Telligent Community 10</generator><item><title>RE: Atmel, PG302</title><link>https://community.arm.com/thread/122533?ContentTypeID=1</link><pubDate>Tue, 12 Oct 2004 15:59:54 GMT</pubDate><guid isPermaLink="false">dd9e70c8-6d3c-4c71-b136-2456382a7b5c:5afd9f88-4332-48b2-9dd2-00cbfa4df1f8</guid><dc:creator>Andy Neil</dc:creator><description>&lt;p&gt;C51 is Keil&amp;#39;s product - so you won&amp;#39;t get that anywhere else!&lt;br /&gt;
&lt;br /&gt;
You could try the Keil MCB900 kit - it&amp;#39;s only about 40 quid, and comes with a &amp;quot;restricted&amp;quot; version of the tools that does not have the offset.&lt;br /&gt;
&lt;a href="http://www.keil.com/mcb900/"&gt;http://www.keil.com/mcb900/&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
For other cheap(er) and free tools, see:&lt;br /&gt;
&lt;a href="http://www.8052.com/links.phtml" target="_blank"&gt;http://www.8052.com/links.phtml&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Atmel, PG302</title><link>https://community.arm.com/thread/111118?ContentTypeID=1</link><pubDate>Tue, 12 Oct 2004 12:42:48 GMT</pubDate><guid isPermaLink="false">dd9e70c8-6d3c-4c71-b136-2456382a7b5c:9fc5fbac-8a54-404f-8ba8-608aa79101c6</guid><dc:creator>Luka Karlovic</dc:creator><description>&lt;p&gt;Ok, thanks for your help, I get it now.&lt;br /&gt;
Demo generates memory offset at the beginning of code, and my atmel has olny 2k...&lt;br /&gt;
&lt;br /&gt;
Can someone tell me some other tool (freeware or demo that works on at89c2051 whitout restrictions)  I can use to write progs in C51?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Atmel, PG302</title><link>https://community.arm.com/thread/111108?ContentTypeID=1</link><pubDate>Tue, 12 Oct 2004 11:08:17 GMT</pubDate><guid isPermaLink="false">dd9e70c8-6d3c-4c71-b136-2456382a7b5c:d7285e7d-bbaa-499d-b32f-36871b575e98</guid><dc:creator>Andy Neil</dc:creator><description>&lt;p&gt;&lt;i&gt;&amp;quot;AT29C2051 2.7-Volt, 80C31 Microcontroller with 2K bytes Flash&amp;quot;&lt;/i&gt;&lt;br /&gt;
&lt;br /&gt;
Read the limitations page again, &lt;b&gt;carefully&lt;/b&gt;:&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.keil.com/demo/limits.asp"&gt;http://www.keil.com/demo/limits.htm&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
It makes two specific mentions about devices with 2K bytes Flash...&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;&amp;quot;Problem solved&amp;quot;&lt;/i&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Atmel, PG302</title><link>https://community.arm.com/thread/96648?ContentTypeID=1</link><pubDate>Tue, 12 Oct 2004 11:04:46 GMT</pubDate><guid isPermaLink="false">dd9e70c8-6d3c-4c71-b136-2456382a7b5c:c2399195-a542-4b72-92db-87a7a5176be4</guid><dc:creator>Andy Neil</dc:creator><description>&lt;p&gt;&lt;i&gt;&amp;quot;problem can&amp;#39;t be in limitations or program size because it&amp;#39;s very small program&amp;quot;&lt;/i&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Wrong.&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
It&amp;#39;s not just the size that matters - it&amp;#39;s where you put it!&lt;br /&gt;
&lt;br /&gt;
Look at your map (Linker Listing) file, and see the address range where the code it located. Then look at the address range available on the chip...&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Atmel, PG302</title><link>https://community.arm.com/thread/96643?ContentTypeID=1</link><pubDate>Tue, 12 Oct 2004 10:12:36 GMT</pubDate><guid isPermaLink="false">dd9e70c8-6d3c-4c71-b136-2456382a7b5c:4c937e75-b26a-4057-ac1d-23c71f729dc5</guid><dc:creator>erik  malund</dc:creator><description>&lt;p&gt;&lt;i&gt;AT29C2051 2.7-Volt, 80C31 Microcontroller with 2K bytes Flash&lt;/i&gt;&lt;br /&gt;
&lt;br /&gt;
Problem solved&lt;br /&gt;
&lt;br /&gt;
Erik&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Atmel, PG302</title><link>https://community.arm.com/thread/72787?ContentTypeID=1</link><pubDate>Tue, 12 Oct 2004 09:44:16 GMT</pubDate><guid isPermaLink="false">dd9e70c8-6d3c-4c71-b136-2456382a7b5c:f3114ad7-5be2-417b-90ff-18f513e2252b</guid><dc:creator>Luka Karlovic</dc:creator><description>&lt;p&gt;I am using keil evaluation uV2.&lt;br /&gt;
&lt;br /&gt;
problem can&amp;#39;t be in limitations or program size because it&amp;#39;s very small program, 5 lines in assembler.&lt;br /&gt;
&lt;br /&gt;
but when I try to program controller with ANY hex (sample codes from the net, or any other surely correct code)&lt;br /&gt;
Assembler version is working&lt;br /&gt;
and C version is NOT working (device not equal to file - it flashes it normally, but when it verifies, i get this message).&lt;br /&gt;
&lt;br /&gt;
Compilation of C is also without any errors or warnings.&lt;br /&gt;
Even when I test program with debugger, it works fine.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
error is probably in programmer software (pg302)&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Atmel, PG302</title><link>https://community.arm.com/thread/72783?ContentTypeID=1</link><pubDate>Mon, 11 Oct 2004 18:37:33 GMT</pubDate><guid isPermaLink="false">dd9e70c8-6d3c-4c71-b136-2456382a7b5c:e4694e44-a5ac-439a-806f-9e64f7575182</guid><dc:creator>Andy Neil</dc:creator><description>&lt;p&gt;&lt;i&gt;&amp;quot;This may be because the program is too big for the device.&amp;quot;&lt;/i&gt;&lt;br /&gt;
&lt;br /&gt;
Or, in the case of the Eval tools, because the code is located outside the address range of the on-chip flash...&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Atmel, PG302</title><link>https://community.arm.com/thread/42953?ContentTypeID=1</link><pubDate>Mon, 11 Oct 2004 18:11:33 GMT</pubDate><guid isPermaLink="false">dd9e70c8-6d3c-4c71-b136-2456382a7b5c:3265af38-9f07-4648-9948-d36dd031935e</guid><dc:creator>Jon Ward</dc:creator><description>&lt;p&gt;&lt;i&gt;I get message &amp;quot;Device not equal to file&amp;quot; (in PG302).&lt;/i&gt;&lt;br /&gt;
&lt;br /&gt;
My interpretation of this error message is that the programmer read the HEX file and wrote it to the device.  It then read the device and discovered that the contents of the device was not the same as what was in the file.&lt;br /&gt;
&lt;br /&gt;
This does not sound like a problem with the Keil tools.  It sounds like there is a problem programming the device.  This may be because the program is too big for the device.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Jon&lt;/b&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Atmel, PG302</title><link>https://community.arm.com/thread/86959?ContentTypeID=1</link><pubDate>Mon, 11 Oct 2004 15:43:51 GMT</pubDate><guid isPermaLink="false">dd9e70c8-6d3c-4c71-b136-2456382a7b5c:6ced05bc-f562-4c7e-985a-4944c9480a0b</guid><dc:creator>Andy Neil</dc:creator><description>&lt;p&gt;If not the Eval tools, do you use &lt;b&gt;printf&lt;/b&gt;?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Atmel, PG302</title><link>https://community.arm.com/thread/42945?ContentTypeID=1</link><pubDate>Mon, 11 Oct 2004 15:06:48 GMT</pubDate><guid isPermaLink="false">dd9e70c8-6d3c-4c71-b136-2456382a7b5c:5dd15d46-c3e4-4edf-b6a3-38d922e886c5</guid><dc:creator>Andy Neil</dc:creator><description>&lt;p&gt;Are you using the free Evaluation tools?&lt;br /&gt;
&lt;br /&gt;
If so, did you read the &lt;b&gt;Limitations&lt;/b&gt;:&lt;br /&gt;
&lt;a href="http://www.keil.com/demo/limits.asp"&gt;http://www.keil.com/demo/limits.htm&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Atmel, PG302</title><link>https://community.arm.com/thread/42950?ContentTypeID=1</link><pubDate>Mon, 11 Oct 2004 13:08:42 GMT</pubDate><guid isPermaLink="false">dd9e70c8-6d3c-4c71-b136-2456382a7b5c:45a095fb-e396-41b2-8396-2f67df4b108b</guid><dc:creator>erik  malund</dc:creator><description>&lt;p&gt;&lt;i&gt;error is probably in created hex file, because it is about 3 times bigger than file created using Assembler (for the same function)). &lt;/i&gt;&lt;br /&gt;
&lt;br /&gt;
Not necessarily, if you write C without any thought of the underlying architecture, you can easily get 3 or more times the size of assembler code.&lt;br /&gt;
&lt;br /&gt;
If you are using the eval version it is possible that because &amp;quot;it is about 3 times bigger &amp;quot; you overrun the eval limit.&lt;br /&gt;
&lt;br /&gt;
Erik&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>