Bsrr что это. BSRR и ODR: оптимизация работы с GPIO на микроконтроллерах STM32

Что такое регистры BSRR и ODR в микроконтроллерах STM32. Как они используются для управления выводами GPIO. В чем преимущества BSRR перед ODR при работе с портами ввода-вывода. Какие особенности нужно учитывать при программировании GPIO на STM32.

Содержание

Что такое регистры BSRR и ODR в микроконтроллерах STM32

BSRR (Bit Set/Reset Register) и ODR (Output Data Register) — это два важных регистра, используемых для управления выводами общего назначения (GPIO) в микроконтроллерах семейства STM32. Рассмотрим подробнее, для чего они нужны и как работают:

Регистр ODR (Output Data Register)

ODR — это 16-битный регистр, который хранит текущее состояние выходов GPIO порта. Каждый бит ODR соответствует одному выводу порта:

  • 0 в бите ODR означает низкий уровень на выводе
  • 1 в бите ODR означает высокий уровень на выводе

Для изменения состояния вывода через ODR нужно записать новое значение в соответствующий бит. При этом изменятся все биты, которые отличаются от текущего значения ODR.


Регистр BSRR (Bit Set/Reset Register)

BSRR — это 32-битный регистр, который позволяет атомарно устанавливать или сбрасывать отдельные биты GPIO порта. Он разделен на две 16-битные части:

  • Младшие 16 бит (0-15) используются для установки выводов в 1
  • Старшие 16 бит (16-31) используются для сброса выводов в 0

Запись 1 в соответствующий бит BSRR приводит к немедленному изменению состояния вывода, не затрагивая другие выводы порта.

Основные преимущества использования BSRR вместо ODR

Регистр BSRR имеет ряд важных преимуществ перед ODR при работе с GPIO:

1. Атомарность операций

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

2. Скорость работы

Запись в BSRR выполняется за один машинный цикл, что быстрее, чем операция чтения-модификации-записи для ODR.

3. Безопасность в многозадачных системах

Атомарность BSRR делает его более безопасным для использования в многозадачных системах, где несколько задач могут одновременно обращаться к GPIO.


4. Упрощение кода

BSRR позволяет установить или сбросить вывод одной операцией записи, что упрощает код по сравнению с манипуляциями с ODR.

Как использовать BSRR для управления GPIO на STM32

Рассмотрим примеры использования регистра BSRR для управления выводами GPIO:

Установка вывода в высокое состояние

Для установки вывода 5 порта GPIOA в высокое состояние используется следующий код:

«`c GPIOA->BSRR = GPIO_BSRR_BS5; «`

Сброс вывода в низкое состояние

Для сброса вывода 5 порта GPIOA в низкое состояние используется код:

«`c GPIOA->BSRR = GPIO_BSRR_BR5; «`

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

Сравнение производительности BSRR и ODR

Давайте сравним производительность операций с использованием BSRR и ODR:

Изменение состояния вывода через ODR

«`c // Чтение текущего состояния uint16_t odr = GPIOA->
ODR; // Инвертирование бита 5 odr ^= GPIO_ODR_ODR5; // Запись обратно в ODR GPIOA->ODR = odr; «`

Этот код требует трех операций: чтение, модификация и запись.


Изменение состояния вывода через BSRR

«`c // Установка вывода 5 в высокое состояние GPIOA->BSRR = GPIO_BSRR_BS5; // Сброс вывода 5 в низкое состояние GPIOA->BSRR = GPIO_BSRR_BR5; «`

Каждая операция с BSRR выполняется за один цикл записи, что значительно быстрее.

Особенности использования BSRR в прерываниях

При работе с GPIO в обработчиках прерываний BSRR имеет особое значение:

  • Атомарность операций BSRR гарантирует, что прерывание не приведет к нежелательному промежуточному состоянию выводов
  • Скорость выполнения операций BSRR позволяет минимизировать время обработки прерывания
  • Отсутствие необходимости в операциях чтения-модификации-записи снижает риск конфликтов при доступе к GPIO из разных частей программы

Пример использования BSRR в обработчике прерывания:

«`c void EXTI0_IRQHandler(void) { // Проверка флага прерывания if (EXTI->PR & EXTI_PR_PR0) { // Переключение светодиода на PA5 GPIOA->BSRR = GPIOA->ODR & GPIO_ODR_ODR5 ? GPIO_BSRR_BR5 : GPIO_BSRR_BS5; // Сброс флага прерывания EXTI->PR = EXTI_PR_PR0; } } «`

Оптимизация кода при работе с несколькими выводами GPIO

При необходимости одновременного управления несколькими выводами GPIO, BSRR позволяет выполнить это одной операцией:


«`c // Установка выводов 0, 2, 4 в высокое состояние и сброс выводов 1, 3, 5 в низкое GPIOA->BSRR = (GPIO_BSRR_BS0 | GPIO_BSRR_BS2 | GPIO_BSRR_BS4 | GPIO_BSRR_BR1 | GPIO_BSRR_BR3 | GPIO_BSRR_BR5); «`

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

Потенциальные проблемы при неправильном использовании BSRR

Несмотря на преимущества BSRR, существуют некоторые моменты, которые нужно учитывать:

1. Отсутствие обратной связи

BSRR не позволяет прочитать текущее состояние выводов. Если необходимо знать состояние до изменения, нужно использовать регистр IDR (Input Data Register).

2. Риск конфликтов при одновременной установке и сбросе

Если в одной операции записи в BSRR установить биты и в нижней, и в верхней половине для одного вывода, результат может быть неопределенным. Например:

«`c // Неопределенное поведение! GPIOA->BSRR = GPIO_BSRR_BS5 | GPIO_BSRR_BR5; «`

Такой код следует избегать, так как результат зависит от конкретной реализации микроконтроллера.


Заключение: когда использовать BSRR, а когда ODR

Подводя итоги, можно сформулировать следующие рекомендации:

  • Используйте BSRR для быстрого и атомарного изменения состояния отдельных выводов или групп выводов
  • Применяйте BSRR в критичных ко времени операциях и обработчиках прерываний
  • Используйте ODR, когда необходимо одновременно считать и изменить состояние всего порта
  • При работе с ODR будьте внимательны в многозадачных системах, используйте механизмы синхронизации

Правильное использование регистров BSRR и ODR позволит оптимизировать работу с GPIO в проектах на базе микроконтроллеров STM32, повысить производительность и надежность кода.


русский | BSR

Hauptinhaltsbereich

Берлинская служба „БСР“ (нем. Berliner Stadtreinigung (BSR)) предоставляет услуги по вывозу бытового мусора для двух миллионов домашних хозяйств. Кроме того, мы следим за чистотой на городских улицах, тротуарах и площадях, а зимой обеспечиваем безопасность на проезжей части дорог. На этом сайте мы проинформируем вас о том, как в Берлине организованы сортировка и утилизация отходов.

Серый мусорный бак для бытовых отходов

К бытовым отходам относятся все неперерабатываемые или трудно перерабатываемые отходы. Несмотря на эти качества  данный вид мусора отнюдь не бесполезен. То, что оказывается в сером мусорном баке, мы на нашем современном заводе по переработке отходов превращаем в «зеленую» энергию и экологически чистое тепло.

Это можно выбрасывать в серый бак:

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

посуду, зеркала и оконное стекло

мешки для пылесоса, сор

грязную или мелованную бумагу, пленку, фотографии

обрывки/остатки обоев, засохшую краску

золу, пепел и окурки

Это нельзя выбрасывать в серый бак:

изделия из пластмассы, напр. пластиковые стаканчики или бутылки, а также из металла и полимерных материалов (для этого используется желтый бак для ценного вторичного сырья)

стаканы, бутылки (для этого используется бак для стеклянной тары)

бумагу, картон (для этого используется бак для бумаги)

пищевые отходы, кофейная гуща (для этого используется бак для органических отходов)

батареи и аккумуляторы

бытовую технику

— вредные вещества

строительный мусор

крупногабаритный мусор

Бак для органических отходов

Бак с коричневой крышкой (нем. Biotonne) используется для утилизации органических отходов. Это способствует охране окружающей среды, защите климата и щадит ваш  кошелек. Утилизируя этот вид мусора мы производим компост и биогаз. Произведенный таким образом биогаз заменяет 2,5 миллиона литров дизельного топлива в год, а остатки продуктов брожения используются вместо химических удобрений.

