注册名:

密码:

个人注册

企业注册

商务申请

商务管理平台

企业管理平台

个人管理平台

我的工控博客

中国工控网www.chinakong.com

首页 | 新闻中心 | 工控论坛 | 经验视点 | 工控商务 | 电气手册 | 工控博客 | 招聘求职 | 网上调查 | 企业中心 | 供求信息 | 资料中心 | 工控书店

所在位置:工控论坛 -- 变频器及传动控制论坛 -- 变频器及传动控制论坛(非专题) -- 选型技巧

中国工控网搜索:

 登陆:密码:  注册  密码

搜索:

变频器及传动控制论坛(非专题)分类  

全部论题

选型技巧

参数经验

安装维修

应用经验

发表人:fef110 发表时间:2005/3/15 14:59:00  

 

 本栏论题: 求助:单片机的c语言编程  [2377]

    本人在做毕业设计,以南京赛博的单片机开发板为基础,做温度控制。在读其以
    c语言写的源程序时,(导师要求用汇编),我所使用的伟福仿真器在编译过程
    中出错。“fatal error 210:I/O error on input file :<我的项目名.m51>
   
    赛博给了一个源程序sy1032.c和sy1032.hex。在伟福s51里,我把仿真器语言设
    计为Keil C,仿真器s51,cpu为89c51RX。
   
    出错提示如下:
    MCS-51 LINKER / LOCATER L51 V2.8 DATE 03/15/05 PAGE 1
   
   
    MS-DOS MCS-51 LINKER / LOCATER L51 V2.8, INVOKED BY:
    L51 D:\CPU\SY1032.OBJ TO D:\CPU\LIUWEI RS (256)
   
    *** FATAL ERROR 210: I/O ERROR ON INPUT FILE:
    EXCEPTION 0021H: PATH OR FILE NOT FOUND
    FILE: D:\CPU\SY1032.OBJ
   
    这是怎么回事?
   
    部分源程序:
   
    #include <at89x51.h>
    #include <absacc.h>
    #define VAR XBYTE[0x00] /*VAR为外部位址0000*/
    #define read 0 /*93c46读取的识别码READ=0*/
    #define write 2 /*93c46写入的识别码WRITE=2*/
    #define ewen 4 /*93C46写致能的识别码EWEN=4*/
    #define ewds 6 /*93C46写除能的识别码EWDS=6*/
    #define cs INT0 /*93C46 CS接脚=8051 RD P3.2*/
    #define clk INT1 /*93C46 CLK接脚=8051 WR P3.3*/
    #define di T0 /*93C46 DI接脚=8051 T1 P3.4*/
    #define d0 T1 /*93C46 DO接脚=8051 T0 P3.5*/
    #define LOW 0x49 /*存放测试温度的下限值*/
    #define HIGH 0x51 /*存放测试温度的上限值*/
    bit FLAG0=0; /*宣告TIMER0响应旗号*/
    //外接工业专用温度传感器时,目前设置测量温度为0-99度:
    static const char tab[13]={0x3a,0x53,0x6f,0x8a,0xa3, /*0度,10度,20度,30度,40度*/
    0xB8,0xC8,0xD5,0xDE,0xE5, /*50度,60度,70度,80度,90度*/
    0xEA,0xEE}; /*100度,110度*/
    //使用板上AD590温度传感器时,目前设置测量温度为0-99度:
    //static const char tab[13]={0x88,0x8d,0x92,0x97,0x9c, /*0度,10度,20度,30度,40度,*/
    // 0xa1,0xa6,0xab,0xb0,0xb5, /*50度,60度,70度,80度,90度*/
    // 0xba,0xc0}; /*100度,110度*/
    char data1[2];
    char C,S,k=0;
    char MEP[7]; /*显示器值存放阵列*/
    //MEP[0]=数码管最低位显示值,温度指示小数点后位
    //MEP[1]=数码管次低位显示值,温度指示个位数
    //MEP[2]=数码管高位显示值,温度指示十位数
    //MEP[3]=数码管最低位显示值,功能显示目前定为1,2,3,4,5
    //MEP[4]=
    //MEP[5]=暂放置温度显示值,高4位为温度指示十位数值,低4位为温度指示个位数值
    //MEP[6]=在温度显示与电压调整副程式中,将测量值C暂存MEP[6]中
    unsigned char combuf[10];
    unsigned char ADR46,CH,CL,m,C1,C2; /*ADR46,93C46位址,CH高位元组,CL低*/
    int sec,sec1;
    char ptr=0,ptr1=0x10,psr=0; /*ptr显示器值存放阵MEP[]指标,ptr1显示器扫描指标*/
    char count=100,sb=0;
    void delay (unsigned int value) /*延时副程式*/
    {
    while (value!=0) value--; /*10us延时*/
    }
    void COMP(); /*宣告比较现在温度与设定温度副程式*/
    void SET();
    void disp(); /*宣告设定温度副程式*/
    void to9346(char c); /*宣告TO93C46副程式*/
    void SDT46(char c); /*宣告串入副程式*/
    RDT46(); /*宣告串出副程式*/
    void clear(void); /*宣告清除按键存放/显示器阵列MEP[]副副程式*/
    void xch(void); /*宣告按键存放/显示器阵列MEP[]右键滚入副程式*/
    void sjust(void); /*温度显示慢跳调整副程式*/
    void temper(); /*宣告温度显示与电压调整副程式*/
    void UP(); /*宣告温度上升键防抖动副程式*/
    void UPA(); /*宣告温度设置上升副程式*/
    void DOWN(); /*宣告温度下降键防抖动副程式*/
    void DOWNA(); /*宣告温度设置下降副程式*/
    void FONTION(); /*宣告模式键判断模式副程式*/
    void buf(); /*宣告从93C46取设定值副程式*/
    void SAVE(); /*宣告设置存储副程式*/
    //********************************************************
    main() /*主程式*/
    {
    TMOD=0x11; /*TIMER0,TIMER1工作在MODE1*/
    TH0=(65535-50000)/256; /*设定TIMER0初值,50ms*/
    TL0=(65536-50000)%256;
    TH1=(65535-4000)/256; /*设定TIMER1初值,4ms*/
    TL1=(65536-4000)%256;
    IE=0x8a; /*TIMER0,TIMER1中断致能*/
    TR1=1; /*启动TIMER1*/
    P2_7=1; /*测试用,温度下限指示*/
    P2_6=1; /*测试用,温度在正常上下限间指示*/
    P2_5=1;

以下是关于《求助:单片机的c语言编程》论题的回复(共1篇)

回复人:cn18show 

 回复时间:2009/9/27 8:27:00

支持(471) | 反对(478)

 

    易展仪表展览网,建站,优化,推广一站式服务,成立五周年之际,50万感恩回馈,欢迎参加:http://www.18show.cn/5/?m=189

如果要回复本栏论题,请首先中国工控网www.chinakong.com

·如果你已经是中国工控网www.chinakong.com成员,请直接登录。

·如果你还不是中国工控网www.chinakong.com成员,请首先注册,注册为免费!

注册名:

密  码:

           注册中国工控网www.chinakong.com
           忘记密码

关闭该窗口

关于我们     免责声明     服务项目     广告联系     友情链接     联系方式     意见反馈     设为首页     加入收藏

 ©2023-2025 中国工控网(www.chinakong.com) 版权所有 豫ICP备17046657号

管理员信箱:chinakong98@163.com  服务热线:13525974529

洛阳博德工控自动化技术有限公司

中国    洛阳