RS_CLR;//写地址?LCD_CS_CLR;?DATAOUT(data);?LCD_WR_CLR;?LCD_WR_SET;?LCD_CS_SET;}#else//正常IO//写寄存器函数voidLCD_WR_REG(u8data){?LCD_RS=0;//写地址?LCD_CS=0;?DATAOUT(data);?LCD_WR=0;?LCD_WR=1;?LCD_CS=1;}voidLED_Init(void){?RCC->APB2ENR|=1<<2;//使能PORTA时钟 RCC->APB2ENR|=1<<5;//使能PORTD时钟 GPIOA->CRH&=0XFFFFFFF0;?GPIOA->CRH|=0X00000003;//PA8推挽输出?GPIOA->ODR|=1<<8;//PA8输出高 GPIOD->CRL&=0XFFFFF0FF;?GPIOD->CRL|=0X00000300;//PD.2推挽输出?GPIOD->ODR|=1<<2;//PD.2输出高}PWM输出部分:相关代码:voidPWM_Init(u16arr,u16psc){ RCC->APB1ENR|=1<<1;//TIM3时钟使能 GPIOA->CRL&=0X0FFFFFFF;//PA7输出?GPIOA->CRL|=0XB0000000;//复用功能输出 GPIOA->ODR|=1<<7;//PA7上拉 TIM3->ARR=arr;//设定计数器自动重装值?TIM3->PSC=psc;//预分频器不分频?TIM3->CCMR1|=7<<12;//CH2PWM2模式 TIM3->CCMR1|=1<<11;//CH2预装载使能 TIM3->CCER|=1<<4;//OC2输出使能 TIM3->CR1=0x8000;//ARPE使能?TIM3->CR1|=0x01;//使能定时器3 }控制部分:红外遥控: