Jump to content

Recommended Posts

Иногда возникают вопросы, ради которых создавать отдельную тему не имеет смысла, давайте задавать простые вопросы в этой теме (типа как "Вопросы от начинающих").

Первый вопрос:

Чтобы сконфигурировать одно устройство необходимо загрузить в регистр некоторые данные, формат показан на картинке в прикреплении.

Что такое MSB и LSB?

post-44220-1274462359,74_thumb.gif

Share this post


Link to post
Share on other sites

LSB, MSB это младший значащий бит и старший значащий бит.

Отсчет битов начинается с младшего, как и в обычном десятичном числе при записи числа сначала идет старший затем младший.

Share this post


Link to post
Share on other sites

Литиевые батарейки Fanso для систем телеметрии и дистанционного контроля

Системы телеметрии находят все более широкое применение во многих отраслях на промышленных и коммунальных объектах. Требования, предъявляемые к условиям эксплуатации приборов телеметрии и, как следствие, источников питания для них, могут быть довольно жесткими. Fanso предоставляет широкую линейку продукции, рассчитанной на различные условия эксплуатации, что позволяет подобрать батарейку для каждого конкретного применения, в том числе и для устройств телеметрии.

Подробнее

Там на картинке написано, что первый бит в сдвиговом регистре - это MSB, выходит нужно наоборот данные загружать от старшего к младшему?

Вопрос номер 2, по цифровой части PLL синтезатора MC145158, даташит прикрепил.

Как я понял логич. 1 на ноге ENB выполняет ту же роль, что и бит control, так?

Каково назначение 7-ми битного ÷ A COUNTER'a?

MC145158-2.pdf

Edited by GROMIT

Share this post


Link to post
Share on other sites

Нет, первым должен пойти младший бит. Ведь с каждым тактом он загружается в MSB и сдвигается в сторону LSB. Таким образом самый первый загруженный бит окажется в LSB ...

Share this post


Link to post
Share on other sites
                     

Материалы вебинара STM32G0 – новый лидер бюджетных 32-битных микроконтроллеров от STMicroelectronics

На вебинаре были продемонстрированы современные методы тестирования производительности микроконтроллеров на примере самых бюджетных 32-битных семейств общего назначения STM32G0 и STM32F0, проведено их подробное сравнение. Мы подготовили для вас материалы. Вы можете посмотреть видеозапись вебинара, ознакомиться с ответами на вопросы, загрузить код для тестирования, прочитать статьи по теме

Подробнее...

Нет, первым должен пойти младший бит. Ведь с каждым тактом он загружается в MSB и сдвигается в сторону LSB. Таким образом самый первый загруженный бит окажется в LSB ...

При последовательной передаче направление может быть любым. Это зависит от протокола.

Share this post


Link to post
Share on other sites

Но в данный момент последовательность именно такая, т.к. первый бит указан стрелочкой на картинке в первом посте, так?

Share this post


Link to post
Share on other sites

Написано, что первым сдвигается MSB. Значит так оно и есть.

Share this post


Link to post
Share on other sites

Понятно, спасибо.

Вопрос номер 3, как прочитать отдельный бит из восьмибитного регистра?

С записью понятно, а вот как прочитать :unsure:...

Share this post


Link to post
Share on other sites

А никак. Но тут на помощь идет простая математика: если сделать операцию "AND" над байтом и специально сформированной маской, по результату можно судить какое значение там было.

Напимер(проверка 0 бита) 10010101 AND 00000001 = 00000001 - результат не равен нулю, значит бит равен 1.

Так же можно проверить равенство нулю определенных бит (0-2)

10010000 AND 00000111 = 00000000 - результат равен нулю...

А если использовать операцию AND можно проверить группу бит на определенную комбинацию игнорируя остальные биты:

(10010110 AND 00001111) = 00000110

Но в данный момент последовательность именно такая, т.к. первый бит указан стрелочкой на картинке в первом посте, так?

Стрелочкой указан бит который будет загружен первым в регистр с линии данных.

Но затем, стрелочка НЕ ПЕРЕМЕЩАЕТСЯ, загрузка следующего бита будет произведена туда же, но содержимое регистра сдвинется в сторону LSB.

Регистр сдвига и мультиплексор - это разные вещи.

Share this post


Link to post
Share on other sites

Господа, доброго времени суток!!!

Хочу собрать цифровой термометр на ICL7107

Так вот вопрос??? его предворительно программировать надо???

Или он как обычная логика работает?

Вот схемка:

post-104977-1276027359,24_thumb.gif

Share this post


Link to post
Share on other sites

Программировать не надо, но замучаешься калибровать. Это ж микросхема как с китайских измерительных приборов, погрешность у нее достаточна чтобы измерять температуру с точностью +-2 градуса.

Share this post


Link to post
Share on other sites

Спасибо за помощь!

ну с +- 2 градусами я думаю это не страшно.

Вот только где бы взять Lay чертёж на сей девайс??? в простом графическом файле чертёж есть. вот переносить его муторно в LAY точнее не муторно, а боюсь с разметкой напутоть. просто в программе SLayout_v5_rus нет некоторых элементов; например нет светодиодной индикации.

а наобум ставить точки боюсь напутать!!!

Сам чертёж вот он:

post-104977-1276084845,11_thumb.gif

и вот обратная сторона:

post-104977-1276084872,65_thumb.gif

Edited by Кирилл84

Share this post


Link to post
Share on other sites

Конечно нет, но там можно составлять свои элементы. Как правило, шаг выводов у индикатора такой же как у DIP-микросхемы, т.е. кратный 2.54 мм остальное можно с легкостью замерить даже линейкой.

Share this post


Link to post
Share on other sites

Всем привет!!!

Могу похвастаться своим первым девайсом:)

Термометр на ICL7107

Правда сам АЦП еще не привезли. Заказал, во вторник будет.

A так вот что собрал:)

post-104977-1276369363,9_thumb.jpg

post-104977-1276369375,63_thumb.jpg

Так что как поставлю АЦП покажу как сей девайс работает:):):)

Ну как говоритьсо первый блин комом:)

Edited by Кирилл84

Share this post


Link to post
Share on other sites

Здравствуйте.

Я боюсь оказаться не в той теме :) Но все же задам свой вопрос.

Я так понял, здесь люди технически грамотные, и сами собирают все схемы. Но я хочу заняться изготовлением корпусов для флешек и при этом микросхемы не паять самому :) Я все-таки дизайнер, а не инженер =)

Так вот, может быть вы знаете фирмы, которые поставляют готовые внутренности без корпусов. Я конечно представляю, что есть какие-нибудь китайские фирмы производители поставляющие большими партиями. Но понятия не имею как на них выйти, или может быть уже есть какие-нибудь посредники с более мелкими партиями =)

Share this post


Link to post
Share on other sites

Я все-таки дизайнер, а не инженер =)

когда Вы проектируете корпус, надо закладываться на ограничения технологического оборудования на котором Вы собираетесь выпускать Ваш шедевр. А то все Ваши дизайнерские изыски съедят эти ограничение.

ИМХО:

Если сможете у нас в стране договориться, что Вам сделают за приемлемые деньги корпуса, те которые Вы хотите, а не те которые они могут, покупка плат покажется легким делом

Edited by rtfcnf

Share this post


Link to post
Share on other sites

Господа, собрал я сей девайс!

так вот:

1. спаял всё как на схеме, включаю, не работает!!! ни циферок тебе, ни моргания вообще мёртвый.

Ну я расстроилсо, и решил как по старинке, собрать всё на макетной плате. заработало!!!

Так вот в чём оказалось дело было По схеме показано, что напряжение в 5v нужно подавать на 1ый и 26ой пин. ну соответственно 1ый это (+) а 26ой это (-). А вот ни фига!

