Часы с 96 будильниками на MSP430
Прошивка для MSP430G2553 (программа написана на Си) - во вложенном архиве, - см. в конце (download firmware link - bottom of the page).
Даллее - фото начинки, схемы и получасовое видео снятое на разных этапах процесса.
"Сердце" часов - микроконтроллер MSP430G2553 от производителя Texas Instruments. Мне понадобилось 2 месяца от момента первого знакомства с тем, что такое вообще микроконтроллер, до готового устройства (это было совсем не страшно, а очень даже интересно :)). Хотя без везения, как обычно, не обошлось.
Факторы несправедливого везения:
И конечно, в который раз, - Заратустра меня простил...
- Было свободное время.
- Никто не мешал, не возмущался под руку "этими глупостями".
- Был товарищ-электронщик, к которому, как я ни старался этого избежать, все же пришлось :) периодически обращаться за советом.
- Доступные в продаже радиодетали и все прочее необходимые запчасти.
- К этому времени в Интернет уже появилось достаточно информации по теме (хотя недостаточно для моей цели - иначе я бы не описывал этот процесс здесь).
- Еще везением можно считать то, что однажды по работе мне пришлось столкнутся с подобной техникой (правда совсем в другой области и в другом качестве) и я уже ее не боялся. Это был важный психологический позитив в этом деле.
- Большая часть информации доступна в англоязычном сегменте Интернет, - более дружественном и информативном. Вообще, относительно малое количество информации по теме, - это неожиданный плюс в этом деле. Она лаконичнее и точнее.
Си пришлось почти учить заново (когда-то немного ковырялся в нем, но это было очень давно), поэтому за красоту кода не ручаюсь. Могу только сказать, что часы работают без сбоев и исправно выполняют свои функции (уже год - на момент написания этой заметки).
Прошивка:
download firmware (CCS, english comments)
скачать прошивку (CCS, комментарии на русском)
2015-05-13 в 22:52:30
Надо было разбить текст программы на отдельные модули. Сложно читать.
2015-05-14 в 00:32:43
Rumlin. Вы правы. Когда начинал, не знал во что это выльется. Там еще есть один недостаток - я вначале не заметил, что заливаю прошивку в дебаг-режиме и мне не хватило места. Поэтому сделал куски текста выводящегося на экран универсальными. Это наверное не очень удобно. Потом заметил что лью в дебаг-режиме, переключился в релиз и сразу место освободилось. Но код переделывать уже не стал.
Да, здесь коде не все удобно для чтения к сожалению...
Еще время показало, что здесь очень не хватает корректировки хода. Но это уже другая история.
2018-07-18 в 03:26:26
В целом заработало. Слегка правил. Не могу задебажится gdb. Заливается код в часы медленно. load file_with_debug_info.elf работает. Точку breakpoint ставится, но не на нем не остановится.
2018-07-19 в 11:55:48
2 Heather Garner
Интересны Ваши правки. Если не секрет. Хотя бы в двух словах.
2018-07-19 в 12:04:46
Чтобы задебажится надо перевести среду разработки в дебаг-режим.
Но тогда нужно больше памяти в самом МК. И уже я не помню оставался ли ли там необходимый излишек для дебаг-режима. Вроде-бы да.