Help me determine if the Prop will be right for my project...
MarkS
Posts: 342
I'm in the design phase of building a rather complex aquarium controller. I know that I'll need a reasonably powerful and fast processor/microcontroller for all of the features that I have planned, and so far the Prop looks to be a very good candidate. However, I've never developed anything for the Prop, so all I can do is make educated guesses. I would hate to get deep into the design phase only to find out that the Prop will not do what I need and then have to scrap all the work I've done.
The features that I have planned so far, and more will undoubtedly be added later, are:
1.) 320x240 color LCD w/ touchscreen.
2.) The ability to connect up to 8 probes, using BNC connectors(the standard connector for aquarium probes).
3.) All probe inputs are unassigned, until the user connects a probe, tells the controller what type of probe it is and calibrates it. This allows two or more of the same probe type to be used, if needed.
4.) Graphs showing current and/or stored values for one or more selected probes.
4.) SD card slot for data logging.
5.) USB port for easy downloading of the SD card's contents, assuming the computer lacks a card slot.
6.) An Ethernet port so the controller can be accessed online.
7.) Eight relays for outputs, one per probe.
All of this, and possibly more, must fit within the microcontroller's program and data space and I/O ports. I'm still researching parts, but I'm afraid that I've gone past the Prop's capabilities.
Any help will be appreciated.
The features that I have planned so far, and more will undoubtedly be added later, are:
1.) 320x240 color LCD w/ touchscreen.
2.) The ability to connect up to 8 probes, using BNC connectors(the standard connector for aquarium probes).
3.) All probe inputs are unassigned, until the user connects a probe, tells the controller what type of probe it is and calibrates it. This allows two or more of the same probe type to be used, if needed.
4.) Graphs showing current and/or stored values for one or more selected probes.
4.) SD card slot for data logging.
5.) USB port for easy downloading of the SD card's contents, assuming the computer lacks a card slot.
6.) An Ethernet port so the controller can be accessed online.
7.) Eight relays for outputs, one per probe.
All of this, and possibly more, must fit within the microcontroller's program and data space and I/O ports. I'm still researching parts, but I'm afraid that I've gone past the Prop's capabilities.
Any help will be appreciated.
Comments
It all looks well within the capabilities of the prop as long as you are using a USB chip like the FT232R for the USB. The ethernet can be implement with an ENC28J60 but that requires a fair bit of program and data space (at present anyway). You could use an XPORT module or similar for your ethernet, keeps it nice and simple or allow for both as I did in my iCONSOLE.
I don't know what kind of probes you would be using but I am guessing that you would have some extra analog circuitry and possibly an external A/D though the A/D part is possible using a mux+comparator+reference and the props counters in a DAC configuration.
The relays I would just run off a shift-register either directly (UCN5822 etc) or perhaps via a 74HC595 plus drivers.
Is the LCD a standard TV input type or do you drive the timing yourself?
How do you intend to interface the touchscreen and what kind is it?
The SD card is straightforward and could even use SD cards with the built-in USB interface as they are very cheap now and then you wouldn't have to worry about building in a USB interface. If you are using ethernet then why would you need USB anyway as that sounds redundant.
Overall I'd say go Propeller.
*Peter*
All touch screens I know of are now USB equipped and need an USB host....
I'm working on an application that would use a touch screen.· I wrote a routine that will read a 4-wire resistive touch screen directly.· Uses 8 pins just for the touch screen, but with some added hardware and software modifications, you can probably reduce the number of pins required.
This is a work in progress, so I haven't uploaded it to the Object Exchange yet.
Have Fun!
Ken
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
The more I know, the more I know I don't know.· Is this what they call Wisdom?
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
The more I know, the more I know I don't know.· Is this what they call Wisdom?
That is really my main concern. How easy is it to upgrade the Prop's RAM/ROM? I figure I can store all images in a second SD card, but that doesn't matter if there isn't enough RAM to load them.
I've also read somewhere that there is a 400+ instruction limit if I use SPIN code? What's the deal with this? Is Parallax being cruel just because they can? I can see myself exceeding that limit with the GUI alone. I guess that I could and probably should write the whole thing in assembly, but why 400+?!?
Maybe I just have a few misconceptions from old literature or something? I'm hoping someone can clarify this for me.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
The more I know, the more I know I don't know.· Is this what they call Wisdom?
The Graphics Demo uses two bitmaps, drawing on one and then copying it to the display. You really don't need to do that. I am drawing on the same bitmap that the TV driver is displaying and it works fine. Only problem is with fast moving graphics you might get some flickering but for what you're doing I doubt it would be a problem.
Ken
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
The more I know, the more I know I don't know.· Is this what they call Wisdom?
If you need to store graphics, just add an SD and SRAM of whatever needed sizes.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Realize that I am really a mad scientist··· and
Don't forget it!
http://raydillon.com/Images/Illustration/GameArt/WildIsle/WildIsle-Ink-ScientistClose.jpg
·
I will be using two. How do you interface SRAM to a chip that doesn't have address or data pins? Moreover, how do you interface an EEPROM or Flash chip with more than 32K available, in the same regard?
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Propeller Wiki: Share the coolness!
The ezLCD-004 is very nice display with the following features:
5.6 inches display.
320x240 pixel resolution.
Resistive type touch screen.
1 MB eeprom for graphics.
RS-32, USB, SPI, SD/MMC Programable.
Internal SD/MMC card reader/writer capable of FAT12, FAT16 and FAT32.
You can store icon, bmps and touch screen icons either the internal eeprom or SD/MMC card.
I am including a screen capture of the display and a sample code.
All of this is moot for the moment. The ADC I'm going to use, the MAX1168, has some wicked PCB requirements that will not be fully met by Eagle's freeware version and I don't have the money right now for the professional version. Talk about a nasty chip to design for. Anyone know of an 8-channel 16-bit ADC that doesn't have the insane power and routing requirements of the MAX1168?
Post Edited (MarkS) : 8/25/2007 3:04:10 PM GMT
You will find the product and complete documentation.
I have some experience with the display and can provide· lots of code.
Good luck with your project.
http://focus.ti.com/lit/ds/symlink/ads8344.pdf datasheet for TI's 16bit 8·chan chip. Looks nice, tested down to 2.7V.
http://focus.ti.com/docs/prod/folders/print/ads8341.html#relatedproducts
Post Edited (Fred Hawkins) : 8/25/2007 3:37:05 PM GMT
Thanks! That is MUCH better!
Depending on what you're trying to do, you can also use an analog MUX with the software ADC similar to what I used for the touch screen. I've attached a data sheet for one MUX, but there are lots out there. This one apparently has +/- 15V input range and should work with 3.3V logic.
Regards,
Ken
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
The more I know, the more I know I don't know.· Is this what they call Wisdom?