Author Topic: power consumption  (Read 7717 times)

Offline neil

  • Sr. Member
  • ****
  • Posts: 438
    • View Profile
power consumption
« on: September 25, 2008, 09:32:24 AM »
Hi Mark,
  We have a project that uses the ethernet but only for about 1 minute in every 10. To reduce power (approx 300ma),I would like to switch off the PHY , then every 10 minutes switch back on, make connection, transmit data, then switch off again. How is this done in utasker?

Many thanks
Neil

Offline mark

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 3236
    • View Profile
    • uTasker
Re: power consumption
« Reply #1 on: September 26, 2008, 12:35:36 PM »
Hi Neil

To disable the PHY and EMAC should be very easy using the power down macros:

POWER_DOWN(POWER_FEC0);
POWER_DOWN(POWER_EPHY);


This will stop the clocks to these modules and thus save them consuming power.

What I don't know is whether there may be some side effects and whether to reactivate them the reverse will work:
POWER_UP(POWER_EPHY);
POWER_UP(POWER_FEC0);


It may be necessary to also disable their interrupts and possibly to reconfigure them when powering them back on. This would effectively mean recalling fnConfigEthernet() again, but ensuring that it doesn't create additional Ethernet buffer space seeing as it already has these defined form the first use.

It would check the simple case above since it should show you the power saving possibel. It may also work to simply turn then on again later and if not we will need to work out the best method to do this.

Regards

Mark