Конференция "Журнал" » Re: А можно, я заведу тут свою персональную ветку?
 
  • KilkennyCat © (12.11.13 01:56) [60]
    В очередной раз портировал USB-stack с С18 на XC8. еще кривее, чем раньше, но все равно очередное счастье!
  • Inovet © (12.11.13 03:17) [61]
    Ты вот такой станцией не пользовался? Станция паяльная LUKEY-868 (фен+паяльник)
    http://shop.siriust.ru/product_info.php/cPath/23_28_269/products_id/6000
  • KilkennyCat © (12.11.13 07:06) [62]
    Имеено этой нет, а так лукеями аж тремя разными. средненькие,  требуют доработки, как и всякий китай. только тут что-то уж больно дорого она стоит. у нее фен да паяльник суммарно тянут на 1500, ну и блок на 1000 максимум. более старая, которая с помпой вместо вентилятора в фене стоит на 1500 дешевле.
    т.е. вот эти - адекватные по цене (и управление крутильное, а не давительное): http://shop.siriust.ru/product_info.php/cPath/23_28_269/products_id/9322
    http://shop.siriust.ru/product_info.php/cPath/23_28_269/products_id/4710
  • Inovet © (12.11.13 11:54) [63]
    > [62] KilkennyCat ©   (12.11.13 07:06)
    > и управление крутильное, а не давительное

    Там же всё равно кнопки в крутилках. Или удобнее в смысле?
    Вот от этой
    http://shop.siriust.ru/product_info.php/cPath/23_28_269/products_id/6639
    отличается паяльником, тем, что в нём керамический нагреватель японский. И ценой на больше 1000.
  • KilkennyCat © (12.11.13 14:58) [64]

    > Там же всё равно кнопки в крутилках. Или удобнее в смысле?

    ага, мне температуру удобнее накручивать, чем кнопками надавливать. впрочем, как и все остальное, и часы удобнее аналоговые. т.е. мне чувствовать сектор проще, чем длительность нажатия и цифры

    >  керамический нагреватель японский

    это хорошо. в моей, судя по его внешнему виду, не японский. но работает.

    в общем, бери, повезет - вообще без проблем будет, не повезет - доработаешь.
  • KilkennyCat © (16.11.13 02:23) [65]
    несмотря на то, что бит -самый маленький, как флаг он сжирает дофига.
  • Inovet © (16.11.13 17:48) [66]
    Упаковать, но тогда код будет сжирать больше.
  • KilkennyCat © (16.11.13 19:20) [67]
    Я думал с упаковкой, но действительно, и код и скорость проигрывают, потом я хотел структур насоздавать с битовыми полями - тож не понравилось.
    Так пока получилось: старшие биты - флаги, младшие биты - код состояния. с динамичным смещением. например, <7> - флаг фатальной ошибки, <6:0>  - 127 кодов этой ошибки,
    если ошибки нет, то <6> - признак выполнения в данное время команды <5:0> - 63 кода выполняемой команды.
    единственное неудобство - я не могу проверять правый бит как флаг, не проверив, что все левые - ноль, но это довольно-таки простая проверка.

    Зато теперь все удобно уместилось в один байт.
  • KilkennyCat © (16.11.13 19:52) [68]
    байт - состояние устройства
    7 6 5 4 3 2 1 0
    | | | | | | | |
    | | | \ \ \ \ \
    | | |   код команды (ошибки)
    | |  \
    | |   если установлен, то устройство есть, включено и готово к приему команд
    |  \  
    |   если установлен, то устройство в стадии выполнения предыдущей команды. остальные биты - код команды
     \
      если установлен, то устройство в критичной ошибке. остальные биты - код ошибки

  • KilkennyCat © (16.11.13 19:58) [69]
    удобно получилось: сравниваю с 0x20 - узнаю о готовности.
  • KilkennyCat © (16.11.13 20:02) [70]
    5 - лишний, если логику 6-го инвертировать...
  • KilkennyCat © (16.11.13 23:23) [71]
    ура, закончил очередной этап. осталося чуть-чуть
  • Inovet © (16.11.13 23:32) [72]
    > [67] KilkennyCat ©   (16.11.13 19:20)
    > потом я хотел структур насоздавать с битовыми полями

    Если в Си, так тогда компилятор из них будет выковыривать биты и, мало того, ещё приводить сдвигом вправо к каким-нибудь целым. Ну так должно бы быть. Может в микроконтроллерах какие аппаратные команды есть для такого.
  • Inovet © (16.11.13 23:38) [73]
    Короче, имеет смысл битовые поля городить, если надо много таких однотипных данных хранить, или аппаратно так удобнее представить в каком-нить регистре для компактности при обращениях снаружи.
  • KilkennyCat © (17.11.13 00:28) [74]

    > Inovet ©   (16.11.13 23:32) [72]

    да, это не самое эффективное.
    однако юзают вовсю. вот подобное сплошь и рядом:

    typedef union _BD_STAT
    {
       BYTE Val;
       struct{
           //If the CPU owns the buffer then these are the values
           unsigned BC8:1;         //bit 8 of the byte count
           unsigned BC9:1;         //bit 9 of the byte count
           unsigned BSTALL:1;      //Buffer Stall Enable
           unsigned DTSEN:1;       //Data Toggle Synch Enable
           unsigned INCDIS:1;      //Address Increment Disable
           unsigned KEN:1;         //BD Keep Enable
           unsigned DTS:1;         //Data Toggle Synch Value
           unsigned UOWN:1;        //USB Ownership
       }
    ;
       struct{
           //if the USB module owns the buffer then these are
           // the values
           unsigned :2;
           unsigned PID0:1;        //Packet Identifier
           unsigned PID1:1;
           unsigned PID2:1;
           unsigned PID3:1;
           unsigned :1;
       }
    ;
       struct{
           unsigned :2;
           unsigned PID:4;         //Packet Identifier
           unsigned :2;
       }
    ;
    } BD_STAT;                      //Buffer Descriptor Status Register

  • Inovet © (03.12.13 02:39) [75]
    > [64] KilkennyCat ©   (12.11.13 14:58)
    > в общем, бери, повезет - вообще без проблем будет, не повезет - доработаешь.

    Взял. Теперь по второму кругу смотрю в Инете доработки, на этот раз уже более прицельно.

    Родное китайское жало залудил вонючим активным жиром, а то ни канифоль, ни простой жир не совладали. Ну это понятно. А вот теплопередача от нагревателя к жалу явно недостаточная. Т.е. поставил 300 С, допустим, температура нагревателя за несколько секунд поднялась от комнатной, а канифоль на коце жала едва плавится, уже много позже начинает дымить, там и до плавления припоя недалеко. Но... от прикосновения к припою опять остывает, надо погреть ещё припой. Это я ещё не пробовал что-либо припаять.

    В нагревателе видно под керамикой дорожки эээ нагревателя и терморезистора. Терморезистор ближе к концу, нагреватель большей частью следом расположены. По размерам жала ещё около 5 мм надо бы его глубже продвинуть, и по дорожкам так же получеатся задумано японскими инженерами. Но китайские инженеры подстраховались что ли под разброс размеров китайских жал, хотя их родное с японским практически совпадает. Не понятно.

    В общем что-то отпиливать/допиливать не тороплюсь. Почитаю ещё.
  • Inovet © (04.12.13 00:24) [76]
    Производит Hua Hui Electronic Factory, однако ж.
  • Inovet © (06.12.13 13:17) [77]
    Допишу уж в твоей персональной ветке, раз начал.

    Сейчас отпилил лишние 5 мм на внутренней гильзе, внешнюю гильзу не стал отпиливать, потому что вальцовки нет, а по-уродски края отгибать не охота. Положил внутрь на выходе жала 2 колечка из стальной проволки по 0,8 мм для компенсации длины, всё же так лучше, выглядит как реактивный двигатель, а по теплопотерям должно то же быть. На допуск, правда, остались доли милиметра при таком подходе. Зато всё заработало как надо, даже температура на конце жала до 1 градуса совпадает с установленной. Пробовал 3 разных жала разных форм, размеров и производителей: родное Lukey, какой-то неизвестный китайский Mechanic, и, как бы, японское Hakkо, типа родное для этого нагревателя - все подходят и работают.
  • KilkennyCat © (07.12.13 05:05) [78]
    Я тоже где-то 4 мм отпиливал. Внешнюю отпиливать не пришлось - достаточно коротка была изначально
  • KilkennyCat © (10.05.14 01:46) [79]
    че-то меня на старости лет потянуло на Python....
 
Конференция "Журнал" » Re: А можно, я заведу тут свою персональную ветку?
Есть новые Нет новых   [134427   +26][b:0.001][p:0.004]