Jump to content

Search the Community

Showing results for tags 'ассемблер'.

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Вопрос-Ответ. Для начинающих
    • Песочница (Q&A)
    • Дайте схему!
    • Школьникам и студентам
    • Начинающим
    • Паяльник TV
    • Обсуждение материалов с сайта
  • Радиоэлектроника для профессионалов
    • admin
    • Питание
    • Ремонт
    • Системы охраны и наблюдения. Личная безопасность
    • Роботы и модели на ДУ-управлении
    • Световые эффекты и LED
    • Самодельные устройства к компьютеру
    • Программное обеспечение
    • Металлоискатели
    • Автоматика
    • Электрика
    • Промышленная электроника
    • Измерительная техника
    • Мастерская радиолюбителя
    • КВ и УКВ радиосвязь
    • Радиопередатчики
    • Сотовая связь
    • Спутниковое ТВ
    • Телефония и фрикинг
    • Высокое напряжение
    • Идеи и технологии будущего
    • Справочная радиоэлементов
    • Литература
    • Схемотехника для профессионалов
    • Разное
  • Аудио
    • FAQ, Технологии и компоненты
    • Для начинающих
    • Источники звука
    • Предусилители, темброблоки, фильтры
    • Питание аудио аппаратуры
    • Усилители мощности
    • Акустические системы
    • Авто-аудио
    • Ламповая техника
    • Гитарное оборудование
    • Прочее
  • Микроконтроллеры
    • МК для начинающих
    • admin
    • AVR
    • STM32
    • PIC
    • ПЛИС
    • Другие микроконтроллеры и семейства
    • Алгоритмы
    • Программаторы и отладочные модули
    • Периферия и внешние устройства
    • Разное
  • Товары и услуги
    • Коммерческие предложения
    • Продам-Отдам, Услуги
    • Куплю
    • Уголок потребителя
    • Вакансии и разовая работа
    • Наши обзоры и тесты
  • Разное
    • Курилка
    • Сайт Паяльник и форум
    • FAQ (Архив)
    • Технический английский (English)
    • Личные блоги
    • Наши проекты для Android и Web
    • Корзина
    • Конкурсы сайта с призами
    • Вопросы с VK
  • Переделки's ATX->ЛБП
  • Переделки's разные темы
  • Киловольты юмора's Юмор в youtube

