Перейти к содержанию

Составные Части Мк Avr


retcom

Рекомендуемые сообщения

Привет! Подскажите, пожалуйста:

1. Для UARTа, скорость передачи, в бодах, ставить в зависимости от каких факторов?

2.

char c;
if(UCR & 0x80) // если УАРТ принял символ от ПК...
с=UDR //сохраним его в переменной "с"

Все символы, по одному, проходят через UDR?

3.

const char SOME_STRING[] PROGMEM = "My_string.\r\"; //добавляем строку во flash память.

Как ее от туда вытащить?

И еще вопросы, может кто знает:

1. Как на асме обратиться к жесткому диску?

2. Как определить емкость конденсатора, чтобы он не пропускал ток определенной НЧ?

Ссылка на комментарий
Поделиться на другие сайты

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

по идее да символ = байт передача идет по 1 байту ... тоесть строка передается посимвольно

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

в каком плане вытащить ? код создает в памяти константу под именем SOME_STRING[] содержанием My_string.\r\

сопротивление конденсатора переменному току определяется по формуле 1/W*C, где W - циклическая частота 2пи умножить на обычную частоту если память не изменяет, а C - емкость... вот и считай... но получится не полное непропускание а затухание.. еще лучше организвоать его фильтром порядка повыше .. хотя это когда как....

«Как сердцу выразить себя? … Мысль изреченная есть ложь!»

Ссылка на комментарий
Поделиться на другие сайты

скорсоть с двух сторон должна быть одинакова это рас, и два она зависит от частоты задающего генератора мк

Мне интересно ну например скорость 9600 бод я поставил. Вот почему я ее поставил такую, а не другую,а?

Скорость одинакова у компа и у моего девайса? Как узнать тогда с какой скоростью комп шлет мне символы?

Скорость зависит от частоты задающего генератора, это по максимуму. Я и менбше могу запрограммиравать если мне надо.

Про флэш: Я говорю, ячто кинул стоку в во флэш память, дополнительную. Теперь мне надо ее от туда вытащить. Как это сделать? Кодом?

Про хард: просто захотелось мне написать драйвер харда. Вот и спрашиваю, Какие прерывания и функции на асме отвечают за это. А?

Ссылка на комментарий
Поделиться на другие сайты

  • 2 недели спустя...

Сравнительное тестирование аккумуляторов EVE Energy и Samsung типоразмера 18650

Инженеры КОМПЭЛ провели сравнительное тестирование аккумуляторов EVE и Samsung популярного для бытовых и индустриальных применений типоразмера 18650. 

Для теста были выбраны аккумуляторы литий-никельмарганцевой системы: по два образца одного наименования каждого производителя – и протестированы на двух значениях тока разряда: 0,5 А и 2,5 А. Испытания проводились в нормальных условиях на электронной нагрузке EBD-USB от ZKEtech, а зарядка осуществлялась от лабораторного источника питания в режиме CC+CV в соответствии с рекомендациями в даташите на определенную модель. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

Я извиняюсь, я наверно спросил непонятно. Исправляю ошибку:

строка кода добавляет массив в постоянную память:

const char SOME_STRING[] PROGMEM = "My_string.\r\"; //добавляем строку во flash память.

1. Теперь, как мне эту строчку затребовать назад? Или вывести на экран ЖК?

2. Постоянная память как-то разделяется ведь на сектора? Значит есть разметка? Про это можете немного рассказать?

Уточните, пожалуйста, формула R=1/W*C, где W, есть циклическая частота, которая складывается из f*2PI?

Я правильно понял?

Ссылка на комментарий
Поделиться на другие сайты

Новый аккумулятор EVE серии PLM для GSM-трекеров, работающих в жёстких условиях (до -40°С)

Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре. 

Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств. Подробнее параметры и результаты тестов новой серии PLM по ссылке.

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

const char SOME_STRING[] PROGMEM = "My_string.\r\"; //добавляем строку во flash память.

1. Теперь, как мне эту строчку затребовать назад? Или вывести на экран ЖК?

С этой строкой работаете так же, как и с обычным массивом.

----------------------------------

char c;

c = SOME_STRING[0]; //0,1,2...

//тут с = 'М'

----------------------------------

На ЖКИ можно вывести циклом посимвольно, предварительно узнав размер строки.

захотелось мне написать драйвер харда. Вот и спрашиваю, Какие прерывания и функции на асме отвечают за это. А?

Если коротко, то ответ - никакие. И вообще смотря какой хард - сейчас вон их сколько развелось ;)

Если по существу - в инете видел проекты, где IDE-винты подключали к PIC-ам. Их суть, смысл а также ссылки уже не помню. Помню только прикольные фотки этих девайсов ;)

Если по теме - сначала лучше разберитесь с азами.

Изменено пользователем error2
Ссылка на комментарий
Поделиться на другие сайты

Литиевые батарейки и аккумуляторы от мирового лидера  EVE в Компэл

Компания Компэл, официальный дистрибьютор EVE Energy, бренда №1 по производству химических источников тока (ХИТ) в мире, предлагает продукцию EVE как со склада, так и под заказ. Компания EVE широко известна в странах Европы, Америки и Юго-Восточной Азии уже более 20 лет. Недавно EVE была объявлена поставщиком новых аккумуляторных элементов круглого формата для электрических моделей «нового класса» компании BMW.

Продукция EVE предназначена для самого широкого спектра применений – от бытового до промышленного. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

Понятно. Единственно, что осталось:

значит размечать постоянку не надо? или нельзя?

Если нельзя, значит этот процесс уже вшит?

Если можно, но не делается явно, значит разметка создается автоматически? По имени указателя, указывающего на набор байт?

Ссылка на комментарий
Поделиться на другие сайты

  • 2 недели спустя...
  • 1 месяц спустя...

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

1. В коде, дополнительно, дублировать инициализацию частей МК учавствующих в работе?

2. Таймеры/счетчики. В каждом МК их несколько. Если по функциональности, при каких обстоятельствах задействовать тот или иной? Что делает Т/С? Какая его оснавная функция?

3. Какова функция ШИМ и в зависимости от каких нужд используется?

Ссылка на комментарий
Поделиться на другие сайты

Здравствуйте! ПОЖАЛУЙСТА, ответьте на вопросы! Вы не отвечаете, думаете, что я ленивый? НЕТ! :huh: Это не так! :huh: Я читаю много литературы по МК. Вопросы какие я задаю, это общие вопросы, они нужны мне, как стенам нужен фундамент. Мне нужно связать все общности. Я ведь конкретику не спрашиваю, я ее сам постигаю, пожалуйста! :huh:

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

1. В коде, дополнительно, дублировать инициализацию частей МК учавствующих в работе?

2. Таймеры/счетчики. В каждом МК их несколько. Если по функциональности, при каких обстоятельствах задействовать тот или иной? Что делает Т/С? Какая его оснавная функция?

3. Какова функция ШИМ и в зависимости от каких нужд используется?

Добовляю новые вопросы. :rolleyes: , Поверте, Вы от меня не отделаетесь.

Маска прерывания - как это понять?

Что такое маска перрывания, как используется?

Нарастающий фронт, ниспадающий фронт:

При каких условиях возникает, где используется, что дает разработчику использование этого?

Что можно делать с таймером/счетчиком?

Регистр совпадения таймера/счетчика.

Какую функцию выполняет?

Синхронный режим и асинхронный режим Т/C.

Чем отличаются? При каких условиях пользоватся тем или иным?

Ссылка на комментарий
Поделиться на другие сайты

1. непонятно.

2. таймер/счётчик, судя по названию, может выполнять две функции: это либо таймер, либо счётчик событий.

В любом случае это некое двоичное слово разрядности N (обычно 8 или 16 бит), и свойства его программируются через регистр управления им.

Что это будет? Таймер, счётчик, какие ситуации будут возникать при переполнении слова (достижения им заданного пользователем значения), какова реакция на внешнее событие, и многое прочее, зависит от внутренней организации т/с внутри МК. Всё это выясняется из даташита.

Соответственно, в зависимости от задачи выбирается режим работы т/с. Отмерять промежутки времени, или подсчитывать внешние события - всё на твоё усмотрение.

3. ШИМ - широтно-импульсная модуляция. Другими словами ты можешь управлять скважностью периодического сигнала. Версий управления ШИМом в одном МК может быть несколько.

Допустим таймер это 8-битное слово TIME, синхронизация - внутренняя, период сигнала равен длительности изменения TIME от 0 до переполнения.

Ширина импульса за период задается словом END. Выход ШИМ - бит-порт Z. Изначально TIME=0.

Вот эквивалентный алгоритм (неточный но поясняющий):

3.1 Z:=1;

3.2 TIME:=TIME+1;

3.3 if TIME=END then Z:=0;

3.4 if TIME<>256 then goto 3.2

3.5 TIME:=0

3.6 goto 3.1

4. Маска прерывания нужна для того, чтобы маскировать прерывания. Регистр управления разрешениями прерываний это и есть маска. Хочешь запретить прерывание - накладываешь на него маску (сбрасываешь соотв. управляющий бит). Бывают маскируемые и немаскируемые прерывания.

5. Передний фронт, задний фронт. Он есть у периодического сигнала. Везде используется. Хоть считай их, хоть синхронизируйся от них.

6. с Т/С можно делать ВСЁ! Запрограммируй его и жди от него прерывания. Очень занимательная вещь.

7. Регистр совпадения? См. п.6. Разница в том, что в п.6 прерывание возникнет по переполнению, а в этом случае при достижении Т/С содержимого регистра совпадения.

8. непонятно.

Ссылка на комментарий
Поделиться на другие сайты

1. непонятно.

Это мой глюк, не обращайте внимания и не отвечайте.

1. Можете привести пример использования ШИМ, когда он необходим позарезу? И другой пример, нейтральный, тоже, пожалуйста, раскажите.

2. ШИМ позволяет продлить/урезать импульс? Это используется для управления перефирией?

8. непонятно.

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

4. Использование T/C1 -2 -3 -4, осуществляется в зависимости от того, сколько бит мне надо задействовать? 8 или 16?

5. И еще, любой из них может делать все, в любом случае, что мне надо от него, в зависимости от его функций?

6. Много T/C в МК вставляют, что бы сделать его "круче"?

7. Порты. Если они работают на вход, когда ставить высокоомное сопротивление, а когда нагруженное резистором?

Передний фронт, задний фронт. Он есть у периодического сигнала. Везде используется. Хоть считай их, хоть синхронизируйся от них.

8. Приведите, пожалуйста, пример переднего и заднего фронтов

Ссылка на комментарий
Поделиться на другие сайты

хех про т\с не расскажу а вот про фронты можно и самому догадаться.. сигнал у нас имеет 2 значения ноль и единица.. дак вот к примеру чтение битов на шине может происходить по одному ищз фронтов... а именно либо по переходу из 0 в 1 либо наоборот... соотв. передний и задний...

«Как сердцу выразить себя? … Мысль изреченная есть ложь!»

Ссылка на комментарий
Поделиться на другие сайты

хех про т\с не расскажу а вот про фронты можно и самому догадаться.. сигнал у нас имеет 2 значения ноль и единица.. дак вот к примеру чтение битов на шине может происходить по одному ищз фронтов... а именно либо по переходу из 0 в 1 либо наоборот... соотв. передний и задний...

Именно сам переход из 0 в 1 и из 1 в 0, или именно чтение с шины 1 и 0?

Ссылка на комментарий
Поделиться на другие сайты

на сколько я помню то по русски переход с 0 в 1 есть фронт или Rising edge, переход же из 1 в 0 - спад иначе Falling edge... имеется ввиду сам факт изменения состояния.. пример: вешаем кнопку на вход внешнего прерывания контроллера... кнопка замыкает пин на землю.. а сам пин подтянут к +5в, если сконфигурировать прерывание по изменению сигнала на входе то за1 нажатие произойдет 2 прерывания... во время нажатия будет спад сигнала.. и во время отпускания фронт... но можно конфигурировать прерывания по фронту или спаду.. таким образом можно получать прерывания 1 раз за нажатиеи при этом либо при нажатии либо после отпускания кнопки...

вообще вы с реальными МК работали? если нет и таквых под рукой нету советую завести себе прогу Proteus и побаловаться со всем что интересует...

«Как сердцу выразить себя? … Мысль изреченная есть ложь!»

Ссылка на комментарий
Поделиться на другие сайты

хех про т\с не расскажу а вот про фронты можно и самому догадаться.. сигнал у нас имеет 2 значения ноль и единица.. дак вот к примеру чтение битов на шине может происходить по одному ищз фронтов... а именно либо по переходу из 0 в 1 либо наоборот... соотв. передний и задний...

Именно сам переход из 0 в 1 и из 1 в 0, или именно чтение с шины 1 и 0?

Вот так примерно...

post-20311-1181543919_thumb.jpg

Любой, заслуживающий внимания, опыт приобретается себе в убыток...

Ссылка на комментарий
Поделиться на другие сайты

Привет! Подскажите, пожалуйста:

1. Для UARTа, скорость передачи, в бодах, ставить в зависимости от каких факторов?

2.

char c;
if(UCR & 0x80) // если УАРТ принял символ от ПК...
с=UDR //сохраним его в переменной "с"

Все символы, по одному, проходят через UDR?

3.

const char SOME_STRING[] PROGMEM = "My_string.\r\"; //добавляем строку во flash память.

Как ее от туда вытащить?

И еще вопросы, может кто знает:

1. Как на асме обратиться к жесткому диску?

2. Как определить емкость конденсатора, чтобы он не пропускал ток определенной НЧ?

Проще напиши чего хочешь зделать, отсюда и попляшем ;)

А остальноке по ходу дела поймёшь)

Изменено пользователем serg

yourdevice.net

Ссылка на комментарий
Поделиться на другие сайты

Проще напиши чего хочешь зделать, отсюда и попляшем

А остальноке по ходу дела поймёшь)

Я хочу разобраться с графикой на машинном уровне.

Очень многое я уже знаю. Осталось узнать меньше чем я уже знаю.

Мне интересен хард и видюха. Плюс взаимодействие.

Короче я разобрался уже. Осталось только практика. Чем я сейчас и займусь.

Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

×   Вставлено с форматированием.   Восстановить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...