atduskgreg-rad 0.2.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (143) hide show
  1. data/History.txt +104 -0
  2. data/License.txt +282 -0
  3. data/Manifest.txt +142 -0
  4. data/README.rdoc +55 -0
  5. data/Rakefile +142 -0
  6. data/bin/hello_world_test/Makefile +436 -0
  7. data/bin/hello_world_test/hello_world.cpp +23 -0
  8. data/bin/rad +302 -0
  9. data/lib/examples/add_hysteresis.rb +13 -0
  10. data/lib/examples/basic_blink.rb +10 -0
  11. data/lib/examples/blink_m_address_assignment.rb +104 -0
  12. data/lib/examples/blink_m_hello.rb +14 -0
  13. data/lib/examples/blink_m_multi.rb +61 -0
  14. data/lib/examples/blink_with_serial.rb +16 -0
  15. data/lib/examples/configure_pa_lcd_boot.rb +91 -0
  16. data/lib/examples/debounce_methods.rb +49 -0
  17. data/lib/examples/external_variable_fu.rb +26 -0
  18. data/lib/examples/external_variables.rb +32 -0
  19. data/lib/examples/first_sound.rb +23 -0
  20. data/lib/examples/frequency_generator.rb +30 -0
  21. data/lib/examples/hello_array.rb +48 -0
  22. data/lib/examples/hello_array2.rb +79 -0
  23. data/lib/examples/hello_array_eeprom.rb +59 -0
  24. data/lib/examples/hello_clock.rb +84 -0
  25. data/lib/examples/hello_eeprom.rb +51 -0
  26. data/lib/examples/hello_eeprom_lcdpa.rb +81 -0
  27. data/lib/examples/hello_format_print.rb +94 -0
  28. data/lib/examples/hello_lcd_charset.rb +75 -0
  29. data/lib/examples/hello_pa_lcd.rb +59 -0
  30. data/lib/examples/hello_servos.rb +88 -0
  31. data/lib/examples/hello_spectra_sound.rb +38 -0
  32. data/lib/examples/hello_world.rb +11 -0
  33. data/lib/examples/hello_xbee.rb +12 -0
  34. data/lib/examples/hysteresis_duel.rb +39 -0
  35. data/lib/examples/i2c_with_clock_chip.rb +124 -0
  36. data/lib/examples/midi_beat_box.rb +86 -0
  37. data/lib/examples/midi_scales.rb +94 -0
  38. data/lib/examples/motor_knob.rb +30 -0
  39. data/lib/examples/servo_buttons.rb +23 -0
  40. data/lib/examples/servo_calibrate_continuous.rb +92 -0
  41. data/lib/examples/servo_throttle.rb +40 -0
  42. data/lib/examples/software_serial.rb +10 -0
  43. data/lib/examples/sparkfun_lcd.rb +48 -0
  44. data/lib/examples/spectra_soft_pot.rb +34 -0
  45. data/lib/examples/times_method.rb +8 -0
  46. data/lib/examples/toggle.rb +10 -0
  47. data/lib/examples/twitter.rb +57 -0
  48. data/lib/examples/two_wire.rb +14 -0
  49. data/lib/libraries/AFSoftSerial/AFSoftSerial.cpp +321 -0
  50. data/lib/libraries/AFSoftSerial/AFSoftSerial.h +61 -0
  51. data/lib/libraries/AFSoftSerial/keywords.txt +18 -0
  52. data/lib/libraries/AF_XPort/AF_XPort.cpp +166 -0
  53. data/lib/libraries/AF_XPort/AF_XPort.h +48 -0
  54. data/lib/libraries/DS1307/DS1307.cpp +162 -0
  55. data/lib/libraries/DS1307/DS1307.h +66 -0
  56. data/lib/libraries/DS1307/keywords.txt +18 -0
  57. data/lib/libraries/FrequencyTimer2/FrequencyTimer2.cpp +144 -0
  58. data/lib/libraries/FrequencyTimer2/FrequencyTimer2.h +42 -0
  59. data/lib/libraries/FrequencyTimer2/keywords.txt +22 -0
  60. data/lib/libraries/I2CEEPROM/I2CEEPROM.cpp +120 -0
  61. data/lib/libraries/I2CEEPROM/I2CEEPROM.h +70 -0
  62. data/lib/libraries/I2CEEPROM/keywords.txt +21 -0
  63. data/lib/libraries/LoopTimer/LoopTimer.cpp +35 -0
  64. data/lib/libraries/LoopTimer/LoopTimer.h +34 -0
  65. data/lib/libraries/LoopTimer/keywords.txt +27 -0
  66. data/lib/libraries/OneWire/OneWire.cpp +194 -0
  67. data/lib/libraries/OneWire/OneWire.h +63 -0
  68. data/lib/libraries/OneWire/keywords.txt +35 -0
  69. data/lib/libraries/OneWire/readme.txt +13 -0
  70. data/lib/libraries/SWSerLCDpa/SWSerLCDpa.cpp +296 -0
  71. data/lib/libraries/SWSerLCDpa/SWSerLCDpa.h +69 -0
  72. data/lib/libraries/SWSerLCDsf/SWSerLCDsf.cpp +311 -0
  73. data/lib/libraries/SWSerLCDsf/SWSerLCDsf.h +67 -0
  74. data/lib/libraries/Servo/Servo.cpp +192 -0
  75. data/lib/libraries/Servo/Servo.h +61 -0
  76. data/lib/libraries/Stepper/Stepper.cpp +220 -0
  77. data/lib/libraries/Stepper/Stepper.h +86 -0
  78. data/lib/libraries/Stepper/keywords.txt +28 -0
  79. data/lib/libraries/Wire/Wire.cpp +262 -0
  80. data/lib/libraries/Wire/Wire.h +67 -0
  81. data/lib/libraries/Wire/keywords.txt +31 -0
  82. data/lib/libraries/Wire/twi.h +57 -0
  83. data/lib/libraries/Wire/utility/twi.c +449 -0
  84. data/lib/libraries/Wire/utility/twi.h +57 -0
  85. data/lib/plugins/bitwise_ops.rb +54 -0
  86. data/lib/plugins/blink.rb +25 -0
  87. data/lib/plugins/blink_m.rb +356 -0
  88. data/lib/plugins/debounce.rb +138 -0
  89. data/lib/plugins/debug_output_to_lcd.rb +71 -0
  90. data/lib/plugins/hysteresis.rb +52 -0
  91. data/lib/plugins/input_output_state.rb +84 -0
  92. data/lib/plugins/lcd_padding.rb +58 -0
  93. data/lib/plugins/mem_test.rb +37 -0
  94. data/lib/plugins/midi.rb +60 -0
  95. data/lib/plugins/parallax_ping.rb +50 -0
  96. data/lib/plugins/servo_pulse.rb +31 -0
  97. data/lib/plugins/servo_setup.rb +86 -0
  98. data/lib/plugins/smoother.rb +54 -0
  99. data/lib/plugins/spark_fun_serial_lcd.rb +100 -0
  100. data/lib/plugins/spectra_symbol.rb +79 -0
  101. data/lib/plugins/twitter_connect.rb +145 -0
  102. data/lib/rad.rb +5 -0
  103. data/lib/rad/README.rdoc +5 -0
  104. data/lib/rad/arduino_plugin.rb +246 -0
  105. data/lib/rad/arduino_sketch.rb +627 -0
  106. data/lib/rad/generators/makefile/makefile.erb +243 -0
  107. data/lib/rad/generators/makefile/makefile.rb +38 -0
  108. data/lib/rad/hardware_library.rb +813 -0
  109. data/lib/rad/init.rb +14 -0
  110. data/lib/rad/progressbar.rb +236 -0
  111. data/lib/rad/rad_processor.rb +128 -0
  112. data/lib/rad/rad_rewriter.rb +94 -0
  113. data/lib/rad/rad_type_checker.rb +26 -0
  114. data/lib/rad/sim/arduino_sketch.rb +57 -0
  115. data/lib/rad/sketch_compiler.rb +47 -0
  116. data/lib/rad/tasks/build_and_make.rake +210 -0
  117. data/lib/rad/tasks/rad.rb +2 -0
  118. data/lib/rad/todo.txt +13 -0
  119. data/lib/rad/variable_processing.rb +153 -0
  120. data/lib/rad/version.rb +9 -0
  121. data/scripts/txt2html +67 -0
  122. data/setup.rb +1585 -0
  123. data/spec/examples/hello_world.rb +11 -0
  124. data/spec/examples/serial_motor.rb +12 -0
  125. data/spec/models/arduino_sketch_spec.rb +82 -0
  126. data/spec/models/sketch_compiler_spec.rb +96 -0
  127. data/spec/models/spec_helper.rb +2 -0
  128. data/spec/sim/hello_world_spec.rb +42 -0
  129. data/spec/spec.opts +1 -0
  130. data/test/test_array_processing.rb +179 -0
  131. data/test/test_plugin_loading.rb +151 -0
  132. data/test/test_translation_post_processing.rb +185 -0
  133. data/test/test_variable_processing.rb +238 -0
  134. data/website/examples/assembler_test.rb.html +73 -0
  135. data/website/examples/gps_reader.rb.html +39 -0
  136. data/website/examples/hello_world.rb.html +38 -0
  137. data/website/examples/serial_motor.rb.html +41 -0
  138. data/website/index.html +178 -0
  139. data/website/index.txt +64 -0
  140. data/website/javascripts/rounded_corners_lite.inc.js +285 -0
  141. data/website/stylesheets/screen.css +169 -0
  142. data/website/template.rhtml +48 -0
  143. metadata +217 -0
