基于printf库的打印调试
来源:互联网 发布:战舰少女 知乎 编辑:程序博客网 时间:2024/05/16 15:41
在运行这个自带例子的时候,不知道大家是否遇到过没有打印结果没有的情况。
Thread[Thread-1,5,main]serial@/dev/ttyUSB0:115200: resynchronising
也就是上面这句话之后没有任何结果了。
#include "printf.h"
module TestPrintfC {
uses {
interface Boot;
}
}
implementation {
uint8_t dummyVar1 = 123;
uint16_t dummyVar2 = 12345;
uint32_t dummyVar3 = 1234567890;
event void Boot.booted() {
printf("Hi I am writing to you from my TinyOS application!!\n");
printf("Here is a uint8: %u\n", dummyVar1);
printf("Here is a uint16: %u\n", dummyVar2);
printf("Here is a uint32: %ld\n", dummyVar3);
printfflush();
}
}
以上是源码中给的例子。
大家发现没有,所有打印的东西都是上电启动后打印一次就结束了。等你观察时候早就结束了,自然没有结果。
所以我改动了这个程序。
#include "printf.h"
configuration TestPrintfAppC{
}
implementation {
components MainC, TestPrintfC, LedsC;
components new TimerMilliC() as Timer0;
TestPrintfC.Boot -> MainC;
TestPrintfC.Timer0 -> Timer0;
TestPrintfC.Leds ->LedsC;
}
以上是TestPrintfAppC的内容
#include "Timer.h"
#include "printf.h"
module TestPrintfC {
uses {
interface Boot;
interface Timer<TMilli> as Timer0;
interface Leds;
}
}
implementation {
uint8_t dummyVar1 = 123;
uint16_t dummyVar2 = 12345;
uint32_t dummyVar3 = 1234567890;
void pprin(){
printf("Hi I am writing to you from my TinyOS application!!\n");
printf("Here is a uint8: %u\n", dummyVar1);
printf("Here is a uint16: %u\n", dummyVar2);
printf("Here is a uint32: %ld\n", dummyVar3);
printfflush();
}
event void Boot.booted() {
call Timer0.startPeriodic(1000);
printf("Hi I am writing to you from my TinyOS application!!\n");
printf("Here is a uint8: %u\n", dummyVar1);
printf("Here is a uint16: %u\n", dummyVar2);
printf("Here is a uint32: %ld\n", dummyVar3);
printfflush();
}
event void Timer0.fired(){
pprin();
call Leds.led0Toggle();
}
}
以上是TestPrintfC的内容。让第一个灯每隔1秒闪烁一次,并且打印一次内容。
然后输入
make telosb install (注:笔者的是telosb节点)
然后输入
java net.tinyos.tools.PrintfClient -comm serial@/dev/ttyUSB0:telosb
结果出现,结束
- 基于printf库的打印调试
- 控制调试信息的打印(printk,printf)
- printf 的打印格式
- printf的打印格式
- 基于自定义日志打印的UDAF调试
- JNI log来代替printf打印调试
- JNI log来代替printf打印调试
- JNI log来代替printf打印调试
- JNI log来代替printf打印调试
- 调试中日志打印printf技巧
- JNI log来代替printf打印调试
- printf的时候打印%号
- 在不同的线程中使用printf打印调试信息居然引起程序CoreDump。
- 小printf大作用(用日志打印的方式调试程序)
- android 库 printf串口打印
- HI3531ARM调试printf的实现
- gdb调试printf的设置
- printf打印
- iOS : Objective-C to Wax (OC 转 Wax) 笔记
- 在局域网可以访问电脑中存放的网页(IIS服务)
- Google Tag Manager
- hadoop ha
- php session介绍及简单演示
- 基于printf库的打印调试
- 画不出谁在潇洒
- H264 MVD&MVP
- Node.js如何把单个文件夹作为模块加载以及模块缓存
- 开发心得
- 【学习C++】2.cin与Enter
- Eclipse安装svn的过程记录
- Html5 CSS3新标签解释及用法
- C# WINFORM DATAGRIDVIEW 单元格添加 按钮