Тут даже комментировать нечего. У вас каша какая-то, а не реализация алгоритма. Нарисуйте для начала алгоритм в виде блок-схемы, если знаете как это делается. Потом, изучая документацию по каждому модулю? пишите блок для инициализации его.
Прерывание рекомендуется разрешать в самом конце инициализации модуля, а не вначале ее. Если же используете и разрешаете прерывания, то оформляйте процедуру обработчика каждого используемого вектора прерываний. У вас такого обработчика прерывания по вектору TIMERA0_VECTOR нет, хотя прерывание вы разрешили. Правда этот нюанс не влечет краха программы, т.к. вы забыли или не знаете, что пока вы не установите бит GIE все маскируемые прерывания будут запрещены.
Еще одна подсказка. Можно написать программу на Си и посмотреть листинг ее на ассемблере. Потом этот полученный ассемблерный код можно править/дописывать и компилировать уже как ассемблерную программу.
Третья подсказка. У производителя на сайте есть примеры для работы почти со всеми периферийными модулями. Причем примеры и на АСМ и на СИ.
http://focus.ti.com/mcu/docs/mcuprodcodeex...&tabId=1468