Это можно выбрасывать в бак для органических отходов:

пищевые отходы, в том числе остатки готовой пищи (можно завернуть в газету)

просроченные или пропавшие продукты (без упаковки)

остатки фруктов и овощей, кожура, а также цитрусовые

кофейная гуща, фильтры, чайная заварка, пакетики с чаем, яичная скорлупа

бумажные полотенца

скошенная трава, ветки, листва, цветы (для этого также используются мешки для листвы BSR)

Это нельзя выбрасывать в бак для органических отходов:

— пластмассу, упаковку, пленку, пакеты

металл, алюминиевую фольгу, консервные банки

гигиенические принадлежности, подгузники, мешки для пылесосов

текстиль, кожу

подстилки для кошек и мелких животных

обработанную древесину, золу

землю, песок, гравий, камни

Оранжевый или желтый мусорный бак

Бак для ценного вторичного сырья предназначен для утилизации упаковки и других предметов из металла, пластика или полимерных материалов.

В Берлине для этих целей используются такие мусорные баки желтого или оранжевого цвета. Оба варианта предназначены для одного и того же вида отходов.

Каждый, кто правильно сортирует вторсырье (упаковку, кастрюли, лейки, консервные  банки), способствует вторичной переработке. Это экономит дефицитное сырье, такое как нефть или железная руда, и защищает климат. В Берлине утилизацией вторсырья занимаются компании ALBA и BSR.

Это можно выбрасывать в оранжевый или желтый бак:

стаканчики, например для йогурта, маргарина

пластиковые бутылки, например для моющих и чистящих средств

предметы обихода, например лейки, пластмассовые миски, игрушки

различные виды плёнки, например упаковочная плёнка, полиэтиленовые пакеты

пенопласт, например миски из пенопласта для продуктов питания

жестяные банки для напитков, консервные банки, пробки для бутылок

кастрюли, инструменты, столовые приборы, шурупы

фольгу, крышки, оболочки из алюминия

картонная упаковка для напитков

Это нельзя выбрасывать в оранжевый или желтый бак:

бытовые электроприборы

энергосберегающие лампы

батарейки

текстильные изделия

накопители данных

древесину

бумагу

стекло

вредные вещества

Синий бак для макулатуры

Макулатура является важным сырьем. Правильно отсортированная макулатура помогает сохранить такие природные ресурсы, как древесина и вода. В одном только Берлине сбор и переработка картона и бумаги экономят больше древесины каждый год, чем ее мог бы дать лесной массив Грюневальд.

Это можно выбрасывать в синий бак:

газеты, журналы, картонные коробки, картон

бумажную упаковку

брошюры, каталоги

книги, тетради, писчую бумагу

Это нельзя выбрасывать в синий бак:

обрывки / остатки обоев

грязную бумагу

мелованную бумагу (восковую, графическую или фотобумагу)

копирку

Баки и контейнеры для стекла

Старое стекло может быть полностью переработано. Его можно плавить так часто, как это необходимо, без потери качества и перерабатывать в новые бутылки, ёмкости и стаканы.  Ополаскивать стаканы и бутылки не нужно. Обратите внимание на правильное разделение белого, зеленого и коричневого стекла. Это важно для последующего процесса переработки.

Это можно выбрасывать в баки и контейнеры для стекла:

бутылки, например для сока, вина, уксуса

банки, например для мармелада или детского питания

банки для консервирования

стеклянную упаковку

флаконы для парфюмерии

медицинские флаконы

Это нельзя выбрасывать в баки и контейнеры для стекла:

лампы накаливания или энергосберегающие лампы

посуду, фарфор и керамику

осколки оконного стекла или зеркал

хрусталь

Крупногабаритный мусор

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

Где? На одном из наших утилизационных пунктов. Вы также можете поручить нам забрать у вас крупногабаритный мусор. По дешевому тарифу это обойдется вам в 50 евро. Дополнительную информацию можно найти здесь.

К крупногабаритному мусору относятся:

  • разобранная крупная и небольшая мебель
  •  ковры, матрацы
  • деревянные предметы домашнего обихода
  • металлолом, например, старые велосипеды, коляски и тому подобное
  • ламинат, дверные коробки, дверные полотна и пластиковые оконные рамы (без стекла)
  • предметы из пластика, такие как желоба, трубы, бачки и ванны
  • бытовая техника
  • б/у текстиль (в мешках)
  • бытовые отходы, такие как мусор, оставшийся после ремонта в мешках или коробках (в ограниченном объеме)

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

  • Обзор используемых мусорных баковPDF-Dokument (0,43 MB)

Регулятор стежков BERNINA (BSR – Bernina Stitch Regulator)

В 2015 г. исполняется 10 лет лапке (BSR) — изобретению? позволившему делать свободную стежку на бытовой швейной машине. Данное изобретение было запатентовано и является уникальным дополнительным приспособлением для бытовой швейной машины.
Лапка-регулятор стежков BSR была разработана и создана в швейцарском головном офисе инженерами BERNINA всего за 18 месяцев, была выпущена на рынок в 2007 году и вскоре после выпуска получила награду: швейцарский деловой журнал «BILANZ» и консалтинговая фирма «A.T. Kearney» назвали компанию BERNINA с ее регулятором стежков одним из трех победителей в конкурсе лучших нововведений «Best Innovator».

От идеи к лапке BSR

Лучшие идеи, так или иначе, возникают в команде, и их реализация в виде успешных продуктов – тоже работа команды. Инновационная команда BERNINA состоит из разработчиков, инженеров, инспекторов по качеству, тестеров и экспертов рынка. Обратная связь с нашими клиентками всегда играет большую роль и потому постоянно поддерживается.

Специалисты BERNINA сразу поняли, что начавшаяся в США мода на квилты скоро достигнет и Европы. Наиболее часто упоминаемая сложность в изготовлении квилта – свободно прошитые швы (стёжка), владение которыми требует большого опыта и мастерства. Только очень искусные швеи могли сшить настоящий пэчворк из нескольких слоев, используя традиционный квилтинг – свободные машинные стежки, и получить в результате красивый равномерный узор.

Следуя моде и пожеланиям клиентов, BERNINA поставила перед собой задачу упростить свободную стёжку и сделать эту технику более доступной для любителей шитья. Всего за 18 месяцев разработки был создан компьютеризированный регулятор стежков BERNINA, который сразу же стал хитом продаж среди аксессуаров BERNINA – и не только в США!

Вдохновленная любительницами квилтов и художницами, команда BERNINA произвела маленькую сенсацию: лапку, которая при помощи датчиков распознает скорость движения ткани и подстраивается к ней. В последнее время декораторы интерьеров и портные открыли для себя, сколько идей можно осуществить с помощью BSR. Украшения на одежде, аппликации, декоративные элементы… По своей универсальности BSR не сравнится ни с каким другим аксессуаром!

Что такое BSR?

Регулятор стежков BERNINA представляет собой уникальную принадлежность BERNINA и является больше, чем просто прижимной лапкой — это комплексная система. Поэтому после длительных проектно-конструкторских работ, выполненных компанией BERNINA, лапка BSR была запатентована как уникальный инновационный продукт и на сегодняшний день не имеет аналогов на рынке.

Лапка BSR позволяет выполнять шитье свободным швом при отключенном нижнем транспортере. Пользователь может выполнять шов в любом направлении, что значительно расширяет возможности творчества. Регулятор стежков BERNINA позволяет любой любительнице шитья — от новичка до опытной швеи — освоить технику шитья свободным швом! Лапка BSR позволяет пользователю целиком и полностью сосредоточиться на реализации своих творческих замыслов. Необходимо задать только направление шитья — все остальное сделает система BSR.

Результат: креативное оформление текстильных изделий наивысшего качества! Попробуйте сами. Система BSR при шитье свободным швом, которое становится все более популярным, выполняет компенсацию непостоянной скорости шитья, которая обусловлена свободной подачей ткани. Каждый стежок при шитье свободным швом благодаря лапке BSR получается одинаковой длины, выглядит красивым и правильным.

Ранее при шитье свободным швом без использования технологии BSR пользователю приходилось контролировать все самостоятельно! При отключенном нижнем транспортере ткань должна была смещаться равномерно, а направление и скорость шитья необходимо было постоянно регулировать; равномерный стежок получался только у того, кому удавалось контролировать все это сложное взаимодействие.

