CAN-BUS RXbuffers

For Flowcode users to discuss projects, flowcharts, and any other issues related to Flowcode 6.

Moderator: Benj

Post Reply
Barmaley_GMN
Posts: 59
Joined: Mon Aug 04, 2014 12:59 pm
Has thanked: 8 times
Been thanked: 4 times
Contact:

CAN-BUS RXbuffers

Post by Barmaley_GMN »

Hi!
I have faced with new problem:
When I start the program, It send 1 right packet and list of wrong data in approximately 1 sec . Every time diffident, but approximately one amount. The second CAN channel doesn't have such problem.
And I have one additional question: does macros checkrx work without set mask and filters (accept All) in rx buffers?

Р

Code: Select all

тєЕ  ґ«Кд·ЅПт К±јд±кК¶          ЦЎАаРН     ЦЎёсКЅ     ЦЎID     КэѕЭі¤¶И  КэѕЭ 
0     Receive     07:55:29:675     Data frame     Standard frame     00000001     1     01      
1     Receive     07:55:31:537     Data frame     Standard frame     000005ad     5     69 b4 69 68 b4      
2     Receive     07:55:31:550     Remote frame     Standard frame     000005a5     10     01 02 03 04 05 06 07 08 00 dc      
3     Receive     07:55:31:561     Data frame     Standard frame     000005a5     4     b4 b4 b4 b4      
4     Receive     07:55:31:567     Data frame     Extended frame     168cf3d4     4     b4 b4 b4 b4      
5     Receive     07:55:31:575     Data frame     Standard frame     000002d5     4     b4 b4 b4 b4      
6     Receive     07:55:31:581     Data frame     Extended frame     17b6f3d4     9     a5 b4 69 68 b4 b5 b4 b5 00      
7     Receive     07:55:31:587     Data frame     Standard frame     000002d5     4     b4 a0 b4 00      
8     Receive     07:55:31:594     Data frame     Standard frame     0000034d     4     5a b4 5a 5a      
9     Receive     07:55:31:597     Data frame     Extended frame     0b4af3d4     2     12 5a      
10    Receive     07:55:31:602     Data frame     Standard frame     000005a5     4     b4 b4 b4 b4      
11    Receive     07:55:31:606     Data frame     Standard frame     000005a5     4     68 b4 00 b4      
12    Receive     07:55:31:611     Data frame     Standard frame     0000034d     5     b5 b4 b5 b4 b4      
13    Receive     07:55:31:615     Data frame     Standard frame     000005a5     4     b4 b4 b4 b4      
14    Receive     07:55:31:619     Data frame     Standard frame     000003ed     5     b5 b4 b5 b4 b4      
15    Receive     07:55:31:624     Data frame     Standard frame     000002d5     4     b4 b4 b4 5a      
16    Receive     07:55:31:627     Data frame     Standard frame     000005a5     4     b4 b4 b4 b4      
17    Receive     07:55:31:631     Data frame     Standard frame     000005a5     4     b4 b4 b4 b4      
18    Receive     07:55:31:637     Data frame     Standard frame     000005a5     4     b4 b4 b4 b4      
19    Receive     07:55:31:641     Remote frame     Extended frame     0faef3d4     9     b4 b4 b4 b4 00 00 00 00 00      
20    Receive     07:55:31:646     Data frame     Standard frame     000005ad     5     b5 b4 b5 b4 b4      
21    Receive     07:55:31:650     Data frame     Extended frame     168af3d4     4     b4 b4 b4 b4      
22    Receive     07:55:31:655     Data frame     Standard frame     000005a5     4     b4 b4 b4 b4      
23    Receive     07:55:31:660     Data frame     Standard frame     000005a5     4     b4 b4 b4 b4      
24    Receive     07:55:31:664     Data frame     Standard frame     000005a5     4     b4 b4 b4 b4      
25    Receive     07:55:31:669     Data frame     Standard frame     000005ad     4     b4 b4 b4 b4      
26    Receive     07:55:31:672     Data frame     Standard frame     000005ad     5     b5 b5 b5 b5 b5      
27    Receive     07:55:31:677     Data frame     Standard frame     000005a5     4     b4 b4 b4 b4      
28    Receive     07:55:31:682     Data frame     Standard frame     000005a5     4     b4 b4 b4 b4      
29    Receive     07:55:31:687     Data frame     Standard frame     000005a5     4     b4 b4 5a 5a      
30    Receive     07:55:31:691     Data frame     Standard frame     000005a5     4     b4 b4 b4 00      
31    Receive     07:55:31:696     Data frame     Standard frame     000005a5     4     b4 b4 b4 b4      
32    Receive     07:55:31:705     Data frame     Standard frame     000005a5     4     b4 b4 b4 b4      
33    Receive     07:55:31:717     Remote frame     Standard frame     000005ad     9     b4 b4 b4 00 ff ff ff ff 00      
34    Receive     07:55:31:722     Data frame     Standard frame     000005a5     4     b4 b4 b4 b4      
35    Receive     07:55:31:726     Data frame     Standard frame     000005a5     4     b4 b4 b4 b4      
36    Receive     07:55:31:741     Data frame     Standard frame     000003ed     5     b5 b4 b5 b4 b4      
37    Receive     07:55:31:746     Data frame     Standard frame     000005ad     5     b5 b5 b5 b5 b5      
38    Receive     07:55:31:751     Data frame     Standard frame     000005ad     5     b5 b5 b5 b5 b5   

