README.lyx 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245
  1. #LyX 1.6.7 created this file. For more info see http://www.lyx.org/
  2. \lyxformat 345
  3. \begin_document
  4. \begin_header
  5. \textclass article
  6. \use_default_options false
  7. \language english
  8. \inputencoding auto
  9. \font_roman default
  10. \font_sans default
  11. \font_typewriter default
  12. \font_default_family default
  13. \font_sc false
  14. \font_osf false
  15. \font_sf_scale 100
  16. \font_tt_scale 100
  17. \graphics default
  18. \paperfontsize default
  19. \use_hyperref false
  20. \papersize default
  21. \use_geometry false
  22. \use_amsmath 1
  23. \use_esint 1
  24. \cite_engine basic
  25. \use_bibtopic false
  26. \paperorientation portrait
  27. \secnumdepth 3
  28. \tocdepth 3
  29. \paragraph_separation indent
  30. \defskip medskip
  31. \quotes_language english
  32. \papercolumns 1
  33. \papersides 1
  34. \paperpagestyle default
  35. \tracking_changes false
  36. \output_changes false
  37. \author ""
  38. \author ""
  39. \end_header
  40. \begin_body
  41. \begin_layout Title
  42. Toprammer - TOPxxxx OpenSource suite
  43. \end_layout
  44. \begin_layout Author
  45. Copyright (c) 2009-2011 Michael Buesch <m@bues.ch>
  46. \end_layout
  47. \begin_layout Section
  48. Dependencies
  49. \end_layout
  50. \begin_layout Itemize
  51. Python 2.5, Python 2.6 or Python 2.7 is required
  52. \end_layout
  53. \begin_layout LyX-Code
  54. http://python.org/
  55. \end_layout
  56. \begin_layout Itemize
  57. python-usb module is required:
  58. \end_layout
  59. \begin_layout LyX-Code
  60. http://sourceforge.net/apps/mediawiki/pyusb/index.php?title=Main_Page
  61. \end_layout
  62. \begin_layout Itemize
  63. python-pkg-resources module is required 'pkg_resources' is part of the Python
  64. 'setuptools' package.
  65. \end_layout
  66. \begin_layout LyX-Code
  67. http://pypi.python.org/pypi/setuptools
  68. \end_layout
  69. \begin_layout Itemize
  70. PyQT4 is required for the graphical user interface (optional):
  71. \end_layout
  72. \begin_layout LyX-Code
  73. http://www.riverbankcomputing.co.uk/software/pyqt/intro
  74. \end_layout
  75. \begin_layout Section
  76. Supported chips
  77. \end_layout
  78. \begin_layout Standard
  79. Just execute the following command to get a list of supported chips:
  80. \end_layout
  81. \begin_layout LyX-Code
  82. toprammer --list
  83. \end_layout
  84. \begin_layout Standard
  85. For a more verbose list, also pass the -V parameter with a verbosity level
  86. number:
  87. \end_layout
  88. \begin_layout LyX-Code
  89. toprammer --list -V99
  90. \end_layout
  91. \begin_layout Section
  92. Installation
  93. \end_layout
  94. \begin_layout Standard
  95. Just execute
  96. \end_layout
  97. \begin_layout LyX-Code
  98. python ./setup.py install
  99. \end_layout
  100. \begin_layout Standard
  101. as root inside of the toprammer distribution package's root directory.
  102. Note that
  103. \begin_inset Quotes eld
  104. \end_inset
  105. setuptools
  106. \begin_inset Quotes erd
  107. \end_inset
  108. have to be installed on your system.
  109. See dependencies.
  110. \end_layout
  111. \begin_layout Section
  112. Graphical user interface tool usage
  113. \end_layout
  114. \begin_layout Standard
  115. The toprammer GUI tool is called
  116. \begin_inset Quotes eld
  117. \end_inset
  118. toprammer-gui
  119. \begin_inset Quotes erd
  120. \end_inset
  121. .
  122. To start it just run:
  123. \end_layout
  124. \begin_layout LyX-Code
  125. toprammer-gui
  126. \end_layout
  127. \begin_layout Standard
  128. Note that, depending on your system config, you might need to run toprammer-gui
  129. as root to allow USB hardware access.
  130. If you get
  131. \begin_inset Quotes eld
  132. \end_inset
  133. Operation not permitted" errors, try to re-run toprammer-gui as root.
  134. \end_layout
  135. \begin_layout Section
  136. Commandline tool usage
  137. \end_layout
  138. \begin_layout Standard
  139. Toprammer needs the identification string of the chip that is inserted into
  140. the ZIF socket.
  141. Additionally it needs an action to be performed on the chip.
  142. So a call to toprammer might look like this:
  143. \end_layout
  144. \begin_layout LyX-Code
  145. toprammer --chip-id atmega32dip40 --read-prog flash.img
  146. \end_layout
  147. \begin_layout Standard
  148. That command selects an Atmel AtMega32 DIP40 chip and reads its flash contents
  149. into the flash.img file.
  150. \end_layout
  151. \begin_layout Standard
  152. For a list of supported chips, see the
  153. \end_layout
  154. \begin_layout LyX-Code
  155. topgrammer --list
  156. \end_layout
  157. \begin_layout Standard
  158. command.
  159. It will print a list of supported chip-IDs.
  160. \end_layout
  161. \begin_layout Section
  162. ZIF socket layout
  163. \end_layout
  164. \begin_layout Standard
  165. The ZIF socket layout generator "toprammer-layout" will try to generate
  166. a chip-insert layout with the given parameters and print it as ASCII-art
  167. to the console.
  168. \end_layout
  169. \begin_layout Standard
  170. For example, if you have a DIP28 packaged chip, that needs VCC on pin 7,
  171. VPP on pin 1 and GND on pin 8, you'd issue the following command:
  172. \end_layout
  173. \begin_layout LyX-Code
  174. toprammer-layout -d top2049 --package DIP28 --vcc 7 --vpp 1 --gnd 8
  175. \end_layout
  176. \begin_layout Standard
  177. This will show you a layout of how to insert the chip into the programmer.
  178. It will also show which pins of the ZIF are powered.
  179. This will hopefully match your request.
  180. :) Alternatively, it will yield an error message, if it was unable to find
  181. a layout that fits the contraints.
  182. Note that the --vcc, --vpp and --gnd pins specified on the commandline
  183. are with respect to the package (_not_ the ZIF socket).
  184. The whole purpose of the tool is to map the package and its pin layout
  185. to the ZIF socket, while obeying the programmer constraints.
  186. \end_layout
  187. \begin_layout Standard
  188. Alternatively you can specify one of the supported chip-IDs to toprammer-layout:
  189. \end_layout
  190. \begin_layout LyX-Code
  191. toprammer-layout -d top2049 --package atmega8dip28
  192. \end_layout
  193. \begin_layout Standard
  194. This will show you the layout of the AtMega8 DIP28.
  195. \end_layout
  196. \end_body
  197. \end_document