Mon Feb 12 2001 00:42:00 GMT-0800 (Pacific Standard Time)
Guess what? I share a birthday with Abraham Lincoln and Christina Ricci. I got my dart board hung up this afternoon. For some reason I have to wonder why they allow us to throw such pointy objects. And yes, as a matter of fact I do have a good use for that old can of franks and beans sitting in the back of your cupboard that you're never going to eat.
Sun Feb 04 2001 11:58:00 GMT-0800 (Pacific Standard Time)
Newly discovered fact: Anybody that prefers a trackball to a mouse shouldn't be allowed to own or operate a computer. Is it really a coincidence that the large building with the Purina logo is dangerously close to the animal shelter? I managed to get a hold of the Ohgr album "Welt" before its release. I still haven't listened to the whole thing yet, but it is strange. Not really at all what I expected, but I think I like it. Very popish, very technoish (for lack of a better term), but certainly interesting. Oh yeah, and I'm still a Napster junkie.
Sun Jan 28 2001 15:47:00 GMT-0800 (Pacific Standard Time)
Another update on the serial servo controller: Apparently I wasn't restoring the FSR register correctly in my interrupt handler...that is what caused the servo to jitter even when turned off... It will still jitter (albeit a very small amount) when turned on....more to come later...
Sun Jan 28 2001 14:53:00 GMT-0800 (Pacific Standard Time)
Well, I've done quite a bit more work on the serial servo controller. I've finished implementing the pin/timer interrupt combination for handling incoming RS232. The method works and has been successfully incorporated into the servo control code. Note to self: "Interrupt flag bits get sent when an interrupt condition occurs regardless of the state of its corresponding enable bit or the global enable bit, GIE." - taken directly from the PIC data sheet. I could have saved mucho timeo by reading that in the first place. :) Unfortunately, the servo still jitters occasionally. Even when turned off. Obviously, this shouldn't happen. I'm off to more troubleshooting...
Sun Jan 21 2001 22:56:00 GMT-0800 (Pacific Standard Time)
First: I'm a Napster junkie. Second: It came to me in a late night vision...I must fix this servo jitter problem. We must set a timer to interrupt for each bit so that we don't block for the whole incoming serial byte...this is going to get tricky! Third: The hockey game was really exiciting tonight. What a comeback! We won in a shoot-out. I thought we were going to lose for sure. Fourth: Those dogs next door are annoying. They made me miss my Sunday night required TV viewing. I blame them completely.
Sun Jan 14 2001 15:20:00 GMT-0800 (Pacific Standard Time)
Quick fix to the weblog here: I noticed that the hour and day both had leading zeros, which isn't really necessary, so I changed it up. Should look a little better, but I guess I'm just being picky. :-)
Sun Jan 14 2001 15:13:00 GMT-0800 (Pacific Standard Time)
Ok, more news on the PIC based serial servo motor controller. I'm now on code version 4. What does this mean? Here's the run down:
Independent control of 8 servo control channel pulses. Interrupt driven ASCII serial port routines to set the requested servo to the requested position (0-255) (these work!).
When I scope the output signals, the appropriate channel's pulse width changes as expected! This is a major accomplishment...however...
It seems that the servo isn't moving through its full 180 degree range. What's the deal with this? I guess I'd better to try another motor, then check my references to be absolutely sure that the timings that I used in design are correct.
After I fix the servo range problem, it's on to adding the query command, perhaps using a binary mode (based on a jumper?), and then eventually doing some board layout.
Sat Jan 13 2001 17:48:00 GMT-0800 (Pacific Standard Time)
Significant progress made on serial servo controller! Yippie! Note to self: ALWAYS, that is always remember to use the second parameter on MOVF calls. Without it, the assembler will default to 1 and the behavior is probably not what you wanted. :) This is actually what caused me the most problems... I'm controlling 8 independent servo channels now...all variable, all on PORTB. I've done some pretty detailed scoping of the timing signals, and all looks good. Next step: Hack a fix to move behavior for RB0 to RA4 so that RB0 can be used for serial interrupts. Then implement serial interrupts. Then actually use the serial data to change position variables.