Регулятор стежков BERNINA — уникальный патент компании BERNINA для шитья свободным швом! То, что было возможным только с использованием промышленных швейных машин, теперь доступно и для простых любительниц шитья с помощью единственного в своем роде в мире регулятора стежков BERNINA с компьютерным управлением – BSR! После установки лапки BSR на швейную машину BERNINA, совместимую с системой BSR, на дисплее машины отображаются доступные для выбора режимы. Лапка BSR может использоваться для шитья как прямым стежком, так и зигзагом. В обоих случаях можно создавать интересные эффекты.

Как функционирует BSR с технической точки зрения?

Лапка BSR «наблюдает» с помощью лазера за поверхностью ткани под прижимной лапкой аналогично беспроводной компьютерной мыши. Сенсор передает всю информацию на швейную машину по мере перемещения ткани. Швейная машина рассчитывает необходимую скорость шитья для получения стежков одинаковой длины. При медленном перемещении ткани необходима низкая скорость иглы. При более быстром перемещении скорость иглы также повышается. Таким образом, система автоматически регулирует скорость в соответствии со скоростью работы швеи.

Свободная вышивка

При использовании этой техники, совсем как в живописи, создается настоящая картина. Нить заменяет краску, игла заменяет кисть. С помощью техники BSR можно проводить тонкие четкие линии в любом направлении – ещё никогда не было так легко разрисовать поверхность! В конечном счете, вышитые изображения обладают такой же глубиной, как и нарисованные. Красивые эффекты также достигаются сознательным неравномерным заполнением плоскости. Такая вышивка выглядит легко и современно.

Объемная вышивка – или трехмерные эффекты

Этот прекрасный эффект достигается шитьем с двойной иглой и лапкой BSR. В двойную иглу вставляются нити одинакового цвета, однако, одна более светлого тона, а другая – более темного. Благодаря этому при шитье возникают объемные, или трехмерные эффекты.

При использовании любой техники не играет никакой роли, будете ли Вы использовать прямые или зигзагообразные стежки – регулятор стежков BERNINA отличается точностью и обеспечивает равномерную длину стежков.

# Обзоры

