共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 跳转至页
回复
有奖活动 | |
---|---|
【有奖活动】分享技术经验,兑换京东卡 | |
话不多说,快进群! | |
请大声喊出:我要开发板! | |
【有奖活动】EEPW网站征稿正在进行时,欢迎踊跃投稿啦 | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
打赏了!打赏了!打赏了! |
打赏帖 | |
---|---|
vscode+cmake搭建雅特力AT32L021开发环境被打赏30分 | |
【换取逻辑分析仪】自制底板并驱动ArduinoNanoRP2040ConnectLCD扩展板被打赏47分 | |
【分享评测,赢取加热台】RISC-V GCC 内嵌汇编使用被打赏38分 | |
【换取逻辑分析仪】-基于ADI单片机MAX78000的简易MP3音乐播放器被打赏48分 | |
我想要一部加热台+树莓派PICO驱动AHT10被打赏38分 | |
【换取逻辑分析仪】-硬件SPI驱动OLED屏幕被打赏36分 | |
换逻辑分析仪+上下拉与多路选择器被打赏29分 | |
Let'sdo第3期任务合集被打赏50分 | |
换逻辑分析仪+Verilog三态门被打赏27分 | |
换逻辑分析仪+Verilog多输出门被打赏24分 |