请问单片机复位的有关问题,请各位帮忙

请教单片机复位的问题,请各位帮忙!
我在C8051F120上用keil c开发的程序,经常会出现复位,复位后我查看复位源寄存器指示是上电复位,我想问一下上电复位是不是基本上由硬件原因造成的?程序有问题会造成上电复位吗?还有个问题是我在程序中加了看门狗,有时候也会出现看门狗复位,是喂狗次数不够吗?

------解决方案--------------------
如果你的电源带载能力不够,你的软件在操作某个硬件外设时会导致负载增加,拉低电源电压导致电压低于复位电压,从而复位。姚根据你的电路和电源综合查找原因!