Code: Select all

РтєЕ  ґ«Кд·ЅПт К±јд±кК¶          ЦЎАаРН     ЦЎёсКЅ     ЦЎID     КэѕЭі¤¶И  КэѕЭ 
0     Receive     07:57:05:294     Data frame     Standard frame     00000001     1     01      
1     Receive     07:57:06:221     Data frame     Standard frame     000003ed     9     a5 b4 69 a4 b4 b5 b4 b5 00      
2     Receive     07:57:06:233     Data frame     Standard frame     000005a5     4     b4 b4 b4 b4      
3     Receive     07:57:06:243     Data frame     Standard frame     000005a5     0          
4     Receive     07:57:06:248     Data frame     Standard frame     000005a5     4     b4 b4 b4 b4      
5     Receive     07:57:06:251     Data frame     Standard frame     000005a5     4     b4 b4 b4 b4      
6     Receive     07:57:06:255     Data frame     Standard frame     000005a5     4     b4 b4 b4 b4      
7     Receive     07:57:06:260     Data frame     Standard frame     000005a5     4     b4 b4 a0 80      
8     Receive     07:57:06:269     Data frame     Standard frame     000005a5     4     b4 b4 b4 b4      
9     Receive     07:57:06:274     Data frame     Standard frame     000005a0     4     b4 b4 b4 b4      
10    Receive     07:57:06:279     Data frame     Standard frame     000005a5     4     b4 b4 b4 b4      
11    Receive     07:57:06:283     Remote frame     Standard frame     000003ed     9     b4 b4 b4 b4 00 00 00 00 00      
12    Receive     07:57:06:286     Data frame     Standard frame     000005a5     4     b4 b4 b4 b4      
13    Receive     07:57:06:291     Data frame     Standard frame     00000345     0          
14    Receive     07:57:06:295     Data frame     Standard frame     000005a5     4     b4 b4 b4 b4      
15    Receive     07:57:06:299     Data frame     Standard frame     000005a5     4     b4 b4 b4 b4      
16    Receive     07:57:06:303     Data frame     Standard frame     000005ad     4     b5 b4 b5 b4      
17    Receive     07:57:06:309     Data frame     Standard frame     000005a5     4     b4 b4 b4 b4      
18    Receive     07:57:06:320     Data frame     Standard frame     000003ed     5     b5 b4 b5 b4 b4      
19    Receive     07:57:06:329     Data frame     Standard frame     000005a5     4     b4 b4 b4 b4      
20    Receive     07:57:06:343     Remote frame     Extended frame     0faef3d4     9     b4 b4 b4 b4 00 00 00 00 00      
21    Receive     07:57:06:348     Data frame     Standard frame     000005a5     4     b4 b4 b4 b4      
22    Receive     07:57:06:364     Data frame     Standard frame     000005ad     4     4b b4 b5 b4      
23    Receive     07:57:06:368     Data frame     Standard frame     000005a5     4     b4 b4 b4 b4      
24    Receive     07:57:06:373     Data frame     Standard frame     000002d5     4     b4 12 5a 5a      
25    Receive     07:57:06:385     Remote frame     Standard frame     000003ed     9     4b b4 b5 b4 00 00 00 00 00      
26    Receive     07:57:06:390     Remote frame     Standard frame     000003ed     9     b4 b4 b4 b4 00 00 00 00 00      
27    Receive     07:57:06:394     Data frame     Standard frame     000005ad     4     b5 b4 97 b4      

