|
使用UEStudio开发C51程序
一直以来觉得Keil uVision自带的编辑器常常不能很好的支持中文,伟福的编辑环境又不支持鼠标滚动,于是就琢磨着解决方法,后来发现一个功能强大的编辑软件UEStudio,经过一段时间的琢磨,找到了一个好办法可以在UEStudio环境下开发C51程序,缺点是头文件路径必须完整,下面就先针对DOS版的Keil 4.01编译器来向大家介绍。对于高版本的KEIL这个方法同样适用,只要设置好路径即可。
我们知道C51程序的开发过程为翻译-链接-Object to Hex转换分三步执行。
例如:
C:\COMP51\C51.EXE D:\test\METER.C DB SB OE
C:\COMP51\L51.EXE D:\test\METER.OBJ to D:\test\METER RS (256)
C:\COMP51\OH51.EXE D:\test\METER
注:C51.exe,L51.exe具体参数请查阅C51编译器手册
下面开始准备设置
首先拷贝the MS-DOS C51 compiler 到 C盘根目录。
然后打开UEStudio-【高级】-【工具配置】菜单做如下设置
(1)编译命令配置
原始命令行C:\COMP51\C51.EXE D:\test\METER.C DB SB OE
设置命令行C:\COMP51\C51.EXE %P%N.C DB SB OE
(2)链接命令配置
原始命令行C:\COMP51\L51.EXE D:\test\METER.OBJ to D:\test\METER RS (256)
设置命令行C:\COMP51\L51.EXE %P%N.OBJ to %P%N RS (256)
(3)Object to Hex转换命令配置
原始命令行C:\COMP51\OH51.EXE D:\test\METER
设置命令行C:\COMP51\OH51.EXE %P%N
设置效果图:
如果觉得这样麻烦,可以采用批处理来解决,以下是批处理方式,这种方式中以上三步一次全部执行
Step 1:建立以下批处理文件Compile.bat或者Compile.cmd,编辑内容如下:
@ECHO off
REM Demonstration of Comp51 Commands.
ECHO ============= Compiling the Program =============
C:\COMP51\C51.EXE %1.C DB SB OE
if errorlevel 3 pause & goto error1
if errorlevel 2 pause & goto error1
if errorlevel 1 pause & goto error1
ECHO ============= Linking the Program =============
C:\COMP51\L51.EXE %1.OBJ to %1 RS (256)
if errorlevel 3 pause & goto error2
if errorlevel 2 pause & goto error2
if errorlevel 1 pause & goto error2
ECHO ============= OHS51 the Program =============
C:\COMP51\OH51.EXE %1
ECHO ============= Converting the Program to binary =============
C:\COMP51\HEX2BIN.EXE /Q %1.HEX
goto end
:error1
echo Status: !!!!!!!!!!!!!!!!!!!! Compile was aborted !!!!!!!!!!!!!!!!!!!!
exit
:error2
echo Status: !!!!!!!!!!!!!!!!!!!! Link was aborted !!!!!!!!!!!!!!!!!!!!
exit
:end
echo Status: Build target was successful.
exit
Step 2:打开UEStudio-【高级】-【工具配置】菜单做如下设置
设置命令行C:\COMP51\Compile.bat %P%N
最后把高版本Keil的批处理文件列出供大家参考,我默认安装在C盘。
@echo off
@C:\Keil\C51\BIN\C51.EXE %1.C DB SB OE
@echo off
if errorlevel 1 pause & goto error1
if errorlevel 2 pause & goto error1
if errorlevel 3 pause & goto error1
@C:\Keil\C51\BIN\BL51.EXE %1.OBJ to %1 RS (256)
@echo off
if errorlevel 1 pause & goto error2
if errorlevel 2 pause & goto error2
if errorlevel 3 pause & goto error2
@C:\Keil\C51\BIN\OH51.EXE %1
:@C:\COMP51\HEX2BIN.EXE /Q %1.HEX
@goto end
:error1
@echo Status: Compile was aborted !!!
exit
:error2
@echo Status: Link was aborted !!!
exit
:end
@echo Status: Build target was successful.
exit
由于本人水平有限,难免有不妥之处,其他编译器如果也能如此应用,欢迎大家和我交流。 |
阿莫论坛20周年了!感谢大家的支持与爱护!!
知道什么是神吗?其实神本来也是人,只不过神做了人做不到的事情 所以才成了神。 (头文字D, 杜汶泽)
|