Проблема с запуском самодельного миниЭВ на TSC80C31 + 74HC573 + SST39FS010A: процессор не отрабатывает переходы и убегае

Если ваш вопрос не влез ни в одну из вышеперечисленных тем, вам сюда.
Ответить
Родился
Аватара пользователя
Сообщения: 6
Зарегистрирован: Вс авг 02, 2026 23:23:32

Сообщение Даник »

Всем привет! Собираю на макетке классический стенд на базе 8-битного ретро-микроконтроллера TSC80C31-12CA . В качестве памяти программ используется параллельная флешка SST39FS010A, а адрес/данные разделяются через защёлку 74HC573N.
Описание подключений:
Шина AD0-7 подтянута резисторной сборкой на 4,7 КОм к +5В;
LE защёлки подключена на ALE мк;
-ОЕ на земле ;
Для sst39 : -СЕ на земле ,-WE на +5В, -OE на -PSEN процессора .
В чём суть проблемы:
Для проверки зашил в SST39 простейшую короткую программу на ассемблере: ORG 0000H

START:

CPL P1.0

SJMP START

END
( B2 90 80 FC )
Режим пошагового тактирования (триггер Шмитта):
При ручном кликании светодиод на P1.0 начинает переключаться, но делает это крайне нестабильно — может сразу отключить светодиод а может и не отключить вовсе ,может выключить его после нажатия кнопки ресета ,а может вообще забить .
При переключения на кварц 11,592 МГц ничего не заметно ,но у меня нет осциллографа , потому не могу увидеть что твориться на ножке и из-за этого внедрил триггер Шмитта .
Буду рад любой помощи и идеям , могу скинуть схемы .
Реклама
Нашел транзистор. Понюхал.
Аватара пользователя
Сообщения: 176
Зарегистрирован: Чт апр 28, 2016 22:33:47
Откуда: ARPA Internet

Сообщение ejsanyo »

Даник писал(а): Вс авг 02, 2026 23:49:07 могу скинуть схемы .
Вероятно, с этого и надо было начинать? :P А чего это мы кстати на асме сидим, с x51 ядром, да с такой-то флешкой? Не логичнее было бы взять Keil, ну или SDCC если топите за опенсурс?
Хоронили кваку - порвали три Rocket Launcherа.©
Реклама
OKF
Это не хвост, это антенна
Сообщения: 1433
Зарегистрирован: Вт июн 07, 2011 08:03:18

Сообщение OKF »

Нет осциллографа - спаяй пробник. Что бы видеть 0/1, импульсы. Без этого с цифрой делать нечего.
ejsanyo писал(а): Пн авг 03, 2026 08:07:48 А чего это мы кстати на асме сидим, с x51 ядром, да с такой-то флешкой?
Так надо же запустить сначала. Ну и пощупать. Асм у х51 весьма приятен.
Поставщик валерьянки для Кота
Сообщения: 1935
Зарегистрирован: Сб май 05, 2012 20:24:52
Откуда: KN34PC, Болгария

Сообщение veso74 »

Дополните код классического blink :) (без участия человека и кнопка со своими недостатками)
напр.:

Код: Выделить всё

START:
    SETB P1.0 
    ACALL DELAY
    CPL P1.0
    ACALL DELAY
    SJMP START

DELAY:
    MOV R2, #250
DELAY_LOOP:
    DJNZ R2, DELAY_LOOP
    RET
Контактная информация:
Реклама
Эиком - электронные компоненты и радиодетали
Мучитель микросхем
Сообщения: 444
Зарегистрирован: Ср сен 02, 2015 07:47:20

Сообщение HardWareMan »

Какое быстродействие SST39FS010A? Каковы тайминги шины МК? Защёлка 74HC573N плохой выбор для быстрых шин, например AVR. У меня только 74HCT573 работали более-менее предсказуемо на малых частотах (ниже 16МГц).
Реклама
Друг Кота
Аватара пользователя
Сообщения: 15711
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Сообщение BOB51 »

Будут конкретные схемы и описание задачи - будет и разговор.
8)
К примеру хоть вот такая (отлично работающая моя котуинка):
СпойлерИзображение
кыстати... все программное обеспечение для этой самоделки под АССЕМБЛЕРОМ выполняется (C51asm от атмела)...
:tea:
Вложения
U5xmp_m0a1.GIF
(175.27 КБ) 106 скачиваний
Реклама
Нашел транзистор. Понюхал.
Аватара пользователя
Сообщения: 176
Зарегистрирован: Чт апр 28, 2016 22:33:47
Откуда: ARPA Internet