Code: Select all

РтєЕ  ґ«Кд·ЅПт К±јд±кК¶          ЦЎАаРН     ЦЎёсКЅ     ЦЎID     КэѕЭі¤¶И  КэѕЭ 
0     Receive     07:57:57:035     Data frame     Standard frame     00000001     1     01      
1     Receive     07:57:57:665     Data frame     Extended frame     0d36f3d4     9     69 b4 bd a4 b4 b5 b4 b5 00      
2     Receive     07:57:57:676     Data frame     Standard frame     000005a5     4     b4 b4 b4 b4      
3     Receive     07:57:57:687     Data frame     Standard frame     0000056d     9     69 b4 69 68 b4 b5 b4 b5 00      
4     Receive     07:57:57:695     Data frame     Standard frame     000005a5     4     b4 b4 b4 b4      
5     Receive     07:57:57:701     Remote frame     Standard frame     0000034d     9     b4 b4 b4 b4 00 00 00 00 00      
6     Receive     07:57:57:708     Data frame     Standard frame     000005a5     4     a0 b4 00 00      
7     Receive     07:57:57:715     Data frame     Standard frame     000005a5     4     b4 5a 5a 5a      
8     Receive     07:57:57:721     Data frame     Standard frame     000005a5     4     b4 b4 b4 b4      
9     Receive     07:57:57:725     Data frame     Standard frame     00000325     5     86 b5 b4 9a b4      
10    Receive     07:57:57:728     Remote frame     Standard frame     000003ed     9     b4 5a 5a 5a 00 00 00 00 00      
11    Receive     07:57:57:733     Data frame     Standard frame     000005a5     4     b4 5a b4 5a      
12    Receive     07:57:57:737     Data frame     Standard frame     000005a5     4     b4 b4 b4 b4      
13    Receive     07:57:57:741     Data frame     Standard frame     0000034d     5     b5 b4 b5 b4 b4      
14    Receive     07:57:57:746     Data frame     Standard frame     000005a5     4     b4 b4 b4 b4      
15    Receive     07:57:57:751     Data frame     Standard frame     000005a5     4     b4 b4 b4 b4      
16    Receive     07:57:57:755     Data frame     Standard frame     000005a5     4     b4 b4 b4 b4      
17    Receive     07:57:57:758     Data frame     Standard frame     0000056d     9     69 b4 bd 94 f6 b5 d2 97 00      
18    Receive     07:57:57:763     Data frame     Standard frame     00000345     4     b4 b4 b4 b4      
19    Receive     07:57:57:767     Data frame     Standard frame     000005a5     4     b4 b4 b4 b4      
20    Receive     07:57:57:771     Data frame     Standard frame     000005a5     4     b4 b4 b4 b4      
21    Receive     07:57:57:776     Data frame     Standard frame     000005a5     4     b4 b4 b4 b4      
22    Receive     07:57:57:781     Remote frame     Standard frame     000003ed     9     b4 b4 b4 b4 00 00 00 00 00      
23    Receive     07:57:57:786     Data frame     Standard frame     000005a5     4     b4 b4 b4 b4      
24    Receive     07:57:57:791     Data frame     Standard frame     000005a0     4     b4 b4 b4 b4      
25    Receive     07:57:57:805     Remote frame     Extended frame     0faef3d4     9     b4 b4 b4 b4 00 00 00 00 00      
26    Receive     07:57:57:810     Data frame     Standard frame     000005ad     5     b5 b5 b5 b5 b5      
27    Receive     07:57:57:815     Remote frame     Extended frame     0b4af3d4     10     b4 b4 b4 b4 00 00 00 00 00 fb      
28    Receive     07:57:57:818     Data frame     Standard frame     000005ad     5     b5 b5 b5 b5 b5   
Attachments
Yat1_v644444.fcfx
(23.38 KiB) Downloaded 232 times

