Персональный сайт Александра Тауениса » 2013 » Апрель

Мигалка светодиодом на AVR

//Простая мигалка светодиодом
#define F_CPU 4000000L //частота проца - 4МГц
#include <avr/io.h> //работа с портами
#include <util/delay.h> //задержка
int main(void){
unsigned char i;
DDRB=0xFF; //Настройка порта "Б" на вывод (FF-выход, 00-вход)
#define LED_OUT PORTB
#define sleep(ms) _delay_ms(ms) //алиас а-ля Бэйсик
//Мигаю
while(1)
{
i++;
LED_OUT=0b10000000; //зажигаю светодиод
sleep(100);
LED_OUT=0b00000000; //гашу светодиод
sleep(100);
}
return 0;
}

Добавлено 29 апреля 2013 в 23:57 (по Москве) A.T. в раздел(ы) Размышления вслух.
Нет комментариев »

AVR: работа с портами I/O

Потихоньку начинаю осваивать микроконтроллеры архитектуры AVR. Освоил пару правил.
Работать с портами на Си надо так:
1.) Подключить библиотеку ввода/ввывода: #include <avr/io.h>
2.) Декларировать порт (чисто для удобности): #define удобное_название_OUT PORTno; #define удобное_название_IN PINno;
3.) Установить режим порта: DDRno=режим (режима всего два: 0xFF-выход, 0x00-вход)
4.) Записать что надо в порт (например, порт=0b10000000 сделает на ногах PB0…PB6 ноль вольт, а на ноге PB7 напряжение Vcc) или прочитать из него (int x; x=PINno внесёт в переменную x значение битов (потенциала на ножках) нужного порта).
5.) Всё! 🙂

Порты именуются заглавной латинской буквой. Количество портов зависит от марки микроконтроллера. У большинства МК порт «А» использовать не удастся, поскольку это не только ценный мех, но и ножка RESET (сброс), а также пара XTAL’ов (внешний кварц или вход для генератора строб. имульсов). Чтобы использовать его, нужно поменять фузы, но после этого МК будет сложно прошить.

P.S. Плакат на стену возле рабочего места:

Добавлено A.T. в раздел(ы) Размышления вслух.
Нет комментариев »

Кому должны государства

Как коммерсанты грабят бюджеты.

Добавлено 26 апреля 2013 в 17:27 (по Москве) A.T. в раздел(ы) Публикации.
Слова для поиска: , , .
Нет комментариев »

WDAPI811.dll

Если AVR Studio ругается на отсутствие WDAPI811.dll, надо поставить драйверы USB-программатора (снова запустить setup.exe, выбрать Modify, и поставить единственную галку в списке подпрограмм).

P.S. Версия 4.15, Win7 x86, полёт нормальный.

Добавлено 24 апреля 2013 в 17:24 (по Москве) A.T. в раздел(ы) Публикации.
Нет комментариев »

А тем временем, у нас…

В то время как западные страны смеются над Россией, как над страной без IT-производства, без современных ЭВМ…

…Московский центр SPARC-технологий (ЗАО МЦСТ) не только разработал и запустил в мелкосерийное производство четырёхядерный x86-совместимый 90-нм процессор «Эльбрус-2С+» (1891ВМ7Я), но и запустил в производство материнскую плату, по интерфейсам 100% совместимую с современными IBM-PC: форм-фактор mini ATX, питание ATX, память DDR2 (2 слота), слот PCI-Express x16, 4xSATA, 4xUSB 2.0, Ethernet 1Gb/s, видеовыход DVI. Фирма Kraftway уже начала выпускать ПК-моноблоки на базе данной «матери» (цена кусается-70 тыс. руб.-но это из-за отсутствия спроса — «Эльбрусом» раньше называлась архитектура больших ЭВМ). В свободную продажу материнская плата должна поступить в ближайшее время (прим. А.Т.:в этом я не уверен).

Подробнее на сайте МЦСТ.

Добавлено A.T. в раздел(ы) Новости.
Нет комментариев »

Либо статика, либо динамика — смесь недопустима

Предыстория. Я начал делать этот сайт в 2009 году как массив html файлов. Перегнать это в CMS было затруднительно. В сентябре 2011 г. (когда создавал ATSOFTWARE.GB7.RU) я решил перегнать все html в txt, убрав <meta>, «шапку» и нижнюю часть, а далее подгружать это простым include. Всё бы ничего, но все файлы у меня издревле в кодировке в CP1251. Сейчас их более 40 шт. из которых не более 10 это php скрипты/страницы. После ввода AJAX на сайте (в начале апреля), пришлось перевести сайт в UTF-8. Автоматом только наеверну весь старый (2011 г.) говнокод: кучу meta-тегов и <? header(«content-type…») ?>. Так что только ручная переконвертировка. С «читающими» скриптами я поступил проще: $x = get_file_content…..;echo(iconv($x, …)). Всё бы ничего, пока не вскрылось, что в паре таких txt-шек есть PHP скрипты, которые благополучно накрылись и выводятся юзерам 🙂 Придётся убирать iconv и курочить четыере десятка тупых txt-шек.
Предостережение для начинающих создателей сайтов: никогда не делайте статические сайты, сразу ставьте CMS! Потом расхлёбывать проблемы будете очень долго (с 2011 по 13 год я не знал о них, а почву создал ещё в 2009 г.).

А хакерам совет — читать эти высеры (пример) бестолку, всеравно стоит защита от подмены «?name=». Обойти её пока что не получалось.

Добавлено 22 апреля 2013 в 0:08 (по Москве) A.T. в раздел(ы) Новости.
Нет комментариев »

Пробник катушек на наличие КЗ витков

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

Добавлено 21 апреля 2013 в 14:21 (по Москве) A.T. в раздел(ы) DIY и переделки.
Нет комментариев »

На посту ГАИ: Russian federation? Welcome to Ukraine. Пошли оформлять!

Водитель из России превысил ограничение скорости в Украине и решил обмануть сотрудников ДАI (ГАИшников) на английском.

Добавлено 17 апреля 2013 в 12:15 (по Москве) A.T. в раздел(ы) Репортажи.
Слова для поиска: , .
Нет комментариев »

Анонс

Что-то долго я не писал ничего… Сейчас плавно собираю такой (ретро-)девайс:

Это тестер катушек индуктивности/дросселей/трансформаторов на КЗ-витки. Как кончу — быть на сием сайте современной разводке печатной платы сего ретро-агрегата из 1971 года.

Добавлено 14 апреля 2013 в 21:11 (по Москве) A.T. в раздел(ы) Новости.
Слова для поиска: , .
Нет комментариев »

Не всё одинаково, что кажется

Сейчас занимаюсь ремонтом телевизора «Эриссон» (шасси BN6R), у которого сгорел узел EW-коррекции. При проверке был выявлен пробитый транзистор V405 типа 2SA1015. В продаже такого найти не удалось, но нашёлся один, как я думал, аналог — BUH1015HI. Руководствуюясь правилом, что иностранные транзисторы маркируются «аааббббвв», где а=производитель, б=тип, в=исполнение, я решил, что это 99% аналог. Оказалось, что нет. 😀 (далее…)

Добавлено 7 апреля 2013 в 16:00 (по Москве) A.T. в раздел(ы) Новости.
Слова для поиска: , .
Нет комментариев »