На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! ПРАВИЛА РАЗДЕЛА "Электроника и схемотехника"
В дополнение к основным ПРАВИЛАМ ФОРУМА :

1. Не забывайте указывать полное наименование, модель,марку, изготовителя и краткие характеристики оборудования.
2. Аргументируйте свое мнение - приводите развернутое высказывание или источник информации.
3. Запрещается обсуждать, размещать запросы и ссылки на схемы и оборудование
конфликтующие с законом или несущие явную потенциальную угрозу применения.
4. Не разрешается давать советы из разряда "Выкинь это старьё" и подобные.
5.Наглая реклама и самопиарщиана подлежит отстрелу сопровождаемому соответстующим наказанием
6.Запрещается создавать темы с просьбой выполнить какую-то работу за автора темы.
Форум является средством общения и общего поиска решения. Вашу работу за Вас никто выполнять не будет.
7.Запрещается создание тем, не относящиеся непосредственно к "Электронике и схемотехнике"
8.В этом разделе КАТЕГОРИЧЕСКИ запрещен мат во всех его проявлениях, а также: Ругань, оскорбления, переход на
личности.

Если Вы увидели нарушение правил раздела или форума, не поленитесь сообщить об этом модератору.
Участники форума, нарушающие правила, будут наказываться, а вносящие вклад в развитие форума - награждаться (DigiMoney и прочими радостями).


