示例#1
0
文件: main.c 项目: Needrom/Freescale
void Device_init()
{       
        gpio_init(PTC11,GPI,1);                                         //拨码开关5
        gpio_init(PTC12,GPI,1);                                         //拨码开关4
        gpio_init(PTC13,GPI,1);                                         //拨码开关3
        gpio_init(PTC15,GPI,1);                                         //拨码开关2
        gpio_init(PTD2,GPI,1);                                          //拨码开关1
        gpio_init(PTD1,GPO,1);						//三个指示灯依次亮起
        gpio_init(PTD3,GPO,1);
        gpio_init(PTD4,GPO,1);						//每进入一次初始化PTD4灯灭,初始化完成亮起
        gpio_init(PTC5,GPO,1);
        gpio_init(PTC4,GPI,0);                                          //干簧管

	FTM_PWM_init(FTM1,FTM_CH0,50,angle_to_period(0));				//舵机初始化,从百分之十占空比到百分之七十占空比测试
	
	FTM_PWM_init(FTM0,FTM_CH1,10000,0);			//电机pwm初始化
	FTM_PWM_init(FTM0,FTM_CH2,10000,0);
	
	//FTM_PWM_init(FTM2,FTM_CH0,3000000,93000);		//编码器初始化
	//FTM_PWM_init(FTM2,FTM_CH1,3000000,93000);
          FTM_QUAD_Init(FTM2);							//初始化为正交解码
	LCD_Init();
     
     PIT_init();
    gpio_set(PTD4,1);
}
示例#2
0
//начало основной программы
void main(void)
{
  CPUinit();         //инициализация системы
  PIT_init();      //инициализация PIT
  LCDinit_clear();   //нач инициализация и сброс ЖКИ

  // Вывод на ЖКИ начальной заставки
  lcd_pro_data('L', 0);
  lcd_tek_data('c');
  lcd_tek_data('d');
  lcd_tek_data('_');
  lcd_tek_data('k');
  lcd_tek_data('n');
  lcd_tek_data('o');
  lcd_tek_data('p');
  lcd_tek_data('_');
  lcd_tek_data('p');
  lcd_tek_data('_');
  lcd_tek_data('S');
  lcd_tek_data('R');
  lcd_tek_data('A');
  lcd_tek_data('M');

   //начало основного цикла
    for (;;)
    {
      if  (flagn_kn1==1)    // нажималась ли кнопка 1
     	    {
            flagn_kn1=0;    //да, сбросить флаг нажатия

            //смена состояния выхода светодиода LED1
            if (led1_old_state==OFF)
                     {
                     AT91F_PIO_ClearOutput( AT91C_BASE_PIOA, LED1); // зажечь сетодиод 1
                     led1_old_state=ON;
                     }
            else
                     {
                     AT91F_PIO_SetOutput( AT91C_BASE_PIOA, LED1); // погасить светодиод 1
                     led1_old_state=OFF;
                     }

            // Вывод на ЖКИ заставки - слова  "Привет!"
            lcd_pro_data(rus_P, 64);
            lcd_tek_data('p');
            lcd_tek_data(rus_i);
            lcd_tek_data(rus_v);
            lcd_tek_data('e');
            lcd_tek_data(rus_t);
            lcd_tek_data('!');
            }

     if  (flagn_kn2==1)    // нажималась ли кнопка 2
	    {
	    flagn_kn2=0;    //да, сбросить флаг нажатия

           //смена состояния выхода светодиода LED2
           if (led2_old_state==OFF)
                     {
                     AT91F_PIO_ClearOutput( AT91C_BASE_PIOA, LED2); // зажечь сетодиод 2
                     led2_old_state=ON;
                     }
            else
                     {
                     AT91F_PIO_SetOutput( AT91C_BASE_PIOA, LED2); // погасить светодиод 2
                     led2_old_state=OFF;
                     }

            // Вывод на ЖКИ слова  "Privet!"
            lcd_pro_data('P', 72);
            lcd_tek_data('r');
            lcd_tek_data('i');
            lcd_tek_data('v');
            lcd_tek_data('e');
            lcd_tek_data('t');
            lcd_tek_data('!');
            }

     if  (flagn_kn3==1)    // нажималась ли кнопка 3
	    {
	    flagn_kn3=0;    //да, сбросить флаг нажатия

           //смена состояния выхода светодиода LED3
           if (led3_old_state==OFF)
                     {
                     AT91F_PIO_ClearOutput( AT91C_BASE_PIOA, LED3); // зажечь сетодиод 3
                     led3_old_state=ON;
                     }
            else
                     {
                     AT91F_PIO_SetOutput( AT91C_BASE_PIOA, LED3); // погасить светодиод 3
                     led3_old_state=OFF;
                     }

            lcd_clear();          //очистка ЖКИ
            }

     if  (flagn_kn4==1)    // нажималась ли кнопка 4
	    {
	    flagn_kn4=0;    //да, сбросить флаг нажатия

           //смена состояния выхода светодиода LED4
           if (led4_old_state==OFF)
                     {
                     AT91F_PIO_ClearOutput( AT91C_BASE_PIOA, LED4); // зажечь сетодиод 4
                     led4_old_state=ON;
                     }
            else
                     {
                     AT91F_PIO_SetOutput( AT91C_BASE_PIOA, LED4); // погасить светодиод 4
                     led4_old_state=OFF;
                     }

            lcd_init();           //инициализация ЖКИ
            }
    }
}