значит особых мер, в сравнении с теми же AVR по защите от статики предпринимать не нужно.
ошибаетесь
Цитата:
У STM32 ограничение тока короткого замыкания на выходах есть? Или сгорает?
у выходных транзисторов сопротивление канала ненулевое (особенно при настройке на малую скорость), но резистор на 50..100 Ом добавить не помешает (если ведете сигналы наружу платы - типа RS232, SWD, LCD и т.д.)
Неужели придется землить все - стол, себя, паяльную станцию? Вопрос то интересует в том плане, могу я обращаться с ними так, как обращался с AVR (в смысле пайки)?
_________________ У кошки четыре ноги - вход, выход, земля и питание. Но трогать ее не моги - получится замыкание.
нет, не все так печально. У меня еще ничего не горело, ничего не заземляю и вообще над этим не задумываюсь. Хотя видел людей у которых от статики дохли контроллеры только так, не знаю от чего зависит - сопротивления кожи, одежды и т.д.
У меня тоже никогда ни одна МОП-микросхема не горела от статики, и ни один МОП транзистор, хотя транзисторы, по крайней мере по даташитам (не знаю как в реальности) защитных стабилитронов затвор-исток не имели.
_________________ У кошки четыре ноги - вход, выход, земля и питание. Но трогать ее не моги - получится замыкание.
всем привет! расскажите какие в KEIL есть битовые переменные. я подключил хидер stdbool.h, в нем нашел такое #define bool _Bool, а где определение _Bool я не нашел. меня интересует сколько бит памяти занимает тип _Bool. _Bool test = 1514634861836; //такая строка не вызывает у компилятора подозрений. пока в качестве переменных-флагов использую uint8_t, но, может, есть более подходящий для этого тип?
__attribute__((bitband)) type attribute ARM Compiler toolchain v5.02 for µVision Compiler Reference
Home > Compiler-specific Features > __attribute__((bitband)) type attribute
__attribute__((bitband)) type attribute __attribute__((bitband)) is a type attribute that gives you efficient atomic access to single-bit values in SRAM and Peripheral regions of the memory architecture. It is possible to set or clear a single bit directly with a single memory access in certain memory regions, rather than having to use the traditional read, modify, write approach. It is also possible to read a single bit directly rather than having to use the traditional read then shift and mask operation. Example 10 illustrates the use of __attribute__((bitband)).
Example 10. Using __attribute__((bitband))
Код:
typedef struct { int i : 1; int j : 2; int k : 3; } BB __attribute__((bitband));
Мне всегда было интересно, неужели в современных МК выпускаемых ST настолько мало памяти что вам жалко под переменные(у вас их наверное пара сотен) отвести полноценные 4 байта. МК 32 разрядные? Ну так пусть и переменные будут uint32. А вам 8 бит под тип bool жалко.
Наверное удобно и наглядно когда функция возвращает bool значение:
А мне кажется нету смысла усложнять, в си уже описан тип бул, он используется при сравнении и представляет собой обычный инт, если он равен нулю то false и если любое другое значение - true, так что код по идее должен быть таким:
Код:
int Compare ( uint32_t A, uint32_t B ) { return (A == B); } ..... if ( Compare() ) bla-bla
_________________ Информация по RLC mini находится >тут<
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 5
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения