07-18-2011 04:57 AM - edited 07-18-2011 04:59 AM
The DATA_SIG is declared in command_signals.vhd.This file is the top file.That is going to ds1wm.vhd.from there this signal is routed to one_wire_io.vhd.I added that code also here.
07-18-2011 05:23 AM
In one_wire_io.vhd, you are assigning a value to DATA (which is eventually connected to DATA_SIG):
DATA <= DOUT when DDIR='1' else "ZZZZZZZZ";
This is the cause of your problem. You've declared DATA as an inout in every module, and are driving it in two places.
The logic in one_wire_io.vhd looks like you're trying to infer a tristate IO buffer. Normally you would connect this to a top level pin - you wouldn't try to use tristate logic internally.
03-13-2012 12:38 PM
I am using the DS1WM to comunicate to a temperature sensor 18B20. but i am having the same problem:
Multi-source in Unit <owtemp> on signal <DATA<7>>; this signal is connected to multiple drivers.
Could you tell me how did you fix this?
i have a machine state that drives the datta buffer but i was putting a "z" state when there was no data to transmit to the module DS1WM. so that its wrong , isnt it?
03-13-2012 08:34 PM
Intially I tried with DS1WM code to read and write of 1-Wire(Transducer).
After that i am not able to communicate with this chip using DS1WM.
So i left that path.(Communicating 1 Wire using DS1WM).
I wrote my own code to communicate with 1-Wire.
So i don't have much knowledge on DS1WM.
03-14-2012 08:02 PM
well i think i will try split that bus in two separate bus: one for input and the other for output.
if that doesnt work, i will have to make my own interface too .
thanks for taking the time to answer me