I'm trying to figure out how you got that result, and I can't find anyway to make it come up with 0Fh.
Backtracking a bit, originally you said that you were getting a reading of 74ºF.
With this formula temperature=((((temperature>>4)+50)*9)/5)-58 temperature would have to be greater that 65500 to get 74ºF.
((((65535>>4)+50)*9)/5)-58 = 7403
Then dividing by 100 before displaying on the LCD will give you 74
That's why I think you're recieving all 1's (no response) from the DS18B20.
If you removed the /100, you should get 7403 instead of 0Fh. So This is really wierd. What changes did you make?
A few things to check...
What is the actual data being received? 65535?
How many loops are executed waiting for the conversion in Wait_Temp:? My guess here is that NO loops are performed because it receives a 1, apparently indicating that the conversion is complete, even though it's not working at all.
While the program is running, ground out the data pin. Does the reading change?
The OWIN/OUT portions of the program are fine, and should work. So there's got to be something going on with the hardware.
Bookmarks