brr — Викисловарь

  • 1.1 Альтернативные формы
  • 1.2 Произношение
  • 1.3 Междометие
    • 1.3.1 Переводы
  • 2 голландский
    • 2.1 Произношение
    • 2.2 Междометие
      • 2.2.1 Синонимы
  • 3 немецкий
    • 3.1 Произношение
    • 3.2 Междометие
    • 3.3 Дополнительная литература
  • 4 Венгерский
    • 4.1 Альтернативные формы
    • 4.2 Этимология
    • 4.3 Произношение
    • 4.4 Междометие
    • 4.5 Каталожные номера
    • 4.6 Дополнительная литература
  • 5 итальянский
    • 5. 1 Междометие
  • 6 польский
    • 6.1 Этимология
    • 6.2 Произношение
    • 6.3 Междометие
    • 6.4 Дополнительная литература
  • 7 Румынский
    • 7.1 Этимология
    • 7.2 Междометие
  • English[edit]

    Alternative forms[edit]

    • brrr

    Pronunciation[edit]

    • Audio (UK) (file)
    • (естественно) IPA (ключ) : [ʙ̩ː]
    • (разговорный) IPA (ключ) : /bɝ/
      • Омофоны: Бурр, Бурр, Бурр
      • Рифмы: -ɜː(ɹ)

    Междометие[править]

    брр

    1. Используется для выражения холода, озноба.
    2. Выражение отвращения или отвращения, как будто дрожь.
    Переводы
    • Чешский: brr (cs)
    • Голландский: brr (nl)
    • Финский:
    • hrr
    • Немецкий: brr (de)
    • Греческий: μπρρ (эл) (брр)
    • Ирландский:
      Старый ирландский: fuit
    • Итальянский: брр
    • Польский: brr, pru (pl)
    • Русский: бр-р (ru) (br-r)
    • Swedish: brr

    Pronunciation[edit]

    • Audio (file)
    • IPA (ключ) : /brː/

    Междометие[править]

    брр

    1. брр (возглас холода)
    2. an exclamation of disgust or aversion
    Synonyms[edit]
    • ( both senses ) hu

    Pronunciation[edit]

    • Audio (file)

    Междометие[править]

    брр

    1. брр (возглас холода)
    2. an exclamation of disgust or aversion

    Further reading[edit]

    • “brr” in Duden online

    Hungarian[edit]

    Alternative forms[edit]

    • brrr

    Etymology[ редактировать]

    Звукоподражание. [1]

    произношение

      9 brr в Зайче, Габор (ред.). Etimológiai szótár: Magyar szavak és tellalékok erete («Словарь этимологии: происхождение венгерских слов и аффиксов»). Будапешт: Тинта Конивкиадо, 2006 г., → ISBN. (См. также его 2-е издание.)

    Дальнейшее чтение

    A magyar nyelv értelmező szótára («Толковый словарь венгерского языка»). Будапешт: Академия Киадо, 1959–1962. Пятое изд., 1992: → ISBN
  • брр в Итцесе, Нора (ред.). A magyar nyelv nagyszótára («Полный словарь венгерского языка»). Будапешт: Akadémiai Kiadó, 2006–2031 (в разработке; опубликовано A – ez по состоянию на 2023 г.)

  • Итальянский

    1. брр

    Этимология[править]

    Звукоподражания.

    Произношение[править]

    • IPA (ключ) : /brr/
    • Слоговая система: брр

    Междометие

    брр

    1. брр! (в ответ на холод или что-то грубое)
      Синоним: pru

    Дальнейшее чтение

  • brr в польских словарях PWN

  • румынский[править]

    Этимология

    Звукоподражания.

    Междометие[править]

    брр

    1. brr

    Что означает BRR?

    Аббревиатура » Термин

    Термин » Аббревиатура

    Слово в термине

    #ABCDEFGHIJKLMNOPQRSTUVWXYZ НОВЫЙ

    Термин

    Определение

    Опции

    Рейтинг

    BRR

    Барра, Великобритания

    Коды аэропортов0007

    Rate it:
    BRR

    Bike Ride to Rippey

    Sports » Cycling

    Rate it:
    BRR

    Bootheel Regional Rail Corporation

    Региональные » Железные дороги

    Оценить:

    Bylaws Resolutions And Recommendations

    Community » Non-Profit Organizations

    Rate it:
    BRR

    Barrett Resource Corporation

    Business » NYSE Symbols

    Оценить:
    BRR

    Buck Rope Race

    Спорт » Гонки

    Rate it:
    BRR

    Bylaws Resolutions And Recommend

    Miscellaneous » Unclassified

    Rate it:
    BRR

    Balanced Repeated Replication

    Academic & Science » Математика

    Оценить:
    BRR

    Blending Revival Records

    Miscellaneous » Unclassified

    Rate it:
    BRR

    Bradfield Richards Rhodes

    Miscellaneous » Unclassified

    Оценить:
    BRR

    Черная корневая гниль

    Разное » Неклассифицировано

    Rate it:
    BRR

    Baldani Rowland and Richardson

    Miscellaneous » Unclassified

    Rate it:
    BRR

    Создание устойчивых регионов

    Разное » Unclassified

    Оценить:
    BRR

    Bad Response to Refrigeration

    Miscellaneous » Unclassified

    Rate it:
    BRR

    Business Rockafeller Road

    Business

    Оценить:
    BRR

    Базовые пробеги

    Разное » Неклассифицировано

    Rate it:
    BRR

    Budros Ruhlin Roe

    Miscellaneous » Unclassified

    Rate it:
    BRR

    Black Rhino Ranger

    Разное » Unclassified

    0108

    Blue Ridge Region

    Miscellaneous » Unclassified

    Rate it:
    BRR

    Borriana / Burriana

    Regional » Cities

    Оценить:
    BRR

    Bull Run Run

    Разное » Unclassified

    Rate it:
    BRR

    Boise Regional REALTORS

    Regional — and more. ..

    Rate it:
    BRR

    Контрольные записи.0007

    Miscellaneous » Unclassified

    Rate it:
    BRR

    Bureau of Radio Regulation

    Governmental » Bureaus

    Rate it: