I think you really need to know the context in order to decide which to use. In many cases they are interchangeable but with some difference in meaning. In Portuguese a non-speaker might have the same difficulty with "erro," "equivoco," "falta," etc. Here are some examples to think about:
I was mistaken.
I was wrong.
I mistook you for somebody else.
I wrongly identified you as someone else.
I wronged you.
The way I acted toward you was a mistake.
Two wrongs do not add up to a right.
These words can behave as nouns, verbs, adjectives or adverbs really. I think that as you get used to them you will begin to differentiate when to use one as opposed to the other!