История изменений
Исправление KivApple, (текущая версия) :
Уже интересно. Не знал, что есть такая функциональность, но это может что-то объяснить. Добавил вот такой код.
// Setup port mapping
PMAPKEYID = 0x2D52;
PMAPCTL = PMAPRECFG;
P4MAP2 = PM_UCB1SCL;
P4MAP1 = PM_UCB1SDA;
PMAPKEYID = 0;
Увы, но это не помогло. Проверил отладчиком - все значения ушли на свои места, так что регистры PxMAPy были доступны на запись (там же есть защита), всё нормально.
(mspdebug) md 0x1C0
001c0: a5 96 03 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
001d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
001e0: 0d 0f 0e 10 0c 0b 00 00 00 00 00 00 00 00 00 00 |................|
001f0: ff 3f ff 3f ff 3f ff 3f ff 3f ff 3f ff 3f ff 3f |.?.?.?.?.?.?.?.?|
К моему ланчпаду есть, кстати, такая картинка: http://processors.wiki.ti.com/images/c/cd/MSP-EXP430F5529LP_QSG_PinOut.png
Я там видно, что для I2C есть подписи PM_UCB1SCL и PM_UCB1SDA. Это названия констант для ремапа портов. Вероятно, это намёк на то, что для работы I2C порты таки надо ремапить. Но похоже я сделал это не правильно или не до конца, потому что не помогло.
Исходная версия KivApple, :
Уже интересно. Не знал, что есть такая функциональность, но это может что-то объяснить. Добавил вот такой код.
// Setup port mapping
PMAPKEYID = 0x2D52;
PMAPCTL = PMAPRECFG;
P4MAP2 = PM_UCB1SCL;
P4MAP1 = PM_UCB1SDA;
PMAPKEYID = 0;
Увы, но это не помогло. Проверил отладчиком - все значения ушли на свои места, так что регистры PxMAPy были доступны на запись (там же есть защита), всё нормально.
(mspdebug) md 0x1C0
001c0: a5 96 03 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
001d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
001e0: 0d 0f 0e 10 0c 0b 00 00 00 00 00 00 00 00 00 00 |................|
001f0: ff 3f ff 3f ff 3f ff 3f ff 3f ff 3f ff 3f ff 3f |.?.?.?.?.?.?.?.?|