gpio5的01(关键词-左移)

*vir_gpio5_dr |= (1 << 1); //因为是gpio5的01,所以左移一位就可以,给一个高电平,使蜂鸣器工作

为什么 因为gpio5的01,所以左移一位就可以?gpio5_01 是怎样看出来的?

该回答引用ChatGPT

在这段代码中,gpio5_01代表GPIO5的第一个引脚(从右往左数第二个引脚),因为GPIO编号是从0开始的,所以这个引脚的编号为1。

左移操作是为了将数字1移动到gpio5的第一位上,从而设置gpio5_01为高电平。在二进制表示中,数字1的二进制形式为0001,左移一位后变为0010,这样就将1设置在了gpio5的第一个引脚上。

在这段代码中,使用位运算符|=将左移后的值与vir_gpio5_dr的值进行按位或操作,以确保其他位不会被修改。这样,将gpio5_01设置为高电平就可以使蜂鸣器工作了。