共2条
1/1 1 跳转至页
问一个串口中断调试的子程序 问题
问
org 0000h
jmp start
org 0023h
jmp server 串口中断
org 0100h
start:
jmp startio
////////////////////////////////////////////////////////////////////////////////////////
server: 串口中断子程序
clr ea
clr ri
push dph
push dpl
mov a,sbuf
mov sbuf,a
wait:
jnb ti,wait 发送一个数据
clr ti
pop dpl
pop dph
setb ea
reti 串口中断结束
/////////////////////////////////////////////////////////////////////////////////////
startio:
nop
nop
mov tmod,#20h 串口中断初始化 t1工作于2模式
mov th1,#0ffh
mov tl1,#0ffh 22.1184M的晶振,设置为115200
mov scon,#50h
mov pcon,#80h 置位scon
setb tr1 开时钟中断
setb ea 开串口中断
setb es 总中断使能
nop
nop
main:
nop
nop 进入死循环等待串口中断
jmp main
/////////////////////////////////////////////////////////////////////////////////
end
说明:我是这样调试的,1、直接把仿真头插到已经成功运行了的引用电路上,行么?
2、仿真器是连接的并口,然后我们通过串口调试程序往下发数据,用的是com1口
问题:上面的程序能够调通但进不了串口中断
............. 答 1: 我觉得应该可以. 答 2: 谢谢回复大哥,不行啊.....您能帮我调调么.....当作工程做也可以lsn061@163.net 答 3: 你试试看我认为你的主程序中应加一个发送程序使ti为1,这样才能进入中断
并且我认为这句没必要
wait:
jnb ti,wait 发送一个数据
clr ti
因为串行中断中不用再用软件查询一遍吧!
不知道你编的这个程序要完成的任务是什么? 答 4: re:server: 串口中断子程序
JBC RI, SERVER_RX
CLR TI
RETI
SERVER_RX:
PUSH SBUF
POP sbuf
reti ; 串口中断结束
答 5: 精妙绝伦--外星人的收发过程,C人没法比... 答 6: 谢谢大哥们,我调通了谢谢:
wag ice_snow hotpower dengm
jmp start
org 0023h
jmp server 串口中断
org 0100h
start:
jmp startio
////////////////////////////////////////////////////////////////////////////////////////
server: 串口中断子程序
clr ea
clr ri
push dph
push dpl
mov a,sbuf
mov sbuf,a
wait:
jnb ti,wait 发送一个数据
clr ti
pop dpl
pop dph
setb ea
reti 串口中断结束
/////////////////////////////////////////////////////////////////////////////////////
startio:
nop
nop
mov tmod,#20h 串口中断初始化 t1工作于2模式
mov th1,#0ffh
mov tl1,#0ffh 22.1184M的晶振,设置为115200
mov scon,#50h
mov pcon,#80h 置位scon
setb tr1 开时钟中断
setb ea 开串口中断
setb es 总中断使能
nop
nop
main:
nop
nop 进入死循环等待串口中断
jmp main
/////////////////////////////////////////////////////////////////////////////////
end
说明:我是这样调试的,1、直接把仿真头插到已经成功运行了的引用电路上,行么?
2、仿真器是连接的并口,然后我们通过串口调试程序往下发数据,用的是com1口
问题:上面的程序能够调通但进不了串口中断
............. 答 1: 我觉得应该可以. 答 2: 谢谢回复大哥,不行啊.....您能帮我调调么.....当作工程做也可以lsn061@163.net 答 3: 你试试看我认为你的主程序中应加一个发送程序使ti为1,这样才能进入中断
并且我认为这句没必要
wait:
jnb ti,wait 发送一个数据
clr ti
因为串行中断中不用再用软件查询一遍吧!
不知道你编的这个程序要完成的任务是什么? 答 4: re:server: 串口中断子程序
JBC RI, SERVER_RX
CLR TI
RETI
SERVER_RX:
PUSH SBUF
POP sbuf
reti ; 串口中断结束
答 5: 精妙绝伦--外星人的收发过程,C人没法比... 答 6: 谢谢大哥们,我调通了谢谢:
wag ice_snow hotpower dengm
共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分 |