Jump to content

    

Dec_NN

Свой
  • Content Count

    77
  • Joined

  • Last visited

Community Reputation

0 Обычный

About Dec_NN

  • Rank
    Частый гость

Контакты

  • Сайт
    Array
  • ICQ
    Array

Recent Profile Visitors

2017 profile views
  1. Действительно. Вы правы. Огромное спасибо. Теперь все понял. Проблема не в передаче указателя, а в работе функции sizeof. func2(buf_1, 4) из вашего примера заменил на func2(buf_1, size);
  2. STM32. STM32CubeIde. Есть глобальный массив. Передаю указатель на него в функцию. Код прописанный в функции меняет значения элементов массива. Затем из этой функции мне необходимо вызвать еще одну, также с указанием данного массива. Вот тут не получается. Вторая функция уже не модифицирует элементы того самого глобального массива. void func1(uint8_t *buf_1); void func2(uint8_t *buf_2); uint8_t my_array[50]; void main { func1(my_array); } void func1(uint8_t *buf_1) { memset(buf_1, 0x00, sizeof(buf_1)); // Здесь все нормально, все элементы my_array устанавливаются в 0 func2(buf_1); } void func2(uint8_t *buf_2) { memset(buf_2, 0xFF, sizeof(buf_2)); // Здесь только первые 4 элемента my_array устанавливаются в FF, остальные не модифицируются } Также компилятор выдает warning: argument to 'sizeof' in 'memset' call is the same expression as the destination; did you mean to provide an explicit length? [-Wsizeof-pointer-memaccess] Понимаю, что как-то ошибочно ссылаюсь на массив при вызове второй функции, но не понимаю как сделать правильно.
  3. Ясно. Спасибо. Дорого конечно, в отличии от серии Nucleo, но есть вся обвязка - Ethernet, USB, TFT, кодеки. Плюс программатор не нужно брать отдельно. Еще бы туда Cyclon V от Альтеры, вообще красота была бы.
  4. Добрый день! Есть желание научиться работать с STM32. Для этого подбираю отладочную плату. Вроде как нравится 32F769IDISCOVERY. Все более менее необходимое на ней есть. Единственное чего не вижу, так это какого-нибудь разъема для прямого подключения к GPIO, но явно возникнет необходимость подключать к платке FPGA. При этом есть набор разъемов для поключения Arduino Uno V3. Вот вопрос. Можно ли использовать данные разъемы просто для доступа к портам которые на них подключены? Или порт Ардуино имеет какие то хитрые особенности? Спасибо.
  5. Добрый день! Производится разработка устройства с портом E3. Структура кадра делается согласно ITU-T G.753. В данной рекомендации 12-битное значение сигнала выравнивания кадра FAS = 111110100000. В тоже время в описании на советскую систему ИКМ-480, которая работает на основе данной рекомендации ITU-T G.753, FAS имеет другое значение, FAS = 111101000000. Можно конечно предположить, что ИКМ-480 имеет не полное соответствие рекомендации G.753, но есть еще такой момент. Имеем тестер российского производства ТИС-Е1 Е2 Е3 который умеет выдавать и анализировать поток Е3. Если в настройках тестера установить формат кадра G.753, то на выходе получаем синхрослово 111101000000, т.е. точно такое же как в ИКМ-480, но при этом не соответствующее заявленному стандарту. И вот где искать правду? Какое значение FAS использовать? Что то я запутался.
  6. Добрый день. Не знаю в какой раздел написать, поэтому спрошу здесь. Существуют ли какие нибудь требования к наименованиям стандартных разъемов на корпусе прибора? Или это не регламентировано и можно делать как фантазия подскажет? К примеру разъем низковольтного питания на корпусе прибора можно обозначить "Питание", либо "Питание =12 В", либо "U = 12В". Вот есть ли какой то ГОСТ который определяет, что именно так и не иначе?
  7. Ну да, поток далее идет на LIU Е1. У меня Exar-овские с джиттеродавкой, но я что то сомневаюсь, что она справится с таким сигналом. Надо подумать, попробовать. Мне нехватеат знаний, чтобы реализовать DDS в ПЛИС. Я пробовал подстраивать частоту клоком 2048x64. Делал счетчики с делением на 63 и 65, но получается слишком большой шаг подстройки.
  8. Добрый день! Пытаюсь реализовать на ПЛИС асинхронный мультиплексор/демультиплексор потока Е2. На стороне демультиплексора, распределитель записи раскидывает потоки Е1 из принятого Е2 на четыре буфера из которых нужно вычитывать данные клоком 2048 с подстройкой к темпу приходящих данных. Делаю все согласно G.745. Так вот получается, что запись в буфера со стороны принятого Е2 идет рваным темпом, т.к. имеются пропуски на временных интервалах служебных символов потока Е2 и команд согласования скоростей. Как в таком случае по науке делают подстройку ФАПЧ? Ведь стандартная схема с фазовым детектором работать не будет. По крайней мере мне так кажется. Так вот я решил следить за приходящим темпом по разнице указателей чтения и записи в буфер. Если УЧ приближается к УЗ, то снижаем скорость клока чтения 2048, если удаляется то наоборот поднимаем. Насколько такой подход имеет право на жизнь? И еще сопутствующий вопрос. Можно ли в качестве ГУНа для подстройки частоты применить синтезатор на основе DDS? Что то типа AD9838. Почему то нигде не встречал описание такого решения, а вроде как оно видится достаточно работоспособным, ведь такие синтезаторы перестраиваются с малым шагом, без скачков фазы. Можно было бы плавно крутить частоту при удалении и приближении указаелей в буфере. Если кто работает в данной теме направьте на путь истинный. Спасибо.
  9. Понятно. Вообщем нужно попробовать 9.1 поставить. Спасибо.
  10. Добрый день. Решил освоить Active-HDL. Версия 10.1. И почему то не выходит получить результаты моделирования при задании входных воздействий с помощью testbench на VHDL. В окне waveform нет результирующих выходных сигналов, точнее они неизвестны. Вот если задать сигналы на входы встроенными стимуляторами, то все ок, сигналы на выходах вижу, а с тестбенчем нет. Вот например простой код трехвходового "И": library IEEE; use IEEE.STD_LOGIC_1164.all; entity test_and is port( X1 : in STD_LOGIC; X2 : in STD_LOGIC; X3 : in STD_LOGIC; Y : out STD_LOGIC ); end test_and; architecture test_and of test_and is begin Y <= X1 and X2 and X3; end test_and; Вот листинг testbench: library ieee; use ieee.std_logic_1164.all; entity test_and_tb is end test_and_tb; architecture TB_ARCHITECTURE of test_and_tb is component test_and port( X1 : in STD_LOGIC; X2 : in STD_LOGIC; X3 : in STD_LOGIC; Y : out STD_LOGIC ); end component; signal X1 : STD_LOGIC; signal X2 : STD_LOGIC; signal X3 : STD_LOGIC; signal Y : STD_LOGIC; begin UUT : test_and port map( X1 => X1, X2 => X2, X3 => X3, Y => Y ); process begin for i in 0 to 10 loop X1 <= '0'; wait for 50 ns; X1 <= '1'; wait for 50 ns; end loop; end process; process begin for i in 0 to 10 loop X2 <= '0'; wait for 120 ns; X2 <= '1'; wait for 120 ns; end loop; end process; process begin for i in 0 to 10 loop X3 <= '0'; wait for 310 ns; X3 <= '1'; wait for 310 ns; end loop; end process; end TB_ARCHITECTURE; configuration TESTBENCH_FOR_test_and of test_and_tb is for TB_ARCHITECTURE for UUT : test_and use entity work.test_and(test_and); end for; end for; end TESTBENCH_FOR_test_and; На картинке результат моделирования, значение выхода Y не определено.
  11. Добрый день! Разобрался с инициализацией SD карты по SPI. Попробовал писать, читать данные. Теперь компьютер не вилит карту ни через один кард ридер. Видимо я сбил в ней какие то сектора или что то там еще. При этом карта рабочая, т.к. на микроконтроллере проходит и инициализация и чтение/запись. Подскажите, можно ли как то вернуть карту к такому состоянию, чтобы ее увидел ПК? ----------------- Как только задал вопрос, сам сразу и разобрался :) Скачал с сайта www.sdcard.org утилиту SDformatter. Она увидела карту и отформатировала ее.
  12. Тут проблема в том что драйвер в принципе не ставится. В процессе установки выдает сообщение о том что несовместимое 16-битное приложение PnPutil.exe не может быть выполнено на 64-битной системе. В итоге все файлы распаковываются но не прописываются в систему. Вот почему это происходит - это непонятно. У винды 8.1 есть свой PnPutil.exe, но установщик почему то видимо пытается использовать файл встроенный в USB driver package. Все это странно, т.к. для этого набора драйверов у атмела указана поддержка win81.x64.
  13. Добрый день. На новом ПК с win8.1 установил последнию версию AtmelStudio 6.2 SP1. Но при этом не устанавливаются драйверы USB, в результате JTAGICE3 не виден. Кто нибудь сталкивался с таким? Как можно решить данную проблему? И еще вопрос. Если кто то работает под win8.1 то какие дебаггеры используете? Спасибо.
  14. Это не совсем то. Да и новость от 2012 года. А вот разнообразные фреймеры и LIU у них еще месяца 2 назад на сайте наблюдались в большом разнообразии. А тут сунулись нет ничего.
  15. А что Maxim прекратил выпуск решений по E1 или продали тему кому то? На сайте все исчезло, а по всем чипам выдает "No longer available".