if (buffRead=='$')
This statement is invalid, you cannot compare an array to the value of a single character and expect a proper result. Assuming that you are looking for a dollar sign as the first character of your array the statement should be:
if (*buffRead=='$')
if (buffRead[0]=='$')
Spend some time rereading how to address the contents of different types of variables and arrays in C++.