понедельник, 28 ноября 2011 г.

Оч.умелое..

Это - внутренности лампы-энергосберегайки:

Хорошо что я ее не выбросил - мне срочно понадобилось ферритовое колечко, зелененькое на переднем плане

Из него (а также 2 кусков провода, транзистора кт315 и резистора) наколхозил источник питания для светодиода:

Витков на колечке - сколько влезло, меньше 20. Спаял компактный вариант, с 2-я такими светодиодами и с ААА батарейкой, кинул на ночь на шкаф вместо ночника :)

Зачем: НГ же все на носу, в доме с каждым Новым Годом все больше разных подсвечников (которые типа домика, в который вставляется свечка)

Вот была идея вместо свечки вставлять такую приблуду, чтоб не переживать за пожар и прочее.. на новогодне-праздничные вечера одной батарейки (даже полудохлой, которая никуда больше не сгодится.. а тут высасывается пишут очень хорошо) хватит

Только не доволен результатом: с 2-я светодиодами светит ярко, но эффект все же не тот, что со свечкой: или свечка светит еще ярче, или все-таки из-за спектра (тут свет холодный)

воскресенье, 27 ноября 2011 г.

пятница, 25 ноября 2011 г.

Фееричный стыд :(

Вот то в кляксе флюсовой и проводках - многострадальный термометр, который пришлось выпаивать, а потом жилкой перепаивать

четверг, 24 ноября 2011 г.

омг омг омг

Сынище сошкреб в кучку подаренные на ДР и накопленные деньги, заказал для апгрейда железяк, попросил забрать (причем поставил уже перед фактом, заберу или искать кого-то еще), выбирал как-то там сам

И собирать сказал будет с дружбаком, папина помощь не нужна уже

Проц с 4 ядрами, память, видео.. играться короче, было б для дела :(

Вот так вот.. Прикол, но я свой первый компьютер начал ковырять примерно в таком вот возрасте, правда тогда это был деревяный (фанерный) ящик с 1 мегагерцовым процессором и 16 килобайтами памяти :)

Всего то четверть века прошло. НИХРЕНА себе, четверть века прошла с тех пор

epic fail #2

Причем намного фейеличнее, чем прошлый (там я просто "доставил" ножки индикатору из резисторов в мелких корпусах, получилось даже как-то изящьненько :)

А тут - ds75 в библиотеке eagle не было и я добавил ее сам; и связал неправильно ноги, 4 ножки с одной стороны попутал местами. Неудивительно, что вчера термометр не заработал, хорошо хоть сообразил быстро

Пришлось выпаять датчик (оплетка для выпаивания рулит), порезать дорожки, припаять назад и жилкой от провода попаять ноги правильно - после чего заработало (ну маладец, чо там.. но сам себе геморой придумал на абсолютно пустом месте)

Думаю, откуда питание брать; и еще думаю, что стратил, мысль поздно пришла: надо было на плату мини-usb разьем добавить и "большой" usb-разьем - был бы и удлинитель для флешки сразу, и питание от usb.. такое и на миник на работе можно было бы поставить, не стимпанк, но тоже забавное :)

вторник, 22 ноября 2011 г.

Лежит груша, нельзя скушать..

Ну хотя это очень большое преувеличение про нельзя - слопал и не моргнул

epic fail

От я му.. неправ был; я в схему часов забыл резисторы добавить, к сегментам

Распаял мелочь вчера, лег спать и дошло.. Как вариант сделаю что-ли "ножки" из выводных резисторов и на них припаяю уже цифры

*фейспалм*

понедельник, 21 ноября 2011 г.

И кстати про порно..

А вот интересно (чисто академически так сказать) - мусульманское порно - оно какое? медленное снятие паранджи?..

Sources..

Исходники часов - схема и прошивка: здесь

Будет еще допиливаться - например утром сообразил, что при первом включении надо сразу включать режим корректировки.. но то косметика

Забирал посылку..

Заказывал для древнего кпк аккумулятор, неожиданно посылка пришла всего через 3 недели (21 - 4 = ну да, 17 дней)

Забрал, внутри неожиданно обнаружил ручку

Мелочь, а халява :)

воскресенье, 20 ноября 2011 г.

Оч.умелое, prefinal..

Похоже я их закончил; не все идеально, но имхо достаткол для разминки:

(кликабельно)

Итак получилось вроде все, что хотел:

  • сначала 10 секунд показывается время, у моих цифр нет "часового" двоеточия между часами-минутами, так что мигает просто точечка
  • потом 3 секунды показывается дата
    при этом я не заморачиваюсь с правильностью дат, т.е. не запоминаю год, а значит и не учитывается високосность (т.е. 29 февраля никогда не будет - подведем руками, не велика потеря)
  • потом 3 секунды (если до НГ меньше чем 2 месяца) показываются дни до Нового Года (в виде НГ41)
  • потом 3 секунды показывается температура - пока с одного датчика, но на платке оставил место для подключения 2-го, на улицу
  • датчик от мышки реагирует на освещенность и делает яркость меньше в темноте (из-за многочисленных накладывающихся шим-ов сделать совсем маленькой не получается, мерцать все начинает.. но можно и подумать тщательнее было бы.. 
  • если есть резервная батарейка и пропадает питание, то энергопотребление снижается, пока не восстановится внешнее питание: померял в лоб - так схема потребляет 90-100 мАмпер, когда питание пропадает, я отключаю индикацию и включаю энергосберегающий режим, потребление при этом 8-9 мА; от батарейки они и не должны питаться, батарейка нужна для того, чтобы не "терять время" во время кратковременных (единицы-десятки минут) перебоев с электричеством
  • показания времени запоминается и восстанавливается при включении - естественно, если питание пропадет полностью, то часы "остановятся", но их хоть будет проще "подвести"
  • настройка часов одной кнопкой: короткое нажатие в обычном режиме ничего не делает; длинное начатие вызывает переход в режим корректировки, начинает мигать одна из цифр, ее значение можноменять короткими нажатиями кнопки, длинное нажатие вызывает переход к следующей цифре. Минимальная защита от дурака - к примеру если корректируется дата (2011, т.е. 20-е ноября), то 3-ю цифру, десятки месяцев, можно менять только 0-1-0-1- и т.д. Но ничто не мешает вводить 35-е число, геморно это слишком уж с моим способом ввода (по одной цифре).. Короче, кто вводит дату 35-е декабря - сам дурак

Позже выложу исходники, малоли, пригодится кому

life-hack #3764

Для улучшения настроения достаточно сесть и посмотреть "Амели" или "Реальную любовь" (если дело перед Новым Годом)

(Ну и запить пивом или вином ;) )

четверг, 17 ноября 2011 г.

Наблюдение..

И ведь не только у меня словосочетание "home video" прочно означает "порно"?

Оч.умелое изнутри (2)..

Еще кусок: DS75 термометр

Вчера я с ним промудохался :( - работал на макетке в тесовом проекте специально для чтения температуры, воткнул вчера в макетку с часами - а хрен вам

В общем, бубном тарахтел-тарахтел вокруг него, потом зачем-то прошил фьюзы, чтобы контроллер тактовался не от внешнего кварца (14 МГц с копейками, просто какой был в небольшом корпусе), а от внутреннего генератора 8 МГц - и все заработало.. Может кварц плохой или быстрый слишком, хз; поменяю да и все

В общем вот так он (термометр) подключается:

Уж проще некуда - питание, А0-А2 задают адрес, у меня тупо 0х00; линии SDA/SCL подтянуты к Vcc через 5 кОм резисторы. Кода немного:

unsigned char i2c_start(void)
{
    TWCR = (1<<TWINT)|(1<<TWSTA)|(1<<TWEN); //Send START condition 

    while (!(TWCR & (1<<TWINT)));
    if ((TWSR & 0xF8) == TW_START)   //Check value of TWI Status Register
        return(0);
    else
        return(1);
} 

unsigned char i2c_sendAddress(unsigned char address)
{
    unsigned char STATUS; 

    if((address & 0x01) == 0)
        STATUS = TW_MT_SLA_ACK;
    else
        STATUS = TW_MR_SLA_ACK; 

    TWDR = address;
    TWCR = (1<<TWINT)|(1<<TWEN);
    while (!(TWCR & (1<<TWINT)));
    if ((TWSR & 0xF8) == TW_STATUS)
        return(0);
    else
        return(1);
} 

unsigned char i2c_sendData(unsigned char data)
{
    TWDR = data;
    TWCR = (1<<TWINT) |(1<<TWEN);
    while (!(TWCR & (1<<TWINT)));
    if ((TWSR & 0xF8) != TW_MT_DATA_ACK)
        return(1);
    else
        return(0);
} 

unsigned char i2c_receiveData_ACK(void)
{
    unsigned char data; 

    TWCR = (1<<TWEA)|(1<<TWINT)|(1<<TWEN); 

    while (!(TWCR & (1<<TWINT)));
    if ((TWSR & 0xF8) != TW_MR_DATA_ACK)
        return(TW_BUS_ERROR); 

    data = TWDR;
    return(data);
} 

unsigned char i2c_receiveData_NACK(void)
{
    unsigned char data; 

    TWCR = (1<<TWINT)|(1<<TWEN); 

    while (!(TWCR & (1<<TWINT)));
    if ((TWSR & 0xF8) != TW_MR_DATA_NACK)
        return(TW_BUS_ERROR); 

    data = TWDR;
    return(data);
} 

void i2c_stop(void)
{
    TWCR = (1<<TWINT)|(1<<TWEN)|(1<<TWSTO);    //Transmit STOP condition
}

В конце даташита на DS75 есть последовательности - "что надо сделать, чтобы.." В след. процедуре сначала задается адрес термометра (0х00), а потом читаются данные из него

#include "twi.h"
...
u08 measureTemp () {
    i2c_start();
    i2c_sendAddress(0x90);
    i2c_sendData(0);
    i2c_sendData(0);
    i2c_stop(); 

    i2c_start();
    i2c_sendAddress(0x91);

    u08 ms = i2c_receiveData_ACK();
    i2c_receiveData_NACK();
    i2c_stop();

    return ms;
}

Так не совсем правильно конечно, но в моем конкретном случае сойдет: я использую 9-битную точность (если так можно выражаться), если я правильно все понял, то это означает, что под знак отводится бит, под целые градусы - 7 бит и под десятые доли - 1 бит, т.е. точность в пол-градуса; в младшем байте эти пол-градуса и храняться, а в старшем - или просто положительное значение, или отрицательное, если старший бит установлен в "1"; поск. я не собираюсь (пока) измерять температуру зимой на улице, то значение старшего байта == температуре

Оч.умелое изнутри (1)..

Чтобы подключить 4 цифры к контроллеру надо в самом простом случае 12 выводов контроллера:

Цифра - фактически 8 светодиодов в одном корпусе, расположенных так, чтобы визуально образовывать кусочки цифр (7 сегментов и точка), соединенных вместе катодом или анодом

Чтобы не было такой мешанины в схеме (и при разводке) удобнее использовать сразу много цифр в одном корпусе; в библиотеке игла не нашлось с 4-ю, но как-то так:

Каждый сегмент будет гореть, если к нему подать напряжение (резисторы нужны, я их поленился нарисовать); если у цифры общий катод, то этим катодом ее надо соединить с "землей" и на выводы a - g, dp подать напряжение - кусочек цифры загорится; или в конкретном случае на выводы 12 - 19 контроллера надо подать "1", а на 8 - 11 - "0"

Только если так сделать (скажем, подать "1" на a, b, c, d, e, f и "0" на CA1, CA2, CA3), то зажгутся 3 цифры "0", что явно не очень полезно. Поэтому используют такую фигню, которая связана с инертностью человеческого зрения: на CA1 подаем "0", на остальные катоды - "1", на сегменты подаем комбинацию для вывода нужной цифры - на экране горит нужная 1-я цифра, 2-я и 3-я не горят вообще; потом подаем "0" на СА2 и "1" на остальные катоды, выставляем сегменты для другой нужной цифры - горит 2-я цифра, 1-я и 3-я не горят вообще

Точно так же - с 3-й цифрой

А теперь (прямо как моргунов обьяснял за танцы) делаем все это быстро-быстро :) Формально ничего не меняется, горит в каждый момент времени только одна цифра; но глаз видит все 3, прицем каждая показывает свое значение.. Только переключать катоды надо быстро, чтобы не было мерцания

