Ver código fonte

更新 'stm32 环形缓冲/lwrb.c'

修改测试例子
kinve 9 meses atrás
pai
commit
3721fbc122
1 arquivos alterados com 20 adições e 10 exclusões
  1. 20 10
      stm32 环形缓冲/lwrb.c

+ 20 - 10
stm32 环形缓冲/lwrb.c

@@ -687,26 +687,36 @@ lwrb_find(const lwrb_t* buff, const void* bts, lwrb_sz_t len, lwrb_sz_t start_of
 }
 
 
-#if 1 //测试函数
+#if 1 //娴嬭瘯鍑芥暟
 #include <stdio.h>
-int main()
+void printf_n(char* info, char* str, int n) {
+  printf("%s%2d:", info, n);
+  for (size_t i = 0; i < n; i++)
+  {
+    printf("%c", str[i]);
+  }
+  printf("\r\n");
+}
+#ifndef min
+#define min(a,b) ((a)<(b)?(a):(b))
+#endif
+int ring_main()
 {
 	lwrb_t buff;
-	uint8_t buff_data[8]={0};
+	char buff_data[8]={0};
 	
 	lwrb_init(&buff, buff_data, sizeof(buff_data)); /* Initialize buffer */
-	printf("初始化长度: %d\r\n", buff.size);
+	printf("鍒濆�鍖栭暱搴�: %d\r\n", buff.size);
 
 	lwrb_write(&buff, "0123456789", 10);
-    printf("写入%2d: %s\r\n", 10, buff_data);
-	printf("当前长度: %d, 剩余长度: %d\r\n", lwrb_get_full(&buff), lwrb_get_free(&buff));
-
+    printf_n("鍐欏叆", buff_data, min(10, lwrb_get_full(&buff)));
+	printf("褰撳墠闀垮害: %d, 鍓╀綑闀垮害: %d\r\n", lwrb_get_full(&buff), lwrb_get_free(&buff));
 
-	uint8_t data[8]={0}; /* Application working data */
+	char data[8]={0}; /* Application working data */
 	size_t len;
 	len = lwrb_read(&buff, data, sizeof(data));
-	printf("读取%2d: %s\r\n", len, data);
-    printf("当前长度: %d, 剩余长度: %d\r\n", lwrb_get_full(&buff), lwrb_get_free(&buff));
+	printf_n("璇诲彇", data, len);
+    printf("褰撳墠闀垮害: %d, 鍓╀綑闀垮害: %d\r\n", lwrb_get_full(&buff), lwrb_get_free(&buff));
 	return 0;
 } 
 #endif