刚学51单片机,想问一下关于单片机位操作和总线操作的区别和优点,顺便解释一下以下问题
若点亮八个共阳极LED灯当中的第一个,理应写P2=0x7f //(0111 1111),但此时却是最后一个LED点亮,若写成P2=0xfe //(1111 1110)才能将第一个LED点亮,求指教。
刚学51单片机,想问一下关于单片机位操作和总线操作的区别和优点,顺便解释一下以下问题
若点亮八个共阳极LED灯当中的第一个,理应写P2=0x7f //(0111 1111),但此时却是最后一个LED点亮,若写成P2=0xfe //(1111 1110)才能将第一个LED点亮,求指教。
你好,对于你的问题:
1.对于位操作和总线操作的个人理解,首先需要知道程序的基本单位是字节,一个字节8位,但在单片机内部,其基本单元却是一个个位,每个位都相当于一个开关电路,导通输出高电平,关闭输出低电平,对应二进制里的0和1,所谓位操作个人理解就是对单独的一个位进行操作,而总线操作,就是可以把一连串的位看成是一个整体,比方说如果总线宽度是8位的,那么可以通过总线操作,一次性改变8个不同的位的状态。
2.观察你的电路,可以认为你的8个LED一端固定的接高电平,因此只要另一端为低电平,则LED导通发亮,而低电平则代表该位为0。
解答完毕,希望满意!