madrona-rad 0.2.5 → 0.2.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (51) hide show
  1. data/History.txt +14 -0
  2. data/Manifest.txt +41 -18
  3. data/Rakefile +5 -0
  4. data/bin/rad +16 -6
  5. data/lib/examples/blink_m_address_assignment.rb +104 -0
  6. data/lib/examples/blink_m_multi.rb +61 -0
  7. data/lib/examples/configure_pa_lcd_boot.rb +91 -0
  8. data/lib/examples/external_variables.rb +5 -1
  9. data/lib/examples/hello_array.rb +48 -0
  10. data/lib/examples/hello_array2.rb +79 -0
  11. data/lib/examples/hello_array_eeprom.rb +61 -0
  12. data/lib/examples/hello_eeprom.rb +4 -7
  13. data/lib/examples/hello_eeprom_lcdpa.rb +81 -0
  14. data/lib/examples/hello_lcd_charset.rb +75 -0
  15. data/lib/examples/hello_pa_lcd.rb +59 -0
  16. data/lib/examples/hysteresis_duel.rb +39 -0
  17. data/lib/examples/motor_knob.rb +30 -0
  18. data/lib/examples/orig_servo_throttle.rb +1 -1
  19. data/lib/examples/servo_calibrate_continuous.rb +92 -0
  20. data/lib/examples/servo_throttle.rb +1 -1
  21. data/lib/examples/sparkfun_lcd.rb +2 -2
  22. data/lib/examples/spectra_soft_pot.rb +34 -0
  23. data/lib/libraries/SWSerLCDpa/SWSerLCDpa.cpp +60 -25
  24. data/lib/libraries/SWSerLCDpa/SWSerLCDpa.h +8 -2
  25. data/lib/libraries/SWSerLCDsf/SWSerLCDsf.cpp +46 -27
  26. data/lib/libraries/SWSerLCDsf/SWSerLCDsf.h +5 -2
  27. data/lib/libraries/Stepper/Stepper.cpp +220 -0
  28. data/lib/libraries/Stepper/Stepper.h +86 -0
  29. data/lib/libraries/Stepper/keywords.txt +28 -0
  30. data/lib/libraries/Wire/utility/twi.c +449 -0
  31. data/lib/libraries/Wire/utility/twi.h +57 -0
  32. data/lib/plugins/blink_m.rb +79 -46
  33. data/lib/plugins/hysteresis.rb +52 -0
  34. data/lib/plugins/lcd_padding.rb +39 -0
  35. data/lib/plugins/spectra_symbol.rb +79 -0
  36. data/lib/rad/arduino_plugin.rb +21 -0
  37. data/lib/rad/arduino_sketch.rb +231 -53
  38. data/lib/rad/init.rb +2 -2
  39. data/lib/rad/rad_processor.rb +42 -1
  40. data/lib/rad/rad_type_checker.rb +26 -0
  41. data/lib/rad/sim/arduino_sketch.rb +57 -0
  42. data/lib/rad/tasks/build_and_make.rake +4 -4
  43. data/lib/rad/variable_processing.rb +49 -12
  44. data/lib/rad/version.rb +1 -1
  45. data/test/test_array_processing.rb +179 -0
  46. data/test/test_plugin_loading.rb +151 -0
  47. data/test/test_translation_post_processing.rb +185 -0
  48. data/{lib/test → test}/test_variable_processing.rb +63 -13
  49. data/website/index.html +8 -7
  50. metadata +66 -30
  51. data/lib/test/test_array_processing.rb +0 -78
@@ -1,78 +0,0 @@
1
- #!/usr/local/bin/ruby -w
2
-
3
- $TESTING = true
4
-
5
- # need to tell it where we are
6
- # lets review these
7
- C_VAR_TYPES = "int|void|unsigned|long|short|uint8_t|static|byte|float"
8
- require 'vendor/rad/variable_processing'
9
- require 'vendor/rad/arduino_sketch'
10
- require 'test/unit'
11
-
12
-
13
-
14
- class TestArrayProcessing < Test::Unit::TestCase
15
-
16
- def setup
17
- @t = ArduinoSketch.new
18
- # vars
19
- end
20
-
21
- def test_int_array
22
- name = "foo_a"
23
- value_string = 1
24
- expected = "int tomatoes[];"
25
- result = @t.array("int tomatoes[]")
26
- assert_equal(expected, result[0])
27
- end
28
-
29
- def test_int_array_with_semi
30
- name = "foo_a"
31
- value_string = 1
32
- expected = "int tomatoes[];"
33
- result = @t.array("int tomatoes[];")
34
- assert_equal(expected, result[0])
35
- end
36
-
37
- def test_int_array_with_assignment
38
- name = "foo_a"
39
- value_string = 1
40
- expected = "int tomatoes[4];"
41
- result = @t.array("int tomatoes[] = {1,2,3,4}")
42
- assert_equal(expected, result[0])
43
- end
44
-
45
- def test_int_array_with_assignment_and_semi
46
- name = "foo_a"
47
- value_string = 1
48
- expected = "int tomatoes[3];"
49
- result = @t.array("int tomatoes[] = {1,2,3};")
50
- assert_equal(expected, result[0])
51
- end
52
-
53
- def test_unsigned_int_array
54
- name = "foo_a"
55
- value_string = 1
56
- expected = "unsigned int tomatoes[];"
57
- result = @t.array("unsigned int tomatoes[]")
58
- assert_equal(expected, result[0])
59
- end
60
-
61
- def test_unsigned_int_array_with_assignment
62
- name = "foo_a"
63
- value_string = 1
64
- expected = "unsigned int tomatoes[3];"
65
- result = @t.array("unsigned int tomatoes[] = {1,2,3};")
66
- assert_equal(expected, result[0])
67
- end
68
-
69
-
70
-
71
-
72
-
73
-
74
-
75
-
76
- # question for brian... do we need variable assignment with no value when
77
- # we have "" and 0
78
- end