如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
DS80C400的KeilC语言编程摘要:在设计DS80C400网络微控制器的ROM时,一组功能被公开出来,可以在8051汇编、C或Java™程序中访问。DS80C400的ROM可以被视作一个构建C或汇编程序的起跑架,它提供TINI®经过验证的网栈、进程调度器和存储器管理器。简单程序,如网络扬声器,可以用汇编语言轻松实现,更复杂一点的,如HTTP服务器这种需要与文件系统交互的程序,可以使用C语言。文中介绍了如何从Keil的µVision2®开发套件着手构建一个DS80C400的C语言应用程序,通过实现一个简单的HTTP服务器演示如何使用DS80C400的ROM功能。所有开发都采用了TINIm400验证模块和包含7.05版C编译器'C51'的KeilµVision22.37。另请参考:HYPERLINK"http://www.maxim-ic.com.cn/an3346"在DS80C400应用中使用SDCC编译器HYPERLINK"http://www.maxim-ic.com.cn/an3550"用IAR编译器开发DS80C400从Keil的µVision2开始你可以使用KeilµVision2开发套件,构建一个简单的HelloWorld型C语言程序。按照以下步骤完成你的第一个用于DS80C400的C语言应用程序。选择Project-->CreateNewProject。输入项目名称。屏幕上将出现SelectDeviceforTarget对话框。在Database中选择Maxim和DS80C400。选择UseExtendedLinker和UseExtendedAssembler。点击OK继续。图1所示为该对话框的正确配置。图1.为一个新的KeilµVision2项目选择将有对话框提示:CopyMaxim80C390StartupCodetoProjectFolderandAddFiletoProject?选择No。我们将提供自己的启动代码。当项目窗口在左侧打开时,打开Target1。右击SourceGroup1,并选择Addfilestogroup'SourceGroup1'。在弹出的文件对话框中,将filesoftype改为AsmSourcefile。添加文件startup400.a51。该文件可以在HYPERLINK"http://files.dalsemi.com/tini/ds80c400/c_libraries/HelloWorld.zip"http://files.dalsemi.com/tini/ds80c400/c_libraries/HelloWorld.zip上的zip文件中找到。双击打开文件startup400.a51。找到段声明?C_CPURESET?0。确保代码段声明为400000h。?C_CPURESET?0SEGMENTCODEAT400000h另外,应有一个"DB'TINI'"行,后跟另一个DB行,带有注释"Targetbank"。这样就可以确保应用建立地址为400000h,对应于TINIm400上flash的起始地址。请确认该行为:DB40h;Targetbank创建一个新的文件,以"main.c"为文件名来保存。在该文件中写入如下代码:#includevoidmain(){printf("Test400Program\r\n");while(1){}}保存文件内容。右击SourceGroup1,并添加源文件main.c。现在就将该源文件添加到项目中了。右击左侧的Target1。选择Optionsfortarget'Target1'打开选项对话框。第一个选择标签应该为Target。将MemoryModel改为Large:variablesinXDATA。将CodeRomSize改为ContiguousMode:16MBprogram。选中检查框UsemultipleDPTRregisters和farmemorytypesupport。在Off-chipCodememory项目下加入第一个入口:Start:0x400000,Size:0x80000。在Off-chipXDatamemory项目下加入一个入口:Start:0x10000,Size:0x4000。图2所示为配置完成的对话框。确认检查框UseOn-ChipArithmeticAccelerator被清除--多线程应用很难共用算术累加器。<BR图2.setp7目标选项对话框(注意,'Eprom:start'应为0x400000,最后一个'0'未显示)。选择Output标签。点击CreateHEXFile,并在下拉框中选择HEX-386。按F7键建立应用程序。如果每一步都正确完成,建