Ну я как говоритьсо методом научного тыка натыкал вот что (+) как и был остаётсо на месте то есть 1ый pin а вот (-) становитсо на 37 pin и всё работает:)

2. Работает то работает, только вот загвоздка в том, что дисплей постоянно бегает то есть одно конкретное число не стоит постоянно!!! числа постоянно меняютсо при чём с периодичностью где то 3 раза в секунду.

Подскажите пожалуйста!!!!Что э этим делать?????

post-104977-1276639863,77_thumb.jpg

Edited by Кирилл84

Share this post


Link to post
Share on other sites

Этот чип питается двухполярным напряжением, т.е. +5v (выв.1) - -5v (GND выв.21) и +5v (GND выв.21) - -5v (выв. 26). Вывод 37 переключает м/с в режим "тест". Отрицательное плечо формируется преобразователем. Значит подключение питания (одной полярности), в данной схеме, должно быть таким - +5v (выв.1), -5v (выв.21).

Share this post


Link to post
Share on other sites

хорошо, спасибо за пояснение.

Сделал как ты написал. Поставил +5v (выв.1), -5v (выв.21).

на индикаторе показывает (-65.8......-62.5) сколько не крутил подстройку результат один и тот же. При чём эти показания прыгают как как и раньше с периодичностью 3 раза в секунду.

Когда подключаю сенсор [КТ 361] (кстати этот транзистор подходит???) то на табло просто загораетсо (-1 . ) вот так комбинация. соответственно подстройка ни каких результатов не даёт.

и ещё момент один: те выводы о которых я говорил ранее Т.Е. 1 и 37 они питаютсо от 9v а не от 5v

Share this post


Link to post
Share on other sites

Уважаемые, ну подскажите то где копать???? Чё делать то???

Как добитьсо стабильного показания???

Share this post


Link to post
Share on other sites

По сути, это вольтметр. Ищи проблемы в монтаже, к сожалению на той схеме не подписаны функции выводов микросхемы, поэтому можно только гадать где там что ...

Надо проверить опорное напряжение, если оно нестабильное - показания будут нестабильны.

Share this post


Link to post
Share on other sites

Может попробуешь собрать на отечественной 572ПВ2/5 ? На них по крайней мере есть читабельное описание (с принципом работы), готовые схемы (и вольтметры и термометры и чтонибудь еще). А так проверить нормальным вольтметром напряжения Vin+, Vin-. Вдруг они и правда не меняются? Можно еще проверить тактирование и опорное напряжение. Где все это на твоей микросхеме - хз.

Share this post


Link to post
Share on other sites

Join the conversation

