No, if you are going by land or sea. BY air, you must have a valid passport.
'If a U.S. citizen traveling to Canada does not have a passport, passport card, or approved alternate document such as a NEXUS card, they must show a government-issued photo ID (e.g. Driver’s License) and proof of U.S. citizenship such as a U.S. birth certificate, naturalization certificate, or expired U.S. passport. Children under 16 need only present proof of U.S. citizenship. (Please see below for important information concerning re-entry into the United States.)
U.S. citizens entering Canada from a third country must have a valid U.S. passport.
When returning to the United States from Canada, it is very important to note that all U.S. citizens are required to present a valid U.S. passport to enter or re-enter the United States via air. For entry into the United States via land and sea borders, U.S. citizens must present either a U.S. passport, passport card, NEXUS card, Enhanced Drivers License, or other Western Hemisphere Travel Initiative (WHTI)-compliant document. The only exception to this requirement is for U.S. citizens under the age of 16 (or under 19, if traveling with a school, religious, or other youth group) who need only present a birth certificate (original, photocopy or certified copy), Consular Report of Birth Abroad, or naturalization certificate.'