基础版本

This commit is contained in:
bathfire
2026-04-27 16:55:02 +08:00
commit 64b3e488da
269 changed files with 383851 additions and 0 deletions
+75
View File
@@ -0,0 +1,75 @@
#ifndef __Printf_H_
#define __Printf_H_
//硬件定义
#define PrintfUsart USART3
#define Printf_DMA DMA1
#define Printf_TX_DMAAddrSet(x) (DMA1_Channel2->CMAR = x) //设置发送缓存地址
#define Printf_TX_DMALenSet(x) (DMA1_Channel2->CNDTR = x) //设置发送DMA长度
#define Printf_TX_DMAStart() DMA_Cmd(DMA1_Channel2,ENABLE) //开启发送DMA
#define Printf_TX_DMAStop() DMA_Cmd(DMA1_Channel2,DISABLE) //开启发送DMA
#define Printf_TX_DMAy_Channelx DMA1_Channel2 //Printf发送使用的DMA通道
#define USART3_Print GPIO_ResetBits(GPIOA,GPIO_Pin_4);//485接收使能
//=============================================================================
//字符定义
#define LF 0x0a //打印换行命令
#define ESC 0X1B
#define J 0x4A
#define DLE 0X10
#define EOT 0X04
#define PCR 0X0D
#define C_PrintPageLen 10 //定义页长
#define C_multiple 2 //放大倍数
#define C_leftSpace 1 //右限
#define C_rightSpace 0 //右限
#define C_wordSpace 1 //字间距
#define C_rowSpace 4 //行间距
typedef enum
{
noSend,
sending,
}printProStae_TypeDef;
//******************************************************************************
//*-------------- 变量声名 -----------------------------------------------------
//******************************************************************************
//******************************************************************************
//*-------------- 函数声名 -----------------------------------------------------
//******************************************************************************
extern void printUsartIsr(void);
extern void printTxDmaInt(void);
extern void printSend(u8 *pData, u8 len);
extern void Print_Num(u8 GunNum,u8 Lin,u64 Num,u8 Dec);
extern uint8_t print_init(uint8_t *pdata);
extern uint8_t printChinese(uint8_t *pData);
extern uint8_t printLF(uint8_t *pdata);
extern uint8_t printCR(uint8_t *pData);
extern uint8_t LFnRow(uint8_t *pData,uint8_t row);
extern uint8_t setPageLen(uint8_t *pData,uint8_t pageLen);
extern uint8_t setLeftSpace(uint8_t *pData,uint8_t spaceNumber);
extern uint8_t setRightSpace(uint8_t *pData,uint8_t spaceNumber);
extern uint8_t setWordSpace(uint8_t *pData, uint8_t wordSpace);
extern uint8_t setRowSpace(uint8_t *pData, uint8_t rowSpace);
typedef enum
{
PT_Null,
PT_LastRecord,
PT_Record,
}PrintItem;
extern void Printf_DMATX_IRQHandler(void);
extern void Printf_Init(void);
extern void PrintfTask(void);
void Printf_UpData(u8 GunNum, PrintItem Type);
#endif //#ifndef