diff --git a/ch32v003fun/ch32v003fun.c b/ch32v003fun/ch32v003fun.c
index ad33c88d962e06f7bdd255d88817672138e7fd3b..62d2a53b9856a47ec0922016df78e0eaed1cefe7 100644
--- a/ch32v003fun/ch32v003fun.c
+++ b/ch32v003fun/ch32v003fun.c
@@ -32,7 +32,11 @@ int printf(const char* format, ...)
 	return ret_status;
 }
 
-
+int putchar(int c)
+{
+	return _write( 0, (const char *)(&c), 1 );
+}
+	
 /* Some stuff from MUSL