current maximums on the output pins

I have a arduino mega 2560. I've seen a few things that list:

ATmega640/1280/2560: 1.)The sum of all IOL, for ports J0-J7, A0-A7, G2 should not exceed 200mA. 2.)The sum of all IOL, for ports C0-C7, G0-G1, D0-D7, L0-L7 should not exceed 200mA. 3.)The sum of all IOL, for ports G3-G4, B0-B7, H0-H7 should not exceed 200mA. 4.)The sum of all IOL, for ports E0-E7, G5 should not exceed 100mA. 5.)The sum of all IOL, for ports F0-F7, K0-K7 should not exceed 100mA. If IOL exceeds the test condition, VOL may exceed the related specification. Pins are not guaranteed to sink current greater than the listed test condition.

... that doesn't make a lot of sense to me... I know that the mega 2560 has 54 digital i/o pins that can be used for input or output... not sure how that 54 digital i/o pins map to those ports... I haven't found anything for that...

I want to hook up 48 SSRs ( moc3023 optocoupler into a triac ) to my arduino and be able to drive the i/o pin high or low to turn on the ssr or turn it off. All 48 SSRs will be active a very small percentage of time. I only expect 6 - 8 ( different.. ones at different times ) SSRs to be active most of the time. When they are active, they will be on for a second or so and then off )

So far... I've been able to do a proof of concept and hook up 48 Leds to the arduino and turn them on and off in different patterns. Next I hooked up 4 of my SSRs to 4 i/o pins on the ardino and made sure that that I could turn these on and off. That part works.... I measured the current between the I/O pin on high and the moc3023 device and it draws 4.57mw (.... I think... i measured 3.438v when the ssr was active and the i/o port is going thru a .750Kohm resister so using I = V / R I get 4.57mw.. ) ... so assuming that each of the 48 i/o pins would draw 4.57mw... can I run my 48 SSRs on the arduino directly OR do I need to hook up some buffer chips between the I/O pins and the SSR optocouplers or risk blowing up my board?

( this is a christmas tree light project in case anyone was wondering. )

any help understanding the max current when all 48 i/o pins are active would be appreciates.

Thanks - jack

When firing a SCR you only need a short pulse so you won't run into excess current problems. Look at the port mapping for the mega to see how the pin numbers map to port numbers.

Download a copy of the datasheet (if you haven’t already) and look at the pin descriptions. They will have as part of the naming - PB0, PB1,PB2…, PC0, PC1,PC2…, PD0, PD1, PD2, PD3… and such. these are the port groupings. Then map those groupings to you setup and to that chart and you should have a pretty good idea whether you are pushing the current limits.

Page 2 of the datasheet shows the pinouts and names them all.

And here is the datasheet.

My notes on Mega pinouts might be handy: