|
|
View previous topic :: View next topic |
Author |
Message |
neo19
Joined: 14 Aug 2012 Posts: 30 Location: France
|
New Board with RS232, USB and Ethernet |
Posted: Wed Aug 22, 2012 8:56 am |
|
|
Hello,
I have a new board to design:
On this board, I need:
- 2 x RS232
- USB
- Ethernet 10/100
- I²C
- 2xPWM
- Digital Input/Output
- Analog Input/Output
Do you think it's possible to do this with a PIC?
What do you think about it?
Best regards,
Fabrice |
|
|
PCM programmer
Joined: 06 Sep 2003 Posts: 21708
|
|
Posted: Wed Aug 22, 2012 12:17 pm |
|
|
Use this Microchip Parts selector page to enter those parameters
and you can find PICs which will be suitable for your project:
http://www.microchip.com/maps/microcontroller.aspx
For example, first go to the Prefix menu, and limit the results to PIC18F
parts. Wait a moment for the screen to update. You must do that after
each new item is selected.
Then go to the line for USB channels, and select "1" in the left column.
Then go to UART channels, and select "2" in the left column.
Most PICs have all the other simple things that you listed.
The only thing not listed is Ethernet. But now you have a small list
of 18F PICs, and you can go to the Microchip Ethernet page and
choose a PIC that is in your list, and has Ethernet:
http://www.microchip.com/ParamChartSearch/Chart.aspx?branchID=121 |
|
|
neo19
Joined: 14 Aug 2012 Posts: 30 Location: France
|
|
Posted: Thu Aug 23, 2012 12:40 am |
|
|
Yes, I try the microchip part selector and find PIC32MX family.
I don't see that PIC32 is available with CCS compiler.
in case I have to change to compile, should not also switch to another manufacturer of microprocessor cards (arm,..)? |
|
|
Ttelmah
Joined: 11 Mar 2010 Posts: 19553
|
|
Posted: Thu Aug 23, 2012 2:01 am |
|
|
PIC32 is available with CCS, provided you have the PCD compiler.
Entirely down to 'what you want'. The PIC, even in it's larger versions, tends to have the 'edge' when manufacturing in quantities, on price, against competing chips, but this reduces as you go for higher power. However if you are going for a product with so many interfaces, you have to then consider whether you might be better moving away from small embedded processors completely. Small 'linux' systems, offer the advantage of a full OS, doing an enormous amount of the 'housekeeping' for you, but bring the downside of having to write things like the I2C drivers in a more structured way. If you are handling (for example), a graphic display, TCP/IP, a FAT filesystem, etc., then such systems save enormously on the development time, and for small quantities bring little in the way of disadvantages.
Best Wishes |
|
|
neo19
Joined: 14 Aug 2012 Posts: 30 Location: France
|
|
Posted: Thu Aug 23, 2012 2:35 am |
|
|
Our quantity is about 100 pieces of this board by a year.
The price at 150€-200€ is not a problem.
In my system I need a display too with touchscreen. To simplify the development, I choose an intelligent LCD display with touchscreen and I²C for interfacing.
I don't know if for 100 pieces by year an embedded processor will be better with linux system. |
|
|
Ttelmah
Joined: 11 Mar 2010 Posts: 19553
|
|
Posted: Thu Aug 23, 2012 3:22 am |
|
|
It all depends on how complex the system needs to be?.
Now you make no mention of storing data?. SD card?. USB memory stick?.
The former can be driven easily from a PIC, but the latter gets complex, requiring a chip supporting USB 'OTG', and a lot of software. Alternatively, something like a FTDI Vinculum, which makes the software easy, but adds cost to the hardware.
Then display. Resolution, etc., and how complex the images want to be. As the picture gets more complex, the software goes up almost as the square of what you want to do. For a full graphic display, updating complex images quickly, a more powerful processor, and a graphic development library, reduce the amount of coding needed.
Then the physical mounting of the display and touchscreen. IP sealing?. The costs of how it is going to be fixed are part of the overall 'system' costs. If you look at assembled industrial systems, this is handled for you. May swing the economics.
Then the Ethernet. If you are just (for example), providing a FTP link to a local system, simple. But if you want to be providing a full 'webpage', with (for example) Java scripting, the work is rising. With an OS on the system, the basics of this are provided for you.
Then power. If you go DIY, how much will certification for your target markets cost?.
Now seriously, you can get something like the RaspBerry Pi computer, with a USB 7" touchscreen, for under $100 now. I2C drivers are available for this. There is a single 3.3v async serial on the board. Add a level translator to this, and a USB to RS232 converter, and you have everything you want already built, for less than you could put a processor board together for. You could be starting to develop software tomorrow, instead of having to go through hardware prototyping etc.. The only question would be the PWM. You can do low frequency PWM's using the GPIO pins and the heartbeat. Or you could use the audio output, which is (you guessed it), PWM based. However if you require a specific frequency, then it gets more complex.
Have a look at this board <http://nwlinux.com/allwinner-a10-cheaper-raspberry-pi/> except for the serials (easily provided via USB), has everything you want. Including both a USB host and slave port.
Just a thought. |
|
|
bkamen
Joined: 07 Jan 2004 Posts: 1615 Location: Central Illinois, USA
|
|
Posted: Thu Aug 23, 2012 8:05 pm |
|
|
Ttelmah wrote: | PIC32 is available with CCS, provided you have the PCD compiler.
|
When did this happen?
I have PCD and no PIC32 .H's to be found.
PCD is for the PIC24/dsPIC30|33 parts - not the PIC32 (32bit) parts.
But the OP still needs to consider PIC32 for all that he wants.
-Ben _________________ Dazed and confused? I don't think so. Just "plain lost" will do. :D |
|
|
FvM
Joined: 27 Aug 2008 Posts: 2337 Location: Germany
|
|
Posted: Thu Aug 23, 2012 11:31 pm |
|
|
Quote: | When did this happen? |
I guess in a parallel universe.
You can program PIC32 with the free Microchip C32 version. It's also shipped with the Microchip starter kits.
Rather than relying on other peoples advices, you may want to order the PIC32 Ethernet Starter Kit at microchip online
or your favourite catalog distributor (it's $72) and experience the look and feel of the processor and tool chain.
Then decide if you want to start on the adventure. |
|
|
bkamen
Joined: 07 Jan 2004 Posts: 1615 Location: Central Illinois, USA
|
|
Posted: Fri Aug 24, 2012 12:00 am |
|
|
FvM wrote: | Quote: | When did this happen? |
I guess in a parallel universe.
|
ha!! :D
Quote: |
You can program PIC32 with the free Microchip C32 version. It's also shipped with the Microchip starter kits.
|
And get the book "See MIPS Run" -- as the PIC32 is actually a MIPS architecture core. I have the book here, it's worth while if you decide to dive into 32bit PICs.
-Ben _________________ Dazed and confused? I don't think so. Just "plain lost" will do. :D |
|
|
neo19
Joined: 14 Aug 2012 Posts: 30 Location: France
|
|
Posted: Fri Aug 24, 2012 12:53 am |
|
|
2 solutions are available for me:
To make my own card with a PIC32 or to buy a complete card like RaspBerry Pi computer and make another card to adapt my system on it.
It's not so easy to take a decision because after the work is therefore on the layout and the software.
I have to think about it.
On industrial embendded system, do you know other manufacturer which propose some development board like digi or anders
http://www.digi.com/products/model?mid=3402
http://www.andersdx.com/products/catalogue.aspx?op={3D2C096B-43FC-41EC-8945-D319D86F799A} |
|
|
bkamen
Joined: 07 Jan 2004 Posts: 1615 Location: Central Illinois, USA
|
|
Posted: Fri Aug 24, 2012 1:19 am |
|
|
neo19 wrote: | 2 solutions are available for me:
To make my own card with a PIC32 or to buy a complete card like RaspBerry Pi computer and make another card to adapt my system on it.
It's not so easy to take a decision because after the work is therefore on the layout and the software.
I have to think about it.
On industrial embendded system, do you know other manufacturer which propose some development board like digi or anders
http://www.digi.com/products/model?mid=3402
http://www.andersdx.com/products/catalogue.aspx?op={3D2C096B-43FC-41EC-8945-D319D86F799A} |
I'm actually finishing up a project now using the Digi CC9M2443. It's nice module. Digi's support generally sucks. The documentation is a 5 on a scale of 1-10. Microchip and Intel have better documentation than samsung. Additionally, their user forum for the 2443 is virtually dead. Any questions I've asked have been way over anyone's head subscribed to the same topic... and there's only a handful of people using the 2443 if the activity is any indicator.
That said.. you have to decide where you want to spend your time and money. The big tradeoff is usually you either spend the time and the money and you design your own board and they're usually cheaper than buying someone else's modules ready to go.
however, if you want to build a handful and don't want to mess with all the low level stuff (like SCH/PCB and parts and so forth) -- then sometimes a module is the way to go. Only you can really decide that.
-Ben _________________ Dazed and confused? I don't think so. Just "plain lost" will do. :D |
|
|
Ttelmah
Joined: 11 Mar 2010 Posts: 19553
|
|
Posted: Fri Aug 24, 2012 1:47 am |
|
|
I must admit, I only play with the 12, 16, 18, 24, & 33 parts. When the poster said PIC32, I just pulled the Device table editor, and assumed if the part was listed there was at least some support. For some reason the editor lists PIC32MX320F032H through to PIC32MX795F512L parts. 30+ processors. Presumably some 'in the future' compiler version....
However I really have to suggest that you start to think about the cost of code, relative to the cost of the machine. Problem is that if you go the PIC route, you are basically going to have to write everything. Even if CCS did have support for the 32 family, I'd expect there to be significant bugs (as are still occurring with the 24/33 chips...). Without their libraries, every bit of the support code is going to have to be written or found. I'd guess that the programming time to develop a complete system based on a chip like this, would easily be perhaps 10* the time needed just to write the front end application, using an off the shelf module, with an OS, graphic library etc., all already written and tested. Difficult to know without knowing the exact application 'scale', but I'd be expecting the difference between perhaps a 'man month' of work, and a 'man year'. Now, given that the design life of a typical system is only a few years, this justifies spending quite a few dollars more per unit, on an off the shelf approach....
It is almost impossible to really work out the likely 'best route', without a lot better idea of:
1) Display size and complexity of what is to be shown.
2) The storage requirements.
3) The networking actually required.
4) Power supply to be used (mains, 24v etc.).
5) Special requirements (IP sealing etc.?).
6) You say 'USB', is this master or slave?.
7) Resolution needed on the ADC/DAC.
8) PWM frequency & resolution.
Best Wishes |
|
|
neo19
Joined: 14 Aug 2012 Posts: 30 Location: France
|
|
Posted: Fri Aug 24, 2012 6:40 am |
|
|
I usually make some board with PIC18F, ADC (I2C), DAC (I2C), Digital Input, digital Output, RS232, IEEE488, char display. But my system is little old and I need a better display and Ethernet.
1) The display is a big problem for me because I would like something industrial, easy to controll and with good quality in 4.3 and 7".
I've found these ones wich could be controlled by I2C or SPI and graphics are good in 4.3" and 7".
It's for display picture at the beginning, buttons, status, little menu for service after sale (to see some ADC inside the equipment) or to configure Rs232 or Ethernet.
http://www.demmel.com/ilcd/english/cpanel8048.htm (180€)
http://www.demmel.com/ilcd/english/cpanel6448.htm (300€)
2)the storage equipment is not a problem.
3) Special requirement for me it's RS232, USB and ETHERNET. It's only a remote control for the equipment: start/stop/Status and to help the Service after sale by getting some internal value of temperature, voltage,..
4) Power supply is not a problem. I have the choise and the place. Consumption is not a problem.
6) USB is only slave
7) ADC and DAC will be 12 bits. I usually have some on I²C
8) PWM is for controll the speed of fans. I think 8 bits will be OK.
Best regards,
Fabrice |
|
|
neo19
Joined: 14 Aug 2012 Posts: 30 Location: France
|
|
Posted: Fri Aug 24, 2012 6:56 am |
|
|
bkamen wrote: |
I'm actually finishing up a project now using the Digi CC9M2443. It's nice module. Digi's support generally sucks. The documentation is a 5 on a scale of 1-10. Microchip and Intel have better documentation than samsung. Additionally, their user forum for the 2443 is virtually dead. Any questions I've asked have been way over anyone's head subscribed to the same topic... and there's only a handful of people using the 2443 if the activity is any indicator.
That said.. you have to decide where you want to spend your time and money. The big tradeoff is usually you either spend the time and the money and you design your own board and they're usually cheaper than buying someone else's modules ready to go.
however, if you want to build a handful and don't want to mess with all the low level stuff (like SCH/PCB and parts and so forth) -- then sometimes a module is the way to go. Only you can really decide that.
-Ben |
A digi module like CC9M2443 is nice. Did you try to controll a display in your project?
The problem for me is to find industrial display with mechnical solution to plug it.
I have an old jumpstart kit from them. I don't know linux so at time I tried to use Eclipse-based Digi ESP IDE. It was nice.
Best regards,
Fabrice |
|
|
FvM
Joined: 27 Aug 2008 Posts: 2337 Location: Germany
|
|
Posted: Fri Aug 24, 2012 7:20 am |
|
|
Quote: | I just pulled the Device table editor, and assumed if the part was listed there was at least some support. For some reason the editor lists PIC32MX320F032H through to PIC32MX795F512L parts. 30+ processors. Presumably some 'in the future' compiler version.... |
Thanks for reporting the interesting observation.
I wonder if CCS has already explicite plans to support PIC32 or even a time table.
Fortunately C32 is quite stable, so you have the option to start a PIC32 development now, whatever you expect from the future product. |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|