原帖由 huchuan987 于 2010-8-18 12:25 发表 折腾了两天,还没弄明白这个C8051F的开发环境是如何使用。 现在的情况是这样子: 刚开始时我安装了KEIL C+C8051F的Keil µVision 调试驱动 v3.40 。然后可以在KEIL C里找到C8051F320这个芯片了,可是去 ...
摸爬滚打了一个星期了,说说我的理解吧:
1、C8051F是基于51核的,可以实现位寻址,例如:
sbit LED = P2^2;
sbit SDA = P0^4;
也可以直接用位地址形式:
sbit ACK = 0xC1; // Acknowledge flag
sbit EA = 0xAF; // Global interrupt enable
2.、Silicon Laboratories IDE提供了C语言环境下两种头文件定义,我的安装路径下所在目录:D:\Programs\SiLabs\MCU\IDEfiles\C51\INC
c8051F320.h是Keil编译环境下用的,C8051F320_defs.h是Generic编译环境下用的,根据使用的编译环境来用,包含错误会出错,两种编译环境的语言规范是不一样的,所以会出现楼主说的sfr P0 = 0x80和SFR (P0, 0x80); 。不过,定义的寄存器名那些是一样的,可以通用。
Silicon Laboratories IDE该调试环境不包含编译环境,需由第三方提供。比如Keil。在Project -> Tool Chain Integration可以看到它支持的编译环境。建立新工程的时候,出现编译错误,或者拷贝别人的工程,编译出错了,应当先查看那些设置是否正确。根据自己的安装目录来设置,下面是我的设置:
Assembler:D:\Programs\Keil\C51\BIN\A51.EXE
Compiler:D:\Programs\Keil\C51\BIN\C51.exe
Linker:D:\Programs\Keil\C51\BIN\BL51.EXE
如果要输出Hex文件,在Project -> Target Build Configuration -> Hex file generation里设置,我的设置:
D:\Programs\Keil\C51\BIN\oh51.EXE
用Silicon Laboratories IDE编译,可以把D:\Programs\SiLabs\MCU\IDEfiles\C51\INC目录下的相应头文件拷出来用,放到工程文件夹里,用#include "c8051F320.h"包含该头文件。
3、用Keil可以开发C8051F,Keil是支持C8051F的,在Silicon Laboratoies.Inc.里可以找到相应的器件,头文件是#include <C8051F320.h>。
但是要仿真的,需要插件支持,附件有SiC8051F_uVision 3.31.rar,它支持最新版的uV4,安装之后,就可以仿真了,具体设置,可以参考以下信息:
[资料下载]做了个C8051F单片机USB接口的仿真编程器,秀一秀,22楼
上传仿真编程器的使用说明书
https://bbs.eeworld.com.cn/thread-153560-3-1.html
如果仅仅是要编程hex文件,可以不必要用Keil,FLASH Programming Utility了直接烧录C8051F。
4、像使用其它51系列一样,直接建工程编译生成hex。要仿真就装插件,只要烧录,可以用其它软件如FLASH Programming Utility。
SiC8051F_uVision 3.31.rar
(3.12 MB, 下载次数: 406)
|