完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
最近翻译一段汇编程序,使用的c8051f505单片机,与FPGA之间是地址数据总线通讯,通过中断在地址中读取数据,汇编程序能顺利跑起来,我翻译成c后发现进入中断怎么也读取不到地址的数据,求大神指点,汇编代码如下:
LJMP MAIN ORG 000BH LJMP A1CDF ORG 001BH LJMP A1CC8 MAIN: ANL PCA0MD, #0BFh MOV SFRPAGE, #CONFIG_PAGE MOV OSCICN, #0C5H MOV P0SKIP, #03H MOV P1SKIP , #0E0H MOV 0, #00H ;交叉开关使能 MOV XBR1, #0C0H MOV XBR2, #040H MOV P2MDIN, #0FH ;端口配置,P0开漏,p1,P4口为推挽输出 MOV P1MDOUT, #0E7H MOV P2MDOUT, #0FH MOV P3MDOUT, #0FFH ;P0-p4端口为数字输入,p2四位模拟输入端口 MOV P4MDOUT, #0FFH MOV EMI0CF, #09H MOV EMI0TC, #045H MOV SFRPAGE, #ACtiVE_PAGE ;外部储存器设置 CLR P1.1 LCALL A1D30 CLR P1.0 ;15530主复位 CLR P1.4 ;开接收 SETB EA ;清中断屏蔽位,开CPU中断 A1CC8: PUSH DPL ;接收中断服务子程(T1中断) PUSH DPH PUSH ACC MOV DPTR,#02001H MOVX A,@DPTR JB B.0,A1D19 MOV RMSB,A MOV COM_DATA,#00H ;SETB P2.1 JNB P1.3,A1D1D MOV COM_DATA,#0FFH A1D1D: SETB B.0 SJMP LP5 A1D19: MOV RLSB,A SETB B.3 SJMP LP5 翻译成c后 #include #include #include void Oscillator_Init(void) { SFRPAGE = CONFIG_PAGE; OSCICN = 0xC5; SFRPAGE = ACTIVE_PAGE; } //定时器初始化//A1D30 void Timer_Init(void) { ET0=1; ET1=1; TR0=1; TR1=1; TMOD=0x66; TL0=0xF8; TH0=0xF8; TL1=0xF8; TH1=0xF8; } void EMI_IN(void) { SFRPAG=CONFIG_PAGE; EMI0CF = 0x09; //配置EMIF端口复用方式,带块选择的分片方式,<4k用内存,>4k用外存 EMI0TC = 0x45; //最小地址建立时间、最大保持时间。原值55H SFRPAGE=ACTIVE_PAGE ; } void Port_IO_Init(void) { SFRPAGE = CONFIG_PAGE; P0SKIP = 0x03; // Skip P0.0 and P0.1 P1SKIP = 0xE0; XBR0 = 0x00; XBR1 = 0xC0; //T2、T1、T0连接到端口引脚 XBR2 = 0x40; //使能交叉开关 P2MDIN = 0x0F; //设置P2口没有模拟输入 P1MDOUT = 0xE7; //推挽输出带负载能力强 P2MDOUT = 0x0F; P3MDOUT = 0xFF; P4MDOUT = 0xFF; SFRPAGE=ACTIVE_PAGE ; } INTERRUPT(TIMER1_ISR, INTERRUPT_TIMER1) { if(BB0) { RLSB=XBYTE[0X2001]; BB3=1; } else { RMSB=XBYTE[0X2001]; COM_DATA=0x00; if(P13==0)BB0=1; else { COM_DATA=0xff; BB0=1; } } } 在c中RMSB=XBYTE[0X2001]这句有没有啥问题?没读取到数,复用地址数据总线
|
|
相关推荐 |
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
685 浏览 0 评论
使用Keil建立完整的工程,并使用外部中断0触发数码管显示903
1235 浏览 0 评论
嵌入式学习-飞凌嵌入式ElfBoard ELF 1板卡-使用AHT20进行环境监测之AHT20传感器介绍
1175 浏览 0 评论
896 浏览 0 评论
944 浏览 1 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
11864 浏览 31 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-3 07:47 , Processed in 0.615900 second(s), Total 68, Slave 51 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号