Вот куски кода из вчерашней фотографии; код сложнее, чем мог бы быть, потому что: я же сильно хотел попользовать меги, которые у меня болтаются без дела; они мелкие шо зараза, поэтому разводка платы должна быть чем прощеЮ тем лучше - а с таким условием проще всего если разные сегменты подключены к разным портам - чтобы зажечь скажем цифру "5" мне надо выставить по несколько бит каждому из 3-х портов (не поменяв при этом те биты, которые не относятся к цифрам, т.е. PORTC |= 0x34 не прокатит, потому что обнулит "не те" биты):

// digit 5
#define PORTB_5 ((1 << SEG_D_SHIFT) | (0 << SEG_E_SHIFT) | (0 << SEG_DP_SHIFT))
#define PORTC_5 ((1 << SEG_A_SHIFT) | (1 << SEG_F_SHIFT))
#define PORTD_5 ((0 << SEG_B_SHIFT) | (1 << SEG_C_SHIFT) | (1 << SEG_G_SHIFT))

const u08 pb_d [] = {PORTB_0, PORTB_1, PORTB_2, PORTB_3, ...

Чтобы не мешать остальным "пользователям", которые подключены к тем же портам, цифры выводятся вот так:

void showDigit(u08 digit) {
    PORTB &= ~PORTB_E; // обнуляем все биты, которые используются цифрами
    PORTC &= ~PORTC_E;
    PORTD &= ~PORTD_E;

    PORTB |= pb_d[digit]; // зажигаем биты, которые нужно показать
    PORTC |= pc_d[digit];
    PORTD |= pd_d[digit];
}

т.е. я сначала выключаю те линии, которые используются цифрами (и только их!), а потом зажигаю нужные сегменты (в массивах pbd, pcd, pd_d как раз и используются вот те дефайны для цифр)

Т.е. с формированием цифр понятно; теперь как их показывать: я использую для этого счетчик Counter0, он 8-битный, т.е. он тупо прибавляет себе единичку на каждый тик, до 256, вот я в каждом тике и меняю - какой катод должен быть установлен в "0" (та цифра будет гореть). Прерывание у меня возникает, когда счетчик доходит до заданного значения, почему именно так - я сейчас уже и не помню.. можно в теории и просто по переполнению было сделать

Но кроме этого тут еще один финт ушами: я завел volatile переменную, которая увеличивается с каждым тиком счетчика (volatile - чтобы ее никакая зараза не соптимизировала, потому что ее значение меняется в прерывании, т.е. непредсказуемым образом); доходя до определенного значения она просто обнуляется - все. Ну, не все - есть еще одна переменная, brightnes (ну сэкономил я почему-то на букве, так и болтается), значение которой меняется каким-то сейчас не очень важно каким именно способом

ISR(TIMER0_COMPA_vect) {
    if (++pwm >= pwm_step)
        pwm = 0;
    setNextDigit(show_point);
}

Зачем она нужна? Затем:

void setNextDigit(BOOL pointVisible) {
    switch (digit++) {
        case 0:
            CAT_4 = 1;
            showDigit(d1);
            CAT_1 = brightnes < pwm;

            break;
        case 1:
            CAT_1 = 1;
            showDigit(d2);
            CAT_2 = brightnes < pwm;

            showPoint(pointVisible);
            break;
        case 2:
            CAT_2 = 1;
            showDigit(d3);
            CAT_3 = brightnes < pwm;

            break;
        case 3:
            CAT_3 = 1;
            showDigit(d4);
            CAT_4 = brightnes < pwm;

            break;
    }
    digit = digit % 4;
}

Допустим, pwm считает от 0 до 256 (т.е. pwm_step зададим 256) - а brightnes пусть установлена в 100: значит 100 вызовов функции из 256 на катодах будет "0" (цифры будут гореть), оставшееся время - "1", цифры погашены

Что это означает с учетом опять же инерционности нашего зрения? Что визуально яркость цифр будет меньше - т.е. имеем управление яркостью. Вообще говоря, получили софтварный ШИМ (PWM) - широтно-импульсную модуляцию. А brightnes может меняться например в зависимости от измеренного с помощью АЦП напряжения (я игрался просто переменным резистором, но на его месте должен быть фотодатчик, так что яркость будет меняться в зависимости от освещенности)

Но снова, чтобы не было мерцания, переключения должны делаться быстро-быстро :)

