8051

    2热度

    2回答

    我似乎无法找到这个问题的答案。 一个LED连接到端口P2.4,一个按钮连接端口P1.7。我们有COUNT变量,每次点击按钮时我们都会增加它。因此,如果我们按下按钮5次led亮起,如果我们按下按钮10次led熄灭,并且继续15 LED亮起,则20熄灭。我认为可能需要使用CJNE指令,但我不确定。 LED EQU P2.4 button EQU P1.7 COUNT EQU 30H OR

    1热度

    1回答

    我需要从AT89s52串行传输数据到PC的超级终端。 为此,我编写了一个示例程序,在89s52微控制器内编程下面给出的代码,并通过串口将它连接到我的PC,从而在我的PC的超级终端上打印“Hello”。现在,当我为相应的端口打开超级终端时,我应该多次看到屏幕上印着“Hello”,但实际上我看到的是一些垃圾数据被打印出来。 这是我用过的代码。 #include < AT89X52.H> #incl

    1热度

    1回答

    char buffer[33]; unsigned int rush = 9876; sprintf(buffer,"%u",rush); 在sdcc中实现此代码。但是,通过使用sprintf函数,我得到ASlink错误:无法在区域DSEG的内部RAM中获得127个连续字节。 任何人都可以请帮助纠正这一点。 我需要将整数值转换为字符串以在液晶显示器上显示它。

    0热度

    3回答

    如何在闪存中的特定内存位置写入函数?有没有指示?我需要特定的链接器吗?

    0热度

    1回答

    请原谅我,如果这个问题有点过于基本,但我已经试过几乎无处不在,但没有找到线索。 我正在使用esp8266模块并上传了固件。我也将它设置为“接入点”,以便其他模块能够与它连接。我的问题是我想通过8051微控制器对其进行编程控制。我在网上搜索过,有很多关于如何通过arduino进行编程的文档,但这并不能解决我的问题。我想用汇编语言构建一个串行协议,将8051到esp8266的数据传输到连接的模块(如A

    0热度

    2回答

    我想将一个半字节从累加器移到P1的高半字节。 现在,我一点 MOV C, ACC.3 MOV P1.7, C MOV C, ACC.2 MOV P1.6, C MOV C, ACC.1 MOV P1.5, C MOV C, ACC.0 MOV P1.4, C 这似乎是一个好办法给我设定的四位位:它的成本12个指令周期和代码很长。我希望SWAP和XCHD可以做到这一点,但间接寻址似

    8热度

    2回答

    我希望优化一个8位MCU(基于8051的)SHA-1的实现。输入数据只有8个字节,所以我不知道,如果事情可以做,以提高该宏: #define S(x,n) ((x << n) | ((x & 0xFFFFFFFF) >> (32 - n))) 我的问题是,宏观P电话S与S(b, 30)时,大约需要60us才能完成。由于有80个电话给P,它总计大约4.8ms。 如果我没错,S(x,n)预计x是u

    1热度

    1回答

    我使用EdSim51仿真器(用于8051 MCU),跟在this notes之后。我写了一个发送数据的程序,但有时(并非总是)它发送垃圾。 JMP main ORG 23h ; serial interrupt vector JBC TI,sendString RETI ORG 30h str: DB 'H','e','l','l','o',0Dh,0 sendStrin

    0热度

    3回答

    如何在不同的微控制器系列IDE /编译器上编译不同的微控制器。 例如,我有8051 keil uVision IDE。我需要编译PIC或AVR控制器的代码。 是否有可能通过更改IDE中的任何内部设置? 或通过添加控制器特定的头文件等? 的实际答案我在这里是必须的, 什么IDE /编译器将在KEIL的设备列表或AVR Studio或PIC等选择特定的“微控制器”之后添加到代码..?

    0热度

    1回答

    我试图安装一个特定的修订版本(9092)SDCC代表(当然Ubuntu的),当我运行下面的命令,我得到这个错误: svn: E000110: Unable to connect to a repository at URL 'svn://svn.code.sf.net/p/sdcc/code/trunk/sdcc' svn: E000110: Can't connect to host 'svn