Nodes in a wireless sensor network (WSN) are usually powered by batteries. Hence, it is important to efficiently expend the battery energy of each node in the WSN so that both runtime of the nodes and the lifetime of the WSN are prolonged. An event-driven energy-conserving scheme, called adaptive power-saving scheme (APS), is proposed. APS is able to adapt the sleep duration of a node to traffic variations. We have implemented APS based on TelosW motes, TinyOS, and NesC language. Experimental results show that APS outperforms the fixed time scheme (FTS) in terms of energy consumption and packet loss ratio.