Python: программирование 8051 - PullRequest
       10

Python: программирование 8051

1 голос
/ 30 октября 2010

Могу ли я запрограммировать 8051, используя Python?

Я не получаю никаких программ для 8051 в python environment.

Если кто-нибудь знает, пожалуйста, помогите мне.

Ответы [ 2 ]

4 голосов
/ 04 ноября 2010

Обратите внимание, что «отказ от ответственности» для Python-on-a-Chip гласит:

"Виртуальная машина PyMite НЕ ИМЕЕТ:

Встроенный компилятор Любая из библиотек Python (без батарей) Готовое решение для начинающих (вам нужно знать C и как работать с микроконтроллерами) "

Таким образом, если цель спрашивающего для python состояла в том, чтобы избежать столкновения со странностью 8051, это может не помочь.

В частности, 8051 - это архитектура в стиле «Гарвард», с отдельными кодовыми пространствами ОЗУ и ПЗУ, с очень ограниченным внутренним ОЗУ и большим внешним ОЗУ, доступ к которому можно получить только через загрузку специального регистра DPTR, а затем чтение или запись. косвенно, плюс нет поддержки внешнего стека ОЗУ и встроенной поддержки переменных на основе стека. Таким образом, для большинства высокоуровневых языков общего назначения требуется много настроек и доработок, чтобы работать на 8051. Хороший C-компилятор для 8051 может скрыть многие из этих низкоуровневых деталей, но вам придется сжечь много циклов, чтобы выполняйте простые инструкции для процессоров настольных ПК и даже для большинства новых архитектур встроенных контроллеров, и даже если вы можете жить с таким уровнем неэффективности, вам все равно нужно разобраться с различными областями памяти и другими особенностями.

Итак, заставить Python работать на 8051, вероятно, будет сложным проектом для тех, кто глубоко знаком с его причудливой архитектурой. Если ваша цель - сбросить питона на 8051, чтобы избежать необходимости изучать эти причуды, я не уверен, что это возможно. (Но, я полагаю, компиляторы C продолжают становиться все лучше и лучше ...)

2 голосов
/ 30 октября 2010

Python-on-a-Chip выглядит так близко, как вы собираетесь получить. Он может работать на некоторых вещах, которые немного более мощные, чем 8051.

...