| 
	
     | 
     
      
        
     | 
    Atmex 
            An entry-level Atmel 
             Experimentation 
            System    | 
   
 
       
	  	
  		
    	|   | 
    	 
              Atmex is a prototyping system for someone who is just beginning 
                to work with microcontrollers. It uses the Atmel ATtiny2313 chip, 
                an inexpensive but reasonably powerful microcontroller which has 
                bootloading capability. The Atmex board has a serial port so that 
                the user can easily upload new code without the use of 
                a microcontroller programmer (such as the STK-500, AVRISP, etc). 
                Programming software open source and is written in java so it 
                can run on any computer. At a total cost of less than $10, each 
                project can be dedicated its own board. 
              
                
                  | Comments/corrections/suggestions/free food should be directed 
                    to: | 
                    | 
                 
               
                
                
              Atmex is meant to function as 'digital glue,' and as a next-step-up 
                from the oft-used iRX board and system. For more information abuot 
                iRX (IR eXperimenter board) system, please read the very nice 
                webpage. iRX 
                uses a Microchip PIC microcontroller, as opposed to an Atmel AVR 
                microcontroller and they are NOT compatible! 
                 | 
    	  | 
  		 
	 
	  
      Hardware 
      Overview 
	   Atmex 
        is primarily a hardware platform, a 1.5" x 3" board, half of 
        which is a mixed analog/digital prototyping area. 
	  
         
           | 
           
               
             The board is meant to embody the most basic hardware 
              requirements for simple microcontroller projects. That is: regulated 
              power input, serial communication (for interfacing to a computer 
              and debugging), an LED, a reset button and a breakout section. In 
              quantities of 25, the board costs $10 total, and can be assembled 
              by someone with virtually no soldering experience. 
             | 
            | 
         
         
           | 
           | 
           | 
         
       
      
      Firmware 
      Overview 
	  The 
        microcontroller is intialized with the Atmex firmware, a 512byte bootloader 
        that allows the user to upload new code from the built-in serial port. 
	  
         
           | 
           
               
            
              
                  | 
                The bootloader is in the bottom quarter of program memory. 
                    The first instruction in memory (which is where the chip starts 
                    execution) directs it to go to the bootloader beginning. The 
                    bootloader waits to see if any serial input arrives within 
                    3 seconds, in which case it readies itself for programming, 
                    verification, etc. Otherwise, it jumps to address 0x2ff (right 
                    before the bootloader). If there is code loaded into the microcontroller, 
                    it jumps to the beginning of the loaded program. 
                   | 
               
             
             | 
            | 
         
         
           | 
           | 
           | 
         
       
      
      Software 
      Overview 
	  The 
        software, known as JAvrProg, is a java bootloading interface. It allows 
        the user to upload, download and verify code on the Atmex. 
	  
         
           | 
           
            
              
                  | 
                JAvrProg runs on any computer with a Java Runtime Environment 
                    and the Java SerialComm library installed. Browse for a Intel 
                    Hex file, then program the flash, or verify that it is the 
                    same code that is already on the chip. The code can also be 
                    read (and the programmed onto a different board) 
                  Right now, EEPROM programming isn't supported but it 
                    will be very soon. 
                  In theory, JAvrProg could support any bootloader, but not 
                    without modification since it uses the particular booloading 
                    method outlined above.  | 
               
             
             | 
            | 
         
         
           | 
           | 
           | 
         
       
      
      
     |