Advertisement
Guest User

Untitled

a guest
Jun 25th, 2019
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.26 KB | None | 0 0
  1. void UART::run()
  2. {
  3.  
  4. while(ros::ok())
  5. {
  6. _letter = _serial.read();
  7. if (_serial.available() > 0)
  8. {
  9. _line.clear();
  10. _line = _serial.readline(65536, "!");
  11. _words.clear();
  12. std::istringstream f(_line);
  13. std::string s;
  14. while (getline(f,s,'t'))
  15. {
  16. _words.push_back(s);
  17. }
  18. this->fillVars();
  19. _msg.velocity = _velocity;
  20. _msg.position = _position;
  21. _pub.publish(_msg);
  22. ros::spinOnce();
  23. }
  24. _serial.flush();
  25. }
  26. }
  27.  
  28. void UART::fillVars()
  29. {
  30. if (_words[0] == "u")
  31. {
  32. _ultrasonic = std::stoi(_words[1]);
  33. }
  34. else if (_words[0] == "s")
  35. {
  36. std::cout << "reading " << _words[1] << std::endl;
  37. }
  38.  
  39. }
  40.  
  41.  
  42. void UART::callback(const std_msgs::Int32::ConstPtr& speed)
  43. {
  44. // Convert m/s and serial write
  45. _effort = speed->data - 32;
  46. std::string toWrite = std::to_string(_effort);
  47. size_t temp = _serial.write(toWrite);
  48. std::cout << "Writing :" << toWrite << std::endl;
  49. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement