Circular buffer &counter
13 views (last 30 days)
Show older comments
I have a two circular buffer (A&B). and i have one array. and counter.
operation:
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.
0 Comments
Answers (1)
Aman Vyas
on 11 Aug 2020
Edited: Aman Vyas
on 11 Aug 2020
Hi,
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)
%#codegen
persistent buffer;
if isempty(buffer)
if isequal(numel(IC),bufferLength)
buffer = IC;
elseif isscalar(IC)
buffer = IC*ones(1,bufferLength);
else
error('IC must either be scalar or the same dimensions as buffer length')
end
end
% 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 !
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!