查看: 1773|回复: 0
打印 上一主题 下一主题

脱离电脑,直接在51单片机上编程

[复制链接]
跳转到指定楼层
沙发
发表于 2016-4-20 22:28:54 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
脱离电脑,直接在单片机上编程
                                  -----------------SIB51解释器
    我们习惯了在电脑上编程,然后通过编程器将程序下载到单片机上,忘记了单片机也是一种微型计算机。既然我们能在电脑上编程,那为什么不能在单片机上编程呢?
经过一个星期的努力,终于开发出SIB51的雏形。虽然功能很简单,但编写一些小程序(比如流水灯)还是游刃有余的。废话不说了,下面将开始我们的编程之旅。

SIB51简介
为什么叫SIB51呢?
本51解释器是用数字代码编程的,是很简单的解释器。SIB是SIMPLE IS BEAUTY 的缩写,即本解释器遵循简单便是美的思想编写。
编写目的
我是从08年10月开始学的单片机,苦于没电脑,至今都是在纸上编好程序,在学校的免费机房下载程序。我想让那些没有电脑,又想学单片机的初学者能编写最简单的程序,并能看到结果。
SIB51由的结构
SIB51由输入部分和解释部分构成,其中解释部分是可以移置的,也是关键部分。将数字代码由4*4键盘输入到解释器的一个数组中,也就是说这个数组是保存程序的,相当于单片机的ROM部分。然后经解释器分析代码并执行。

1 指令
  SIB51暂定了18条指令,需要时还可以添加。
        指令  数字代码
  #define MOV 0
#define ADD 1
#define SUB 2
#define MUL 3
#define DIV 4
#define INC 5
#define DEC 6
#define RL  7
#define RR  8
#define CLR 9
#define JMP 10
#define JZ  11
#define JNZ 12
#define DJNZ 13
#define CJNE 14
#define OUTPUT 15
#define DELAY 16
#define MARK  17
#define END  18
需要说明的是我们编程时是用数字代码编程的,这也是考虑到51单片机的资源限制,SIB51只能处理无符号整数,所以指令全部用数字表示。与51不同的指令有MARK,RL,RR,DELAY。







回复

使用道具 举报

您需要登录后才可以回帖 登录 | 加入中科因仑

本版积分规则

快速回复 返回顶部 返回列表