Barmaley_GMN
Posts: 59
Joined: Mon Aug 04, 2014 12:59 pm
Has thanked: 8 times
Been thanked: 4 times
Contact:

Re: CAN-BUS RXbuffers

Post by Barmaley_GMN »

My problem is seems to be solved.
Project worked like random generator. I wasn't able to find regularity.
I've swapped all MC but it didn't help.
I noticed it worked fine when temperature is hot (after soldering). and mistakes appeared with touching PIC. I made field with ground - nothing.
After that I swapped resonator from 20 to 16 MHz, make corrections in program. It helped.
Thanks to everybody who tried to help Me!

Barmaley_GMN
Posts: 59
Joined: Mon Aug 04, 2014 12:59 pm
Has thanked: 8 times
Been thanked: 4 times
Contact:

Re: CAN-BUS RXbuffers

Post by Barmaley_GMN »

How I can reset rxbncon,RXFUL and eflg,,RX10VR with flowcode?

User avatar
Benj
Matrix Staff
Posts: 15312
Joined: Mon Oct 16, 2006 10:48 am
Location: Matrix TS Ltd
Has thanked: 4803 times
Been thanked: 4314 times
Contact:

Re: CAN-BUS RXbuffers

Post by Benj »

Hello,

If you need to write a value to the registers manually then you can do so using a C code icon and the register name in capital letters.

e.g.

Code: Select all

RXFUL = 0;

Barmaley_GMN
Posts: 59
Joined: Mon Aug 04, 2014 12:59 pm
Has thanked: 8 times
Been thanked: 4 times
Contact:

Re: CAN-BUS RXbuffers

Post by Barmaley_GMN »

Thanks!
They are R/C bits.

Code: Select all

clear_bit(rxb0con,RXFUL);
clear_bit(rxb1con,RXFUL);
clear_bit(comstat,RXB0OVFL);
clear_bit(comstat,RXB1OVFL);

Barmaley_GMN
Posts: 59
Joined: Mon Aug 04, 2014 12:59 pm
Has thanked: 8 times
Been thanked: 4 times
Contact:

Re: CAN-BUS RXbuffers

Post by Barmaley_GMN »

But it doesn't work. Some of them can be resetted only with software (read data buffer).

User avatar
Benj
Matrix Staff
Posts: 15312
Joined: Mon Oct 16, 2006 10:48 am
Location: Matrix TS Ltd
Has thanked: 4803 times
Been thanked: 4314 times
Contact:

Re: CAN-BUS RXbuffers

Post by Benj »

Aha in that case you first need to create a Flowcode variable to do the read into. I would suggest a variable named dummy to signify your throwing the value away.

Then simply use a C code block to read the value from the register into the variable. Swapping REGNAME for the name of the register you want to read.

Code: Select all

FCV_DUMMY = REGNAME;

Barmaley_GMN
Posts: 59
Joined: Mon Aug 04, 2014 12:59 pm
Has thanked: 8 times
Been thanked: 4 times
Contact:

Re: CAN-BUS RXbuffers

Post by Barmaley_GMN »

Thanks!
I did it!
But how can I read just some bit from register?
Or I should read full register and use mask? (FCV_DUMMY & 0b11110000)?

User avatar
Benj
Matrix Staff
Posts: 15312
Joined: Mon Oct 16, 2006 10:48 am
Location: Matrix TS Ltd
Has thanked: 4803 times
Been thanked: 4314 times
Contact:

Re: CAN-BUS RXbuffers

Post by Benj »

Hello,

Yes I'm afraid the device will only work with full registers so simply read the full 8 bits and mask off the bits you are interested in.

Post Reply