STM32寄存器与库函数

前面定时器 的时候说了一个路子用到了直接操作寄存器。现在LCD在举一个例子。

void LCD_RESET(void)
{
	LCD_RST_CLR;
	delay_ms(100);	
	LCD_RST_SET;
	delay_ms(50);
}

所谓复位就是:拉低--延时--拉高 就好了。一般用库函数,但是你看:

#define	LCD_RST_SET	GPIOC->BSRR=1<<5    //复位			PC5
								    
#define	LCD_RST_CLR	GPIOC->BRR=1<<5    //复位			PC5		

用的不是库函数哦!

现在我们修改一下 我们用的是PD6复位的!(初始化也要修改)

#define	LCD_RST_SET	GPIOD->BSRR=1<<6    //复位			PC5
								    
#define	LCD_RST_CLR	GPIOD->BRR=1<<6    //复位			PC5	



再看看别人的点亮屏幕

LCD_LED=1;//点亮背光  

其实是:#define LCD_LED   PBout(0) //LCD背光    PB0 

再看#define PBout(n)   BIT_ADDR(GPIOB_ODR_Addr,n)  //输出 

       #define PBin(n)     BIT_ADDR(GPIOB_IDR_Addr,n)  //输入


现在我修改成#define LCD_LED   PAout(1) //LCD背光     背光 PB0---》改成PA1

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值