среда, 16 ноября 2011 г.

Оч.умелое..

Разгребания запасов выливаются в:

такой вот дивайс: сначала показывает время, потом дату, потом температуру и так по кругу

А еще будет показывать количество дней до НГ :)

Только сначала надо кнопки добавить, чтобы время задавать - а потом научиться даты вычитать

А еще яркость цифр автоматом регулироваться будет (сейчас подстроечник на месте фотодиода, который хотел из дохлой мышки вытащить.. дохлую мышку нашел, а в ней фотоэлементов не было - то в совсем старых мышках я раньше брал, которые с шариком еще были)

И финальным штрихом будет батарейка резервная и переход на нее, если питание внешнее пропадает

Champagne in the morning drink aristocrats or imbeciles

Пневмоническая фраза для запоминания написания слова "шампанское" на английском :)

вторник, 15 ноября 2011 г.

суббота, 12 ноября 2011 г.

"Я не п'яна, я рум'яна!"

Это осом имхо

Надринкались с нашей родичкой (я или писал про нее, или хотел - но не дошли руки.. интересная, работает в рай.больнице фтизиатром, рассказывает много интересного "за жизнь") винища и черпаю "народную мудрость" :-D

n.b. второй ноут из пред. картинок - это ей купил такой же как у меня - меня устраивает более чем, значит и ее должно устроить

Совсем недавно у меня была мысль - действительно, хорошо ведь жить в небольших городах на украине (статистика типа это доказывает.. что люди там чувствуют себя счастливее - а родичка как раз из ра оайонного центра").. Теперь я точно знаю, что сказать милиционерам на центрально йулице, если он  остановят меня за проезд на "знак" - "Я к ***имя_рек*** еду!" Хотя понимаю, что бОльшая часть проллем в этой *** украине  - из-за "кумовства".. но не я эту проблему искореню, так что гори оно огнем синим.. что ментам говорить - запомнил ;) может в понедельник испытаю :-D

з.ы. если тут ошибки/опечатик - ну извинтие, пишу на полном автомате.. просто полном, руки отдельно, мозги отдельно (отключены) ;-)

з.з.ы. я вообще немного офигеваю, как можно не знать, что "имя_рек" == имя рекомендованного, это графа такая была в анкете в заявлении в коммунтисы или что-то типа.. а "достат_кол" == "достаточное количество" (это из "Тигр! Тигр!" не помню кого.. бестера что-ли? читал в позднем детстве, потому запомнилось)

вообще сейчас фантастики много, а в 80-е - "туманность андромеды" и процая социальная херня.. поэтому читал все, что мог прочитать.. тогда (ну попозже немного) прочитал даже "Цетаганду", только не знал - сто это (15 офигительных романов это, вот что.. искать на флибусте "бараярд" или буждолд)

так что "достаткол" - очень любимое слово, хотя немногие вьезжают, что означает.. бл, ну вы тупые чтло-ли?.. "Достаткол! Достаткол!" - ну на что жто может быть похоже еще?? ;-)

 

з.з.ы. а еще я вот что заметил - про опечатки: у меня много опечаток иногда, когда кнопку нажимает палез другой руки: т.е когда вместо "о" я набираю "а", потому что указательный палез левой руки нажимается, вместо указательного пальца правой :)

не знаЮ, электрошок тут нужен или еще как лечится, но бывает

 

а на этом раскланиваюсь, там еще немного тещиного вина осталось, надо бы допить ;)

Одобрям!..

Вчера до 2-х ночи шпилил в CoD последний - офигительно плавненько, при том что "железо" не менял давно и не собираюсь

Как кино посмотрел :)

пятница, 11 ноября 2011 г.

Берем старый CD-ROM, разбираем (можно варварски), вытаскиваем линзу, через которую лазер диски читает, делаем примитивное крепление:

Крепим к телефону, включаем камеру, прикладываем телефон камерой к экрану монитора и наблюдаем микромир :) :

Только мой дурацкий телефон пытается сфокусироваться, получается так себе.. Это - пиксели экрана, каждая троица красный-синий-зеленый - одна точка на экране

Пятничный прожект за 16 минут :)

Ну прям как поперло так поперло..

Stupid Americans! Now is 11/11/11, not 11/11/11!!

Непорочного зачатия чудо! Возрадуемся!!

Только 11.11.11.11.11 (в не-нашем правда часовом поясе, но правильность часовых поясов - дело девятое как доказывают нам депутаты) случилось явление непорочного зачатия делением:

Слава! Алилуйя! :)

11.11.(11)

Ну что, дождались "магического мгновения"? И что, поменялось что-то? :)

четверг, 10 ноября 2011 г.

среда, 9 ноября 2011 г.

Такая няшная нямочка, просто слов нет. Была оказия, посидел в такой зелененькой.. ну не сказать, что б так уж и лучше фьюзика, сбоку/сзади вообще как автобузик, но конечно хотелось и такую. Но этот зеленый (?) цвет - просто бомба :(

Ну ничего, наш микроджыпик тоже хорош :)

вторник, 8 ноября 2011 г.

Макретологи apple негодуют..

(ну должны бы, если бы увидели :) ):

n.b. если вдрух - это mac mini, ну самый что ни на есть маковский продукт, и негодовать должна возбуждать наклейка AMD (внутри с недавних пор сугубо intel устанавливается)

ну это если вдрух надо пояснения..

Из жизни микробов..

понедельник, 7 ноября 2011 г.

Планов громадье..

На выходных залез по локоть в "закрома родины" - ящички со всякой всячиной моей, в основном электронной; там куча всего, бОльшей частью ненужного, что выбросить жалко

