Прикалывает...
Нет поддержки 64-бит...
Только один канал ДМА... который поддерживает полную адресацию...
Покоцанные предделители таймеров...
Большие индейцы... но в принципе... терпимо...
ну я вот этого и боялсяЛеонид Иванович писал(а): Другое дело, что платы с дорожками 0.3 мм и зазорами 0.2 мм утюжить не очень весело.
а обычные счетчики в циклах? мне больше пары байт считать пока ничего не приходилосьmenzoda писал(а):Временные переменные, участвующие в рассчете контрольной суммы - натурального размера.
ну вот, я и думал, что есть какая-то особенностьmenzoda писал(а):1. Использование переменных меньше натурального размера слова для данного ядра: экономия памяти при уменьшении производительности.
ну вот 4к рам это много или мало при 32 битной архитектуре? я просто не ощущаю это на интуитивном уровнеmenzoda писал(а):(в том случае, если имеются ограничения в размере RAM, а на сегодняшний день они пока еще имеются),
Леонид Иванович писал(а):собираюсь утюжить плату на основе STM32F100C8T6B:
так ее и так нетЛеонид Иванович писал(а):Тогда никакой путаницы с длиной и знаковостью переменных не будет.
В чем там кривость?kalobyte писал(а):так ее и так нетЛеонид Иванович писал(а):Тогда никакой путаницы с длиной и знаковостью переменных не будет.
инт по умолчанию х86 компилятора это 4 байта
короткий -2, а длинный 8 байт
надо с минусом, то дописываеш signed
а эти новые типы какие-то кривые или это только мне так непривычно?
скорей таки да, может я чего уже забылКРАМ писал(а):А вот беззнаковые нужно указать как unsigned - uint
Да, это ведь те же временные переменные.kalobyte писал(а):а обычные счетчики в циклах? мне больше пары байт считать пока ничего не приходилось, их делать 32?
Тут я ничего не скажу, зависит от задачи. Для часов, будильника, термометра, вольтметра, контроллера аквариумом или инкубатором, мигалки, пищалки, контроллера центрифуги и других бытовых и несложных промышленных устройств - это более чем достаточно. Можно не задумываясь делать все переменные натурального размера.kalobyte писал(а):ну вот 4к рам это много или мало при 32 битной архитектуре? я просто не ощущаю это на интуитивном уровне для 8 бит понятно, а тут непонятно
Да, для архитектуры x86 это может и так, но для зоопарка микроконтроллеров - в общем случае нет. Ведь в стандарте языка C не указан абсолютный размер типов, только относительно друг-друга. Более того, если мне не изменяет память, там даже не говориться, что байт должен быть восьмибитным.kalobyte писал(а): так ее и так нет
инт по умолчанию х86 компилятора это 4 байта
короткий -2, а длинный 8 байт
надо с минусом, то дописываеш signed
а эти новые типы какие-то кривые или это только мне так непривычно?
и этим...вот как всякие 7-сегментные индикации на ARM-е через DMA делать
Это... конечно не "всякие 7-сегментные индикации на ARM-е через DMA"... но тоже интересно...Ну как же? На LCD пин "E"-то нужно после выставления каждого байта на 8-ми битную шину переводить из одного состояния в другое и обратно. То есть выдал байт, сделал строб, снова выдал байт и т.д. Так же нельзя забывать про RS (Или RW, не помню уже), чтобы показывать, что мы передаем, данные или команду.
МК выбирается исходя из потребностей задачи
А я бы выбрал STM32F030F4... которая в полтора раза дешевле Тиньки... в розницу...В качестве решения пришла tiny2313
... чтобы АСМ-мазохизмом не заниматься... Да и... "тромбовать ногами ассемблером"... как-то не вяжется с "хватило с лихвой"...Код, правда, пришлось тромбовать ногами ассемблером.
Простой тиньки тут хватило с лихвой.