Circular buffer &counter

30 views (last 30 days)
sanjai on 6 Aug 2020
Commented: sanjai on 8 Oct 2020
I have a two circular buffer (A&B). and i have one array. and counter.
Each value in the array will go and settle down in the circular buffer A. simulateonsly counter is also countes. these counted values stored in the circular buffer B.
i want to know how to implement in matlab code.

Answers (1)

Aman Vyas
Aman Vyas on 11 Aug 2020
Edited: Aman Vyas on 11 Aug 2020
Based on the information provided you can proceed like this:
1) Enter the array as input to matlab function ( Representing Circular buffer)
2) For circular buffer you can try this matlab code in the function.
function y = fcn(u,IC, bufferLength)
persistent buffer;
if isempty(buffer)
if isequal(numel(IC),bufferLength)
buffer = IC;
elseif isscalar(IC)
buffer = IC*ones(1,bufferLength);
error('IC must either be scalar or the same dimensions as buffer length')
% Output
y = buffer;
% Update
buffer = [u buffer(1:end-1)];
end %fcn
3) With each buffer update, you can update counter variable and send that as an input to the next circular buffer, which in turn would keep storing values.
Hope it helps !
  1 Comment
sanjai on 8 Oct 2020
what is 'u' and 'IC'

Sign in to comment.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by