Причем что-то халявное (как те DS75 термометры, которых заказал образцов, а их взяли и прислали абс. бесплатно), а что-то - купленное зачем-то..

Вот и наступил себе на горло - или выбросить, или попользовать срочно; зато теперь есть в доме теоретически 2 градусника (ну то они просто валялись, а теперь я ими мерять температуру могу.. у меня еще 2 шт. DS1820, это тоже термометры, но 1-wire, я с ними когда-то даже сделал термометр, и он даже работал на кухне у меня какое-то время - а потом перестал, по причине до сих пор неизвестной :( )

А еще у меня 3 меги48 есть, в мелком-мелком корпусе.. уж не помню даже, зачем покупал.. Надо и их попользовать, для одной сделаю переходник под "большой" разьем, чтоб в монтажку влезала, а наигравшись из остальных что-то полезное да поделаю

Такие вот планы на вечер :)

upd: ну вот как-то так:

Сам контроллер + сразу подтяжка /RESET-а, кварц и его обвязка

Поск. "из хлама" у меня еще есть 2 * 2 7-сегментных цифры, то сделаю я из них часы с термометром..

воскресенье, 6 ноября 2011 г.

Тонкая работа однака..

Нашел в "закромах" цифровой термометр (халявный образец когда-то заказал из жадности, так и болтаются)

Сделал "переходничек" для макетки, буду играться с температурой

upd: едрить-мадрить, оно еще и работает! %-)

четверг, 3 ноября 2011 г.

Внезапное хранилище файлов..

.. обнаружил (потому что вечно какие-то непонятки - куда положить файл, которым хочешь поделиться? рапидшара вечно чего-то куда-то удаляет, файлопомойки с минутным ожиданием тоже не айс)

Внезапно обнаружил, что min.us шарит не только фоточки/картинки, но и (как минимум) архивы

Вообще очень положительный сервис - во-1, легко запомнить адрес (минус с точкой посредине), процесс заливки тоже проще некуда - дропнул в броузер файл(ы) и получаешь ссылку

Прогресс с SD-картой..

.. неплохой получился вчера; правда пока с эмуляцией в протеусе: файлы находятся и читаются, содержимое выводится в терминал для проверки

Показывается и список папок, но пока наверное надо наступить песне на горло и забить; теперь по хорошему надо сделать все то же, но в железе - и дальше по плану попробовать в мр3 что-то проиграть

SD-card reading..

Суссес-стори :)

вторник, 1 ноября 2011 г.

Про картинки..

Кстати: бОльшая часть картинок (которые не стыренные валлпаперы или девки или "office graphics") сделаны моим несчастным телефоном. Хорош, стервец, однако!..

Валлпаперы..

Одна из новых "фишек" MacOS 10.7 обнаружилась мной недавно: у меня 2 монитора, 3 рабочих стола - так вот начиная с 10.7 (раньше то точно было не так + я изучал вопрос, придумывали софт) на каждом рабочем столе могут быть свои обои

Т.е. у меня сейчас 6 разных картинок.. искать "годные" обои сложнее, вот неплохие с календарями на ноябрь:

и прикольные:

Фотошоп..

Нашел 2 фотографии, ну уже не совсем фотографии:

и

Когда-то куда-то ехал, с фотоаппаратом и с дождем.. и с фотошопом потом немного поигрался (пл. Маяковского - или проспект? - в Запорожье)

Про полночь..

Стратил я в подсчетах: мне почему-то показалось, что после того, как в России отменили переход на зимнее время, а у нас вернули, у нас с ними время будет одинаковое (все было в контексте НГ - уже ж 2 месяца всего как осталось) - не будет 2-го встречания Нового Года.. нет, таки будет, просто надо первый раз встречать будет в 10 вечера :)

Хочу-хочу-хочу..

понедельник, 31 октября 2011 г.

SD card

Пруха/не пруха - еще не решил

Разьема для SD-карты я не купил, не водится в наших закромах, под заказ от * штук :(

Придумал конструкцию из *** и палок, пришел вечером домой - а нету у меня в доме SD-карт.. а думал, что в фоторамке есть.. Пол-вечера вот так убил ни на что, потом что-то полез порыться по закромам - ну вроде с како-то микро-SD был переходник - нашелся в старом кпк, с карточкой на 256 мегабайт - для начала сойдет

Для упрощения (карточке надо напряжение питания 3.3 В) согласования контроллера с картой решил все питать от 3.3 В, приспособил стабилизатор на макетку; теперь и думаю (на будущее) - мр3-декодеру надо 3.3, карте надо 3.3, контроллер может от 3.3 работать - так нафиг городить огород с 2-я источниками питания? пусть будет только 3.3 В..

Вот на этом опыты и буду ставить

Только спать хочется - 22:45 - это ж позавчера уже почти полночь была, организм то помнит

воскресенье, 30 октября 2011 г.

Макетирую (в хорошем смысле слова)..

Наконец убрал паяльник и прочее и разгреб рабочий стол

4-й или 5-й подход к программированию avr, а как первый раз - не помню НИЧЕГО (а из того, что делал - чтение мр3 из ж.диска и декодирование его, подключение текстовых/графических экранов или подключение к усб.. т.е. не самые сложные, но и не самые простые штуки)

Так что мигаю светодиодами да придумываю отладку/логгирование через uart:

Вечернее..

Крепкое и сладкое, смакота..

Прошивка из AVR Studio..

Я видел способ обмануть студию 5-ю (которая поддерживает только "оффициальные" программаторы) - ставится нуль-ком-порт, еще какая-то прога, но что-то не срослось

А шить сразу из студии хочется - так что нашел проще способ: в настроках проекта на закладке Build Events в окне Post-builds event command line ввел:

cd $(OutputDirectory)
C:\SinaProg\avrdude -c USBtiny -pm16 -U flash:w:$(MSBuildProjectName).hex

Сначала надо перейти в папку с hex-файлом (первая строка), потому что иначе не смог побороть баги с именем файла, у которого пробелы в имени; а в папке c:\SinaProg у меня лежит avrdude, который и запускаю; так что после F7 (Build в Avr Studio) запускается прошивка, все довольны :)

