共2条
1/1 1 跳转至页

问
请问 谁有51 的IO模拟窜口汇编程序,网上怎么只能查到c语言的字程序
答 1: 我有 答 2: 可以提供大家学习一下嘛 答 3: 看看吧,不同波特率延时要自己算TXD2 EQU P1.0
RXD2 EQU P1.1 ; P1.0 为发送端,P1.1 为接收端
ORG 0000H
AJMP MAIN
ORG 0100H
MAIN:
MOV A, #30H ;
MOV R5, #08 ;
SETB RXD2 ;
TX:LCALL INPUT ;调用发送子程序,将寄存器A 中内容发给PC 机
SETB TXD2 ;P1.1 置高
MOV R0,#40H
RX:LCALL OUTPUT ;数据存放在以40H开始的地址中
MOV @R0,A
INC R0
DJNZ R5, RX ;数据接收结束,则等待,否则转RX 继续接收
AJMP $
;**************延时833μs 子程序*****
DEL833: MOV R7 ,#0F4H
MS11: DJNZ R7 ,MS11
RET
; **********************************
;******** 89C51发送数据给PC 机子程序****
INPUT: CLR C
MOV TXD2,C ;发送起始位
LCALL DEL833 ;
MOV R3,#8
REP: RRC A
MOV TXD2 ,C
LCALL DEL833
DJNZ R3,REP ;发送8 位数据
SETB C ;发送停止位
MOV TXD2,C
LCALL DEL833
RET
;********从PC 机接收数据子程序********
OUTPUT: JB RXD2, $ ;判断是否有起始位出现
LCALL DEL833
MOV R3,#8
OUT: MOV C ,RXD2
RRC A
LCALL DEL833
DJNZ R3,OUT ; 接收8 位数据
JNB RXD2 ,$ ; 判断是否有停止位出现
RET
END 答 4: 我在做I/O口模拟串口可以共同探讨.QQ495352082 答 5: 我做过一个,貌似有点问题,~~其实直接按照单片机串口的收发时序模拟就可以了,
如果想要功能全的话,可以加入波特率、数据位、校验位的设定,
占用的资源多一点,还可以做成全双工的,~~
答 1: 我有 答 2: 可以提供大家学习一下嘛 答 3: 看看吧,不同波特率延时要自己算TXD2 EQU P1.0
RXD2 EQU P1.1 ; P1.0 为发送端,P1.1 为接收端
ORG 0000H
AJMP MAIN
ORG 0100H
MAIN:
MOV A, #30H ;
MOV R5, #08 ;
SETB RXD2 ;
TX:LCALL INPUT ;调用发送子程序,将寄存器A 中内容发给PC 机
SETB TXD2 ;P1.1 置高
MOV R0,#40H
RX:LCALL OUTPUT ;数据存放在以40H开始的地址中
MOV @R0,A
INC R0
DJNZ R5, RX ;数据接收结束,则等待,否则转RX 继续接收
AJMP $
;**************延时833μs 子程序*****
DEL833: MOV R7 ,#0F4H
MS11: DJNZ R7 ,MS11
RET
; **********************************
;******** 89C51发送数据给PC 机子程序****
INPUT: CLR C
MOV TXD2,C ;发送起始位
LCALL DEL833 ;
MOV R3,#8
REP: RRC A
MOV TXD2 ,C
LCALL DEL833
DJNZ R3,REP ;发送8 位数据
SETB C ;发送停止位
MOV TXD2,C
LCALL DEL833
RET
;********从PC 机接收数据子程序********
OUTPUT: JB RXD2, $ ;判断是否有起始位出现
LCALL DEL833
MOV R3,#8
OUT: MOV C ,RXD2
RRC A
LCALL DEL833
DJNZ R3,OUT ; 接收8 位数据
JNB RXD2 ,$ ; 判断是否有停止位出现
RET
END 答 4: 我在做I/O口模拟串口可以共同探讨.QQ495352082 答 5: 我做过一个,貌似有点问题,~~其实直接按照单片机串口的收发时序模拟就可以了,
如果想要功能全的话,可以加入波特率、数据位、校验位的设定,
占用的资源多一点,还可以做成全双工的,~~
共2条
1/1 1 跳转至页
回复
打赏帖 | |
---|---|
【STM32F769】AI之与本地deepseek对接被打赏50分 | |
Buck电路工作在CCM模式下电感电流的计算公式是什么?被打赏5分 | |
buck电路工作原理被打赏5分 | |
基于MSPM0L1306的MODBUS-RTU协议通讯实验被打赏100分 | |
我想要一部加热台+多合一调试工具被打赏18分 | |
每周了解几个硬件知识+485硬件知识分享被打赏10分 | |
【换取手持数字示波器】树莓派PICO调试器官方固件本地化部署实践被打赏24分 | |
【换取手持数字示波器】分享一个KEIL无法识别CMSIS-DAP调试器的解决办法被打赏20分 | |
【换取手持数字示波器】分享一个自制的ArduinoNano扩展板底板被打赏23分 | |
【换取手持示波器】树莓派PICOW网页烟花被打赏18分 |