Форум программистов, компьютерный форум, киберфорум
Микроконтроллеры
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.99/70: Рейтинг темы: голосов - 70, средняя оценка - 4.99
0 / 0 / 0
Регистрация: 26.11.2011
Сообщений: 816

Как програмировать регистры МК51 на С++

23.12.2011, 16:38. Показов 13499. Ответов 18
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть больщой вопрос по поводу регистров на АТ89С51. На ясемблере есть такой регистр Movx он работает всё хорошо. Он предназнасен для передачи информации по шине данных и шине адреса. А как этот регистр звучит на С++ и с чем его едят? Может быть какието примеры в С++ имеются?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
23.12.2011, 16:38
Ответы с готовыми решениями:

Как програмировать?
Тут смотрю как америкосы делают разные игры по фильмам и думаю, а как это делают и задают примерно человеку пауку вес, скорость, трение....

Как програмировать на планшете?
Как програмировать на планшете? Какой выбрать планшет и чем руководствоваться для этого. Планшет какой системы использовать (Android, iOS...

Как програмировать на с++ под WM6?
Кто-нибудь знает как програмировать на с++ под WM6? что надо сделать что-бы хотябы вот это заработало: #include <iostream> int...

18
0 / 0 / 0
Регистрация: 11.06.2011
Сообщений: 322
23.12.2011, 18:21
Цитата Сообщение от Komoptj2010
На ясемблере есть такой регистр Movx он работает всё хорошо.
... теперь буду знать, что Movx - это регистр
ЗЫ сразу видно спеца по ясемблеру....
0
0 / 0 / 0
Регистрация: 07.12.2010
Сообщений: 574
23.12.2011, 23:43
Movx - это комманда ) а пишется Асемблер )
предлогаю изучить еще разок асемблер поучить
0
0 / 0 / 0
Регистрация: 26.11.2011
Сообщений: 816
23.12.2011, 23:47
Ну я пожалуй не так вырозилс. Да в асемблере я прафин, да Movx - это не регистр, а команда передачи байта по порту. Меня интересует как по этому порту передавать байт на С++. Проблема в том что есть учебно - отладочный стенд, мы (студенты) учимся передавать этот байт для задания адреса в регистр обшего назначения. Задание перейти с асемблера на С++. А вот как теперь задать этот адрес, вопро хороший. Если не задавать этот адрес никакой регистр общего назначения не работает.
0
0 / 0 / 0
Регистрация: 07.12.2010
Сообщений: 574
23.12.2011, 23:49
передачи байт по порту? о.О
0
0 / 0 / 0
Регистрация: 26.11.2011
Сообщений: 816
23.12.2011, 23:51
Цитата Сообщение от RyshirD
Movx - это комманда ) а пишется Асемблер )
предлогаю изучить еще разок асемблер поучить
Я пишу с сенсорного телефона и иногда промазываю по кнопкам, извините за орфографию.
0
0 / 0 / 0
Регистрация: 07.12.2010
Сообщений: 574
23.12.2011, 23:53
так если вы хотите использовать конкретные РОН и комманды, то используйте асм вставки.
P.S. есть особенности в некоторых компиляторах, т.ч. советую скинуть хоть инфу по компилятору или его самого
0
0 / 0 / 0
Регистрация: 07.12.2010
Сообщений: 574
23.12.2011, 23:55
пардон, чушь написал
"предлогаю изучить еще разок асемблер поучить"
0
0 / 0 / 0
Регистрация: 26.11.2011
Сообщений: 816
24.12.2011, 00:01
Ну как тот самый порт (ШД И ША), по которому прогамируют МК. С ним можно работать не только для прогамирования но и для передачи данных на внешние устройства. Этот порт занимает 16 выводов (8 выводов данных и 8 выводов адреса).
0
0 / 0 / 0
Регистрация: 07.12.2010
Сообщений: 574
24.12.2011, 00:09
MOVC не обязательно по порту в/в.
Жду инфу про компилятор.
0
0 / 0 / 0
Регистрация: 26.11.2011
Сообщений: 816
24.12.2011, 00:13
Цитата Сообщение от RyshirD
MOVC не обязательно по порту в/в.
Жду инфу про компилятор.
Компилятор Keil uVision4. Контроллер АТ89С51. А по поводу асемблерных вставок интересно бы послушать.
0
0 / 0 / 0
Регистрация: 07.12.2010
Сообщений: 574
24.12.2011, 00:16
вам тогда очень поможет хорошая книга по этому поводу "Магда Ю.Г. (вроде так) Микроконтроллеры серии 8051. Практический подход"
0
0 / 0 / 0
Регистрация: 07.12.2010
Сообщений: 574
24.12.2011, 00:17
+ ко всему в кейле есть дизасемблер и отладка. Так что дерзайте
0
0 / 0 / 0
Регистрация: 26.11.2011
Сообщений: 816
24.12.2011, 00:23
Цитата Сообщение от RyshirD
+ ко всему в кейле есть дизасемблер и отладка. Так что дерзайте
Ну спосибо за совет.
0
0 / 0 / 0
Регистрация: 07.12.2010
Сообщений: 574
24.12.2011, 00:27
по сути можно даже простую подпрограмму прописать на запись и считываение данных.
А еще попробуйте найти в этой книге xdata - вам будет проще понять, что к чему
стр 47~50
0
0 / 0 / 0
Регистрация: 26.11.2011
Сообщений: 816
24.12.2011, 00:52
Я источник нашол. Там говорится об прирывании от последовательного порта. меня интересует передать данные по этому порту. Прирывания мне не нужны.
0
0 / 0 / 0
Регистрация: 26.11.2011
Сообщений: 816
24.12.2011, 01:00
Пордон, не туда глянул. Да, чтото похожее. То есть передать данные можно приблизительно так;
char xdata text[256] _at_ 0xE000;
где text[256] - это данные, а 0xE000 - это адрес. Или както так.
0
1 / 1 / 0
Регистрация: 28.01.2010
Сообщений: 537
24.12.2011, 01:21
Не С++, а SDCC.
Code
1
2
3
4
5
6
7
...
xdata at 0xA000 unsykned char lefti; // left part of indication
xdata at 0xB000 unsykned char righti; // right part of indication
...
lefti=0x12;
righti=0x34;
...
0
0 / 0 / 0
Регистрация: 07.12.2010
Сообщений: 574
24.12.2011, 08:49
поясняю
xdata - это указатель на внешную память
_at_ - это конкретный указатель адреса

