Добрый день форумчане! ) У меня такая проблема. Есть машина, старенькая, но хорошая, когда то в авто был установлен круиз контроль, от которого остались одни воспоминания в виде пяти замечательнейших микриков на руле собственно идея в чём... зацепить на них такие полезные вещи как включение противотуманок, обогрев заднего стекла, может быть, свет в салоне или даже аварийку! так вот...можно ли спаять какое нибудь реле, срабатывающее от нажатия кнопочки без фиксации в нажатом положении, и если да то поделитесь схемкой пожалуйста а может быть можно просто взять готовое реле, допустим, дальнего света от волги? (там не фиксируется а просто клац-клац ручкой, типа как фарами моргнуть тока переключается) Я в прошлом уже имела секс с мозгами местных жителей по итогам которого мне была оказана помощь)))) надеюсь в этот раз всё будет быстре заранее спасибо! ) Раздел: Мастерская радиолюбителя
Здравствуйте, подскажите пожалуйста или дайте ссылку что почитать, не как до меня не дойдет как преобразовывать формулы, допустим тот же закон Ома. Гуглил часа 2 так и не понял Раздел: Песочница (Q&A)
Добрый день. По мере изучения микроконтролера STM8 снова возник нерешимый вопрос. Вобщем с передачей текстовой строки по одному символу разобрался. А теперь немогу найти , как передать текстовую строку и переменную. Допустим мне нужно в UART передать вот такую строку - переменная step= (и тут должно быть значение переменной. ) Я уже пробовал и printf и sprintf . Эти функции вообще не работают Вот код прикладываю, который работает. Единственно что в нём нужно добавить - это вывод значения переменной - в этой строке UARTPrintF("Hello from controller! Variable step= rn"); // Передаём строку . Как в ней добавить объявленную в начале переменную int step=250; ???? #include <iostm8s003k3.h> #include <intrinsics.h> #include <stdio.h> #include <stdint.h> int step=150; void InitialiseSystemClock() { CLK_ICKR = 0; CLK_ICKR_HSIEN = 1; CLK_ECKR = 0; while (CLK_ICKR_HSIRDY == 0); CLK_CKDIVR = 0; CLK_PCKENR1 = 0xff; CLK_PCKENR2 = 0xff; CLK_CCOR = 0; CLK_HSITRIMR = 0; CLK_SWIMCCR = 0; CLK_SWR = 0xe1; CLK_SWCR = 0; CLK_SWCR_SWEN = 1; while (CLK_SWCR_SWBSY != 0); } void InitialiseUART() {
unsigned char tmp = UART1_SR; tmp = UART1_DR;
UART1_CR1 = 0; UART1_CR2 = 0; UART1_CR4 = 0; UART1_CR3 = 0; UART1_CR5 = 0; UART1_GTR = 0; UART1_PSCR = 0; // // UART1_CR1_M = 0; UART1_CR1_PCEN = 0; UART1_CR3_STOP = 0; UART1_BRR2 = 0x0a; UART1_BRR1 = 0x08;
UART1_CR2_TEN = 0; UART1_CR2_REN = 0;
UART1_CR3_CPOL = 1; UART1_CR3_CPHA = 1; UART1_CR3_LBCL = 1;
UART1_CR2_TEN = 1; UART1_CR2_REN = 1; UART1_CR3_CKEN = 1; }
// // Функция отправки сообщения по UART1. // void UARTPrintF(char *buffer) { char *ch = buffer; while (*ch) { UART1_DR = (unsigned char) *ch; // Помещаем следующий символ в регистр передачи while (UART1_SR_TXE == 0); // Ждём окончания передачи ch++; // Передаём следующий символ } } int main( void ) { ///Инициализация периферии __disable_interrupt(); InitialiseSystemClock(); InitialiseUART(); __enable_interrupt(); //////////////////////// while (1) { UARTPrintF("Hello from controller! Variable step= rn"); // Передаём строку for (long counter = 0; counter < 250000; counter++); //задержка } }
Раздел: МК для начинающих
приобрету компьютер класса zx spectrum кворум128 Раздел: Куплю
Всем привет!
Я тут новенький, так что не убивайте сразу)
В общем, все утро просидел в интернете, ничего толкового не нашел.
Нужна схема, на 8-10 светодиодов, чтобы каждый из них по отдельности моргал в два такта как эффект стробоскопа, и чтоб они по одному мигали в хаотичном режиме один за одним. Предпочтительно питание 12 вольт (в автомобиле будет использоваться). Светодиоды белые, скорей всего не мощные, обычные. Но думаю в случае чего мощные не помеха, можно ключи на них поставить.
Ребята, выручайте, заранее спасибо!!!
Дико извиняюсь, попрошу модераторов перенести тему в другой раздел. Не углядел что-то Раздел: Питание LED и источников света
Интересуют основные правила пайки штепсельных разъемов(розетки, как я понял), гугл не помог, помогите, пожалуйста Раздел: Песочница (Q&A)
Здравствуйте, есть радио ok. owr 220-bl, в нем есть автоотключение. Так это отключение срабатывало, при работающем радио. Я решил разобратся в схеме и устранить этот глюк, но опыта у меня маловато. И я случайно щупом коротнул транзистор, в результате чего пробой в cr5608. Но google этого чуда не знает (на фото уже выпаяная so-8). За что она отвичала, и можна ли без нее обойтись или заменить? Раздел: Питание аудио аппаратуры
Пора бы и еще один тест явить общественности. Сегодня будет Nightwish, фантом оф зе опера. исходник флак 24/96000. В качестве "оригинала" wav-файл без сжатия, остальные ужаты. Шесть вариантовОригинал Раздел: Прочее
file:///D:/%D0%B0%D1%80%D1%82%D1%91%D0%BC/%D0%90%D0%97/AutoSound/Amplifier%20Russia/1.jpgДоброго времени суток. Вопрос по электрофону (вроде так называется это чудо) "Россия 321 Стерео". Имеется только нижняя его часть, то есть усилитель. Проблема в том, что взявшись сегодня опробовать его в деле, я просто не нашёл линейного входа, как во все известные мне усилители. То, что это электрофон (я думал, что это просто усилитель, ибо крышка при нахождении сего отсутствовала и есть лишь передняя панель и собственно кишки на каркасе) я узнал позже и соответственно предположил, что сигнал идёт с верхней части (что там, пластинка, игла, я не разбираюсь вовсе). Так вот вопрос, куда мне подать сигнал?! Уж откуда снять, я думаю - найду, а вот подать - вопрос. Думаю усилитель исправен. Прилагаю схему, и одно фото. По нему тоже вопрос: что это собственно за входы? или выходы? имеют по 5 выводов с обратной стороны. На одном проводки припаяны ко всем 5 выводам, на втором только к двум, при чём один - общий с первым. Надеюсь на вашу помощь Раздел: Песочница (Q&A)
При разработке одного устройства оказалось необходимо отлаживать его прямо в корпусе. А внешний ISP-разъем предусмотрен не был. Отнимать кучу памяти под загрузчик, который будет использоваться только для отладки - глупо. Причем почти все выводы в устройстве оказались заняты, да и ставить отдельную кнопку специально для входа в загрузчик не всегда удобно, ну и из соображений универсальности, было решено обойтись без внешних элементов, кроме, разумеется, интерфейса. После нескольких неудачных попыток портировать первую версию загрузчика с ATmega8 на ATmega168 выяснилось, что это не так-то просто. Оказалось, что Atmel'ы зачем-то переименовали USART в USART0, переместили его настройки из регистров в память (теперь доступ через in/out невозможен, только st/ld/sts/lds) и сделали кучу других не менее удобных и логичных вещей. Прошивка ведется по USART'у, переход в рабочий режим происходит через заданное время после приема последнего байта. Из соображений минимизации размера и выхода из режима программирования по времени, использовать стандартные прошивальщики не удалось, пришлось писать собственный. В результате запись идет постранично (прошивальщик должен сам делить hex-файл на страницы). Каждая страница записывается независимо. Контроллер реагирует только на два значения принятого байта - 'I' для вывода информации о контроллере (возвращается строка вида PS,',',"m8 ",0x00, где PS - размер страницы, байт) и 'P' для записи страницы. При записи страницы используется LRC-контрольная сумма, в которую входит, помимо посылаемых байтов, размер страницы. Для записи передаются байты 'P' (вход в режим записи), addrH, addrL (адрес страницы), массив данных для записи и контрольный LRC-код (1 байт). При прошивке надо не забыть выставить фузы на минимальный загрузчик, bootreset и частоту. Сколько же я глюков наловил, забыв какой-нибудь из-них. Проверялся загрузчик на контроллерах ATmega8, ATmega8515, ATmega168PA. Прошивальщик написан на CBuilder. Консольный, разумеется. Постарался оптимизировать доступ к нему, то есть прошивку просто запуском программы. Если не может подключиться к COM-порту или прочитать исходный файл - будет выведен диалог выбора. Эти настройки хранятся в файле *.ini, можно в нем поковыряться, а можно просто удалить если что не так. Тема создавалась не только с целью похвастаться выложить загрузчик на случай если кому пригодится, но и попросить, если кому не сложно, проверить правильность работы и возможность портировать на другие контроллеры. Там надо будет в файл redefines.inc добавить описание новых контроллеров. Раздел: AVR
[next-page][/next-page]
|