пятница, 28 октября 2011 г.

Что я нашел..

Вот удобно ведь в винде, когда после клика по часикам появляется такое окошко:

А в богопротивном маке это считается излишеством.. как меня это бесило - до пены у рта, чесслово (да меня в нем все время что-то бесит до такого состояния)

Но одним поводом псешить меньше - нашел крохотную бесплатную программульку, которая делает по клику по часам маковским так:

Алелуйя, братия

А вообще неделя удалась - я плотненько и безболезненно перелез с XCode на AppCode, который на неделе зарелизили, ох как мне нравится, просто программистский оргазм какой-то ("под "программистским оргазмом" следует понимать ощущения от работы по сравнению с работе в XCode") ;)

А сегодня вечером дома буду AVR Studio 5 осваивать.. пятница же, ура..

четверг, 27 октября 2011 г.

Полезняшка: usb <> uart..

Внезапно для мака есть Eagle CAD.. круто..

Сходил купил разьемчик и сегодня вслед за программатором сделаю преобразователь usb <> uart - отлаживать же надо как-то то, что буду делать, а jtag подключать некуда, сом-порта нет; хотя вот может к этому преобразователю.. ну значит вдвойне нужен :)

С одной стороны в него буду втыкать обычный miniUSB шнурок, для того и за разьемом ходил; внезапно мой usb-программатор нормально заработал на "большом" компе и не захотел на ноуте (для которого собственно и делался; но если в ноут воткнуть usb-хаб (без отдельного питания даже), то в хабе программатор работает - чудеса какие-то

Так что из svn-а из дому забрал проектик, прямо на маке на работе добавил разьем и буду играться - печатать плату (странно, но принтер, подключенный к линуксу, напечатал картинку мою прошлый раз правильно, но.. некрасиво, с артефактами какими-то.. а с винды по сети печатал чуть-чуть, но не того размера)

Для будущих опытов сделал кучку пинов, авось пригодится

Схема стыбрена отсюда, с небольшими изменениями (там для согласования уровней понижалось напряжение питания с помощью светодиода, а тут в цепях D+, D- стабилитроны.. а светится ничего не будет.. ну или никто не мешает поставить светодиод - хоть на любую ножку порта свободного и дописать мигание при обмене данными, исходники прошивки то есть)

upd: собрал, прошил, заработало :)

Прошивал:

avrdude -c USBtiny -pt2313 -U flash:w:main.hex
avrdude -c USBtiny -pt2313 -U hfuse:w:0xdb:m -U lfuse:w:0xef:m

Прошивать можно и SinaProg-ом, но у меня там ступор из-за фьюзов вечно

среда, 26 октября 2011 г.

Тонкая работа однака..

Вчера разбирался со своей платкой с мр3-декодером.. схемы нету уже, так что реверс-инжинирил ее тестером:

Вчера ни на что больше времени не было (и так одним глазом в тестер, другим в "менталиста" сидел); пытался найти хоть какие-то ошметки старого кода для этой платки - фиг вам, так что сегодня доку в зубы (зато - в английском практика) и вперед, экспериментировать..

вторник, 25 октября 2011 г.

Из найденного..

Я все больше убеждаюсь, что хранить все надо в инете - там уж не потеряется :)

Вот та мысль про "сразу читать карточку и играть мр3" останавливалась другой мыслью - нифига же не помню, как я что делал.. спаяная платка есть, а схемы ее нету, исходников нету.. На свой старый сайт выкладывал тогда много всего, да не забекапил, когда махнул на него рукой, а жаль

А рукописи то не горят - нашел к примеру в веб-архивах вроде все, что писал о том дивайсе (который даже работал у меня); прикольно..

Старье..

Чаморошный у меня мр3-плеер, других слов нет просто :)

Вчера игрался с ним, делал ему электрошок. Провалялся он в хламе с проводами долго, аккумулятор похоже отдал богу душу, а при подключении к usb он сразу прикидывается флешкой и как плеер конечно не работает. Но оказалось, что если на usb подать только питание, то ему этого достаточно, так что зубочисткой начал тыкать в кнопки, выяснять, какая что делает (потому что маркировки не осталось на корпусе)

Это капец какой-то, придумал юзабилити какой-то жуткий человеконенавистник.. Например, чтобы изменить громкость, надо сначала нажать одну кнопку, а потом двумя другими менять громкость.. Как попасть в настройки я так и не запомнил, пока попадал в нужный пункт проделывал столько телодвижений, что просто не мог их все запомнить и повторить.. Из радио вообще вышел чисто случайно и старался больше в него не попасть. Может конечно кнопки не каждый раз срабатывали при нажатии, 2 из них разваливаются на глазах

Если верить гуглу (и ощущениям от тыкания проводом), то схема включения кнопок все-таки такая:

а не такая, как подсмотрена в других даташитах:

На этих схемах по 6 кнопок, а у меня 5: Play (она же включает/выключает питание), Menu, Vol+/Next, Vol-|Prev и еще одна, название которой я не знаю (которая включает регулировку громкости)

