⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 debug.c

📁 国外牛人公开的AVR代码
💻 C
字号:

#include <avr/io.h>
#include <stdarg.h>

#include "debug.h"
#include "lcd.h"
#include "rprintf.h"
#include "timer.h"
#include "osc.h"


u08 debugMode = 0;
u08 lcdDebugX;
u08 lcdDebugY;

void debugInitLCD(u08 x, u08 y) {
	lcdInit();
	lcdClear();

	lcdDebugX = x;
	lcdDebugY = y;

	debugMode |= DEBUG_MODE_LCD;
	
	debug(PSTR("LCD Debug init()"));
}

void debugInitOSC(void) {
	oscInit();
	debugMode |= DEBUG_MODE_OSC;
}

void debug(const char PROGMEM *fmt) {
	int code;

	if (debugMode & DEBUG_MODE_OSC) {
		oscSendMessageString("/debug",fmt);
	}
	if (debugMode & DEBUG_MODE_LCD) {
		rprintfInit(&lcdDataWrite);
		lcdGotoXY(lcdDebugX,lcdDebugY);
		rprintf1RamRom(STRING_IN_ROM, fmt);
	}

}

// debugFlush assumes that timerInit() have been called already
void debugFlash(const u08 port, const u08 pin) {
	sbi(DDR(port), pin);
	cbi(port, pin);
	timerPause(500);
	sbi(port, pin);
}


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -