|
*** ERROR L127: UNRESOLVED EXTERNAL SYMBOL
SYMBOL: nemset
MODULE: .\Objects\Demo.obj (Demo)
*** ERROR L127: UNRESOLVED EXTERNAL SYMBOL
SYMBOL: ?nemset?BYTE
MODULE: .\Objects\Demo.obj (Demo)
*** ERROR L128: REFERENCE MADE TO UNRESOLVED EXTERNAL
SYMBOL: nemset
MODULE: .\Objects\Demo.obj (Demo)
ADDRESS: FF117EH
Program Size: data=8.4 edata+hdata=422 xdata=192 const=66 code=7674
Target not created.
Build Time Elapsed: 00:00:01
nemset这个函数调用了头文件,编译还是不对;下面是代码
#include "COMM/stc.h" //调用头文件
#include "COMM/stc32_stc8_usb.h"
#include "tim0.h"
#include "stdio.h"
#include "PWM.h"
#include "stdlib.h"
#include "string.h"
#define MAIN_Fosc 22118400L //定义主时钟
char *USER_DEVICEDESC = NULL;
char *USER_PRODUCTDESC = NULL;
char *USER_STCISPCMD = "@STCISP#";
bit TIM_10MS_Flag; //10ms的标志位
void sys_init(); //函数声明
void delay_ms(u16 ms); //unsigned int
void main() //程序开始运行的入口
{
u8 i,j;
int pwm = 0;
sys_init(); //USB功能+IO口初始化
usb_init(); //usb库初始化
EUSB = 1;
Timer0_Init(); //定时器0初始化
EA = 1; //CPU开放中断,打开总中断。
while( DeviceState != DEVSTATE_CONFIGURED );
// delay_ms(2000);
P40 = 0;
PWMA_Init();
while(1) //死循环
{
PWMA1_Set(pwm); //初始化参数
delay_ms(2);
if( bUsbOutReady )
{
//发送文本
pwm = atoi(UsbOutBuffer);
printf("pwm比较值:%d\r\n",pwm);
// USB_SendData(UsbOutBuffer,OutNumber);
usb_OUT_done();
nemset(UsbOutBuffer,0,OutNumber);
}
if( TIM_10MS_Flag==1 ) //如果10ms到了
{
TIM_10MS_Flag = 0; //清空标志位
}
}
}
void Timer0_Isr(void) interrupt 1
{
static timcount = 0;
timcount++; //1ms+1
if( timcount>=10 ) //如果这个变量大于等于10,10ms计数到达
{
timcount = 0;
TIM_10MS_Flag = 1; //10ms时间到了
}
}
void sys_init() //函数定义
{
WTST = 0; //设置程序指令延时参数,赋值为0可将CPU执行指令的速度设置为最快
EAXFR = 1; //扩展寄存器(XFR)访问使能
CKCON = 0; //提高访问XRAM速度
P0M1 = 0x00; P0M0 = 0x00; //设置为准双向口
P1M1 = 0x00; P1M0 = 0x00; //设置为准双向口
P2M1 = 0x00; P2M0 = 0x00; //设置为准双向口
P3M1 = 0x00; P3M0 = 0x00; //设置为准双向口
P4M1 = 0x00; P4M0 = 0x00; //设置为准双向口
P5M1 = 0x00; P5M0 = 0x00; //设置为准双向口
P6M1 = 0x00; P6M0 = 0x00; //设置为准双向口
P7M1 = 0x00; P7M0 = 0x00; //设置为准双向口
P3M0 = 0x00;
P3M1 = 0x00;
P3M0 &= ~0x03;
P3M1 |= 0x03;
USBCON = 0X00; //usb初始化
USBCLK = 0X00;
IRC48MCR = 0X00;
delay_ms(10);
//设置USB使用的时钟源
IRC48MCR = 0x80; //使能内部48M高速IRC
while (!(IRC48MCR & 0x01)); //等待时钟稳定
USBCLK = 0x00; //使用CDC功能需要使用这两行,HID功能禁用这两行。
USBCON = 0x90;
}
void delay_ms(u16 ms) //unsigned int
{
u16 i;
do
{
i = MAIN_Fosc/6000;
while(--i);
}while(--ms);
}
|
|