data/README.rdoc ADDED
@@ -0,0 +1,55 @@
1
+ =Welcome to RAD (Ruby Arduino Development)
2
+
3
+ RAD is a framework for programming the Arduino physcial computing platform using Ruby. RAD converts Ruby scripts written using a set of Rails-like conventions and helpers into C source code which can be compiled and run on the Arduino microcontroller. It also provides a set of Rake tasks for automating the compilation and upload process.
4
+
5
+ For a full introduction see http://rad.rubyforge.org
6
+
7
+ ==Documentation
8
+
9
+ The main documentation is here: ArduinoSketch.
10
+
11
+ See also the Arduino Software reference: http://www.arduino.cc/en/Reference/HomePage
12
+
13
+ ==Examples
14
+
15
+ See the examples directory for lots of examples of RAD in action:
16
+ http://github.com/atduskgreg/rad/tree/master/lib/examples
17
+
18
+ The atduskgreg/rad wiki also contains a growing library of examples and hardware tutorials:
19
+ http://github.com/atduskgreg/rad/wikis
20
+
21
+ ==Getting Started
22
+
23
+ To install the edge gem:
24
+
25
+ # Update to RubyGems 1.2.0 before proceeding!
26
+ $ gem sources -a http://gems.github.com (you only have to do this once)
27
+ $ sudo gem install atduskgreg-rad
28
+
29
+ A very old and feature poor (though slightly more 'stable' RAD) is available from RubyGems:
30
+
31
+ $ sudo gem install rad
32
+
33
+ We plan to push tagged releases to RubyGems at key points. The 0.3 release should be coming up soon.
34
+
35
+ Run the rad command to create a new project:
36
+
37
+ $ rad my_project
38
+
39
+ Write a sketch that will blink a single LED every 500ms:
40
+
41
+ class MyProject < ArduinoSketch
42
+ output_pin 13, :as => led
43
+
44
+ def loop
45
+ blink led, 500
46
+ end
47
+ end
48
+
49
+ Attach your Arduino and use rake to complile and upload your sketch:
50
+
51
+ $ rake make:upload
52
+
53
+ ==Get Involved
54
+
55
+ Cheers? Jeers? Wanna help out? Contact Greg Borenstein: greg [dot] borenstein [at] gmail [dot] com
data/Rakefile ADDED
@@ -0,0 +1,142 @@
1
+ require 'rubygems'
2
+ require 'rake'
3
+ require 'rake/clean'
4
+ require 'rake/testtask'
5
+ require 'rake/packagetask'
6
+ require 'rake/gempackagetask'
7
+ require 'rake/rdoctask'
8
+ require 'rake/contrib/rubyforgepublisher'
9
+ require 'fileutils'
10
+ require 'hoe'
11
+
12
+ RAD_ROOT = File.expand_path(File.dirname(__FILE__))
13
+
14
+ begin
15
+ require 'spec/rake/spectask'
16
+ rescue LoadError
17
+ puts 'To use rspec for testing you must install rspec gem:'
18
+ puts '$ sudo gem install rspec'
19
+ exit
20
+ end
21
+
22
+ include FileUtils
23
+ require File.join(File.dirname(__FILE__), 'lib', 'rad', 'version')
24
+
25
+ BIN = "rad"
26
+ AUTHOR = 'Greg Borenstein' # can also be an array of Authors
27
+ EMAIL = "greg@mfdz.com"
28
+ DESCRIPTION = "A framework for programming the Arduino physcial computing platform using Ruby. RAD converts Ruby scripts written using a set of Rails-like conventions and helpers into C source code which can be compiled and run on the Arduino microcontroller."
29
+ GEM_NAME = 'rad' # what ppl will type to install your gem
30
+
31
+ @config_file = "~/.rubyforge/user-config.yml"
32
+ @config = nil
33
+ def rubyforge_username
34
+ unless @config
35
+ begin
36
+ @config = YAML.load(File.read(File.expand_path(@config_file)))
37
+ rescue
38
+ puts <<-EOS
39
+ ERROR: No rubyforge config file found: #{@config_file}"
40
+ Run 'rubyforge setup' to prepare your env for access to Rubyforge
41
+ - See http://newgem.rubyforge.org/rubyforge.html for more details
42
+ EOS
43
+ exit
44
+ end
45
+ end
46
+ @rubyforge_username ||= @config["username"]
47
+ end
48
+
49
+ RUBYFORGE_PROJECT = 'rad' # The unix name for your project
50
+ HOMEPATH = "http://#{RUBYFORGE_PROJECT}.rubyforge.org"
51
+ DOWNLOAD_PATH = "http://rubyforge.org/projects/#{RUBYFORGE_PROJECT}"
52
+
53
+ NAME = "rad"
54
+ REV = nil
55
+ # UNCOMMENT IF REQUIRED:
56
+ # REV = `svn info`.each {|line| if line =~ /^Revision:/ then k,v = line.split(': '); break v.chomp; else next; end} rescue nil
57
+ VERS = Rad::VERSION::STRING + (REV ? ".#{REV}" : "")
58
+ CLEAN.include ['**/.*.sw?', '*.gem', '.config', '**/.DS_Store']
59
+ RDOC_OPTS = ['--quiet', '--title', 'rad documentation',
60
+ "--opname", "index.html",
61
+ "--line-numbers",
62
+ "--main", "README",
63
+ "--inline-source"]
64
+
65
+ class Hoe
66
+ def extra_deps
67
+ @extra_deps.reject { |x| Array(x).first == 'hoe' }
68
+ end
69
+ end
70
+
71
+ # Generate all the Rake tasks
72
+ # Run 'rake -T' to see list of generated tasks (from gem root directory)
73
+ hoe = Hoe.new(GEM_NAME, VERS) do |p|
74
+ p.author = AUTHOR
75
+ p.description = DESCRIPTION
76
+ p.email = EMAIL
77
+ p.summary = DESCRIPTION
78
+ p.url = HOMEPATH
79
+ p.rubyforge_name = RUBYFORGE_PROJECT if RUBYFORGE_PROJECT
80
+ p.test_globs = ["test/**/test_*.rb"]
81
+ p.clean_globs |= CLEAN #An array of file patterns to delete on clean.
82
+
83
+ # == Optional
84
+ p.changes = p.paragraphs_of("History.txt", 0..1).join("\n\n")
85
+ p.extra_deps = [ ['RubyToC', '>= 1.0.0'] ]
86
+ #p.spec_extras = {} # A hash of extra values to set in the gemspec.
87
+ end
88
+
89
+ CHANGES = hoe.paragraphs_of('History.txt', 0..1).join("\n\n")
90
+ PATH = (RUBYFORGE_PROJECT == GEM_NAME) ? RUBYFORGE_PROJECT : "#{RUBYFORGE_PROJECT}/#{GEM_NAME}"
91
+ hoe.remote_rdoc_dir = File.join(PATH.gsub(/^#{RUBYFORGE_PROJECT}\/?/,''), 'rdoc')
92
+
93
+ desc 'Generate website files'
94
+ task :website_generate do
95
+ Dir['website/**/*.txt'].each do |txt|
96
+ sh %{ ruby scripts/txt2html #{txt} > #{txt.gsub(/txt$/,'html')} }
97
+ end
98
+ end
99
+
100
+ desc 'Upload website files to rubyforge'
101
+ task :website_upload do
102
+ host = "#{rubyforge_username}@rubyforge.org"
103
+ remote_dir = "/var/www/gforge-projects/#{PATH}/"
104
+ local_dir = 'website'
105
+ sh %{rsync -aCv #{local_dir}/ #{host}:#{remote_dir}}
106
+ end
107
+
108
+ desc 'Generate and upload website files'
109
+ task :website => [:website_generate, :website_upload, :publish_docs]
110
+
111
+ desc 'Release the website and new gem version'
112
+ task :deploy => [:check_version, :website, :release] do
113
+ puts "Remember to create SVN tag:"
114
+ puts "svn copy svn+ssh://#{rubyforge_username}@rubyforge.org/var/svn/#{PATH}/trunk " +
115
+ "svn+ssh://#{rubyforge_username}@rubyforge.org/var/svn/#{PATH}/tags/REL-#{VERS} "
116
+ puts "Suggested comment:"
117
+ puts "Tagging release #{CHANGES}"
118
+ end
119
+
120
+ desc 'Runs tasks website_generate and install_gem as a local deployment of the gem'
121
+ task :local_deploy => [:website_generate, :install_gem]
122
+
123
+ task :check_version do
124
+ unless ENV['VERSION']
125
+ puts 'Must pass a VERSION=x.y.z release version'
126
+ exit
127
+ end
128
+ unless ENV['VERSION'] == VERS
129
+ puts "Please update your version.rb to match the release version, currently #{VERS}"
130
+ exit
131
+ end
132
+ end
133
+
134
+ desc "Run the specs under spec/models"
135
+ Spec::Rake::SpecTask.new do |t|
136
+ t.spec_opts = ['--options', "spec/spec.opts"]
137
+ t.spec_files = FileList['spec/models/*_spec.rb']
138
+ end
139
+
140
+ desc "Default task is to run specs"
141
+ task :default => :spec
142
+
@@ -0,0 +1,436 @@
1
+ # Arduino makefile
2
+ #
3
+ # This makefile allows you to build sketches from the command line
4
+ # without the Arduino environment (or Java).
5
+ #
6
+ # The Arduino environment does preliminary processing on a sketch before
7
+ # compiling it. If you're using this makefile instead, you'll need to do
8
+ # a few things differently:
9
+ #
10
+ # - Give your program's file a .cpp extension (e.g. foo.cpp).
11
+ #
12
+ # - Put this line at top of your code: #include <WProgram.h>
13
+ #
14
+ # - Write prototypes for all your functions (or define them before you
15
+ # call them). A prototype declares the types of parameters a
16
+ # function will take and what type of value it will return. This
17
+ # means that you can have a call to a function before the definition
18
+ # of the function. A function prototype looks like the first line of
19
+ # the function, with a semi-colon at the end. For example:
20
+ # int digitalRead(int pin);
21
+ #
22
+ # - Write a main() function for your program that returns an int, calls
23
+ # init() and setup() once (in that order), and then calls loop()
24
+ # repeatedly():
25
+ #
26
+ # int main()
27
+ # {
28
+ # init();
29
+ # setup();
30
+ #
31
+ # for (;;)
32
+ # loop();
33
+ #
34
+ # return 0;
35
+ # }
36
+ #
37
+ # Instructions for using the makefile:
38
+ #
39
+ # 1. Copy this file into the folder with your sketch.
40
+ #
41
+ # 2. Below, modify the line containing "TARGET" to refer to the name of
42
+ # of your program's file without an extension (e.g. TARGET = foo).
43
+ #
44
+ # 3. Modify the line containg "ARDUINO" to point the directory that
45
+ # contains the Arduino core (for normal Arduino installations, this
46
+ # is the hardware/cores/arduino sub-directory).
47
+ #
48
+ # 4. Modify the line containing "PORT" to refer to the filename
49
+ # representing the USB or serial connection to your Arduino board
50
+ # (e.g. PORT = /dev/tty.USB0). If the exact name of this file
51
+ # changes, you can use * as a wildcard (e.g. PORT = /dev/tty.USB*).
52
+ #
53
+ # 5. At the command line, change to the directory containing your
54
+ # program's file and the makefile.
55
+ #
56
+ # 6. Type "make" and press enter to compile/verify your program.
57
+ #
58
+ # 7. Type "make upload", reset your Arduino board, and press enter to
59
+ # upload your program to the Arduino board.
60
+ #
61
+ # $Id$
62
+
63
+ PORT = /dev/tty.usb*
64
+ TARGET = hello_world
65
+ ARDUINO = /Applications/arduino-0012/hardware/cores/arduino
66
+ SOFTWARE_SERIAL = /Applications/arduino-0012/hardware/libraries/SoftwareSerial
67
+ SRC = $(ARDUINO)/pins_arduino.c $(ARDUINO)/wiring.c \
68
+ $(ARDUINO)/wiring_analog.c $(ARDUINO)/wiring_digital.c \
69
+ $(ARDUINO)/wiring_pulse.c $(ARDUINO)/wiring_serial.c \
70
+ $(ARDUINO)/wiring_shift.c $(ARDUINO)/WInterrupts.c
71
+ CXXSRC = $(ARDUINO)/HardwareSerial.cpp $(SOFTWARE_SERIAL)/SoftwareSerial.cpp $(ARDUINO)/Print.cpp
72
+ MCU = atmega168
73
+ ASRC =
74
+ F_CPU = 16000000
75
+ FORMAT = ihex
76
+ UPLOAD_RATE = 19200
77
+ BIN_DIR = /Applications/arduino-0012/hardware/tools/avr/bin
78
+
79
+ # Name of this Makefile (used for "make depend").
80
+ MAKEFILE = Makefile
81
+
82
+ # Debugging format.
83
+ # Native formats for AVR-GCC's -g are stabs [default], or dwarf-2.
84
+ # AVR (extended) COFF requires stabs, plus an avr-objcopy run.
85
+ DEBUG = stabs
86
+
87
+ OPT = s
88
+
89
+ # Place -D or -U options here
90
+ CDEFS = -DF_CPU=$(F_CPU)
91
+ CXXDEFS = -DF_CPU=$(F_CPU)
92
+
93
+ # Place -I options here
94
+ CINCS = -I$(ARDUINO) -I$(SOFTWARE_SERIAL)
95
+ +CXXINCS = -I$(ARDUINO) -I$(SOFTWARE_SERIAL)
96
+
97
+ # Compiler flag to set the C Standard level.
98
+ # c89 - "ANSI" C
99
+ # gnu89 - c89 plus GCC extensions
100
+ # c99 - ISO C99 standard (not yet fully implemented)
101
+ # gnu99 - c99 plus GCC extensions
102
+ CSTANDARD = -std=gnu99
103
+ CDEBUG = -g$(DEBUG)
104
+ CWARN = -Wall -Wstrict-prototypes
105
+ CTUNING = -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums
106
+ #CEXTRA = -Wa,-adhlns=$(<:.c=.lst)
107
+
108
+ CFLAGS = $(CDEBUG) $(CDEFS) $(CINCS) -O$(OPT) $(CWARN) $(CSTANDARD) $(CEXTRA)
109
+ CXXFLAGS = $(CDEFS) $(CINCS) -O$(OPT)
110
+ #ASFLAGS = -Wa,-adhlns=$(<:.S=.lst),-gstabs
111
+ LDFLAGS = -lm
112
+
113
+
114
+ # Programming support using avrdude. Settings and variables.
115
+ AVRDUDE_PROGRAMMER = stk500
116
+ AVRDUDE_PORT = $(PORT)
117
+ AVRDUDE_WRITE_FLASH = -U flash:w:$(TARGET).hex
118
+ AVRDUDE_FLAGS = -F -p $(MCU) -P $(AVRDUDE_PORT) -c $(AVRDUDE_PROGRAMMER) \
119
+ -b $(UPLOAD_RATE) -C /Applications/arduino-0012/hardware/tools/avr/etc/avrdude.conf
120
+
121
+ # Program settings
122
+ CC = $(BIN_DIR)/avr-gcc
123
+ CXX = $(BIN_DIR)/avr-g++
124
+ OBJCOPY = $(BIN_DIR)/avr-objcopy
125
+ OBJDUMP = $(BIN_DIR)/avr-objdump
126
+ AR = $(BIN_DIR)/avr-ar
127
+ SIZE = $(BIN_DIR)/avr-size
128
+ NM = $(BIN_DIR)/avr-nm
129
+ AVRDUDE = $(BIN_DIR)/avrdude
130
+ REMOVE = rm -f
131
+ MV = mv -f
132
+
133
+ # Define all object files.
134
+ OBJ = $(SRC:.c=.o) $(CXXSRC:.cpp=.o) $(ASRC:.S=.o)
135
+
136
+ # Define all listing files.
137
+ LST = $(ASRC:.S=.lst) $(CXXSRC:.cpp=.lst) $(SRC:.c=.lst)
138
+
139
+ # Combine all necessary flags and optional flags.
140
+ # Add target processor to flags.
141
+ ALL_CFLAGS = -mmcu=$(MCU) -I. $(CFLAGS)
142
+ ALL_CXXFLAGS = -mmcu=$(MCU) -I. $(CXXFLAGS)
143
+ ALL_ASFLAGS = -mmcu=$(MCU) -I. -x assembler-with-cpp $(ASFLAGS)
144
+
145
+
146
+ # Default target.
147
+ all: build
148
+
149
+ build: elf hex
150
+
151
+ elf: $(TARGET).elf
152
+ hex: $(TARGET).hex
153
+ eep: $(TARGET).eep
154
+ lss: $(TARGET).lss
155
+ sym: $(TARGET).sym
156
+
157
+ # Program the device.
158
+ upload: $(TARGET).hex
159
+ $(AVRDUDE) $(AVRDUDE_FLAGS) $(AVRDUDE_WRITE_FLASH)
160
+
161
+
162
+
163
+
164
+ # Convert ELF to COFF for use in debugging / simulating in AVR Studio or VMLAB.
165
+ COFFCONVERT=$(OBJCOPY) --debugging \
166
+ --change-section-address .data-0x800000 \
167
+ --change-section-address .bss-0x800000 \
168
+ --change-section-address .noinit-0x800000 \
169
+ --change-section-address .eeprom-0x810000
170
+
171
+
172
+ coff: $(TARGET).elf
173
+ $(COFFCONVERT) -O coff-avr $(TARGET).elf $(TARGET).cof
174
+
175
+
176
+ extcoff: $(TARGET).elf
177
+ $(COFFCONVERT) -O coff-ext-avr $(TARGET).elf $(TARGET).cof
178
+
179
+
180
+ .SUFFIXES: .elf .hex .eep .lss .sym
181
+
182
+ .elf.hex:
183
+ $(OBJCOPY) -O $(FORMAT) -R .eeprom $< $@
184
+
185
+ .elf.eep:
186
+ -$(OBJCOPY) -j .eeprom --set-section-flags=.eeprom="alloc,load" \
187
+ --change-section-lma .eeprom=0 -O $(FORMAT) $< $@
188
+
189
+ # Create extended listing file from ELF output file.
190
+ .elf.lss:
191
+ $(OBJDUMP) -h -S $< > $@
192
+
193
+ # Create a symbol table from ELF output file.
194
+ .elf.sym:
195
+ $(NM) -n $< > $@
196
+
197
+
198
+ core.a: $(OBJ)
199
+ @for i in $(OBJ); do echo $(AR) rcs core.a $$i; $(AR) rcs core.a $$i; done
200
+
201
+ # Link: create ELF output file from library.
202
+ $(TARGET).elf: core.a
203
+ $(CC) $(ALL_CFLAGS) -o $@ $(TARGET).cpp -L. core.a $(LDFLAGS)
204
+
205
+ # Compile: create object files from C++ source files.
206
+ .cpp.o:
207
+ $(CXX) -c $(ALL_CXXFLAGS) $< -o $@
208
+
209
+ # Compile: create object files from C source files.
210
+ .c.o:
211
+ $(CC) -c $(ALL_CFLAGS) $< -o $@
212
+
213
+
214
+ # Compile: create assembler files from C source files.
215
+ .c.s:
216
+ $(CC) -S $(ALL_CFLAGS) $< -o $@
217
+
218
+
219
+ # Assemble: create object files from assembler source files.
220
+ .S.o:
221
+ $(CC) -c $(ALL_ASFLAGS) $< -o $@
222
+
223
+
224
+
225
+ # Target: clean project.
226
+ clean:
227
+ $(REMOVE) $(TARGET).hex $(TARGET).eep $(TARGET).cof $(TARGET).elf \
228
+ $(TARGET).map $(TARGET).sym $(TARGET).lss core.a \
229
+ $(OBJ) $(LST) $(SRC:.c=.s) $(SRC:.c=.d) $(CXXSRC:.cpp=.s) $(CXXSRC:.cpp=.d)
230
+
231
+ depend:
232
+ if grep '^# DO NOT DELETE' $(MAKEFILE) >/dev/null; \
233
+ then \
234
+ sed -e '/^# DO NOT DELETE/,$$d' $(MAKEFILE) > \
235
+ $(MAKEFILE).$$$$ && \
236
+ $(MV) $(MAKEFILE).$$$$ $(MAKEFILE); \
237
+ fi
238
+ echo '# DO NOT DELETE THIS LINE -- make depend depends on it.' \
239
+ >> $(MAKEFILE); \
240
+ $(CC) -M -mmcu=$(MCU) $(CDEFS) $(CINCS) $(SRC) $(ASRC) >> $(MAKEFILE)
241
+
242
+ .PHONY: all build elf hex eep lss sym program coff extcoff clean depend
243
+ # DO NOT DELETE THIS LINE -- make depend depends on it.
244
+ pins_arduino.o: \
245
+ /Applications/arduino-0012/hardware/cores/arduino/pins_arduino.c \
246
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/io.h \
247
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/sfr_defs.h \
248
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/inttypes.h \
249
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/stdint.h \
250
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/iom168.h \
251
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/iomx8.h \
252
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/portpins.h \
253
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/common.h \
254
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/version.h \
255
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/fuse.h \
256
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/lock.h \
257
+ /Applications/arduino-0012/hardware/cores/arduino/wiring_private.h \
258
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/interrupt.h \
259
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/delay.h \
260
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/util/delay.h \
261
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/util/delay_basic.h \
262
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/stdio.h \
263
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/include/stdarg.h \
264
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/include/stddef.h \
265
+ /Applications/arduino-0012/hardware/cores/arduino/wiring.h \
266
+ /Applications/arduino-0012/hardware/cores/arduino/binary.h \
267
+ /Applications/arduino-0012/hardware/cores/arduino/pins_arduino.h \
268
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/pgmspace.h
269
+ wiring.o: /Applications/arduino-0012/hardware/cores/arduino/wiring.c \
270
+ /Applications/arduino-0012/hardware/cores/arduino/wiring_private.h \
271
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/io.h \
272
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/sfr_defs.h \
273
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/inttypes.h \
274
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/stdint.h \
275
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/iom168.h \
276
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/iomx8.h \
277
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/portpins.h \
278
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/common.h \
279
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/version.h \
280
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/fuse.h \
281
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/lock.h \
282
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/interrupt.h \
283
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/delay.h \
284
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/util/delay.h \
285
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/util/delay_basic.h \
286
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/stdio.h \
287
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/include/stdarg.h \
288
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/include/stddef.h \
289
+ /Applications/arduino-0012/hardware/cores/arduino/wiring.h \
290
+ /Applications/arduino-0012/hardware/cores/arduino/binary.h
291
+ wiring_analog.o: \
292
+ /Applications/arduino-0012/hardware/cores/arduino/wiring_analog.c \
293
+ /Applications/arduino-0012/hardware/cores/arduino/wiring_private.h \
294
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/io.h \
295
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/sfr_defs.h \
296
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/inttypes.h \
297
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/stdint.h \
298
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/iom168.h \
299
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/iomx8.h \
300
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/portpins.h \
301
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/common.h \
302
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/version.h \
303
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/fuse.h \
304
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/lock.h \
305
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/interrupt.h \
306
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/delay.h \
307
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/util/delay.h \
308
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/util/delay_basic.h \
309
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/stdio.h \
310
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/include/stdarg.h \
311
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/include/stddef.h \
312
+ /Applications/arduino-0012/hardware/cores/arduino/wiring.h \
313
+ /Applications/arduino-0012/hardware/cores/arduino/binary.h \
314
+ /Applications/arduino-0012/hardware/cores/arduino/pins_arduino.h \
315
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/pgmspace.h
316
+ wiring_digital.o: \
317
+ /Applications/arduino-0012/hardware/cores/arduino/wiring_digital.c \
318
+ /Applications/arduino-0012/hardware/cores/arduino/wiring_private.h \
319
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/io.h \
320
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/sfr_defs.h \
321
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/inttypes.h \
322
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/stdint.h \
323
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/iom168.h \
324
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/iomx8.h \
325
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/portpins.h \
326
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/common.h \
327
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/version.h \
328
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/fuse.h \
329
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/lock.h \
330
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/interrupt.h \
331
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/delay.h \
332
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/util/delay.h \
333
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/util/delay_basic.h \
334
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/stdio.h \
335
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/include/stdarg.h \
336
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/include/stddef.h \
337
+ /Applications/arduino-0012/hardware/cores/arduino/wiring.h \
338
+ /Applications/arduino-0012/hardware/cores/arduino/binary.h \
339
+ /Applications/arduino-0012/hardware/cores/arduino/pins_arduino.h \
340
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/pgmspace.h
341
+ wiring_pulse.o: \
342
+ /Applications/arduino-0012/hardware/cores/arduino/wiring_pulse.c \
343
+ /Applications/arduino-0012/hardware/cores/arduino/wiring_private.h \
344
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/io.h \
345
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/sfr_defs.h \
346
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/inttypes.h \
347
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/stdint.h \
348
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/iom168.h \
349
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/iomx8.h \
350
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/portpins.h \
351
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/common.h \
352
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/version.h \
353
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/fuse.h \
354
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/lock.h \
355
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/interrupt.h \
356
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/delay.h \
357
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/util/delay.h \
358
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/util/delay_basic.h \
359
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/stdio.h \
360
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/include/stdarg.h \
361
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/include/stddef.h \
362
+ /Applications/arduino-0012/hardware/cores/arduino/wiring.h \
363
+ /Applications/arduino-0012/hardware/cores/arduino/binary.h \
364
+ /Applications/arduino-0012/hardware/cores/arduino/pins_arduino.h \
365
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/pgmspace.h
366
+ wiring_serial.o: \
367
+ /Applications/arduino-0012/hardware/cores/arduino/wiring_serial.c \
368
+ /Applications/arduino-0012/hardware/cores/arduino/wiring_private.h \
369
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/io.h \
370
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/sfr_defs.h \
371
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/inttypes.h \
372
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/stdint.h \
373
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/iom168.h \
374
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/iomx8.h \
375
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/portpins.h \
376
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/common.h \
377
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/version.h \
378
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/fuse.h \
379
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/lock.h \
380
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/interrupt.h \
381
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/delay.h \
382
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/util/delay.h \
383
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/util/delay_basic.h \
384
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/stdio.h \
385
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/include/stdarg.h \
386
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/include/stddef.h \
387
+ /Applications/arduino-0012/hardware/cores/arduino/wiring.h \
388
+ /Applications/arduino-0012/hardware/cores/arduino/binary.h
389
+ wiring_shift.o: \
390
+ /Applications/arduino-0012/hardware/cores/arduino/wiring_shift.c \
391
+ /Applications/arduino-0012/hardware/cores/arduino/wiring_private.h \
392
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/io.h \
393
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/sfr_defs.h \
394
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/inttypes.h \
395
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/stdint.h \
396
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/iom168.h \
397
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/iomx8.h \
398
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/portpins.h \
399
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/common.h \
400
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/version.h \
401
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/fuse.h \
402
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/lock.h \
403
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/interrupt.h \
404
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/delay.h \
405
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/util/delay.h \
406
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/util/delay_basic.h \
407
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/stdio.h \
408
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/include/stdarg.h \
409
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/include/stddef.h \
410
+ /Applications/arduino-0012/hardware/cores/arduino/wiring.h \
411
+ /Applications/arduino-0012/hardware/cores/arduino/binary.h
412
+ WInterrupts.o: \
413
+ /Applications/arduino-0012/hardware/cores/arduino/WInterrupts.c \
414
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/inttypes.h \
415
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/stdint.h \
416
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/io.h \
417
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/sfr_defs.h \
418
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/iom168.h \
419
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/iomx8.h \
420
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/portpins.h \
421
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/common.h \
422
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/version.h \
423
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/fuse.h \
424
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/lock.h \
425
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/interrupt.h \
426
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/pgmspace.h \
427
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/include/stddef.h \
428
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/stdio.h \
429
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/include/stdarg.h \
430
+ /Applications/arduino-0012/hardware/cores/arduino/WConstants.h \
431
+ /Applications/arduino-0012/hardware/cores/arduino/wiring.h \
432
+ /Applications/arduino-0012/hardware/cores/arduino/binary.h \
433
+ /Applications/arduino-0012/hardware/cores/arduino/wiring_private.h \
434
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/avr/delay.h \
435
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/util/delay.h \
436
+ /Applications/arduino-0012/hardware/tools/avr/bin/../lib/gcc/avr/4.3.0/../../../../avr/include/util/delay_basic.h