Code
1
2
3
4
5
int xdata TEMP _at_ 0x2F00;
.
.
.
TEMP = 0b00011100;
пример: переменная TEMP размером (int) размещенна по внешнему адресу 0x2F00.
затем запись во внешнюю память числа 0b00011100 (бинарная система)
Надеюсь пояснил
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
24.12.2011, 08:49
Помогаю со студенческими работами здесь

Как правильно програмировать deamons
Ребят подскажите пожалуйста на каком языке программируются демоны для онлайн браузерных игр, таких как например riot от майла. Как я понял...

Что такое регистры микропроцессора? Перечислите регистры общего назначения
Помогите пожалуйста решить задания по TASM 1) Что такое регистры микропроцессора? Перечислите регистры общего назначения 2) Что...

Как произведение чисел с портов Р0 и Р1 МК51 вывести в порты Р2 и Р3
Здравствуйте, уважаемые форумчане! Делаю индивидку, задание которой звучит так: "Произведение двоично-десятичных чисел с портов Р0...

МК51 (аналог intel 8051): как добавить бит четности?
Здравствуйте! В массиве 20Н-27Н РПД микроконтроллера МК51 подготовлены для передачи семиразрядные сообщения. Подскажите, пожалуйста,...

Создать класс Account. Задача из книги Дейтелов "Как програмировать на С++"
Начал изучение С++, прочитал главу "Введение в классы и объекты" в книге Дейтелов "Как програмировать на С++", ничего не поняв...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
19
Ответ Создать тему
Новые блоги и статьи
Функция установки текстового статуса в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
10 пpимет, которые всегда сбываются
Maks 31.03.2026
1. Чтобы, наконец, пришла маршрутка, надо закурить. Если сигарета последняя, маршрутка придет еще до второй затяжки даже вопреки расписанию. 2. Нaдоели зима и снег? Не надо переезжать. Достаточно. . .
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 31.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
Functional First Web Framework Suave
DevAlt 30.03.2026
Sauve. IO Апнулись до NET10. Из зависимостей один пакет, работает одинаково хорошо как в режиме проекта так и в интерактивном режиме. из сложностей - чисто функциональный подход. Решил. . .
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2. Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники". В. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru