I don't think you understand how a while loop works. That while loop with the Is Task Done will spin until there is either an error or until you make the Boolean true. When the loop is spinning, nothing else is executing. That's basic dataflow and understanding dataflow is essential to knowing how a LabVIEW program runs. I don't see the point of that while loop at all. Remove it. You can OR the status of the Is Task Done, DAQmx Write and your stop button toghether.