Show Posts
|
|
Pages: [1] 2 3 ... 24
|
|
3
|
Using Arduino / LEDs and Multiplexing / Re: Shift register problem
|
on: April 24, 2012, 01:38:59 pm
|
|
Do you have current-limiting resistors on the 7-segment display? You didn't post a datasheet, but many shift registers and similar ICs have a fairly limited capability to supply current. As a result, the voltage output could drop significantly with current load.
|
|
|
|
|
5
|
Development / Other Software Development / Re: Code share: some of my util classes
|
on: March 07, 2012, 10:15:44 am
|
[...] (because there is no virtual serial device base class I couldn't get rid of the call to Serial.begin(MIDI_BAUDRATE)). [...]
You can use the magic of OOP and have an overloaded constructor which takes a HardwareSerial*, so that the usage could be either this: MidiOutPort midiOut(&softSerial);
or this: MidiOutPort midiOut(&Serial);
completely transparent to the user. In the library implementation, the easiest way to do this is to encapsulate the write() function, forex: void write(uint8_t b) { if (m_hws != NULL) { // set to null in the softwareserial constructor m_hws->write(b); } else { // not using hardware serial m_ss->write(b); } }
|
|
|
|
|
6
|
Using Arduino / Programming Questions / Re: Help with Dagu Rover 5
|
on: March 05, 2012, 05:31:44 pm
|
|
The Rover 5's two motors may have different characteristics, and thus draw different amounts of current at a given voltage (this is often a result of friction in the gearbox, or other such mechanical issues). If you want them to have the same speed, you will need to use feedback on the speeds of the output shafts (possibly via encoder) as an input to a control loop.
|
|
|
|
|
8
|
Using Arduino / Motors, Mechanics, and Power / Re: Source of mechanical parts?
|
on: February 23, 2012, 05:24:55 pm
|
|
McMaster-Carr is nice for mechanical parts, albeit somewhat more on the expensive side. They've got a warehouse in LA, so shipping is usually one-day, which is a nice benefit, and their quality is very good.
Other than that, local suppliers are best for hardware--it tends to be heavy and vary in quality, so being able to check it out is nice.
|
|
|
|
|
10
|
Using Arduino / Programming Questions / Re: Arduino 1.0 with WIRE (I2C) help
|
on: February 14, 2012, 01:01:28 am
|
|
You assume that the bytes will be available when they might not be: though you do busy-wait until the first byte has come in, for subsequent bytes, you just delay(100), which does not guarantee that the data has been transmitted. Remember that I2C allows slaves to clock stretch and thus not transmit data until later.
|
|
|
|
|
13
|
Using Arduino / Project Guidance / Re: Need help getting servo and fan to work at the same time...
|
on: February 09, 2012, 02:47:34 am
|
|
The Servo library uses the Timer that generates the PWM output for your fan, so it becomes restricted to binary digital output. You can solve this competition for hardware resources by picking a different PWM pin to run the fan from (The first 8 or so servos will use the same Timer, so there's not much point moving that).
|
|
|
|
|
15
|
Using Arduino / Project Guidance / Re: Parallel IO with fast data transfer to PC?
|
on: February 03, 2012, 05:42:03 pm
|
|
According to the datasheet, at 16MHz 250000baud has a very low error (supposedly 0%)--it's probably the most reliable high-speed rate you can have.
For the implementation of this device, you should note that the Arduino (Mega) pin layout does NOT match the 8-bit registers that are used to read each pin, so for maximum speed you might want to look into the "direct port manipulation" commands and wire the system that way.
|
|
|
|
|