STM32 — с нуля до RTOS. 4: Внешние прерывания и NVIC

Говоря о прерываниях, невозможно не рассказать о так называемых внешних прерываниях. За страшным названием стоит просто прерывание от переключения входной ножки. Да, в PIC была одна или две специальных ножки, умеющих генерировать прерывания — тут же таких ножек вагон. Работает всё точно так же, как и во втором проекте — разве что нужно настроить ножку на вход.

Разбор JSON на микроконтроллере — библиотека cJSON

У меня появилась необходимость общаться с сервером через JSON-сообщения. Генерировать я их научился очевидным образом — ручной сборкой сообщения через sprintf. Однако мне нужно было ещё и разбирать ответ сервера, и чтобы не городить самописный парсер, попробовал найти готовые решения.

Благо, тут целых 17 готовых парсеров JSON в C. Некоторые (такие как YAJL) не захотели собираться с пол-пинка, да и странно выглядит когда решение такой довольно простой задачи разбивают на 10 модулей. Поэтому был выбран парсер cJSON, который умещается в два файла.

Ethernet на STM32F107 + LAN8720 в MikroC

В MikroC хорошая библиотека работы с Ethernet, но справка по ней крайне глупая и с ошибками. Примеров так и вообще практически нет (веб-сервер не в счёт, там не разберёшься с нуля).

На форуме они отвечают тоже довольно медленно, и я потратил три дня на то, чтобы разобраться как сделать TCP-клиент, подключающийся к компьютеру-серверу.