int main1() { uint8_t keysc; KP_Init(); //UART_Init(); LCD12864PortInit(); //端口初始化 LCD12864Init(); //LCD初始化 //printf("Press a Key:\n"); unsigned char ucString[]=" 你按下了按键"; PORTB = 0xFF; DDRB = 0x00;//初始化键盘扫描 while(1) { keysc = KP_scan(); if(keysc != 0){ PORTB = 0x00; DDRB = 0xFF; //初始化LCD显示 LCD12864WriteCommand(0x90); for(int i=0;i<14;i++) LCD12864WriteData(ucString[i]); LCD12864WriteData(keysc); PORTB = 0xFF;//再初始化键盘扫描 DDRB = 0x00; } //printf("You pressed key: %c\n", keysc); } }
int main(void) { delay_init(); GPIOCLKInit(); UserLEDInit(); LCD12864Init(); IRCtrolInit(); TIM2_Init(); MotorInit(); UltraSoundInit(); RedRayInit(); ServoInit(); while(1) { if(tick_5ms >= 5) { tick_5ms = 0; tick_200ms++; if(tick_200ms >= 40) { tick_200ms = 0; LEDToggle(LED_PIN); LCD12864WriteDistance(distance_cm);//更新距离 } // continue_time--;//200ms 无接收指令就停车 // if(continue_time == 0) // { // continue_time = 1; // CarStop(); // } //do something Distance();//计算距离 BarrierProc(); // if(ctrl_comm_last != ctrl_comm)//接收到红外信号 // { // ctrl_comm_last = ctrl_comm; // switch(ctrl_comm) // { // case COMM_UP: CarGo();break; // case COMM_DOWN: CarBack();break; // case COMM_LEFT: CarLeft();break; // case COMM_RIGHT: CarRight();break; // case COMM_STOP: CarStop();break; // default : break; // } // LCD12864WriteCommand(ctrl_comm); // } } } }
/************************************************* Function: LCDInit Description: Input: Output: Return: Others: *************************************************/ void LCDInit(void) { #if _LCD_LOG_ mLcdline1Len = 0; #endif #if (_LCD_MODULE_ == _LCD_1602_) LCD1602Init(); #endif #if (_LCD_MODULE_ == _LCD_12864B_) LCD12864Init(); #endif #if (_LCD_MODULE_ != _LCD_NONE_) LCDClearScreen(); LCDVersion(); #endif }