Мелкие вопросы по МК и ПЛИС.

Если ваш вопрос не влез ни в одну из вышеперечисленных тем, вам сюда.
АСУ
Друг Кота
Сообщения: 3342
Зарегистрирован: Ср янв 02, 2013 08:37:35

Re: Мелкие вопросы по МК и ПЛИС.

Сообщение АСУ »

NebelWefer писал(а):а вот есть ли данные по чтению?

Столько не живут… :))
Аватара пользователя
Starichok51
Модератор
Сообщения: 19043
Зарегистрирован: Сб авг 14, 2010 15:05:51
Откуда: г. Озерск, Челябинская обл.

Re: Мелкие вопросы по МК и ПЛИС.

Сообщение Starichok51 »

зачитать "до дыр" не получится...
Мудрость приходит вместе с импотенцией...
Когда на русском форуме переходят на Вы, в реальной жизни начинают бить морду.
Аватара пользователя
oleg63m
Друг Кота
Сообщения: 20132
Зарегистрирован: Чт сен 01, 2011 12:53:27
Откуда: ТьмуТаракания. Почетный житель подмостовья
Контактная информация:

Re: Мелкие вопросы по МК и ПЛИС.

Сообщение oleg63m »

что записано в епром-не вырубать топором :)))
Шекспир сказал: Судить меня -дано лишь Богу, другим я укажу дорогу... https://natribu.org/
Я его полностью поддерживаю.
Программирую на Fuse AtmelAVR.
Аватара пользователя
Chip115
Сверлит текстолит когтями
Сообщения: 1132
Зарегистрирован: Пт фев 16, 2007 14:18:20
Откуда: Новосибирск
Контактная информация:

Re: Мелкие вопросы по МК и ПЛИС.

Сообщение Chip115 »

Всем привет!
Есть камень STM32F103 на китайской отладочной плате под DIP40.
Надо пикнуть писчалкой на частоте примерно 1кГц.
Что бы сгенерить звук буду инвертировать состояние вывода PB1 на котором сидит (через транзистор) зуммер.
Все это делаю в прерывании.

Код: Выделить всё

extern "C"{
  void TIM4_IRQHandler(void)
  {   
    if (TIM_GetITStatus(TIM4, TIM_IT_Update) == SET)
    {
      TIM_ClearITPendingBit(TIM4, TIM_IT_Update);
      GPIOB->ODR^=GPIO_Pin_1;                       
    }
  }
}


Настройка таймера на 1 кГц вот

Код: Выделить всё

void tim4_config (void)
{
  RCC_ClocksTypeDef RCC_Clocks;
  RCC_GetClocksFreq(&RCC_Clocks);
 
  RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM4, ENABLE);

  TIM_TimeBaseInitTypeDef TIM_InitStructure;
 
  TIM_TimeBaseStructInit(&TIM_InitStructure);
  TIM_InitStructure.TIM_Prescaler = (RCC_Clocks.HCLK_Frequency/1000000 - 1); 
  TIM_InitStructure.TIM_Period = 1000;
  TIM_TimeBaseInit(TIM4, &TIM_InitStructure);
  //TIM_Cmd(TIM4, ENABLE);
 
  NVIC_EnableIRQ(TIM4_IRQn); 
  TIM_ITConfig(TIM4, TIM_IT_Update, ENABLE); 
}

