复位对系统的稳定性有很大的作用,有效地利用复位功能可以提高系统的稳定性和可靠性,本程序把开发板的电源断开,用外部的可调电源对其供电,慢慢上升电源的电压可以看到小灯的闪烁有变化(上电复位),慢慢的降低电源的电压可以看到小灯的闪烁发生变化,系统复位(掉电复位)。//软件环境:IAR FOR STM8 V1.0
//作者:Nicole
本文引用地址://m.amcfsurvey.com/article/201611/321591.htm//功能:复位功能的测试程序(上电复位和掉电复位)
//日期:2010.11.05
#include
#include
//时钟配置
void CLK_Configuration(void)
{
//CLK_ICKR= 0x08; //打开低速时钟
CLK_CKDIVR = 0x00;
}
//延时函数
void Delay(unsigned int i)
{
unsigned int j;
while(i--)
{
for(j=1000;j>0;j--);
}
}
//IO口配置,控制小灯
void GPIO_Init(void)
{
unsigned int i;
PD_DDR|=0x01;//PD0输出,其余保持原功能
PD_CR1|=0x01;//对应位设置为推挽输出
PD_CR2|=0x00;//输出最大频率为2Mhz
for(i=0;i<4;i++)
{
PD_ODR=0xff;
Delay(200);
PD_ODR=0xfe;
Delay(200);
}
}
void main(void)
{
CLK_Configuration(); // 开启外部时钟
GPIO_Init();// 初始化端口
while(1)
{
PD_ODR = 0xff;//PD0为输出1,LED灭
Delay(1000);
PD_ODR = 0xfe;//PD0为输出1,LED灭
Delay(1000);
}
}
评论