You are posting as a guest. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

  • Similar Content

    • By Максим123456789
      делаю диплом, в схеме у меня микроконтроллер PIC16F688 и мне нужно его заменить на ATmega. Не могу найти похожий
    • By Anton Bondarenko
      Всем привет
      Прошу не ругать, впервые подобный вопрос задаю.
      Хочу сделать прибор, который будет посылать сигнал, когда возле прибора будет проходить металлический предмет. 
      — угол отслеживания до 30° а лучше прямая линия, траектория
      — время реакции очень высокое до 100 мс
      — ширина проема в котором нужно сканировать от 10 до 20метров,
      — передача сигнала через вифи
      Может есть готовые решения, или отдельные компоненты.
      Подскажите пжл в каком направлении искать.
      Смотрел датчики движения, но главная проблема — время реакции.
      Спасибо
       
    • By Sofia Vin
      Предлагаем проектную работу в Москве:
      Микроконтроллер STM32F103.
        
      Есть встроенный код с использованием функций библиотеки FreeRTOS, код имеет описанный протокол для связи с внешним миром.
        
      Необходимо проводить доработку кода под задачи программиста верхнего уровня и его тестирование в составе оборудования. 
      Работа в лаборатории (м.Университет) и удаленно. 
      Оплата по договоренности.
      Если Вы обладаете опытом схемотехнического проектирования и программирования микроконтроллеров, и Вас заинтересовала данная возможность, ждем Ваши отклики по контактным данным:
      8 (925) 023-60-02   Алексей
      E-mail: nassa@marathon.ru
       
    • By Антон Плюшкин
      В общем есть небольшая тривиальная задача - сделать свитюльку. Контроллер управляет светодиодиками, цвета меняются, людишки довольны.
      Схема проста: Attiny44a -> 2n3904 x3 -> RGB-светодиод.
      Собрал, протестил, всё норм, но!
      Как только в коде я использую функцию задержки - _delay_ms (util/delay.h) - контроллер повисает!
      #define F_CPU 16000000UL #include <avr/io.h> #include <util/delay.h> int main(void) { // Input/Output Ports initialization // Port A initialization // Function: Bit7=Out Bit6=Out Bit5=In Bit4=In Bit3=In Bit2=In Bit1=In Bit0=In DDRA=(1<<DDA7) | (1<<DDA6) | (0<<DDA5) | (0<<DDA4) | (0<<DDA3) | (0<<DDA2) | (0<<DDA1) | (0<<DDA0); // State: Bit7=0 Bit6=0 Bit5=T Bit4=T Bit3=T Bit2=T Bit1=T Bit0=T PORTA=(0<<PORTA7) | (0<<PORTA6) | (0<<PORTA5) | (0<<PORTA4) | (0<<PORTA3) | (0<<PORTA2) | (0<<PORTA1) | (0<<PORTA0); // Port B initialization // Function: Bit3=In Bit2=Out Bit1=In Bit0=In DDRB=(0<<DDB3) | (1<<DDB2) | (0<<DDB1) | (0<<DDB0); // State: Bit3=T Bit2=0 Bit1=T Bit0=T PORTB=(0<<PORTB3) | (0<<PORTB2) | (0<<PORTB1) | (0<<PORTB0); // Timer/Counter 0 initialization // Clock source: System Clock // Clock value: 16000,000 kHz // Mode: Phase correct PWM top=0xFF // OC0A output: Non-Inverted PWM // OC0B output: Non-Inverted PWM // Timer Period: 0,031875 ms // Output Pulse(s): // OC0A Period: 0,031875 ms Width: 0 us // OC0B Period: 0,031875 ms Width: 0 us TCCR0A=(1<<COM0A1) | (0<<COM0A0) | (1<<COM0B1) | (0<<COM0B0) | (0<<WGM01) | (1<<WGM00); TCCR0B=(0<<WGM02) | (0<<CS02) | (0<<CS01) | (1<<CS00); TCNT0=0x00; OCR0A=0x00; OCR0B=0x00; // Timer/Counter 1 initialization // Clock source: System Clock // Clock value: 16000,000 kHz // Mode: Ph. correct PWM top=0x00FF // OC1A output: Non-Inverted PWM // OC1B output: Disconnected // Noise Canceler: Off // Input Capture on Falling Edge // Timer Period: 0,031875 ms // Output Pulse(s): // OC1A Period: 0,031875 ms Width: 0 us // Timer1 Overflow Interrupt: Off // Input Capture Interrupt: Off // Compare A Match Interrupt: Off // Compare B Match Interrupt: Off TCCR1A=(1<<COM1A1) | (0<<COM1A0) | (0<<COM1B1) | (0<<COM1B0) | (0<<WGM11) | (1<<WGM10); TCCR1B=(0<<ICNC1) | (0<<ICES1) | (0<<WGM13) | (0<<WGM12) | (0<<CS12) | (0<<CS11) | (1<<CS10); TCNT1H=0x00; TCNT1L=0x00; ICR1H=0x00; ICR1L=0x00; OCR1AH=0x00; OCR1AL=0x00; OCR1BH=0x00; OCR1BL=0x00; // Timer/Counter 0 Interrupt(s) initialization TIMSK0=(0<<OCIE0B) | (0<<OCIE0A) | (0<<TOIE0); // Timer/Counter 1 Interrupt(s) initialization TIMSK1=(0<<ICIE1) | (0<<OCIE1B) | (0<<OCIE1A) | (0<<TOIE1); // External Interrupt(s) initialization // INT0: Off // Interrupt on any change on pins PCINT0-7: Off // Interrupt on any change on pins PCINT8-11: Off MCUCR=(0<<ISC01) | (0<<ISC00); GIMSK=(0<<INT0) | (0<<PCIE1) | (0<<PCIE0); // USI initialization // Mode: Disabled // Clock source: Register & Counter=no clk. // USI Counter Overflow Interrupt: Off USICR=(0<<USISIE) | (0<<USIOIE) | (0<<USIWM1) | (0<<USIWM0) | (0<<USICS1) | (0<<USICS0) | (0<<USICLK) | (0<<USITC); // Analog Comparator initialization // Analog Comparator: Off // The Analog Comparator's positive input is // connected to the AIN0 pin // The Analog Comparator's negative input is // connected to the AIN1 pin ACSR=(1<<ACD) | (0<<ACBG) | (0<<ACO) | (0<<ACI) | (0<<ACIE) | (0<<ACIC) | (0<<ACIS1) | (0<<ACIS0); ADCSRB=(0<<ACME); // Digital input buffer on AIN0: On // Digital input buffer on AIN1: On DIDR0=(0<<ADC1D) | (0<<ADC2D); // ADC initialization // ADC disabled ADCSRA=(0<<ADEN) | (0<<ADSC) | (0<<ADATE) | (0<<ADIF) | (0<<ADIE) | (0<<ADPS2) | (0<<ADPS1) | (0<<ADPS0); unsigned char VL_OCR0A = 0, VL_OCR0B = 0, VL_OCR1A = 0; OCR0A = 0; OCR0B = 0; OCR1A = 0; while(1) { _delay_ms( 100 ); VL_OCR0A = VL_OCR0A + 1; VL_OCR0B = VL_OCR0B + 1; VL_OCR1A = VL_OCR1A + 1; if( VL_OCR0A >= 250 ){ VL_OCR0A = 0; } if( VL_OCR0B >= 250 ){ VL_OCR0B = 0; } if( VL_OCR1A >= 250 ){ VL_OCR1A = 0; } OCR0A = VL_OCR0A; OCR0B = VL_OCR0B; OCR1A = VL_OCR1A; } } Т.е. если указать задержку в начале цикла, то светодиод не светится вообще.
      Если задержку убрать - светодиод немного подсвечивает всеми цветами.
      while(1) { _delay_ms( 100 ); // <--- ЗАДЕРЖКА --- VL_OCR0A = VL_OCR0A + 1; VL_OCR0B = VL_OCR0B + 1; VL_OCR1A = VL_OCR1A + 1; if( VL_OCR0A >= 250 ){ VL_OCR0A = 0; } if( VL_OCR0B >= 250 ){ VL_OCR0B = 0; } if( VL_OCR1A >= 250 ){ VL_OCR1A = 0; } OCR0A = VL_OCR0A; OCR0B = VL_OCR0B; OCR1A = VL_OCR1A; } Где я накосячил?
      З.Ы.: Замечаний по поводу оптимизации кода, излишних переменных и п.р. прошу не писать - изощряюсь как могу ибо не пойму почему не работает
    • Guest Денис
      By Guest Денис
      В общем, есть такое чудо китайской техники (фото)
      Что оно может:
      1. Заряжаться через microUSB порт
      2. Кнопка вкл/выкл, она же переключает режимы
      3. 3 режима свечения светодиода (он светит разными цветами)
      Что я хочу сделать:
      1. Пункты 1 и 2 выше
      2. Разнообразить количество режимов, переливание статичный цвет и тд...
      Вопрос: как это сделать? что купить?

      P.S. К сожалению, в гугле не нашел подробной инструкции, а я в электронике я дуб дубом


  • Сообщения

    • На нём написан максимальный ток заряда, а выдавать на разряд он может и побольше, особенно, если его закоротить, что ты и сделал. 
    • Как всегда, всё вытягивать надо. В час по чайной ложке. Исходную схему с PICом покажите. И функционал опишите: что и как делает схема, какие параметры контролирует и т.п. и т.д. Тогда и можно будет что то посоветовать. А пока, как выше и сказали, даже тиньки 2313 может хватить. Кст, программу тоже будете писать? Программа для PIC и Atmega - это две большие разницы.
    • Только так - брать с собой в магазин и примерять. Ибо ни марок, ни посадочных размеров никто не знает, в т.ч. и продавец в магазине.
    • Все, кто ставил себе предпусковые подогреватели знает, что нужна небольшая помпа для циркуляции антифриза, лучше бесщеточный.  Зарядник подключить навсегда к АКБ через диод Шоттки, чтобы аккум не разряжался через него.  Чтобы вентилятор подключить напрямую к АКБ без включения зажигания, нужно перехватывать релюшкой два провода, так один идет на зажигание, а второй на ШИМ регулятор или набор добавочных резисторов. 
    • Причин может быть туча. Если не получилось вылечить монитор с наскока, то надо уже бросить "ковровую бомбардировку" и подойти к решению задачи как и рекомендует форум, например, прикрепить схему, чтобы можно было хоть что то посоветовать.  
    • Согласно формулам расчёт оптимального фи прогой Спикербокс для альфы даёт Vb=2373,54л, Fз=Fb=13.1гц, Dv=15см, Lv=1.82см. Т.е двухкубовый с лишним ящик с трубой инвертора диаметром 15см, длинной 1.8см с настройкой резонанса по уровню -3дб на 13.1гц. Причём на ачх всё равно будет выброс и звучание будет хреновым.  Если не верите то посмотрите вот этот вариант фвч Беселя  http://petoindominique.fr/php/mysql_br.php и обратите внимание на задир 4дб даже а шести кубовом объёме. Для его избавления потребуется делать персональный корректор LR четвёртого порядка и настраивать до линейной ачх. Альфа в щите  соизмеримых размеров будет иметь ачх без выброса. Для рекомендованного объёма фи до 177л лучше подходит Каппа. Сравните её ачх в 160.7 литрах при резонанке 30.6гц http://petoindominique.fr/php/mysql_br.php вот этот саб будет играть идеально и по УЗД в зоне 30-40гц уделает любой щит с шириками. Теперь просчитаем рекомендованный зя 85л. Резонанка в таком ящике Fc= 41×sqrt (1+260/85)=82.6 Добротность резонанки Qtc=1.26×sqrt(1+260/85)=2.538.  Гарантирую, что такая добротность даст очень заметный на слух выброс ачх 20log(2.538)=8дб т.е будет бубнить на частоте 82.6гц и без прослушивания готового изделия. Рекомендованый фи 177л будет бунякать ещё хлеще и звучать ещё отвратнее. В итоге после таких вот "рекомендаций горе-рекомендаторов" соблюдателям подобных рекомендаций, в том чисое и вам, не нравится ао типа зя/фи. Прослушав правильно сделанный фи/зя вы измените своё мнение как к этим типам ао так и к своим щитам. Что касаемо моих наработок в моей теме. Во первых, тема есть, но на другом форуме. И свои изделия показывал в соответствующей теме. Во вторых, я не нуждаюсь а оценке своего труда в соц.сетях. И главное- не пиарю свои наработки с целью окучивания лохов. В отличии от доски с шириками, мои SG скопировать и повторить невозможно. Как повторить изделия Adamson, L-Acoustics, WisdomAudio, GemmeAudio, Bosendorfer и многих других.
  • Покупай!

×
×
  • Create New...