Приятного вам общения! ;)
Страницы: (2) [1] 2  все  ( Перейти к последнему сообщению )  
> USB device , on/off program
    Хочу сделать одну штуковину... :)
    Для простоты объяснения задача такая:
    Сделать программу (любой язык (С например)) которая будет ументь пускать/перекрывать "ток".
    Ток соответвенно будет зажигать лампочку (любую).
    Електричество пускается по USB проводу.

    Пример такого устройства - USB флешка - когда пишем что-либо, горит/моргает лампочка.
    Единственно, что могу придумать я - это переделать старую флешку и написать прогу
    которая будет циклично что-либо писать... но это не очень хорошо :)

    Какие есть варианты (лучше по-проще)?


    Заранее спасибо ;)
      Windows?
      Купить преобразователь USB-COM, дальше

      EscapeCommFunction(hcom, SETDTR);
      EscapeCommFunction(hcom, CLRDTR);

      Ну еще есть RTS и даже (через установку-снятие BREAK) - TXD
      Мигать можно тремя лампочками ;)
        Да. Только силовая схема нужна будет на транзисторе.
          AVR309: Программная реализация универсальной последовательной шины (USB)
          останеться только светик с резюком прикрутить. все остальное программерское дело и чтоб пином порта дергать уже есть тулзы. да даже если в контроллер свое че нить захочется добавить, то там есть еще место и даже для драйвера предусмотрены еще 2-3 фукции дополнительных, но там вроде только один регистр общего назначения оставался, поэтому приходилось пооткусывать некоторый общий функционал. да EEPROM там тоже вся свободная :)
            Цитата
            Windows?

            Да.
            Цитата
            Купить преобразователь USB-COM, дальше

            В самых новых компах есть COM порт? - может сразу через него?
            И в чем фишка СОМа? За что там контакты отвечают?

            Цитата
            EscapeCommFunction(hcom, SETDTR);
            EscapeCommFunction(hcom, CLRDTR);

            Это чьи функции? И что они делают?

            Цитата
            Ну еще есть RTS и даже (через установку-снятие BREAK) - TXD

            А что это? :)

            Цитата
            Мигать можно тремя лампочками

            Это было бы совсем идеально.


            По ссылке ElcnU кажись это и предлагается (USB to RS232).
            Только там я немного не понимаю пока - что от меня требуется?
            Только конвертер с драйвером или еще что-то?

            Цитата
            останеться только светик с резюком прикрутить.

            Я в первый раз - что это значит?

            Цитата
            да даже если в контроллер свое че нить захочется добавить

            Его самому надо делать или уже есть готовый (или имеется ввиду конвертер)?

            Цитата
            да EEPROM там тоже вся свободная

            А это что такое? :unsure:
              Цитата NoeR @
              Цитата
              Купить преобразователь USB-COM, дальше
              В самых новых компах есть COM порт? - может сразу через него?
              И в чем фишка СОМа? За что там контакты отвечают?
              В самых новых может и не быть (может быть только гребёнка на материнке, до которой ещё добраться надо).
              Если задача мигать маломощными светодиодиками, то можно и на обычный COM-порт, с переходником USB-COM та же схема и та же программа будут работать. Всей схемы - светодиод плюс резистор.
              Но если нужно что-то помощнее, то разобрав переходник USB-COM можно дотянуться до +5В от USB.
              Ну и раз было попрошено USB, я решил что других интерфейсов нет ;)

              Цитата NoeR @
              Цитата
              EscapeCommFunction(hcom, SETDTR);
              EscapeCommFunction(hcom, CLRDTR);
              Это чьи функции? И что они делают?
              WinAPI. Переключают сигналы на линиях COM-порта по хендлу hcom, сигнал и дейстиве с ним задаются константой, SETDTR - это установить линию DTR, CLRRTS - сбросить RTS и т.д.

              Цитата NoeR @
              Цитата
              и даже (через установку-снятие BREAK) - TXD
              А что это? :)
              А линия передачи данных TXD может быть (надолго) переведена в противоположное состояние "разрыв линии" - BREAK, таким образом ею можно тоже управлять произвольно. Только там пара функций SetCommBreak(hcomm) и ClearCommBreak(hcomm)

              Цитата NoeR @
              По ссылке ElcnU кажись это и предлагается (USB to RS232).
              Только там я немного не понимаю пока - что от меня требуется?
              Только конвертер с драйвером или еще что-то?
              По ссылке на перевод аппноты от Atmel предлагается купить микроконтроллер, сделать плату, зашить в него программу, ...
              Не порекомендовал сразу только потому, что раз в первом сообщение речь шла о "расковырять USB-flash" и писать на неё файлы, то слово "микроконтроллер" автору темы мало знакомо и нет смысла ради одной "мигалки" в это втягиваться.
              Хотя может уже такую платку и готовую можно найти.
              Сообщение отредактировано: avreal -
                Цитата
                Всей схемы - светодиод плюс резистор.

                Нужен только светодиод и резистор? Какой резистор и что с ним делать когда достану?
                Цитата
                Но если нужно что-то помощнее, то разобрав переходник USB-COM можно дотянуться до +5В от USB.

                Лучше было бы так... готов ковырять :rolleyes:
                Вот только что, да как..
                Цитата
                Ну и раз было попрошено USB, я решил что других интерфейсов нет

                Если СОМа может не быть - значит др. интер. нет ;) Надо чтобы много куда шло...
                Цитата
                сигнал и дейстиве с ним задаются константой, SETDTR - это установить линию DTR, CLRRTS - сбросить RTS

                А как это все согласовать (связать) с лампочкой? Куда ее саму коннектить?
                Цитата
                Не порекомендовал сразу только потому, что раз в первом сообщение речь шла о "расковырять USB-flash" и писать на неё файлы, то слово "микроконтроллер" автору темы мало знакомо и нет смысла ради одной "мигалки" в это втягиваться.

                Все верно :yes:
                  Цитата NoeR @
                  Цитата
                  Всей схемы - светодиод плюс резистор.

                  Нужен только светодиод и резистор? Какой резистор и что с ним делать когда достану?
                  ...
                  Все верно :yes:

                  У-у-у... Про куда засунуть резистор "эскадрон, молчать!"... :)
                  Чижолый случай...
                  Это точно на один раз, а не постепенная смена ориентации?
                  Тогда держи:

                  ExpandedWrap disabled
                    #include <windows.h>
                    #include <stdio.h>
                     
                    int main(int ac, char **av)
                    {
                        int key;
                        HANDLE hCom;
                        
                        if( ac < 2) {
                            printf( "Use: test COMNAME\n");
                            return 1;
                        }
                            
                        hCom = CreateFile( av[1], GENERIC_READ | GENERIC_WRITE, 0, NULL, OPEN_EXISTING, 0, NULL);
                        
                        if( hCom == INVALID_HANDLE_VALUE ) {
                            printf( "Can't open %s", av[1]);
                            return 1;
                        }
                     
                        printf( "use r/R, d/D, b/B keys for clear/set RTS, DTR and BREAK state, q for quit (press CR after key)\n");
                        
                        while( (key = getchar()) != 'q' ) {
                            switch(key) {
                            case 'D':   EscapeCommFunction( hCom, SETDTR);  break;
                            case 'd':   EscapeCommFunction( hCom, CLRDTR);  break;
                            case 'R':   EscapeCommFunction( hCom, SETRTS);  break;
                            case 'r':   EscapeCommFunction( hCom, CLRRTS);  break;
                            case 'B':   SetCommBreak( hCom);    break;
                            case 'b':   ClearCommBreak( hCom);  break;
                            }
                        }
                            
                        CloseHandle(hCom);
                        
                        return 0;
                    }


                  Тю, а что это png-шка не приклеилась? Ну тогда gif-ка

                  Добавлено
                  Вид COM-порта ("настоящий" или переходник с USB) не важен.
                  С приведенной программкой набор в консоли (FAR-е)
                  test COM4
                  дальше по одному или группами
                  drb(CR) выключит все светодиоды
                  DRB(CR) - включит все.

                  (ну у меня переходник USB-COM поцепился на COM4)
                  Сообщение отредактировано: avreal -

                  Прикреплённая картинка
                  Прикреплённая картинка
                    Большое спасибо ;)
                    А как насчет 5В?

                    И еще вопросик немного не в тему:
                    Можно от USB сделать включение света в комнате? :)
                    (Не сама лампа горела от USB, а вкл. выключатель)
                      Цитата NoeR @
                      А как насчет 5В?

                      Два крайних контакта на ЮСБ это и есть 5в. Только осторожней, на материнке стоят предохранители, если превышение тока будет больше чем пол ампера, то к ним кердык прийдет.

                      Цитата
                      Можно от USB сделать включение света в комнате? :)

                      Можно. Вместо светодиодов ставить транзистор, который коммутируют реле запараллеленное с выключателем света.
                        Цитата AlexJ @
                        ..Только осторожней, на материнке стоят предохранители, если превышение тока будет больше чем пол ампера, то к ним кердык прийдет....

                        режим старта юсб - 100мА. по запросу до 500мА...

                        с уважением
                        (круглый)
                          Цитата NoeR @
                          И еще вопросик немного не в тему:
                          Можно от USB сделать включение света в комнате? :)
                          (Не сама лампа горела от USB, а вкл. выключатель)

                          Реле используй для этих целей с использованием транзистора
                            Цитата
                            Два крайних контакта на ЮСБ это и есть 5в.

                            А если USB->COM? CD & RI по 5В?

                            За реле спасибо ;)
                              Цитата NoeR @
                              Цитата
                              Два крайних контакта на ЮСБ это и есть 5в.

                              А если USB->COM? CD & RI по 5В?

                              CD & RI это входные пины, с них напругу вообще не снимают ;)
                              распиновка КОМ-порта(9-пиновый): http://pinouts.ru/SerialPorts/Serial9.shtml

                              Управляющую напругу можно снять только с линий TXD, DTR, RTS.
                              Согласно стандарту, относительно общего провода, напряжение может варьироваться в диапазоне от -15...-3 Вольт(логическая единица) до +3...+15 Вольт(логический ноль). Так что в этом случае все зависит от производителя компа или переходника USB<->COM. ИМХО проще вытащить 5 вольт непосредственно с USB разьема, а подключение/отключение нагрузок(через реле, транзисторы...) сделать по COM-порту.
                                Цитата
                                ИМХО проще вытащить 5 вольт непосредственно с USB разьема

                                Т.е. разрезать провод, найти черный/красный, их вытащить наружу обматав, а остальное отправить в первоначальное русло?
                                Я говорю про USB->COM. Т.е. будет COM работать если из провода (конвертера) вытащить эти два вольтовых?
                                1 пользователей читают эту тему (1 гостей и 0 скрытых пользователей)
                                0 пользователей:


                                Рейтинг@Mail.ru
                                [ Script execution time: 0,0502 ]   [ 14 queries used ]   [ Generated: 18.05.24, 20:32 GMT ]