Перейти к содержанию
    

igorle

Свой
  • Постов

    337
  • Зарегистрирован

  • Посещение

Весь контент igorle


  1. Я не обозначил кто я :) Я не живу с электроники. Основная работа - программист. А электронщик - хобби. Ваяю по мелочи для дома, для семьи, для родной фирмы. По сути - для души. Сам разрабатываю, сам паяю, сам программирую. И таких как я в Израиле мало, похоже что вообще нет. А в Китае - много. И для них есть отличные условия. Захотел что-то собрать - пошел в магазин, подобрал сколько нужно деталей, выбрал подходящий конструктив. Заплатил копейки и сразу за работу. Я там иззавидовался. Я волнуюсь. Похоже что я силюно туплю. Смотрю расценки на диджикее - до израиля любая посылка 40 долларов. Думал - может быть в Россию 200 долларов федексом бесплатно? проверил - еще хуже: Научите, как вы это делаете, пожалуйста.
  2. ??? Я на днях насобирал на 150 долларов в диджикее, и за доставку попросили 50 долларов. Еще были бы немалые расходы на таможне в Израиле. Тогда попросил друга из Америки (от сейчас в командировке) привезти. За доставку по Америке взяли 12 долларов. Может быть я что-то упускаю? Помогите, если знаете как оформить бесплатную доставку. С Алиэкспресса - доставка бесплатно. Цены за доставку с digi-key начинаются с 40 долларов. Бесплатно только сэмплы с TI приходят. Что до страны, то это интересный факт. Израиль - страна хайтека, но магазинов радиодеталей здесь НЕТ!!! То что есть - это издевательство. Люди не собирают ничего из деталей. Во всяком в моем окружении. Я на работе (пограммистская контора) создал лабораторию, но мало кто может там что-то сделать. Сравните - в Гонк-Конге, а еще лучше - в Тайване - есть изумительные магазины электроники. Типа супера, где на полках детали, детали.... Ходишь с корзинкой и собираешь что тебе надо. Цена - копеечная. Масса людей ходит с листочками со списками деталей. Если здесь кто-то есть из Израиля и со мною не согласен - пишите (можно в личку, ветка-то не об этом). Буду рад, если мне покажут что я ошибаюсь.
  3. Я "вернулся" в электронику год назад. Живу у Израиле. Покупать радиодетали практически негде. Алиэкспресс мой главный и основной поставщик. Работают четко. Цены хорошие. Единственная беда - посылки идут порядка двух месяцев. Вот сейчас в пути двадцать ордеров. Горячо рекомендую. Еще пример. Готовые AC/DC (5В 0.5А) адаптеры продают за 80 центов!!!
  4. часовой кварц для STM32F103

    Я хочу сделать для себя демо плату с STM32F103. Кто - нибудь может рассказать о часовом кварце для этого процессора? В документации пишут прямо - не использовать кварц 12.5pF (самый доступный и дешевый цилиндрический кварц). На Discovery стоит кварц с собственной емкостью 6pF и к нему два конденсатора 6.8pF. В Интернетах нашел как упоминания о том, что часовой кварц для STM32 - это большая проблема, так и утверждения что ставят часовой вообще без конденсаторов - и все отлично работает. Расскажите, пожалуйста, о своем личном опыте, если таковой имеется
  5. Друзья. Эта тема создана Буратиной для Буратино. Он изучает С. Но в результате ветка превратилась в спор о дистнинкциях между несколькими опытными профессионалами. Это то, чего я опасался - вместо обучения получается запугивание. Давайте вернемся а TC. Если человек пришел с вопросом, то надо отвечать на его языке. Любое знание должно прорасти. И его надо оберегать на начальных периодах. А если начинать тригонометрию не с прямоугольных прямоугольников, а с тригонометрических функций комплексных переменных, то толку не будет. То что очевидно опытному - не сразу понятно начинающему. Время нужно. Кстати, никто не ответил ясно на мой вопрос. Повторю. Что будет напечатано на 32 битном процессоре (решить на листочке, без компилятора): int** my_array=GenerateArray(6, 9); int your_array[6][9]; printf("%z %z\n", sizeof(my_array), sizeof(your_array)); К вопросу о споре. Я понимаю обе стороны. Позиция ReAl мне ближе. Просто Буратино жалко. Он уже сбежал из своей ветки.
  6. Да, и узнать это из исходников - похвальный, но не самый простой путь. Лучше читать man pages Кстати - многие функции еще и не проверяют корректность параметров. Например strcat(NULL, "basa"); просто покрошится.
  7. Я считаю что хороший способ запутать (и запугать) новичка. Вы должны теперь объяснить, что my_array и your_array следующем примере: int** my_array=GenerateArray(6, 9); int your_array[6][9]; это две большие разницы. И вообще эти переменные - разного типа. Это неочевидно ученику. Давайте спросил Буратино (задачу решить на листочке, не используя компилятор): - какого типа your_array? - что вернет sizeof(my_array) и sizeof(your_array)? - можно ли сделать такое присвоение int **his_array = your_array; ?
  8. Интересного много. Но не ребенку. Я, зная и любя электричество, не смог заинтересовать сыновей. Не было подходящих примитивных "кубиков" в свое время. Наборы для сборки моторчика, генератора, мултивибратора им не понятны тогда были. А сейчас уже паровоз ушел. Помню, что я в своем детстве тащился от простейшей схемы - батарейка - кнопка - лампочка. Так что не бойтесь быть слишком простым, но бойтесь отбить интерес слишком сложным. Все-таки электричество - абстрактная вещь. Ребенку не очевидная. А все эти детские наборы юного электронщика - как женская грудь. Вроде бы предназначена для ребенка, а играют папы.
  9. Забавно. Никогда так не делал. Первая реакция была - "ерунда". Потом подумал - а ведь должно работать....
  10. В этом возрасте - только батарейки, кнопки, лампочки, переключатели. Кнопочку нажал - лампочки зажглась. И чтобы соединения не на пайке, а какими-нибудь клипсами. Найти советских больших тумблеров, галетных переключателей. Пока этим не наиграется - ИМХО - дальше идти смысла нет. Если повезет и ребенок будет интересоваться - добавить реле. И начать рисовать схемы того, что получилось.
  11. http://www.uclibc.org/ http://git.uclibc.org/uClibc/tree/libc/string
  12. А куда идет +3.3? Соединяется питание двух устройств? Если "да" - то зачем?
  13. Я в дискуссии не участвовал, но был на стороне "теоретиков". Тем не менее признаю - "практик" смог решить свою задачу :smile3009: . Поздравляю. Если управление будет идти без шума/речи, только позвонил и подал команду, то помехоустойчивость ему ни к чему. Снова вспомнил старое правило успешных бизмесменов - любую задачу можно решать максимально плохо, лишь бы работало. Главное - время.
  14. Указатель и массив - это не одно и то же. Но имя массива - это указатель на первый его элемент a[0] то же самое что и *a a[10] то же самое что и *(a+10) Понятно, что при определении переменной int a[] и int *b - разные вещи. Но после этого они во многом ведут себя одинаков. Во многом, но не во всем. a нельзя присваивать новое значение, b - можно. int a[10]; int *b = a; Теперь все, что вы хотите делать с a, вы можете делать с b. Обратное не верно Например b[2] - это то-же самое что и a[2]. Я считаю, что это из области, где легче понять чем объяснить. Даже гугл не поможет. И приходит только с небольшим опытом. Просто поиграйте с указателями. Потом - с указателями на указатели. Это действительно просто. Наш экспириенс не поможет. Можете придумыват, писать и компилировать простые примеры из нескольких строк, и задавать конкретные вопросы если не работает. Когда поймете то что говорили про указатели и массивы - посмотрите примеры про обработку связных списков. Там указатели на указатели очень эффективно работают. Можете порешать олимпиаду, про которую я говорил в соседней ветке. Там тоже про указатели на указатели. Если не выиграете приз, то хоть согреетесь.
  15. Кстати, когда найдете, поделитесь пожалуйста знаниями. У меня есть линия 220 В 16 А, по которой гуляют 125 кГц. Я не хочу "выпускать" этот сигнал наружу. Я так понимаю, что мне надо входящие провода пропустить через ферритовое кольцо. Но будет ли этого достаточно? Или надо обернуть несколько раз? Сколько?
  16. С точки зрения языка С, в данном случае (для прототипа функции), обе записи равнозначны. Используйте то, что вам понятнее. Со временем придет "чуство" того, что имя массива и указатель - это одно и то-же. Да, это я ошибся. Нужно *argv++ Ваш вариант, с последним элементом NULL, правильный, тем более что функция main действительно получает массив argv размером на единицу больше, чем argc, с NULL терминатором. Массив и указатель - близнецы братья. При использовании - это одно и то-же. Немного практики, и это станет простым и естественным. И будет непонятно, как некоторые языки не используют указатели. Верной дорогой идете!
  17. Цена 40 центов - не совсем копейки. Для примера - AMS1117 по семь центов продают. Но зато да, компактно. Спасибо, заказал.
  18. на входе пять вольт. Кстати, я не знаю как делают взрослые дяди, но я для небольшого количества образцов купил USB AC адаптеры по доллару в Китае. Разрезать корпус и использовать содержимое - дешевле чем самому изготавливать.... Пять вольт 500 мА мне хватает пока.
  19. Я, вообще-то, хотел TPS77333DGK взять. Мне 250 мА достаточно. И он мало места на плате занимает. Но увидев цену посмотрел на LV1117, а затем увидел аналог. Кстати, я еще люблю TPS71533DCKR. У него цена тоже серьезная. У него есть дешевые аналоги с похожим размером? Желательно в том-же корпусе? Я не нашел пока.
  20. Я до сих пор зказывал бесплатные образцы от TI. Сейчас решил заказать партию микросхем c Digi-Key (надоело побираться) И тут выяснилось, что если я покупаю настоящий LM1117, то это обойдется мне почти по доллару штука. А если на aliexpress аналог (AMS1117-3.3), то семь центов. Разница существенная. Кто-нибудь знает, какие реальные опасности меня подстерегают, если я куплю аналог?
  21. Я так делаю - обязательно пишет что меняли текст. Почитал. Познавательно. Я сам с AVR не работаю.
  22. На MSP430 - все литеральные строки хранятся во флэше. А для инициализированных массивов, если я не хочу переносить их п память, достаточно добавить const Попутно. Оффтопик. Как вам удается редактировать свои сообщения, без того чтобы было написано "изменен тогда-то и тем-то"?
  23. Это таки будет работать гарантировано. Потому что моя функция возвращает указатели на read only строки из секции data Ваша функция тоже будет работать, но в ней есть бесполезное копирование строк из read only секции data в read write секцию. Недостатки - в два раза увеличился объем памяти - нет защиты от случайного изменения текста (оно в данном случае не желательно) Посмотрите здесь Ну и посыпаю голову пеплом по поводу опечатки в названии функции. Должно было быть true_or_false. Хотя так даже прикольно получилось, многозначительно.
  24. Формально - прав. Фактически - нет. Поправляю. Вопрос был о char **argv. Есть такая штука, как code convention. Именем argv принято обозначать статический массив указателей на строки. Поэтому упаси бог использовать его по тому же принципу, как используют при работе со списками. Например, здесь переменную answer назвать argv нельзя из соображений личной безопасности: void true_of_false(char **answer, int is_true) { *answer = is_true ? "True" : "False"; } void foo(void) { char *b_char; true_of_false(&b_char, 2013); printf("He said %s %s %s!\n", b_char, b_char, b_char); }
  25. обычно это имя переменной, которую получает main. Это массив указателей на строки - аргументы командной строки. В паре к ней идет argc - количество элементов в массиве. void foo1(int argc, char **argv) { while (argc--) printf("\"%s\"\n", argv++); } void foo(void) { char *my_argv[] = {"Hello", "World", "one", "two", "four"}; foo1(5, my_argv);
×
×
  • Создать...