Blogs

  • Твори, выдумывай, пробуй.
  • fant's блог
  • Ток покоя
  • Где купить велпатасвир, epclusa, velpanat, velasof, софосбувир в России по лучшей цене.
  • Китайские бренды видеокамер
  • Создание Маленькой Мастерской
  • Блог администрации
  • STEN50's блог
  • Изучение, наладка, исследование
  • MiSol62's блог
  • короткие записки по ходу дела
  • Программирование AVR и PIC блог
  • Стабилизированный выпрямитель тока ТЕС 12-3-НТ
  • Блог getshket
  • ТНПА
  • welder's блог
  • blog cheloveka loshadi
  • OPeX3's блог
  • Подводная робототехника
  • Сабвуфер и акустика.
  • Радиоуправляемая машина
  • Консультация психолога сексолога онлайн, психолог онлайн
  • Nokian блог
  • Оповещения Dermabellix Scam !! Не покупайте это !!!
  • Cheerful Boss' блог
  • Cheerful Boss' блог
  • VLAD1996B's блог
  • "Коллективное увеличение продаж"
  • Dudok's блог
  • "Коллективное увеличение продаж"
  • Goluboglazyi's блог
  • Прибор определяющий электролитический конденсатор на работоспособность.
  • Mosfet@'s блог
  • mazzi's блог
  • Лучшие компьютерные игры 2017
  • Marchenkokerya's блог
  • Заметки начинаущего аудиофила
  • Почти бесполезные проги
  • Светлый блог.
  • дядюшка Филин's блог
  • Дневники нуба
  • satyrn's блог
  • Люк. В погреб.
  • Фильм Дом Солнца
  • Светодиодная лента B-LED 2835-120 W белая негерметичная
  • Само-Реплицируещиеся Производственные Системы
  • Блог от Eknous
  • РВС's блог
  • Den_R's blog
  • РВС's блог
  • Чтото крутое и про криворукость
  • ekadom's блог
  • Проектирование любых чертежей
  • Lisovic's блог
  • Блог уже не юного радиогубителя
  • денди
  • eHouse
  • zaregan's блог
  • Схемотехника УНЧ с низковольтным питанием на примере приёмников фирмы Grundig
  • То, что в руки попало.
  • Блок питания водородного генератора и все что с ним связано
  • slava_va@mail.ru's блог
  • Блог alex123al97
  • slava_va@mail.ru's блог
  • параленое соединение КРЕНок или как сделать стабилизатор напряжения 24-12в
  • Свободная генерация Андрея Мельниченко
  • реобас
  • Модернизации системы впрыска на 555
  • помощь
  • Копии схем и печатных плат устройств попавшие ко мне
  • MBM75's блог
  • Буду
  • lagutai's блог
  • Мои проекты.
  • lagutai's блог
  • Трудовик
  • vOVK@'s блог
  • токарь-радиолюбитель
  • azlk3000's блог
  • Коллизия сингулярности
  • SmallAlex's блог
  • Вопрос по Цифровому усилителю мощности звука 2x12 Вт YDA138-E
  • bebulo's блог
  • Простейший макет станка термо-вакуумной формовки
  • Блог им. pryanic
  • peratronika
  • Zer's блог
  • MEDBEDb's
  • Гнездо кукушки
  • hiMiческий блог
  • luna_kamen's блог
  • Изучаем USI на основе сверхэкономичного прототипа
  • Алекс-Юстасу
  • SUBWOOFER.RU
  • kot sansher's блог
  • Поделки стареющего пионера
  • доброжелатель2's блог
  • Grig96. Полезные заметки.
  • Attiny 0-ой и 1-ой серии (Attiny817, 1614 и прочие)
  • pavlo's блог
  • MSP430FR
  • viper2's блог
  • Моя Электро Чинильня
  • Selyk's блог
  • VoltServis.ru
  • kpush's блог
  • OM3 на новых платах.
  • конни's блог
  • Электронный экстазёр "MASHKA".
  • ptimai's блог
  • noc functionalities
  • Sun kapitane's blog
  • ODEON AV-500
  • Sun kapitane's blog
  • Логика на транзисторах,диодах, счетние тригери на транзисторах
  • AleksandrBulchuck's блог
  • Качественные окна от производителя
  • KRALEX's блог
  • Javaman's projects
  • SeVeR36's блог
  • 3232
  • Пять копеек.
  • Az@t's блог
  • Индукционный нагрев
  • Схемы разных устройств
  • Кардшаринг SAT ТВ блог
  • PENTAGRID SAYS
  • Ещо раз о "Кощее 5И"
  • Игровые автоматы на официальном сайте
  • коллекционер
  • дямон's блог
  • Ламповый усилитель и акустика для озвучки семейных мероприятий
  • дямон's блог
  • tiosmutoutrup1971
  • Светомузыкальная установка для новачков
  • Лучшие игры для ПК скачать бесплатно
  • sqait's блог
  • Блокнотик
  • Gubernator's блог
  • Записки электрика
  • Полстакана
  • Vrednyuka
  • Интегральные микросхемы
  • grigorik's блог
  • Интегральные микросхемы
  • VMWare удобство и безопастность
  • Профсоюз обычных пользователей
  • rtfcnf's блог
  • Гидроэнергетика в России: отечественные гидроэлектростанции, типы и характеристики
  • VMWare удобство и безопастность
  • Лайфхаки от Кати
  • Kinh chong anh sang xanh gia re
  • ukabumaga's блог
  • АО "Диполь Технологии"
  • artos5's блог
  • блог
  • Kraftwerk's блог
  • 1
  • Kraftwerk's блог
  • Как выбрать точечный светильник?
  • мастерская ky3ne4ik'а
  • Работа с микроконтроллером Atmega8
  • Aronsky
  • Игорь Камский
  • Диммеры
  • 5В = 1,5+3
  • vitiv' блог
  • Ремонт цифровой панели прибора тойоты марк 100. Замена транзистора 36 ( SOT- 23 )PNP
  • Все СРО России
  • 300writers
  • Металлоискатель Tracker FM-1D3
  • Былое
  • Создание монстра "Blaster 8920"
  • 2Smart Cloud Blog
  • EmmGold's блог
  • 2Smart Cloud Blog
  • ivan15961596's блог
  • Кумир у-001
  • ivan15961596's блог
  • My blog
  • Интернет радио в машину
  • SamON
  • Помогите люди добрые
  • AI
  • Помогите подключить маяк 231 стерео.
  • Гаусс-пушки
  • Название
  • 7400's блог
  • Как я собирал свой первый импульсный источник питания
  • Віталік Приходько_130349's блог
  • Lithium ECAD - российская САПР печатных плат
  • Евгений Малюта's блог
  • ПИшу свои мысли
  • werekpro
  • Venera Electronica
  • afurgon's блог
  • Выбросьте это в парашу!
  • odaplus' блог
  • Zvik's блог
  • Smart overload protection power amplifier «Zita (Z) ThermalTrak™»
  • радиоэлектоника
  • BoBka777's блог
  • МиУЗР - Модернизация и Усовершенствование Звуковой Радиотехники .
  • aleksey9900's блог
  • Лабораторная блок питания
  • Нашел статью о пайке проводов к светодиодов
  • Китайский городовой
  • Костик0's блог
  • УФ лампа для маникюра SK-818
  • 8 Contrasts Between Web Servers and Application Servers
  • Конденсатор
  • Новости, обзоры и другая полезная информация от ИМ "Радиодар"
  • Цветомузыка
  • OPeX3's блог
  • Sem2012's блог
  • это не хлам – это часть моей жизни
  • Контроллер на базе ПК (OS Win LTSC)
  • OdiS' блог
  • Хитрости строителя
  • aleksfil's блог
  • Color Preamp - предусилитель на лампах 12AU7
  • Проблема с зарядкой литиевого аккумулятора для шуруповерта 21 вольт
  • EmmGold's блог; AVR
  • Микроэлектроника
  • З
  • CH32V
  • Блог Плотникова Ильи
  • Бесплатные радиодетали с Алиэкспресс
  • Повышение качества и снижение временных затрат при испытаниях электронных компонентов с помощью отечественного испытательного оборудования
  • Источники питания MEAN WELL
  • Жизнь и рыбалка
  • yureika's блог
  • Глушитель спутникогого интернета
  • Всякая всячина
  • Для начинающих
  • Ignite your senses with the grace and allure of female escorts near Laguna Niguel
  • Fumitox's блог
  • Самоделки блог
  • ульян's блог
  • Блок питания 0-12В для начинающих
  • Dimko's блог
  • Иван Самец's блог
  • SolomonVR's блог
  • gendzz's блог
  • fleh138's блог
  • Электроника forever!
  • aleksejhozhenets' блог
  • aleksejhozhenets' блог
  • diserver блог
  • aleksey290476 блог
  • ВАРГ's блог
  • Люстра Чижевского
  • wanes101's блог
  • voldemar2009's блог
  • Jana's блог
  • Jana's блог
  • Рена Искужин's блог
  • abduraxman7's блог
  • Kuzumba's блог
  • Самопальник
  • заработок через интернет на запчасти!!!
  • electric.kiev's блог
  • lolo's блог
  • leravalera's блог
  • ideomatic's блог
  • приглашаем на работу инженера-радиоэлектронщика
  • FREEMAN_77's блог
  • Блог автоэлектрика
  • Блог начинающего электронщика
  • Dersu's блог
  • Электроэнергия и её экономия!
  • Электроэнергия и её экономия!
  • Семён Ковалёв's блог
  • piligrim-666's блог
  • помогите с партотивной калонкой
  • помогите с партотивной калонкой
  • Музыка в стене.
  • m-a-r-i-k-a's блог
  • cosmos44's блог
  • oyama14's блог
  • блог Виталика!
  • ciornii's блог
  • Великий и Ужастный блог
  • Denis__Ricov's блог
  • Universal12's блог
  • Sprut's блог
  • Alexeyslav's блог
  • cosmosemo's блог
  • Заметки радиолюбителя
  • Falconist. Мемуары
  • Блог MillyVolt
  • усилитель импульсов
  • Panasonic sa-ak 18
  • Простое радиоуправление из того, что было.
  • 35house
  • Блог Радиочайника
  • Блохи iiiytnik'a
  • Хороший сервис- Бяка
  • Аудиолаборатория "Философия Звука"
  • ОколоCADовое
  • Блог KVLADS
  • Короп блог
  • Автоматизация котла Protherm MTV
  • Бложиг Касянича
  • Обо всём
  • Эксперимент
  • No electronics
  • ПРИРОДА СВЕТА и ЕГО ВОЗМОЖНОСТИ
  • Генератор на xr2206
  • HTPOWLASER
  • Когда-то были очень популярны у радиолюбителей
  • AVR - микроконтроллеры
  • Микроконтроллер
  • Самодельный автосимулятор
  • Интернет-магазин керамической плитки «Боярская Плитка»
  • Разработка электронных метрических мишеней IPSC для мягкой пневматики (страйкбол)
  • ,

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Skype


ICQ


Интересы


Город


Сфера радиоэлектроники


Оборудование

Found 13 results

  1. Извечный вопрос не дает покоя. Кто и на чем все же предпочитает вести работу с контроллерами? Лично я как научился работать на С, так и не могу перейти на Assembler, да и не очень то хочется это делать. Какие все же преимущества и недостатки, окромя понятности и не очень понятности?
  2. Писал недавно программу на ассемблере для ATMEGA128 и столкнулся с неприятной особенностью. Обычно для ATTINY2313 или ATMEGA8, для небольших программ при вызове подпрограмм, хватает команды RCALL, но у неё ограничение по дальности вызова подпрограмм, поэтому применил команду CALL. Хотел узнать, между этими двумя командами есть ли разница, кроме дальности вызова подпрограмм, и если нет разницы, зачем две команды, почему нельзя обходится одной командой CALL?
  3. Всем здрасти! Пытаюсь подружить драйвер дисплея SSD1306 и ATMEGA328p с использованием i2c. По даташиту после каждого байта данных или команды, SSD1306 должен генерировать бит подтверждения, но после отправки первого же пакета с командой ни "Acknowledge" ни "Not Acknowledge" бита не получаю, симуляция будто зависает. Подскажите пожалуйста может я что не так сделал? Может проблема симуляции? Код .include "m328PBdef.inc" .def buff = r16 .def message = r17 .def iter = r18 .equ adressW = 0b01111000 .cseg .org 0x0000 jmp restart .org 0x001A jmp tim1_ovf_isr .org 0x0030 jmp twi_isr restart: ldi buff, high(RAMEND) out SPH, buff ldi buff, low(RAMEND) out SPL, buff ; twi init ldi buff, 0b1100 sts TWBR0, buff ldi buff, 0b0 sts TWSR0, buff ; timer\counter init ldi buff, 0b100 sts TCCR1B, buff ldi buff, 0b1 sts TIMSK1, buff ; global interrupt enable sei ; main routine main: jmp main ; timer 1 - 16bit overflow isr tim1_ovf_isr: ldi buff, 0b10100101 sts TWCR0, buff ldi buff, 0b0 sts TCCR1B, buff ldi buff, 0b0 sts TIMSK1, buff reti ; twi isr twi_isr: lds buff, TWSR0 andi buff, 0b11111000 cpi buff, 0x08 breq twi_start cpi buff, 0x18 breq twi_slaw_ack cpi buff, 0x28 breq twi_data_ack reti ; twi_start: ldi buff, adressW sts TWDR0, buff ldi buff, 0b10000101 sts TWCR0, buff reti ; ; twi_slaw_ack: ldi buff, 0b10000000 sts TWDR0, buff ldi buff, 0b10000101 sts TWCR0, buff reti ; ; twi_data_ack: ldi buff, 0xA5 sts TWDR0, buff ldi buff, 0b10000101 sts TWCR0, buff reti SSD1306-Revision 1.5.pdf
  4. Всем доброго дня! На данном сайте (http://smartep.ru/index.php?page=avr_asm_examples) нашел пример управления сервоприводом SG90 с помощью микроконтроллера Atmega16 на Ассемблере. С помощью программатора AVRasp, макетной платы и программы avrdude_prog-v.3.3 я прошил свой микроконтроллер Atmega16A. Все завершилось удачно. Я выставил в фьюзах 8Мгц частоты от внутреннего генератора, как указывал автор примера. Авто указывает - линия ШИМ сервопривода подключена к каналу А аппаратного ШИМ. Кнопки поворота подключены к линиям PD2 и PD3. Кнопка на линии PD2 увеличивает длительность импульса, кнопка на линии PD3 уменьшает длительность импульса. Схему подключения автор не дает. У меня собрать рабочую схему не получается. Может кто подскажет, как исходя из кода Ассемблера собрать схему? Полный код программы в прикрепленном файле "Пример". Моя предположительная схема и фрагмент кода на фото. Пример Пример
  5. Здравствуйте. Вопрос к гуру, на сколько будет меньше разрыв данных при посылке через SPI 16бит, если ожидание готовности написать на ассемблере? И сразу второй вопрос, как правильно её вставить? void sendWord(uint16_t data) { SPDR = data; while(!(SPSR & (1<<SPIF))); // это заменить на ассемблерную вставку //вот тут видно задержку SPDR = data>>8; while(!(SPSR & (1<<SPIF))); // и это заменить на ассемблерную вставку } Этот код не работает (ассемблерная вырезка из даташита). Я не соображаю... asm volatile( "Wait_Transmit: in r16, SPSR sbrs r16, SPIF rjmp Wait_Transmit ret" ); Пока писал сообщение, понял свой косяк, регистр r16 в строке выше у меня не соответствует data.Тогда еще вопрос, как полностью этот кусок "sendWord" написать на ассемблере? Заранее Спасибо!
  6. Работаю в Mplab X 5.40, написал основной код программы для Pic16 на Си и есть небольшой код на ассемблере. Так вот, подскажите как правильно сделать переход на подпрограмму с Си на ассемблер и назад. Может на каком либо примере где-то есть. Заранее всем спасибо.
  7. Доброго времени суток! Кто разбирается с Atmega128, ассемблером и кому не жалко времени, пожалуйста помогите. Как можно корректировать скорость падения маятника (он должен постеменно набирать скорость падения и плавно замедляться к верхней точке)... Какие данные нужно менять?! Спасибо! логин маятник 2.zip
  8. Помогите сориентироваться с чего начать решение вопроса. Или возможно есть уже похожие написанные программы. Нужно для микроконтроллера семейства MCS-51 составить программу, которая выполняет логическую операцию "И" над числами 5416 и 8716. Указанные числа необходимо предварительно записать в регистр R6 и R7 нулевого банка регистров, а результат операции разместить в регистр R7 второго банка регистров. Составить двоичный и шестнадцатеричный код каждой команды.
  9. Здарова, инженеры. Не подсобите студню с заданием? Задание, если кому интересно: Я подчитнул некоторую теорию, про индикацию, матричную клавиатуру и её опрос. Но вот возникли след. вопросы/трудности: 1. В случае использования только двух кнопок, целесообразно ли подключать кнопку непосредственно к выводу микроконтроллера? Насколько сильно это упростит решение задачи? 2. Можно ли где-то посмотреть пример реализации таких клавиатур именно на PIC18? (Уж очень у меня не хватает практики по программированию устройств, всегда на уровне любителя работал на крестах и ему подобных языках для решения мелких проблем и забав) 3. Можно ли где-то смоделировать моё творение, т.е. посмотреть работоспособность? (MPLAB, proteus, xlinx) 4. На чем в данном случае рациональнее "кодить" - язык ассемблера или сишка? Есть некоторый алгоритм для обработки дребезка контактов: https://pp.userapi.com/c840123/v840123038/23a0/IjXofwjEmuc.jpg Есть некоторая схемка, которую я в инете откопал: https://pp.userapi.com/c840123/v840123038/23a7/-rD4tgCfvLs.jpg Так же нашел небольшой код на просторах интернета (увы, он для AVR) : Благодарю за каждый пендель в нужном направлении, тема-то хорошая.
  10. Такая задача, собрал схему с сайта в протеусе с микрокоонтроллером, там же на этом сайте есть программаа, но есть одно, надо написать алгоритм это программы(блок схему), аж на уровне регистров, а прога написана в этом алооритм билдере, мб кто-нибудь шарит и сможет мне помочь? или есть вариант перевести это в обычныый язык ассемблера??
  11. Разработать модель в среде симуляции Proteus на базе микроконтроллера AtMega128 и написать программу на языке ассемблера для решения следующей задачи: 1. Изменяя положение ручки регулятора напряжения переменным резистором высвечивать на одном разряде трехразрядного семисегментного индикатора цифру от 0 до 9. 2. При нажатии кнопки 1 на клавиатуре выдавать звуковой сигнал с пьъезодинамика с частотой 1 кГц. При нажатии на кнопку 2 – с частотой 2 кГц, при нажатии на кнопку 3 – с частотой 3 кГц.
  12. Доброго времени суток всем! Недавно возникла потребность передачи данных из микроконтроллера в ПК. Написал код на ассемблере, опираясь на Code_examples от TI, и то, что получилось, приведено ниже: #include "msp430F1232.h" RSEG CSTACK DS16 0 RSEG CODE ;--------------------------------------------------------------------- ; Установка тактирования от кварца ;--------------------------------------------------------------------- RESET mov #SFE(CSTACK),SP mov #WDTPW+WDTHOLD,&WDTCTL ;OSTANOVKA WDT BIC #OSCOFF, SR ; tAKTIROVANIE OT KVARCA BIS.B #XTS, BCSCTL1 L1 BIC.B #OFIFG, &IFG1 MOV #0FFh, R15 L2 DEC R15 JNZ L2 BIT.B #OFIFG, &IFG1 JNZ L1 BIS.B #SELM_3, &BCSCTL2 ;-------------------------------------------------------------------- ; Инициализация USART ;-------------------------------------------------------------------- mov.b #200,R7 bis.b #SWRST,&UCTL0; bis.b #030h,&P3SEL; P3.4,5 - USART bis.b #UTXE0+URXE0,&ME2; Включение передачи и приема bis.b #CHAR, &UCTL0; Формат данных 8-разрядный mov.b #SSEL0, &UTCTL0; UCLK=ACLK mov.b #0100b,&UBR00; 5MHz/19200 = 260.4 = 100000100b mov.b #0001b,&UBR10; mov.b #0000, &UMCTL0; Без модуляции bic.b #SWRST,&UCTL0; Сброс USART не включен bis.b #URXIE0+UTXIE0,&IE2 bis.b #UTXIFG0,&IFG2; Флаг гтовности к прерыванию Loop bis.w #LPM3+GIE,SR nop jmp Loop ;------------------------------------------------------------------- USART0TX_ISR; ;------------------------------------------------------------------- mov.b R7, &TXBUF0; reti ;-------------------------------------------------------------------- ; Векторы прерываний ;-------------------------------------------------------------------- COMMON INTVEC ORG RESET_VECTOR DW RESET ORG USART0TX_VECTOR DW USART0TX_ISR END. Из программы видно, что я просто хочу передать содержимое R7 в ПК. Трудность заключается в том, что это значение передается не всегда. Запускаю программу, которая считывает информацию с com порта (программа работает 100% правильно), она в тестовый файл записывает значение 200(правильное значение). В следующий раз, после перезапуска программы, в текстовый файл она записывает величину 14. Потом снова 200. И я не пойму, что с ней происходит! Кто знает, отзовитесь пожалуйста
  13. Столкнулся с тем что в интернете куча уроков по ассмеблеру, и везде мол главное практика, главное писать программы на ассемблере под винду. Так же куча информации по взлому и дизассемблированию программ на винде. используя дебагер и тд. Но нигде я не нашел информации по анализу для начинающих кода на ассемблере с микроконтроллеров. Даже просто хотя бы понимать что к чему и как начать и тд. К примеру скажу сразу что как я выяснил дизассемблером так сказать всех времен и народов является IDA Думаю данная инфа будет кому то интересна и полезна а кто то наткнется на эту запись с поисковиков. У меня есть вопросы. Вот я прогнал прошивку через IDA и если для виндовских приложений мы цепляемся за дебагер, запускаем так сказать программу пошагово и смотрим где что выполняется то тут так сделать не получиться и как я подозреваю тут надо работать руками на физическом уровне а именно прозванивать элементы и понимать что как вообще работает хотя бы примерно. И вот я так и сделал, я прозвонил память еепром до микроконтроллера. И узнал на какие ноги идет. Далее я посмотрел в даташите что это вообще за ноги: 1 нога еепром (CS) звониться на 40 ногу мозга PF10/CS0 2 нога eeпром (CLK) звониться на 226 ногу мозга (PL9/ SCK4/IRQ5) 3 нога еепром (DI) звониться на 157 ногу мозга PB10/TxD4/HTxD0/TO8G 4 нога еепром (DO) звониться на 158 ногу мозга PB11/RxD4/HRxD0/TO8H Далее я знаю что у меня микроконтроллер считывает информацию с еепром. А делать он это может как я понимаю только по ноге 158, так как она подрублена к DO (выход данных с еепром), тоесть 158 нога является входом данных. Тоесть микроконтроллер должен уметь считывать её состояние. А значит это операция чтения и в даташите ищем к порту B такой регистр, вот он: Port B Data Register (PBDR) Read/Write Operations. Далее смотрим маску. Обращение к конкретно этому порту PB11 возможно таким способом 0000 1000 0000 0000 (или в HEX это будет 800) Далее в IDA жмем search->immediate value... и вводим нашу маску 800 и просматриваем все что нашли, маска может применяться и для других регистров. В итоге я нашел что это маскаmov.w #h'800, применяется совместно с регистром #PBDR_W тоесть используется как раз порт PB11 а так же тут же в этой функции присутствует маска 400 рядом с регистром PFDR_W а это как раз PF10 который идет на CS еепромки. Вообщем опыта и знаний у меня маловато поэтому и прошу помощи. Однозначно понятно что это не значит что это функция чтения с еепром, но помогите пожалуйста разобраться по шагам что в этой функции твориться, я сам в комментариях тоже попробую. Ниже вырван кусок кода в котором найдены эти маски и регистры. ROM:0000E378 eeprom: ; CODE XREF: sub_1096A+13DC4p ;название eeprom задал я ROM:0000E378 ; sub_1096A+13E66p ... ROM:0000E378 ROM:0000E378 var_18 = -h'18 ; какая то переменная как я понимаю ROM:0000E378 ROM:0000E378 mov.l r14, @-r15 ROM:0000E37A mov.l r13, @-r15 ROM:0000E37C mov.l r12, @-r15 ROM:0000E37E mov.l r11, @-r15 ; какое то значение @-r15 помещается в r11, r12 и тд ROM:0000E380 sts.l pr, @-r15 ;sts это вроде как запись в какое то СОЗУ ROM:0000E382 add #-8, r15 ; складывается что то с r15 ROM:0000E384 mov.w #h'E0, r5 ; что то помещается в r5 ROM:0000E386 mov r15, r4 ; ROM:0000E388 mov.l #sub_2078, r3 ROM:0000E38A jsr @r3 ; sub_2078 ROM:0000E38C add #4, r4 ROM:0000E38E mov #1, r6 ROM:0000E390 mov.w #PFDR_W, r12 ; порт PF ROM:0000E392 mov.w #h'400, r13 ; маска , по идее PF10 должен быть который подрублен к CS еепромки ROM:0000E394 mov.l #sub_4AF4, r14 ROM:0000E396 mov r13, r5 ROM:0000E398 jsr @r14 ; sub_4AF4 ROM:0000E39A mov r12, r4 ROM:0000E39C mov.l #sub_2088, r3 ROM:0000E39E jsr @r3 ; sub_2088 ROM:0000E3A0 mov.l @(h'1C+var_18,r15), r4 ROM:0000E3A2 mov.l #sub_2400, r2 ROM:0000E3A4 jsr @r2 ; sub_2400 ROM:0000E3A6 mov #1, r4 ROM:0000E3A8 mov.w #PBDR_W, r2 ; порт PB ROM:0000E3AA mov.w @r2, r3 ROM:0000E3AC extu.w r3, r3 ROM:0000E3AE mov.w #h'800, r1 ; маска которая соответствует вроде как для PB11 который подрублен к DO еепромки ROM:0000E3B0 mov.w #h'E0, r5 ; 'р' ROM:0000E3B2 tst r1, r3 ROM:0000E3B4 mov.l #sub_2078, r2 ROM:0000E3B6 movt r11 ROM:0000E3B8 jsr @r2 ; sub_2078 ROM:0000E3BA mov r15, r4 ROM:0000E3BC mov #0, r6 ROM:0000E3BE mov r13, r5 ROM:0000E3C0 jsr @r14 ; sub_4AF4 ROM:0000E3C2 mov r12, r4 ROM:0000E3C4 mov.l #sub_2088, r3 ROM:0000E3C6 jsr @r3 ; sub_2088 ROM:0000E3C8 mov.l @r15, r4 ROM:0000E3CA mov r11, r0 ROM:0000E3CC add #8, r15 ROM:0000E3CE lds.l @r15+, pr ROM:0000E3D0 mov.l @r15+, r11 ROM:0000E3D2 mov.l @r15+, r12 ROM:0000E3D4 mov.l @r15+, r13 ROM:0000E3D6 rts ROM:0000E3D8 mov.l @r15+, r14 ROM:0000E3D8 ; End of function eeprom Дополните и поправьте пожалуйста, а то в знаниях дыра =)
×
×
  • Create New...