Oscar 发表于 2024-10-14 08:33:13

32G128K USB-CDC虚拟串口

同样的工程;就复制到其他文件夹下;会出现编译错误!!!

神农鼎 发表于 2024-10-14 09:11:47

找不到 ?





单片机程序中头文件的使用方法 - 仿真/编译器/汇编器/头文件 国芯技术交流网站 - AI32位8051交流社区 (stcaimcu.com)

Oscar 发表于 2024-10-14 09:14:19

神农鼎 发表于 2024-10-14 09:11
找不到 ?



整个文件复制过来的   不知为什么
重新下载再复制进来就解决了

神农鼎 发表于 2024-10-14 09:16:53


这2个文件 值得找到他在哪,并打开看看,都声明了啥


Oscar 发表于 2024-10-14 09:21:57

神农鼎 发表于 2024-10-14 09:16
这2个文件 值得找到他在哪,并打开看看,都声明了啥

#ifndef __USB_H__
#define __USB_H__

//#define PRINTF_SEGLED         //printf输出重定向到ISP下载软件中的7段数码管
#define PRINTF_HID            //printf输出直接重定向到USB HID接口

#define DEVSTATE_ATTACHED       0
#define DEVSTATE_POWERED      1
#define DEVSTATE_DEFAULT      2
#define DEVSTATE_ADDRESS      3
#define DEVSTATE_CONFIGURED   4
#define DEVSTATE_SUSPENDED      5

void usb_init();
//void usb_IN();            //USB HID
//void usb_IN(WORD size);   //USB CDC
void usb_OUT_done();
void USB_SendData(BYTE *dat, int size);

int SEG7_ShowString(const char *fmt, ...);
void SEG7_ShowLong(long n, char radix);
void SEG7_ShowFloat(float f);
void SEG7_ShowCode(BYTE *cod);

void LED40_SendData(BYTE *dat, BYTE size);
void LED64_SendData(BYTE *dat, BYTE size);

void LCD12864_DisplayOff();
void LCD12864_DisplayOn();
void LCD12864_CursorOff();
void LCD12864_CursorOn();
void LCD12864_CursorMoveLeft();
void LCD12864_CursorMoveRight();
void LCD12864_CursorReturnHome();
void LCD12864_ScrollLeft();
void LCD12864_ScrollRight();
void LCD12864_ScrollUp(BYTE line);
void LCD12864_AutoWrapOff();
void LCD12864_AutoWrapOn();
void LCD12864_ReverseLine(BYTE line);
void LCD12864_DisplayClear();
void LCD12864_ShowString(BYTE x, BYTE y, char *str);
void LCD12864_ShowPicture(BYTE x, BYTE y, BYTE cx, BYTE cy, BYTE *dat);

void OLED12864_DisplayOff();
void OLED12864_DisplayOn();
void OLED12864_DisplayContent();
void OLED12864_DisplayEntire();
void OLED12864_HorizontalMirror();
void OLED12864_VerticalMirror();
void OLED12864_DisplayReverse();
void OLED12864_SetContrast(BYTE bContrast);
void OLED12864_SetAddressMode(BYTE bMode);
void OLED12864_ScrollLeft(BYTE bPageStart, BYTE bPageEnd, WORD nInterval);
void OLED12864_ScrollRight(BYTE bPageStart, BYTE bPageEnd, WORD nInterval);
void OLED12864_ScrollUp(BYTE bPageStart, BYTE bPageEnd, WORD nInterval);
void OLED12864_ScrollStart();
void OLED12864_ScrollStop();
void OLED12864_ShowPicture(BYTE x, BYTE y, BYTE cx, BYTE cy, BYTE *dat);

int printf_hid (const char *fmt, ...);

#if defined PRINTF_SEGLED
#define printfSEG7_ShowString
#elif defined PRINTF_HID
#define printfprintf_hid
#endif


extern BYTE xdata UsbFeatureBuffer;
extern BYTE xdata UsbInBuffer;
extern BYTE xdata UsbOutBuffer;
extern BOOL bUsbFeatureReady;
extern BOOL bUsbInBusy;
extern BOOL bUsbOutReady;
extern BYTE DeviceState;
extern BYTE OutNumber;

#endif

Oscar 发表于 2024-10-14 09:23:50

神农鼎 发表于 2024-10-14 09:16
这2个文件 值得找到他在哪,并打开看看,都声明了啥

#ifndef __STC_H__
#define __STC_H__

#include <intrins.h>
#include <stdio.h>
#include <string.h>

#include "stc32g.h"

#include "config.h"

typedef bit BOOL;
typedef unsigned char BYTE;
typedef unsigned int WORD;
typedef unsigned long DWORD;

typedef unsigned char u8;
typedef unsigned int u16;
typedef unsigned long u32;

typedef unsigned char uchar;
typedef unsigned int uint;
typedef unsigned int ushort;
typedef unsigned long ulong;

typedef unsigned char uint8_t;
typedef unsigned int uint16_t;
typedef unsigned long uint32_t;

#endif

Oscar 发表于 2024-10-14 09:26:07

神农鼎 发表于 2024-10-14 09:11
找不到 ?




我重新从官网下载stc_usb_cdc_32.LIB、stc.h、stc32_stc8_usb.h;添加到工程   解决了问题

DebugLab 发表于 2024-10-14 11:21:23

工程和库函数的链接器要一致
页: [1]
查看完整版本: 32G128K USB-CDC虚拟串口