Сообщение ejsanyo »

Так и работают классические экс-51 со внешними шинами тоже не быстро. Тактовая частота делится на 12!
HardWareMan писал(а): Пн авг 03, 2026 11:25:51 Защёлка 74HC573N плохой выбор для быстрых шин, например AVR. У меня только 74HCT573 работали более-менее предсказуемо на малых частотах (ниже 16МГц).
А вот здесь я не понял. Ведь разница между HC и HCT сериями только в уровнях входной лог. 1, но не в быстродействии. Может, у вас в схеме шина была перегружена, и HCT "простила" просадку уровней? :o
Хоронили кваку - порвали три Rocket Launcherа.©
Друг Кота
Аватара пользователя
Сообщения: 15711
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Сообщение BOB51 »

Сравнение МК с шинной структурой из АВРок и mcs51 не слишком корректно.
АВРки имеют только внешнюю память данных, да и работают и быстрее и с дополнительными настройками самой шины.
У 51х внешняя память программ, внешняя память данных или режим совмещённой внешней памяти программ/данных (не говоря о внутренней памяти программ).
Насчёт регистров... Для практического применения вполне пригодны, но при соблюдении как топологии разводки платы, так и нагрузочной способности у конкретной версии МК. Стандартно она у mcs51 достаточно низкая -
Р1, 2 и 3 допускают 1 вход ТТЛ, порт Р0 два входа ТТЛ (это для "старой классики", для более современных внимательно смотрим даташиты!!).
Родился
Аватара пользователя
Сообщения: 6
Зарегистрирован: Вс авг 02, 2026 23:23:32

Сообщение Даник »

Привет!спасибо за обратную связь ,а вот и схема :
1.png
(135.66 КБ) 16 скачиваний
я новичек в этом деле , и самому разобраться не получилось - направился на форум , рекомендации к прочтения какой либо литературы доступной для скачивания в интернете приветствуется .
Кто - то спрашивал про цель,так вот цель моей схемы это изучение схемотехники и способы бороться с недостатками , т.к. я новичек я пытался упростить схему .
Насчет пробника - он есть ,заказывал с китая ,но у него не работает отображение логической единицы ,искать про это информацию - не нашел.
BOB51 классная схема , мне интересна для чего она используется вами и по какой литературе вы дошли до такого уровня понимания, я самоучка и учить некому.
Всем спасибо!
Родился
Аватара пользователя
Сообщения: 6
Зарегистрирован: Вс авг 02, 2026 23:23:32

Сообщение Даник »

ах да забыл добавить .ejsanyo ассемблер чисто для отладки , если не ошибаюсь Keil устанавливал . Спасибо
Мучитель микросхем
Сообщения: 444
Зарегистрирован: Ср сен 02, 2015 07:47:20

Сообщение HardWareMan »

ejsanyo писал(а): Пн авг 03, 2026 16:03:18 А вот здесь я не понял. Ведь разница между HC и HCT сериями только в уровнях входной лог. 1, но не в быстродействии. Может, у вас в схеме шина была перегружена, и HCT "простила" просадку уровней? :o
Неверно. Уровни у них одинаковые.
Изображение
А вот время заметно отличается:
Изображение
Изображение
Вложения
3.PNG
(105.8 КБ) 85 скачиваний
2.PNG
(131.09 КБ) 85 скачиваний
1.PNG
(101.29 КБ) 92 скачивания
Мучитель микросхем
Сообщения: 444
Зарегистрирован: Ср сен 02, 2015 07:47:20

Сообщение HardWareMan »

ejsanyo писал(а): Пн авг 03, 2026 16:03:18 Так и работают классические экс-51 со внешними шинами тоже не быстро. Тактовая частота делится на 12!
Делится, но не у всех. Это надо обратиться к букварю на конкретный чип. В диком миру есть MCS51 с 1 тактом/инструкцию. Букварь на TSC80C31 говорит, что для 16МГц варианта время уже практически соразмерно с временем задержки у 74HC573. Можете прикинуть делители обсуждаемого чипа сами, учитывая, что период 16МГц это 62,5нс.
Изображение
Вложения
Снимок.PNG
(245.83 КБ) 91 скачивание
Друг Кота
Аватара пользователя
Сообщения: 15711
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Сообщение BOB51 »

