Мелкие вопросы по МК и ПЛИС.
- Реклама
При разборке одной древней материнки осталась куча микросхем кэш-памяти. Появилась мечта соорудить на них многоканальный анализатор, бо в ПЛИСках я нуль ( не, -1 ). Схема в голове сложилась давно, она проста. Трансформируется в 4 - 2 - 1 канальный вариант , с соответствующим изменением максимальной длительности записи. Скидывается в комп через УАРТ МК.
Знаю, что никогда не сделаю ( вон ИБП и частотомер дожидаются ), но мечта - шикарная.
Знаю, что никогда не сделаю ( вон ИБП и частотомер дожидаются ), но мечта - шикарная.
- Сообщения: 581
- Зарегистрирован: Ср янв 05, 2011 10:03:18
Лет 10 тому собирал на основе четырех таких чипов. Управлением запись/чтение рулила Альтера, управлением занималась 8515, данные сливались по УАРТу на физический СОМ-порт компа. Тогда на том компе на работе у меня не было USB вообще. Почти год благополучно пользовал. 8 каналов. Запуск мог осуществляться поканально от уровней или фронтов одного канала, или логической комбинации нескольких. Типа "старт по фронту канала 0 AND "1" в канале "2" ADN "0" в канале 4. ПЛИСка тактировалась генератором 40 МГц. Следовательно максимальное разрешение по дискретизации анализа было 25 нсек. Давно это было. Сейчас пользуюсь Харьковским продуктом, отличная железяка http://6-lab.com/news/3-projectnews/17-logic-u-plus и отличная софтина. http://www.saleae.com/logic16/featuresJack_A писал(а):При разборке одной древней материнки осталась куча микросхем кэш-памяти. Появилась мечта соорудить на них многоканальный анализатор, бо в ПЛИСках я нуль ( не, -1 ). Схема в голове сложилась давно, она проста. Трансформируется в 4 - 2 - 1 канальный вариант , с соответствующим изменением максимальной длительности записи. Скидывается в комп через УАРТ МК.
Знаю, что никогда не сделаю ( вон ИБП и частотомер дожидаются ), но мечта - шикарная.
С уважением,
Виктор.
Виктор.
Код: Выделить всё
#define F_CPU 8000000 // Инициализация
#include <avr/io.h>
#include <util/delay.h>
void maim(void)
{
DDRB=0b011011;
PORTB=0b10010;
MCUCR=0b01000000;
GTCCR=0b10000000;
asm("sei");
{
PORTB=001000 // Запускаю генератор
TCCR0B=0b00000111; // Запускаю счётчик
_delay_ms(1000);
TCCR0B=0b00000000; // Счётчик выключается
if (TCNT0>500) // Если насчитал больше 500, зажечь синий светик
{
PORTB=000001;
_delay_ms(5000)
PORTB=000000;
}
else if (TCNT0>300) // Если более 300, то ещё и зелёный
{
PORTB=000010;
_delay_ms(2000)
PORTB=000000;
}
else if (TCNT0>200) // А если более 200, то ещё и красный
{
PORTB=010000;
_delay_ms(2000)
PORTB=000000;
}
asm("sleep") // Потом сон
}
}Код: Выделить всё
#define F_CPU 8000000 // Инициализация
#include <avr/io.h>
#include <util/delay.h>
void maim(void)
{
DDRB=0b011011;
PORTB=0b10010;
MCUCR=0b01000000;
GTCCR=0b10000000;
asm("sei");
{
PORTB=001000 // Запускаю генератор
TCCR0B=0b00000111; // Запускаю счётчик
_delay_ms(1000);
TCCR0B=0b00000000; // Счётчик выключается
if (TCNT0>300) // Если насчитал больше 300, зажечь синий светик
{
PORTB=000001;
_delay_ms(5000)
PORTB=000000;
}
else if (TCNT0>200) // Если хотя бы более 200, то ещё и зелёный
{
PORTB=000010;
_delay_ms(2000)
PORTB=000000;
}
else if (TCNT0<100) // А если менее 100, то ещё и красный
{
PORTB=010000;
_delay_ms(2000)
PORTB=000000;
}
asm("sleep") // Потом сон
}
}Коды чуть разные, во втором не будет работать при кол-ве импульсов 0т 100 до 200 -- знаю. Он тестовый, для другого немного!
- Реклама
ATtiny13
подключил DS1307 к МК атмега8......, как запустить эти часы ?
Tell Me The Truth
Блин, народ, помогите!
- Сообщения: 581
- Зарегистрирован: Ср янв 05, 2011 10:03:18
А дальше что? Может, лучше с Виндой разобраться? Или ну его, тут мужики накомпилируют...просто КОТ писал(а):Блин, народ, помогите!
С уважением,
Виктор.
Виктор.
- Сообщения: 581
- Зарегистрирован: Ср янв 05, 2011 10:03:18
Подать питание.FreshMan писал(а):подключил DS1307 к МК атмега8......, как запустить эти часы ?
С уважением,
Виктор.
Виктор.
Ну, погрузчик работает. Мне тока НЕХ фай получить и всё пока. А к следующему проекту надеюсь и с Виндой разберусь. . .ut1wpr писал(а):А дальше что? Может, лучше с Виндой разобраться? Или ну его, тут мужики накомпилируют...просто КОТ писал(а):Блин, народ, помогите!
поставьте ХР второй системой и не майся.
И вообще пытались устанавливать в ту же папку заново после установки 7-ки?
И вообще пытались устанавливать в ту же папку заново после установки 7-ки?
В поисках истины человек развивается.
Чет я не уверен, что и на XP откомпилируется, помойму в тексте напутано.
Код: Выделить всё
#define F_CPU 8000000 // Инициализация
#include <io.h>
#include <delay.h>
// Declare your global variables here
void main (void)
{
DDRB=0b011011;
PORTB=0b10010;
MCUCR=0b01000000;
GTCCR=0b10000000;
#asm("sei");
{
PORTB=001000; // Запускаю генератор
TCCR0B=0b00000111; // Запускаю счётчик
delay_ms(1000);
TCCR0B=0b00000000; // Счётчик выключается
if (TCNT0>500) // Если насчитал больше 500, зажечь синий светик
{
PORTB=000001;
delay_ms(5000);
PORTB=000000;
}
else if (TCNT0>300) // Если более 300, то ещё и зелёный
{
PORTB=000010;
delay_ms(2000);
PORTB=000000;
}
else if (TCNT0>200) // А если более 200, то ещё и красный
{
PORTB=010000;
delay_ms(2000);
PORTB=000000;
}
#asm("sleep") // Потом сон
}
}Ну дык она самая!
Угу. Установленная в голове. Точки с запятой хотя бы научись ставить
В исходнике, если чо.
Ну дык это только вторая моя программа. Учусь. . .
Народ, у меня печаль -- АВРеаЛ не видит СТК200. Что делать?!
Ну да, прям щас не вижу.
Он под монитором лежит дома, там его хорошо видно.
Под Win7 его тоже видно, нужно только научить смотреть (кстати, /32 или /64 ?) и правильно пальцем ткнуть, где он.
Он под монитором лежит дома, там его хорошо видно.
Под Win7 его тоже видно, нужно только научить смотреть (кстати, /32 или /64 ?) и правильно пальцем ткнуть, где он.
Лень в виде мании величия: «ты гений, зачем стараться?». В виде комплекса: «всё равно не выйдет, зачем упираться?». Как логика: «если достаточно, зачем знать и уметь больше?». Цель одна: остановить. Не любит тепло работающих мышц и шум работающего мозга.




