Yarım is uses for objects. Buçuk is uses for times. But both of them means 'half' For ex;
Yarım ekmek. - Half bread.
Bir buçuk saat. - One and half hour.
Yarım patates. - Half potatoes.
İki buçuk ay. - Two and half months
But if the time is shorter than 1, you must use 'yarım'. For ex;
Yarım gün. - Half day.
Yarım yıl. - Half year.
I hope it will be help you :)