В общем я быстренько потыкал +5 с usb разьема, вроде да, реагирует; надо только согласовать уровни, потому что чип питается от 3.3 В и мои 5 В похоже ему не очень нравились (но ничего с ним не случилось, целый); проще всего наверное резисторным делителем

А вообще все сложнее, чем я себе думал, из-за "логики" этого придурошного плеера.. потому что если после включения просто нажать Play - ничего не происходит; надо какими-то бубнами+плясками его перевести в режим проигрывания сначала

Прям начинаю думать - может нахрен его, сразу перейти к SD карточке (вот облом, а "маленькие" карточки я пораздавал из-за ненужности)

понедельник, 24 октября 2011 г.

Про новый прожект..

Новый прожект стрельнул в голову в прошлый четверг, часов в 11 ночи :)

Преамбула такова, что в машине нет мр3-музыки, только CD-плеер и радио; и как "фича" есть AUX-вход, через который можно подключить все, что умеет играть что-нибудь (мр3-плееры, iPod-ы, телефоны), к штатному аудио, но при этом естественно управление музыкой (плей/пауза/след/пред) - с самого плеера, что а) чревато боком в движении, б) неестественно после того, как быстро привык к подрулевому переключателю

AVR, usb и программатор..

У меня в вялотекущем состоянии несколько идей и прожектов на микроконтроллерах; в последнее время отговоркой - почему все стоит на месте - было то, что за "большой" компьютер не попадаю, сижу на ноуте, а на нем (внезапно) нет LPT-разьема для программатора
Так что я сделал себе usb-программатор

четверг, 20 октября 2011 г.

Внезапный лифе-хак!..

Только что скачал архивчик с пдф-ками - а у меня в ноуте нет (внезапно оказалось) ничего для пдф

Помогает драг-дроп файла в Chrome - дешево и сердито.. Конечно, какие-нибудь распальцованные файлы может и не откроются, но для 99,99% думаю прокатит

среда, 19 октября 2011 г.

Диво-дивное, чудо-чудное..

.. ну или глюк:

Телефон отключил от зарядки вчера утром, сейчас показывает 99% емкости.. WTF? Я вообще думал, что в нем что-то зависло, потому что рано утром сегодня было 100%, но когда полез в настройках посмотреть инфо об аккумуляторе, цифра как раз поменялась с 100 на 99 - т.е. как-бы что-то работает

Не то, чтоб меня это расстраивало, но настораживает :)

upd: то было 19 окт, сейчас 24-е - слил в пикасу фотки по вифию и остаток аккумулятора 26%

я его прям боюсь чего-то, мой телефон :(

понедельник, 17 октября 2011 г.

Бог электричества меня явно невзлюбил..

Какая-то просто полоса непрухи с электричеством пошла: днями отключился ряд лампочек в подсветке, вот те 4 штуки:

Полез внутрь (там в коробе на каждые 4 лампочки, они с двух сторон комнаты, по трансформатору понижающему), через дырку от лампочки достал трансформатор (переживал, что что-то с трансформатором - денег жалко, типа "хороший" покупал) и офигел слегка:

Провод, который шел к 1-й лампочке, задеревянел и ломался при сгибании; один проводник был оборван (из-за чего и не горели все 4 лампочки, они включены параллельно) :-О

Что это было - я фиг его знает.. Ощущение, что или а) провод разогрелся от лампочки, но не по всей же длине?.. б) в проводе где-то был дефект, из-за чего ток через малое сечение сильно разогревал провод, пока тот в конце концов не перегорел..

Переподключил все новым проводом, да еще и каждую лампочку в отдельный выход трансформатора подключил (почему не сделал так с самого начала - фиг его знает, на проводе что-ли сэкономил?..), проверил, чтобы провод лежал подальше от лампочек. Интересно, что а) лампочки не перестали гореть в процессе, а просто не зажглись при очередном включении, б) провод плавился, а запаха никто не услышал

КСЖ однозначно

Холодно..

Что-то мне подсказывает, что все, мерзнуть до мая месяца теперь.. в субботу похоже был последний более-менее теплый день, который прошлялись то там, то сям

А инсайдеры были выходными в Алуште на конкурсе и докладывали, что гуляли вечером по набережной в пиджачишке (инсайдер занял 3-е место на "GRAND PRIX OF UKRAINE CRIMEAN PEARL 2011", это такой междусобойчик с бальными танцами, хотя по названию можно подумать чорти что :) )

То там то сям в основном натыкались на "свайбы", из-за которых нигде нельзя ни спокойно посидеть, ни пофотографироваться.. размышляли с женой - вроде и не такие старые, а желчные почему же тогда такие?.. потому что от нас ни одна невеста не заработала прилагательного "годная", из женихов только один получил тег "сойдет". КСЖ в полный рост в общем

четверг, 13 октября 2011 г.

Спойлеры..

Это не "Хаус", а черти что блин

Главврач черненький, Хаус волосатенький, "той самой музыки" в заставке нет - WTF?

Я 3-ю серию даже смотреть не хочу

среда, 12 октября 2011 г.

Мативационое..

Из "обожаемого" - Как начать рано вставать?

(В кавычках - потому что ненавижу тексты про "как улучшеть свою жизнь и стать багатым и успешным")

Тезисы:

1. Ставьте будильник на одно и то же время каждый день
2. Старайтесь не пользоваться кнопкой «Дремать»
3. Нужно хотеть встать рано
4. Задайте себе время пробуждения перед сном
5. Ложитесь спать, когда чувствуете, что устали
6. Делайте зарядку
7. Обманите себя

Коменты:

1, 2 - никогда не пользуюсь будильником.. вчера хлебопечка утром запищала на кухне (есть у нее "фича", когда она пищит, когда орехи в тесто подсыпать надо.. хотя вчера пищала по моему просто потому, что закончила выпечку) - так я подорвался и не мог понять, что происходит и куда бежать.. Издевательство над организмом да и только

3 - это единственный пункт, с которым тяжело не согласится

4 - где-то читал, что это чревато организму боком.. вместо того, чтобы спокойно дрыхнуть, мозг занят исключительно проверкой в бесконечном цикле - сколько там натикало и не пора ли вставать. Хотя это как раз мой случай - я никогда сознательно не задумываюсь над этим, но очень часто просыпаюсь минута в минуту в нужное время

5 - и что же мне, до 3-х ночи хороводиться?.. а я могу

6, 7 - если я проснулся "из-под палки" то давайте, заставьте меня еще зарядку поделать.. может еще из чайника полить? А если из-за пункта 3, то мне и так уже хорошо :)

з.ы. хотя "утренний секс" может считаться зарядкой? тогда п. 6 имеет право на жизнь :)

понедельник, 10 октября 2011 г.

Еще один фетиш..

Девушки со скрипками.. они такие няшные, что просто..


Bond bondmusic.net

Запорожье, ярмарка-2011

Был на ярмарке:

Да, клялся, что потрачу выходные с пользой :) а от ярмарки пользы никакой, одни фейлы, но раз в 4 года сходить можно

пятница, 7 октября 2011 г.

..

Доживая до вечера пятницы торжественно клянусь: потрачу выходные на что-то полезное!

Ну по крайней мере постараюсь :)

четверг, 6 октября 2011 г.

:'-( (и еще про андроид)

На стадион не ходил больше недели уже :(

То холодно/мокро, то заболел, то проспал, то болею + холодно (что-то подсказывает, что когда утром меньше 10 и болит горло, то лучше не бегать, нет?).. как жить дальше?..

Вроде к выходным теплеет + горло плавно перешло в кашель, так что может "закрою" сезон еще несколькими пробежками; а потом придется на орбитрек залезать, на нем правда скушно мне почему-то


Новая серия "хауса м.д." не впечатлила, и слава б.. Можно было не качать/смотреть, чтобы сообразить, что он в тюрьме из гамна и палок без МРТ и анализов спасет никчемного, но не очень плохого заключенного. Смотрю в будущее и в тумане вижу, что в больничке будет новая докторша

И в заставке не было "той самой музыки" - WTF?


У меня андроид живет в телефоне Samsung i5700, которому 2.2 андроид не положен усилиями маркетологов, но который допилен усилиями комьюнити. Вариантов сборок есть много и вчера я перепробовал их практически всех :)

Все началось с того, что все работало, но периодически подтормаживало или подглюкивало; так что какое-то время назад я поставил очередную сборку, которая принесла с собой почти счастье - была очень шустрой и стабильной, нормально уживалась с Widget Locker-ом.. почти - потому что был в ней глюк, который заключался в том, что как только я втыкал в телефон наушники - плеер начинал играть музыку :)

Настройка в плеере "Начинать играть музыку когда втыкаются наушники" ничего не решала; глюк был с чем-то другим, потому что если поставить музыку на паузу в залоченом телефоне, то плеер начинал снова играть через 5-6 секунд.. Не то, чтоб смертельно, но все таки - кто в доме хозяин?.. 

Ко всему прочему телефон глюкнул "по взрослому" - я сказал ему перезагрузится и отложил, через пару часов обнаружил, что он висит; а когда он включился, то оказалось, что он сделал себе полный сброс, поубивав все настройки.. Вот и повод поиграться с прошивками

В итоге я попробовал штук 5 или 6 прошивок, в 3-х случаях глюк с музыкой не лечился, у некоторых глюки со старта вылезали типа "процесс system завис и будет убит", пока наконец SpicagenMod BETA3 не заработала как следует (тьфу-тьфу-тьфу)

Я-из-будущего! Если у тебя снова сглюкнет телефон, используй эту прошивку, она самая-самая!..

10.7 такая 10.7..

(Это операционка для мака последняя) Лучше бы я ее и не ставил.. но пришлось :(

Положительного только одно: окна наконец можно ресайзить за любую сторону, а не за правый нижний уголок (т.е. как в винде.. наконец)

Отрицательного куча по мелочам.. почтовый клиент переделали, я от 3-х колонок в ступоре пол-дня был, потом нашлась настройка в настройках - "старый вид"; мак мой раздавал моему телефону по wifi интернет, после апдейта точка доступа поменяла имя и стала открытой, заходите люди добрые, у нас трафик анлим.. заметил случайно.. С какого-то перепугу после 2-й перезагрузки адиум переспросил пароли для офисного джабера и для аськи - а я что, помню?.. Для офисного мыла так и не вспомнил :(

Еще и умудряется подтормаживать по сравнению со старой системой.. это с 8 гигами памяти, капец какой-то

Ненавижу всех человеков, ага.. (© немой)

Странное интересует..

Марк Шаттлворт объявил о том, что кодовым названием Ubuntu 12.04 будет Precise Pangolin.

Просто интересно - и когда они переберут все буквы алфавита (осталось навскидку штук 10, а с выходом новых версий каждые пол-года - то на 5 лет), что тогда делать будут? :)

понедельник, 3 октября 2011 г.

Must have, охренетительно, осом, наконец..

О чем я - расширение для хрома, которое по выделению слова:

  • на родном (указанном в настройках) языке показывает толкование
  • на иностранном показывает перевод

Для предложения показывается перевод предложения

Естественно нужен инет (переводится гуглом)

Ссылка на установку из их маркета