当前位置:网站首页>CAPL script printing functions write, writeex, writelineex, writetolog, writetologex, writedbglevel do you really know which one to use under what circumstances?
CAPL script printing functions write, writeex, writelineex, writetolog, writetologex, writedbglevel do you really know which one to use under what circumstances?
2022-07-06 09:48:00 【Ant soldier】
Preface
- Engaged in industry “ several tens of years ”, You can always meet these printing functions on different occasions , What's the difference , Today, the blogger will give the students a wisp
- Demonstrate hardware and software environment Win10 x64 ; CANoe 11 SP2 x64
- This chapter demonstrates the source code download , Click the jump


write
1️⃣ First create the project and file , For demonstration

2️⃣ write It is the simplest and most commonly used printing function , Post it here , It is to make you familiar with the print formats of different data types .

3️⃣ Testing process , Output Soure The type is CAPL/.NET
on key 'a'
{
write ("pressed key %c",this);
}

writeEx
1️⃣ writeEx Just like write More complicated , You can specify the display position of printing , You can also specify the type of printing
- writeEx It will print on the last line of the window , That is to say No line wrapping

2️⃣ Testing process , Printed on Trace On , Remember trace Of CAPL To check
on key 'b'
{
writeEx (TraceWindow,Information,"pressed key %c",this);
}

3️⃣ Testing process , It can be seen that the output is System Page , And printing without line breaks
on key 'c'
{
writeEx (SystemWindow,Information,"pressed key %c",this);
writeEx (SystemWindow,Warning,"pressed key %c",this);
}

writeLineEX
1️⃣ and writeEx The difference between printing and wrapping , You can specify the display position of printing , You can also specify the type of printing

2️⃣ Testing process
on key 'd'
{
writeLineEx (SystemWindow,Information,"pressed key %c",this);
writeLineEx (SystemWindow,Warning,"pressed key %c",this);
}

writeToLog
1️⃣ writeToLog seeing the name of a thing one thinks of its function , That is to say Logging The document writes something ,

2️⃣ Since it's to logging File write data , Then create a logging Block , Set to CAPL Triggered mode , need logging

3️⃣ The test code is as follows :
On key 'f'
{
char timeBuffer[64];
getLocalTimeString(timeBuffer);
write("pressed key %d",this);
setLogFileName("logging", "test.asc");
startLogging("logging",100);
writeToLog("%s *************writeToLog*************",timeBuffer);
writeToLogEx("%s: *************writeToLogEx*************",timeBuffer);
stopLogging("logging",100);
}
4️⃣ Output results
- writeToLog and writeToLogEx The difference can also be seen ,writeToLog Just print more “// Time stamp ”

writeToLogEx
writeDbgLevel
1️⃣ This is very easy to use with functions , I suggest you learn to use , In larger projects , It is not recommended to use write and writeLineEx
Wait for the output function to debug the code , Because we can't control these debug Output or not
- This function can decide whether to print it according to priority
- The first parameter is to specify priority , The lower the number is , Description higher priority ,debug The more likely information is to be output , Of course , It depends on
setWriteDbgLevelSet priority - 0 The highest priority , If setWriteDbgLevel(0), So every time I call writeDbgLevel function , The first argument must be =0 , Can be output , Otherwise the output is suppressed
- 15 Has the lowest priority , If setWriteDbgLevel(15) So every time I call writeDbgLevel function , The first parameter is equal to whatever , Can output
- In actual development , We will pass weite too debug Our code , After debugging , We don't expect this debug The information is printed , Then we can go through setWriteDbgLevel Function to increase the output priority , Achieve the purpose of inhibiting output
- It is recommended to use ,


2️⃣ Test code and test results
On key 'g'
{
setWriteDbgLevel(7);
writeDbgLevel (4, "This is shown:");
// Output: This is shown
writeDbgLevel (9, "This is not shown");
// No output
}


| End |
summary



- Have the most simple life , The furthest dream , Even if it's freezing tomorrow , Lu Yao's horse died !
- Wechat partners can pay attention Langge on-board diagnosis , A small circle in the industry , In the group
SkyDrive data,Source code,There are all kinds of godsFree time communication technology , Talk about job opportunities .- If this blog is helpful to you , please “ give the thumbs-up ” “ Comment on ”“ Collection ” One key, three links Oh ! It's not easy to code words , Everyone's support is my driving force to stick to it .
边栏推荐
- Teach you how to write the first MCU program hand in hand
- 018.有效的回文
- CAPL脚本中关于相对路径/绝对路径操作的几个傻傻分不清的内置函数
- Hero League rotation map automatic rotation
- 小白带你重游Spark生态圈!
- Detailed explanation of cookies and sessions
- 机械工程师和电气工程师方向哪个前景比较好?
- 51单片机进修的一些感悟
- Design and implementation of online shopping system based on Web (attached: source code paper SQL file)
- 为什么要数据分层
猜你喜欢

Nc29 search in two-dimensional array

面试突击62:group by 有哪些注意事项?

Publish and subscribe to redis

MapReduce instance (IX): reduce end join

I2C summary (single host and multi host)

If a university wants to choose to study automation, what books can it read in advance?

Summary of May training - from a Guang

Hero League rotation map automatic rotation

Redis分布式锁实现Redisson 15问

Mapreduce实例(九):Reduce端join
随机推荐
Cooperative development in embedded -- function pointer
竞赛vscode配置指南
Can I learn PLC at the age of 33
Hero League rotation chart manual rotation
硬件工程师的真实前途我说出来可能你们不信
面试突击62:group by 有哪些注意事项?
Programmation défensive en langage C dans le développement intégré
O & M, let go of monitoring - let go of yourself
What are the models of data modeling
If a university wants to choose to study automation, what books can it read in advance?
Mapreduce实例(十):ChainMapReduce
Hugo blog graphical writing tool -- QT practice
Design and implementation of online snack sales system based on b/s (attached: source code paper SQL file)
May brush question 01 - array
Webrtc blog reference:
Take you back to spark ecosystem!
Counter attack of noodles: redis asked 52 questions in a series, with detailed pictures and pictures. Now the interview is stable
51单片机进修的一些感悟
Defensive C language programming in embedded development
一大波開源小抄來襲
