用AWU做了一个定时唤醒程序,时间间隔为1秒;这个程序仿真的时候,程序是按我设计的跑 ,前5秒灯常亮,5秒后以1秒为周期灯闪 ; 把程序下载到IC里,前5秒亮的过程没有,灯闪的速度很快,有知道的同行指导下
void ExternITNint(void)
{
EXTI_CR1&=0x03; //A口下降沿触发
}
//=====================================================
//函 数 名 称: 定时器4初始化
//函 数 作 用: 初始化寄存器函数
//输 入: 无
//输 出: 无
//最 后 修改日期: 2018年4月7日
//======================================================
void AUWNint(void)
{
AWU_CSR=0x01; //使能自动唤醒功能 ,使能fLS 时钟连接到TM3的输入捕获
PA_DDR = 0B10000111;
PA_CR1 = 0B01111110;
//-------工作占空比------------
AWU_APR=15; //64分频 1秒
AWU_TBR=0x0d; //计数值2^10
//------------------------------
AWU_CSR=AWU_CSR|0x10;//
CLK_ICKR=CLK_ICKR|(1<<5); //活跃停机模式关闭电压调节器
FLASH_CR1|= 0x04; //关闭FLASH省电
}
main(void)
{
u8 ppp;
AUWNint();
FLASH_CR1=FLASH_CR1|0x08;
while (1)
{
//--------------关闭ADC-----------------------------
AWU_CSR=AWU_CSR;
_asm("halt");
count++;
if(count<=5) //小时初始一次LT8920
{
LED=1;
}
else
{
if(LED==0)
{
LED =1;
}
else
{
LED = 0;
}
}
}
} |