XHTML Strict i linki w nowej karcie za pomocą jquery

$('A[rel="external"]')
.click( function() {
window.open( $(this).attr('href') );
return false;
});</pre>
Open External Links In New Window
Oznaczenie zewnętrznych linków za pomocą css: <pre>a[target="_blank"] { padding-right: 18px; display: inline-block; line-height: 14px; background: url(new_window.png) center right no-repeat; }

Obrazek:
http://www.tarnaski.eu/blog/wp-content/themes/minyx2Lite/pix/new_window.png
http://www.tarnaski.eu/blog/znowu-lubimy-target_blank/

„Znajdź różnice” – implementacja gry na stronie www z javascript

znajdz_roznice

Przygotowałem kod javascript, z użyciem Jquery i Canvas, do wykonania gry „znajdź różnice” na dwóch obrazkach. Skrypt cechuje łatwość użycia z własnymi grafikami. Potrzeba jedynie przygotować 2 obrazki różniące się od siebie szczegółami (ważne: wymiary obu muszą być identyczne). W skrypcie konfigurujemy wszystkie opcje, w tym najważniejszą: tablicę punktów ze szczegółami do odkrycia (współrzędne X i Y liczone od lewego górnego rogu obrazka w pikselach). Ścieżki do obrazków definiujemy w kodzie CSS.

Całość umieściłem na portalu Github: https://github.com/virtmedia/spot_the_difference_html

Demo: http://test.vt0.pl/roznice/

Zapraszam do korzystania i dzielenia się uwagami.

Crash chrome po uruchomieniu – rozwiązanie

Z problemem spotkałem się na komputerach z zainstalowanym systemem Windows Vista.

Jeżeli przeglądarka Chrome wywala się od razu po włączeniu, a typowe metody (kasowanie profilu, reinstalacja przeglądarki) nie pomagają, proponuję sprawdzić 2 rzeczy:

-Skan systemu programem Malwarebytes;

-Odinstalowanie lub aktualizację programu Cyberlink YouCam.

Moduł Wifi ESP8266 – jak zacząć, niespodzianki

Zakupiłem ostatnio taki moduł Wifi:

esp8266

Link: http://www.ebay.com/itm/371152025256?_trksid=p2060778.m2749.l2649&ssPageName=STRK%3AMEBIDX%3AIT

Cena jednego to US $3.15

Jest to chyba najtańsza opcja wyposażenia naszych układów elektronicznych w komunikację poprzez Wifi. Domyślnie komunikacja przebiega poprzez port USART (3,3V) z wykorystaniem komend AT, ale sam układ ESP8266 pozwala się programować, dając nam możliwość wyeliminowania dodatkowego mikrokontrolera z wielu zadań.

Podłączenie.

Moduł posiada 2 rzędy po 4 piny. Nie jest więc przyjazny w podłączaniu do płytek stykowych. Tak więc można go podpiąć na kabelkach, lub z użyciem prostego adaptera, który można wykonać z kawałka płytki uniwersalnej (4×4 pady, bez połączeń), goldpinów i gniazd do nich:

OLYMPUS DIGITAL CAMERA

Oznaczenia pinów:

esp8266-pinout

Pin CH_PD należy podpiąć do VCC, a VCC do 3,3V. Pin RxD podpinamy do TxD, a pin TxD do RxD przejściówki UART. Ważne, aby nasza przejściówka pracowała na napięciu 3,3V, a nie 5V! Można to sprawdzić mierząc napięcie na linii TxD przejściówki w stanie spoczynku. Jeżeli nasz konwerter lub inny układ pracuje przy 5V TTL, to należy użyć takiego dzielnika z 2 rezystorów:

esp8266_divider

Komunikacja

Testy proponuję rozpocząć z użyciem komputera i Serial Monitora dołączonego do Arduino IDE. Jeżeli chcesz, możesz użyć innego, ale przydałoby się, aby posiadał takie funkcjonalności:

-Możliwość „wklepania” ciągu znaków „na sucho” przed wysłaniem,

-Możliwość zdefiniowania znaku końca linii

Parametry transmisji:

-8 bit, 1 bit stopu, brak bitu parzystości

Jaki baudrate? Tutaj sprawa jest ciekawa. W wielu opisach znajdziecie 57600, a czasami 115200. Jednak z modułami, które zamówiłem to nie działało. Dlatego trzeba sprawdzić doświadczalnie z baudrate 9600, 57600 i 115200. U mnie była to ta pierwsza wartość. Był to powód dużej frustracji. Jeżeli prawidłowo ustawimy parametry transmisji, po podpięciu modułu do zasilania powinien wysłać ciąg „śmieci”, z napisem „ready” na końcu. Jeżeli jest OK, możemy wysłać do niego pierwszą komendę AT:

AT+GMR

Wysłanie komendy musi zakończyć się znakami \n\r (NL+CR)!

Jeżeli wszystko jest OK, powinniśmy dostać w odpowiedzi wersję firmware, na której pracuje nasz moduł.

Debouncing przycisków – pomiary

Odnośnie drgań styków, ich filtrowania itd. powstało dużo dyskusji, teorii i kłótni. Nie chcę się wypowiadać w tej kwestii, po prostu zamieszczę kilka zrzutów z oscyloskopu.

Schemat testowy:
schemat

Użyty przycisk to mały, dwukońcówkowy tact-switch jak ten:
Tact_Switch_INT-1101_

A oto pomiary:
R=470Ω, C niepodłączony:
sw1

R=470Ω, C=100nF:
sw1_100n

R=2Ω, C niepodłączony:
sw1_2a

R=2Ω, C=100nF:
sw1_2a

Przy analizie wykresów proszę pamiętać o różnych podstawach czasu oraz napięciach. Starałem się je tak wyskalować, aby „drgania” były jak najlepiej widoczne do analizy.

Dlaczego nie polecam zasilaczy firmy Take Me

Zasilacze Take Me cieszą się słusznie złą opinią (porównałbym ją nawet do opinii o zasilaczach firmy Codegen), natomiast niestety cieszą się również dużą popularnością. Wynika to z faktu montowania najgorszej jakości podzespołów do komputerów supermarketowych, gdzie najważniejsze są jedynie liczby (cena oraz ilość rdzeni, megaherców czy gigabajtów). Tak więc wszystkim posiadaczom wyżej wymienionych maszyn polecam udanie się do serwisu komputerowego od razu po zakończeniu gwarancji. Tam wymienią co trzeba i znacząco obniżą szanse utraty danych, a nawet pożaru.

Oto dowód w kilku zdjęciach, z jakim sprzętem mamy do czynienia:

IMG_2155

 

Tak mniej więcej wygląda fragment obudowy zasilacza Take Me 400 z pokaźnie wyglądającym filtrem w części pierwotnej.

IMG_2156

 

Filtr jest ciężki, co wzbudza zaufanie do całego zasilacza. Dobre filtrowanie – lepszy zasilacz. Jednak gdy otworzymy plastikowy korpus:

IMG_2157

Okazuje się że to jedna wielka ściema. Kabelek wchodzi, oraz od razu wychodzi.

IMG_2158

Całości masy (ok. 140g) dodaje kawałek jakiegoś stopu. Jakoś nie znalazłem nigdzie informacji, jakoby skutecznym sposobem filtrowania zakłóceń było umieszczenie obok kabla kawałka żużlu.