Даник писал(а): Пн авг 03, 2026 17:56:47 ...
BOB51 классная схема , мне интересна для чего она используется вами и по какой литературе вы дошли до такого уровня понимания, я самоучка и учить некому....
"КОТУИНКО" - универсальный модуль расширения на основе MCS51 в режиме совмещенной памяти программ/данных для ПК под СОМ порт и простейшую прожку terminal в ПК (плюс штуки три программатора в коллекции на ее базе)... На сегодня проект чуток заморожен - мои учебные потребности удовлетворены, аппаратные задачи пока исчерпаны... Заинтересованных в вариантах работ под SDCC не нашлось, да к тому времени успела появиться ардуиноIDE с С++...
Ежли есть желание перечитать историю проекта (правда там много "побочного флуда" :wink: ) смотрим тут :
viewtopic.php?t=156720
(и подключаемся с вопросами/обсуждением в конце , если интересно будет)...
Начало правда было еще древнее:
viewtopic.php?p=3167597#p3167597
:beer:
Насчет "самоучек" ...
У меня по минпросвету СССР только средняя школа (остальное платное и/или "специальное" :dont_know: )
8)
Родился
Аватара пользователя
Сообщения: 6
Зарегистрирован: Вс авг 02, 2026 23:23:32

Сообщение Даник »

Cпасибо ,почитаю.
А вот насчет своего проекта хочу поделится сдвигом с мертвого места - после замены мк у меня на 1 ножке уже 2,45В , не могу конечно узреть форму сигнала но подозреваю ,что там видимо прямоуголники.
Мк брал с рук ,в общем штук 20-30 ,видимо не все живые...
Родился
Аватара пользователя
Сообщения: 6
Зарегистрирован: Вс авг 02, 2026 23:23:32

Сообщение Даник »

Хах забавно :lol: ,прошил другой код :ORG 0000H

START:
CPL P1.0 ;


MOV R3, #20 ;
DELAY_OUTER:
MOV R2, #200 ;
DELAY_MID:
MOV R1, #250 ;
DELAY_INNER:
DJNZ R1, DELAY_INNER
DJNZ R2, DELAY_MID
DJNZ R3, DELAY_OUTER

SJMP START ;
END
по итогу - сначала работало ,удивился ,выключил через кнопку и снова включил ,итог странный - теперь светодиод на 1 ножке светится только по нажатию кнопки ресет ,сменил мк и снова все заработало ,вроде бы все! НО ,через небольшой промежуток времени светодиод снова не мигает ,проверял пробником еще один мк ,вроде работало ,а потом все...Что делать? В чем причина?Они умерли?если да ,то почему? :dont_know:
Друг Кота
Аватара пользователя
Сообщения: 15711
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Сообщение BOB51 »

Первый вопрос -
Чем Вы ту ПЗУшку прошиваете?
Её ж каждый раз надо из схемы вытаскивать в программатор...
Плюс правильная генерация временных интервалов нужна.
Далее сам компилятор требует определенных правил, в том числе обхода области таблицы прерываний для кода программы.
Есть где то схема для учебного пошагового исполнения - искать надо (но там ещё и дополнительные деталюшки вроде были нужны) .
Да и компилятор предпочтительно однотипный (или таблица команд плюс разграфленый листочек бумаги с карандашиком для компиляции в ручную - для mcs51 это вполне реальный вариант)...
На начальном этапе рекомендую кнопки с аппаратным антидребезгом делать (лишние программные заморочки уйдут).
Да и сам макет...
Уж если совсем с МК Хреновато (нет возможности достать атмелевские AT89S52(S51) с внутренним РПЗУ) то можно минимальный Кристал ПЗУ типа РФ5/РФ2 на пару килобайт для загрузчика и ОЗУшку на 32килобайта под совмещённую память программ/данных для своих тест-программок.
Жестковато, но на поиграться хватит.
Ваша схема не очень удачна из за излишних перемычек в цепях генератора и сброса (да и сам сброс "не очень" - нет разрядного диода), номиналы конденсаторов генератора не указаны... Плюс... МК лишних проводков (или "не так проложенных") очень сильно не любят. Макет должен быть корректно изготовлен.
8)
Родился
Аватара пользователя
Сообщения: 6
Зарегистрирован: Вс авг 02, 2026 23:23:32

