Keil 提供了串行窗口, 我们可以直接在串行窗口中键入字符, 该字符虽不会被显示出来,却能传递到仿真 CPU中,如果仿真 CPU通过串行口发送字符,那么这些字符会在串行窗显示出来,用该窗口可以在没有硬件的情况下用键盘模拟串口通讯。下面通过一个例子说Keil 串行窗口的应用。该程序实现一个行编缉功能,每键入一个字母,会立即回显到窗口中。编程的方法是通过检测 RI 是否等于 1 来判断串行口是否有字符输入,如果有字符输入,则将其送到 SBUF,这个字符就会在串行窗口中显示出来。其中 ser_init 是串行口初始化程序,要使用串行口,必须首先对串行口进行初始化。
MOV SP,#5FH ;堆栈初始化 CALL SER_INIT ;串行口初始化 LOOP: JBC RI,NEXT ;如果串行口接受到字符,转 JMP LOOP ;否则等待接受字符 NEXT: MOV A,SBUF ;从SBUF中取字符 MOV SBUF,A ;回送到发送SBUF中 SEND: JBC TI,LOOP ;发送完成,转LOOP JMP SEND ;否则等待发送完成 SER_INIT: ;中断初始化 MOV SCON,#50H ORL TMOD,#20H ORL PCON,#80H MOV TH1,#0FDH ;设定波特率 SETB TR1 ;定时器1开始运行 SETB REN ;允许接收 SETB SM2 RET END 编译通过了: assembling chuanhangkou.asm... chuanhangkou.asm - 0 Error(s), 0 Warning(s).
连接报错。请有编程经验的师兄帮忙看看问题在哪里?
Build target 'Target 1' assembling chuanhangkou.asm... linking... BL51 BANKED LINKER/LOCATER V6.00 - SN: Eval Version COPYRIGHT KEIL ELEKTRONIK GmbH 1987 - 2005 "chuanhangkou.obj" TO "A1" *** FATAL ERROR L210: I/O ERROR ON INPUT FILE: EXCEPTION 0021H: PATH OR FILE NOT FOUND FILE: chuanhangkou.obj Target not created
|