Почему переменная глобального буфера дает результаты, отличные от переменной локального буфера при использовании SPI? ⇐ C++
-
Anonymous
Почему переменная глобального буфера дает результаты, отличные от переменной локального буфера при использовании SPI?
Хорошо, давний разработчик, но с языками более высокого порядка, такими как C# и Swift. Работаю на родном C++ для аппаратного проекта, над которым работаю, и использую Arduino для его прототипирования. Однако это меня поставило в тупик.
У меня есть буфер, который я отправляю через SPI и который в настоящее время я определил как локальную переменную, но когда я перемещаю его в глобальную область видимости, я получаю другие результаты!
Это работает так, как и ожидалось...
void writeRow(uint8_t row){ uint8_t буфер[] = { B01111111^0xFF, B00111111^0xFF, B00111111^0xFF, B00011111^0xFF, B00001111^0xFF, Б00000111^0xFF, Б00000011^0xFF, B00000001^0xFF }; uint16_t rowMask = 1
Хорошо, давний разработчик, но с языками более высокого порядка, такими как C# и Swift. Работаю на родном C++ для аппаратного проекта, над которым работаю, и использую Arduino для его прототипирования. Однако это меня поставило в тупик.
У меня есть буфер, который я отправляю через SPI и который в настоящее время я определил как локальную переменную, но когда я перемещаю его в глобальную область видимости, я получаю другие результаты!
Это работает так, как и ожидалось...
void writeRow(uint8_t row){ uint8_t буфер[] = { B01111111^0xFF, B00111111^0xFF, B00111111^0xFF, B00011111^0xFF, B00001111^0xFF, Б00000111^0xFF, Б00000011^0xFF, B00000001^0xFF }; uint16_t rowMask = 1
Мобильная версия