Сообщение Даник »

Шью SST39FS010A на самодельном программаторе на 74HC595. Естественно, выдергивать флешку из панели постоянно не супер удобно, но для отладки ядра пока хватает.
Прошивку проверяю простейшую (blink через CPL P1.0 и цикл задержки на DJNZ), байты пока перевожу сверяясь с таблицей команд MCS-51.
Насчёт цепей сброса и кварца вы правы .Добавлю разрядный диод параллельно конденсатору сброса .Конденсаторы на кварце по 22 пикофарада ,насчёт лишних проводников их на плате всего 8 и то они расположены далеко от кварца ,потому считаю что не мешают,хотя кто его знает:)
Нашел транзистор. Понюхал.
Аватара пользователя
Сообщения: 176
Зарегистрирован: Чт апр 28, 2016 22:33:47
Откуда: ARPA Internet

Сообщение ejsanyo »

HardWareMan писал(а): Пн авг 03, 2026 18:10:21 А вот время заметно отличается:
Как вы таблицы-то смотрите?! :facepalm: Смотрите значения для VCC=5В, ну или хотя бы 4,5! Самая медленная времянка там указана для низковольтного питания! И да, смотрите значения именно для комнатной температуры, ибо очевидно, что самоделку "чисто для себя" не будут пихать в экстремальные условия.
HardWareMan писал(а): Пн авг 03, 2026 18:10:21 Неверно. Уровни у них одинаковые.
Опять не туда смотрите, это "рекомендуемые значения параметров", типа которые лучше не превышать. А нужно смотреть на пороговые значения входного напряжения! У серии HCT пороги специально снижены до 2 с небольшим вольт, чтобы была совместимость с классической ТТЛ серией. В которой единица гарантировано болтается лишь на уровне 3 с небольшим вольт. А HC серия имеет пороги типичные для КМОП логики, единица порядка 70% от напряжения питания.
Погуглите, спросите у вашего любимого ИИ, и узнаете, что HCT намекает именно на ТТЛ совместимость, и более ни на что.
Хоронили кваку - порвали три Rocket Launcherа.©
Мучитель микросхем
Сообщения: 444
Зарегистрирован: Ср сен 02, 2015 07:47:20

Сообщение HardWareMan »

ejsanyo писал(а): Пн авг 03, 2026 23:32:08 У серии HCT пороги специально снижены до 2 с небольшим вольт, чтобы была совместимость с классической ТТЛ серией.
Учитывая, что у каждого перепада есть скорость нарастания/спада, то ниже порог = быстрее сработка. И в чём я не прав то? Что касается таблиц, то влияние архитектуры есть даже на указанном узком диапазоне рабочих напряжений. Мир не идеален и нам ещё не известно, чем питает ТС свою схему. А по таблице 0,5 вольта (с 5V до 4,5V) разница уже заметна, если говорить в масштабах времени работы чипа (судя по букварю он явно работает не на 1/12 от частоты кварцевого генератора). Я просто хочу сказать, что в реальности эффект от замены есть, при этом при работе с КМОП. А в схеме у ТС вообще указано 74LS573.
Нашел транзистор. Понюхал.
Аватара пользователя
Сообщения: 176
Зарегистрирован: Чт апр 28, 2016 22:33:47
Откуда: ARPA Internet

Сообщение ejsanyo »

HardWareMan писал(а): Вт авг 04, 2026 00:29:39 Учитывая, что у каждого перепада есть скорость нарастания/спада, то ниже порог = быстрее сработка.
Нет не правильно, "сработка" практически полностью определяется выходным каскадом и его скоростью нарастания/спада уровней. А также структурой внутренней логики. И в этой части серии HC и HCT одинаковые. Да и вообще это не важно, поскольку с этим контроллером входы всё равно будут работать с КМОП-размахом сигнала. Если схема не перегружена чем попало, конечно.
Ну если кто-то опасается нехватки скорости, с таким-то контроллером, есть в природе серии AC/ACT, например, там этого хватит каждому.
Хоронили кваку - порвали три Rocket Launcherа.©
Ответить

Вернуться в «Разные вопросы по МК»