[MyHosting.com]   [KO4BB Home Page]   [Manuals Home Page]   [KO4BB Wiki]
 

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
tools_for_the_silabs_and_other_8051_micro_controllers [2015/01/25 09:45]
ko4bb
tools_for_the_silabs_and_other_8051_micro_controllers [2015/01/25 09:53]
ko4bb
Line 62: Line 62:
 ==== Silabs IDE (Integrated Development Environment) ==== ==== Silabs IDE (Integrated Development Environment) ====
  
-The Silabs IDE is an older piece of code, which includes text editing, incremental compilation support, flash upload and real time, non-intrusive debugging via JTAG (on the larger chips) or a slick 2 wire interface (C2) on the smaller chips like the F330. Functionality of the loader/​debugger is exactly the same via the JTAG or C2 interfaces. ​+The Silabs IDE is an older but fully functional ​piece of code, which includes text editing, incremental compilation support, flash upload and real time, non-intrusive debugging via JTAG (on the larger chips) or a slick 2 wire interface (C2) on the smaller chips like the F330. Functionality of the loader/​debugger is exactly the same via the JTAG or C2 interfaces. ​
  
-The Silabs IDE is no longer ​actively maintained by Silabs, other than adding support for new chips. The download version of the IDE has always been named mcu_ide.exe. There is no version information in the file name. So, make sure you keep a copy of whatever version of the IDE you download by renaming it something like mcu_ide-vx.x.x.exe instead of simply deleting it after you have installed the program. Otherwise, they are all named mcu_ide.exe and a newer download will overwrite the older version. By keeping the old version, you always have the capability to go back if you need a feature that has been removed. I wish I had done that from the beginning, as I have a few development kits that are unusable because the files supporting them are not in the current IDE and I did not keep a copy of the old version.+The Silabs IDE does not appear to be actively maintained by Silabs, other than adding support for new chips. The download version of the IDE has always been named mcu_ide.exe. There is no version information in the file name. So, make sure you keep a copy of whatever version of the IDE you download by renaming it something like mcu_ide-vx.x.x.exe instead of simply deleting it after you have installed the program. Otherwise, they are all named mcu_ide.exe and a newer download will overwrite the older version. By keeping the old version, you always have the capability to go back if you need a feature that has been removed. I wish I had done that from the beginning, as I have a few development kits that are unusable because the files supporting them are not in the current IDE and I did not keep a copy of the old version.
  
 About the hardware, Silabs has a number of JTAG/C2 adapters. The Toolstick Base adapter ($18) works with the Toolstick modules (~$10), but you can buy a ~$10 JTAG adapter that allows to use the Toolstick Base with regular JTAG interface for the larger chips that don't come on a Toolstick. This is a little clunky, but it works, I use it. They also have a regular JTAG/C2/USB adapter, and an older JTAG/​C2/​Serial adapter. I have all of them. They cost about $50. I have found fully compatible JTAG adapters on eBay under the reference EC-6 that work well and cost about $15. I have one and it works well.  About the hardware, Silabs has a number of JTAG/C2 adapters. The Toolstick Base adapter ($18) works with the Toolstick modules (~$10), but you can buy a ~$10 JTAG adapter that allows to use the Toolstick Base with regular JTAG interface for the larger chips that don't come on a Toolstick. This is a little clunky, but it works, I use it. They also have a regular JTAG/C2/USB adapter, and an older JTAG/​C2/​Serial adapter. I have all of them. They cost about $50. I have found fully compatible JTAG adapters on eBay under the reference EC-6 that work well and cost about $15. I have one and it works well. 
Line 78: Line 78:
 Using either Keil or SDCC, you will probably never have to learn a single line of assembly because C extensions allow you to use all the bit oriented functions. The only assembly instruction that the compiler will not let you generate is NOP. In-line assembly is not supported anyhow, but you could have assembly modules in a project otherwise written in C. I have done it a couple of times at the beginning because I was not sure the compiler was doing what I wanted. Keil can generate assembly (it does not by default), and SDCC always produces assembly files, so a good way to learn 8051 assembly is by looking at the output from the compiler. Using either Keil or SDCC, you will probably never have to learn a single line of assembly because C extensions allow you to use all the bit oriented functions. The only assembly instruction that the compiler will not let you generate is NOP. In-line assembly is not supported anyhow, but you could have assembly modules in a project otherwise written in C. I have done it a couple of times at the beginning because I was not sure the compiler was doing what I wanted. Keil can generate assembly (it does not by default), and SDCC always produces assembly files, so a good way to learn 8051 assembly is by looking at the output from the compiler.
  
-==== Temptations and Gotchas ​====+==== TCP/​IP ​====
  
-Silabs also makes an Ethernet controller or two (CP2200 series). They are intended to work with their larger chips, but since they only require 18 IOs or so, they work with even smaller chips (as long as they have at least 32k of flash). When you buy one of the kits with the Ethernet kit AB4, you get a software pack that includes a "​free"​ TCP/IP stack (made by CMX/​Micronet). The Silabs package comes with a TCP/IP Configuration Wizard and is intended to work only with the Keil compiler. ​+Silabs also makes an Ethernet controller or two (CP2200 series). They are intended to work with their larger chips, but since they only require 18 IOs or so, they work with even smaller chips (as long as they have at least 32k of flash). When you buy one of the kits with the Ethernet kit AB4, you get a software pack that includes a "​free"​ TCP/IP stack (made by CMX/​Micronet). The Silabs package comes with a TCP/IP Configuration Wizard and is intended to work only with the Keil compiler. The Silabs CP22xx series only supports 10BaseT Ethernet, not the faster, more popular and embedded standard 100BaseTX.
  
 However, the TCP/IP wizard and Library only work with the Keil compiler. However, the TCP/IP wizard and Library only work with the Keil compiler.
  
 Then the TCP/IP stack only comes as a library, and support from Silabs on the TCP/IP stack is minimal, so if you need any help with the TCP/IP stack, or access to the source code, or using a different compiler, you need to send a very, very large check to CMX, the amount of which depends on what option(s) you want (you want fries with that?), how many projects you want to develop and so on (this pricing strategy is generally referred to as "value pricing"​),​ the cost will be anywhere upwards of $15,000 and usually much more. Then the TCP/IP stack only comes as a library, and support from Silabs on the TCP/IP stack is minimal, so if you need any help with the TCP/IP stack, or access to the source code, or using a different compiler, you need to send a very, very large check to CMX, the amount of which depends on what option(s) you want (you want fries with that?), how many projects you want to develop and so on (this pricing strategy is generally referred to as "value pricing"​),​ the cost will be anywhere upwards of $15,000 and usually much more.
- 
-==== TCP/IP ==== 
  
 Googling TCP/IP, CP2200 and 8051 will eventually lead you to the free Open Source uIP TCP/IP stack, which has been ported to the 8051 and CP2200. It is full featured, but this is not a ready-to-run program for the faint of heart. I have the source code and if/when I get this running with one of the Silabs chip, I will post it on this web site. Googling TCP/IP, CP2200 and 8051 will eventually lead you to the free Open Source uIP TCP/IP stack, which has been ported to the 8051 and CP2200. It is full featured, but this is not a ready-to-run program for the faint of heart. I have the source code and if/when I get this running with one of the Silabs chip, I will post it on this web site.
 +
 +To be honest, if you need a TCP/IP stack nowadays, you will probably be much better off with an ARM chip. Most ARM chips support 100BaseTX Ethernet instead of 10BaseT and a lot of the TCP/IP processing involves 32 bit variables, and that's just more efficiently done on a 32 bit chip.
  
 ====== Conclusion ====== ====== Conclusion ======
 
tools_for_the_silabs_and_other_8051_micro_controllers.txt ยท Last modified: 2015/01/25 09:53 by ko4bb
 
Recent changes RSS feed Creative Commons License Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki
Except as noted, this entire site Copyright © 2002-2017. KO4BB All rights reserved.