Вопросы.
1. Почему начинает пищать когда TIM_Cmd(TIM4, ENABLE) не активная? Я так понимаю что таймер не должен считать, пока не врубим его, но он начинает работать после настройки прерываний. Звук чистый.
2. Если врубать таймер вызывая функцию TIM_Cmd(TIM4, ENABLE), то звук становится какой-то хрипящий, частота падает. Осциллографа нет под рукой. всё на слух (( Впечатление что прерываение обрабатывается по разным событиям. Почему так?
3. Отладчик (отладка через STLINK SWD) попадает в обработчик TIM4_IRQHandler только при первом проходе. Потом, почему-то, точка останова в обработчике прерывания игнорится. В обработчк от таймера 3 (юзаю еще один таймер, завел на тик в 1 сек.) попадает исправно и "фишка" с TIM_Cmd работает. Этот таймер мигает светодиодом раз в сек.


-------
Всё. Разобрался. Оказывается мне подсунули зуммер со встроенным генератором внутри. отсюда и путаница :evil:
Теория — это когда все известно, но ничего не работает. Практика — это когда все работает, но никто не знает почему. Мы же объединяем теорию и практику: ничего не работает… и никто не знает почему!
© Альберт Эйнштейн
Аватара пользователя
Linuxoid91
Грызет канифоль
Сообщения: 295
Зарегистрирован: Вс дек 18, 2011 14:41:24
Откуда: Ангарск

Re: Мелкие вопросы по МК и ПЛИС.

Сообщение Linuxoid91 »

Всем здрасьте. Помогите найти даташит на микросхему AB1520CG1F15.1-83EM. Эта микросхема стоит в китайском плеере. Хочу поглядеть даташит на предмет наличия незадействованных в плеере функций. Вдруг, там есть, скажем, режим рандомного воспроизведения аудио или что нибудь еще.
Chettuser

Re: Мелкие вопросы по МК и ПЛИС.

Сообщение Chettuser »

В даташите скорее всего нет - реализовано программно в прошивке.
Nigroll
Родился
Сообщения: 5
Зарегистрирован: Сб мар 04, 2017 20:15:21

Re: Мелкие вопросы по МК и ПЛИС.

Сообщение Nigroll »

Помогите понять, где ошибка. Altera Max Plus 2 выдает "Process clocking is too complex". На иностранных сайтах на похожий вопрос был дан ответ - что-то с if-else конструкциями, но непонятно, как исправить.

Код: Выделить всё

LIBRARY ieee;
USE ieee.std_logic_1164.all;
ENTITY shift_reg IS
       PORT
       (clk    : IN STD_LOGIC ;
        data   : IN STD_LOGIC ;
        reset  : IN STD_LOGIC ;
        q      : OUT STD_LOGIC
       );
END shift_reg;
 
ARCHITECTURE behav OF shift_reg IS
       SIGNAL rs: STD_LOGIC_VECTOR (3 downto 0) ;
SIGNAL rscopy: STD_LOGIC_VECTOR (3 downto 0);
BEGIN
process (clk, reset) begin
  if (reset = '0') then
    rs <= "0000";
             else
    if (clk'event and clk='1') then rscopy<=rs; end if;
    if (clk'event and clk='0') then   rs <= data & rscopy(3 downto 1); end if;
  end if;
end process;
q <= rs(0);
END behav;
Аватара пользователя
uldemir
Друг Кота
Сообщения: 7357
Зарегистрирован: Пт авг 28, 2009 21:34:30
Откуда: 845-й км.

Re: Мелкие вопросы по МК и ПЛИС.

Сообщение uldemir »

Если еще актуально...

Может, махплюс не может распарсить два отдельных ивента. Попробуйте так

Код: Выделить всё

if (clk'event) then
  if (clk='0') then....
  else....
  end if
end if

А ваше "железо" имеет фичу dual edge? А то смоделировать, может и удастся, а вот синтезировать - может быть облом.

в ISE я делал двумя процессами:

Код: Выделить всё

    process (scl)
    begin
        if scl'event and scl='0' then
            shift_reg <= shift_reg (shift_size-2 downto 0) & sda;
        end if;
    end process;

    process (scl)
    begin
        if scl'event and scl='1' then
            if sda = '1' then
                latch_reg <= shift_reg;
            end if;
        end if;
    end process; 
А люди посмотрят и скажут: "Собаки летят. Вот и осень."
Аватара пользователя
Евгений33
Встал на лапы
Сообщения: 85
Зарегистрирован: Пн ноя 08, 2010 14:07:14
Откуда: Владимирская область

Re: Мелкие вопросы по МК и ПЛИС.

Сообщение Евгений33 »

День добрый! Есть устройство на ATmega162 которое врем от времени зависает при подаче питания. Питается контроллер от 7805, тактируется от кварца, reset - подтянут, фьюзы - старт с нулевой задержкой. В приложении переходной процесс на ногах контроллера.
Вложения
Задержка.jpg
(90.36 КБ) 345 скачиваний
.....
Аватара пользователя
*Trigger*
Друг Кота
Сообщения: 3059
Зарегистрирован: Пн май 11, 2009 14:15:00
Откуда: СПб

Re: Мелкие вопросы по МК и ПЛИС.

Сообщение *Trigger* »

Евгений33 писал(а):фьюзы - старт с нулевой задержкой

Попробуйте увеличить задержку.
Этот пост оказался полезен? Не поленись, нажми Изображение слева!
:) :)) :)))
Куплю индикаторы ИТС-1А, ИТС-1Б, ИГВ1-8х5Л, ИГПС1-222/7, ИГПС1-111/7 и подобные.
Аватара пользователя
BOB51
Друг Кота
Сообщения: 15546
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Re: Мелкие вопросы по МК и ПЛИС.

Сообщение BOB51 »

Собственно схема с низким (относительно параметров источника питания) энергопотреблением.
При повторном включении из-за "недоразряженности" электролитов и прочих паразитно-переходных процессов получаем неопределенность для цепей запуска МК.
Лечение применением схем BOD, WDT, внешним монитором питания и их комбинаций.
Да и задержку запуска при внешнем кварце лучше увеличивать, а не уменьшать.
(Заодно проверить параметры генератора в отношении размаха сигнала на выводах - может понадобится максимальный).
Ну и последнее (или первое) - некорректная программа устройства.
:roll:
Аватара пользователя
Евгений33
Встал на лапы
Сообщения: 85
Зарегистрирован: Пн ноя 08, 2010 14:07:14
Откуда: Владимирская область

Re: Мелкие вопросы по МК и ПЛИС.

Сообщение Евгений33 »

Ввел задержку по старту 65 мс и настроил внутренний BOD на 4,3 В, вроде все нормально.
.....
Hot
Первый раз сказал Мяу!
Сообщения: 20
Зарегистрирован: Пн май 25, 2015 21:29:15
Откуда: Владимир

Re: Мелкие вопросы по МК и ПЛИС.

Сообщение Hot »

Народ поможите, уже не знаю куда копать. Ситуация- ds1307 + avr 8515 . Тупо часы. Ds 1307 не запускается от кварца. От внешнего генератора 32768- на ура , а вот от кварца -никак. Всё по даташиту. менял 5 кварцев, 2 микросхемы, думал про питание- от батареек тоже никак. В протеусе всё работает
Аватара пользователя
Baasil
Говорящий с текстолитом
Сообщения: 1641
Зарегистрирован: Пн авг 25, 2014 21:52:26
Откуда: Ленинград

Re: Мелкие вопросы по МК и ПЛИС.

Сообщение Baasil »

The internal oscillator circuitry is designed for operation with a crystal having a specified load capacitance (CL) of 12.5pF.


https://datasheets.maximintegrated.com/en/ds/DS1307.pdf
Страница 6.
Не всякий резонатор сюда подойдет.
Hot
Первый раз сказал Мяу!
Сообщения: 20
Зарегистрирован: Пн май 25, 2015 21:29:15
Откуда: Владимир

Re: Мелкие вопросы по МК и ПЛИС.

Сообщение Hot »

[uquote="Baasil",url="/forum/viewtopic.php?p=3096068#p3096068"]
The internal oscillator circuitry is designed for operation with a crystal having a specified load capacitance (CL) of 12.5pF.


https://datasheets.maximintegrated.com/en/ds/DS1307.pdf
Страница 6.
Не всякий резонатор сюда подойдет.[/uquote]

Как бы ещё узнать нужный....
АСУ
Друг Кота
Сообщения: 3342
Зарегистрирован: Ср янв 02, 2013 08:37:35

Re: Мелкие вопросы по МК и ПЛИС.

Сообщение АСУ »

[uquote="Hot",url="/forum/viewtopic.php?p=3096072#p3096072"]нужный....[/uquote]
Эти ставил работает нормуль! http://chip-nn.ru/find.php?f=32.768+%CA%C3%F6%2C+KX-38T
Hot
Первый раз сказал Мяу!
Сообщения: 20
Зарегистрирован: Пн май 25, 2015 21:29:15
Откуда: Владимир

Re: Мелкие вопросы по МК и ПЛИС.

Сообщение Hot »

Спасибо попробую
sergey-arhipov-1988
Родился
Сообщения: 8
Зарегистрирован: Пн апр 10, 2017 20:04:05

Re: Мелкие вопросы по МК и ПЛИС.

Сообщение sergey-arhipov-1988 »

Доброго времени суток уважаемые форумчане! Есть акустика 2.1 хотелось бы сделать для нее проводной пульт с цифровой регулировкой громкости и басов, данная акс уже имеет проводной пульт с двумя переменными резисторами (резисторы моно). Вот хочется их заменить на кнопки, да и с индикацией 8 светодиодов. Есть у меня тинька 2313 вот хотелось бы на ней это дело собрать. Подскажите как это лучше реализовать. Да к стати в программировании мк я новичок.
petrenko
Друг Кота
Сообщения: 5321
Зарегистрирован: Вт фев 21, 2012 13:51:55
Откуда: Начинающий
Контактная информация:

Re: Мелкие вопросы по МК и ПЛИС.

Сообщение petrenko »

Решение " в лоб" : переменные сопротивления заменить на перемножающие ц.а.п. ,управляемые м.к.

Но ведь есть и готовые решения, хотя чуток дороже.
< виртуальная "кнопочка" >--( WWW ) <- Убедительная просьба интересующимся старыми компьютерами типа РК86 - не пишите в теме в барахолке, пишите Ваши вопросы в ( лс ) пожалуйста
sergey-arhipov-1988
Родился
Сообщения: 8
Зарегистрирован: Пн апр 10, 2017 20:04:05

Re: Мелкие вопросы по МК и ПЛИС.

Сообщение sergey-arhipov-1988 »

[uquote="petrenko",url="/forum/viewtopic.php?p=3096835#p3096835"]Решение " в лоб" : переменные сопротивления заменить на перемножающие ц.а.п. ,управляемые м.к.

Но ведь есть и готовые решения, хотя чуток дороже.[/uquote]
Про мк я читал достаточно много, и то что переменные сопротивления можно заменить я знаю, только как это реализовать? Вот здесь мои знания расплываются. Так примерная картина есть но очень слабая. А именно какую и куда подавать команду?
Ответить

Вернуться в «Разные вопросы по МК»