试中举，授蒲圻教谕。宣德二年，与庐陵知县孔文英等四十三人以顾佐荐，召于各道观政，之后升为监察御史，巡按湖广。正统五年，巡按广东，奏设钦州守备都指挥。正统七年，因举荐，升爲山西左参政。明景帝监国时，晋升爲山西布政使，后改右副都御史，山西巡抚。景泰元年，在雁门关，率众与都指挥李端击退瓦剌部队进犯。次年，代替罗通，负责镇守山西。京师保卫战胜利后，召佐院事，之后致仕离去。