Thanks to visit codestin.com
Credit goes to www.51hei.com

רע���Ӽ���ѧϰ���о�
��ǰλ�ã���Ƭ���̳��� >> MCU���ʵ�� >> �������

����M051�жϻ��ѣ�˯�ߣ���ʾ����

����:huqin   ï¿½ï¿½Ô´:��վԭ��   ï¿½ï¿½ï¿½ï¿½ï¿½:��  ï¿½ï¿½ï¿½ï¿½Ê±ï¿½ä£º2014��09��01��   �����壺�� �� ��

 ï¿½ï¿½ï¿½ï¿½Ò·ï¿½Ò»ï¿½ï¿½ï¿½ï¿½ï¿½Ô³É¹ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½M051��Ƭ���жϻ��ѣ�˯�ߣ�����ʾ����

 
#include "SmartM_M0.h"
#define __KEYISR    EINT1_IRQHandler
#define DEBUGMSG       printf
/****************************************
*��������:KeyIntInit
*��    ï¿½ï¿½:��
*��    ï¿½ï¿½:��
*��    ï¿½ï¿½:�����жϳ�ʼ��
******************************************/
VOID KeyIntInit(VOID)
{
 P3_MFP = (P3_MFP & (~P33_EINT1_MCLK)) | EINT1;  //P3.2��������Ϊ�ⲿ�ж�
  
 DBNCECON &= ~ICLK_ON;
 DBNCECON &= DBCLK_HCLK;
 DBNCECON |= SMP_256CK;        //���÷�������������ѡ��
             
 P3_DBEN |= DBEN3;         //ʹ��P3.2����������
  
 P3_IMD &= IMD3_EDG;    
 P3_IEN |= IF_EN3;         //�����ⲿ�ж�1Ϊ�½��ش���
 NVIC_ISER |= EXT_INT1;
}
/****************************************
*��������:McuSleepDeep
*��    ï¿½ï¿½:��
*��    ï¿½ï¿½:��
*��    ï¿½ï¿½:MCU����˯��ģʽ
******************************************/
VOID McuSleepDeep(VOID)
{
 Delayms(20); 
 PROTECT_REG
 (
  /* ����˯��ģʽ */
  SCR |= SLEEPDEEP;
  /* ��ֹ����ģʽ�»��ѵ��ж��ж�ʹ�� */
  PWRCON &= ~PD_WU_IE;
  PWRCON &= ~PD_WAIT_CPU;
  PWRCON |= PWR_DOWN_EN;  
 ) 
 Delayms(20);
}
/****************************************
*��������:main
*��    ï¿½ï¿½:��
*��    ï¿½ï¿½:��
*��    ï¿½ï¿½:��������
******************************************/
INT32 main(VOID)
{                   
  PROTECT_REG           //ISP����ʱ����FLASH�洢��
  (
   PWRCON |= XTL12M_EN;        //Ĭ��ʱ��ԴΪ�ⲿ����
   while((CLKSTATUS & XTL12M_STB) == 0);     //�ȴ�12MHzʱ���ȶ� 
   CLKSEL0 = (CLKSEL0 & (~HCLK)) | HCLK_12M; //�����ⲿ����Ϊϵͳʱ�� 
   P2_PMD = 0x5555;
  )
  KeyIntInit();         //�����жϳ�ʼ��
  while(1)
  {
   P2_DOUT = 0x00;
   Delayms(500);
   P2_DOUT = 0xFF;
   Delayms(500);     
    McuSleepDeep();       //MCU����˯��ģʽ     
  }
}
/****************************************
*��������:__KEYISR
*��    ï¿½ï¿½:��
*��    ï¿½ï¿½:��
*��    ï¿½ï¿½:�����жϷ�����
******************************************/
VOID __KEYISR(VOID)
{
     Delayms(100);
  P3_ISRC = P3_ISRC;  //д1���
}
 
���رմ�����