Hi everyone,
was a long time without problems, but now the time has come for an until yet not understood Problem, probably an interesting one , since a lot of people might stumble upon this, in one or another way, but maybe did not yet realize it.
I did use quite some MSP430 before, without expiriencing such problems, so maybe its the silicon or some mistake i did make in my PCB.
I do use a wall plug power supply, so AC to DC in Europe, 230V to 12 Vdc without connection to protection earth, so due to my XPpower topology i got around 60 V AC floating on my 12V output voltage, if you can imagine what I mean:
The 50 Hz "sinusodial" 2 channels are the + and - voltage, so the difference between those is the violett line ( the one on on the bottom) which is around 12V.
The red line is the interesting thing, this line is connected to an GPIO pin, right now P6.0 on my MSP430F5510, it produces an error signal, which actually does something in my C-code, it triggers an LED, which is an error, I do not want this behaviour.
What I found out additionally, my GPIO P6.0 had no inner pull down activated and externally I had an 1 MegOhm resistor attached, which obvisouly is too high impedance to "surge" the error EMC signals, that are produced due to "antennas" on that pin.
When I solder an 10kOhm instead of the 1MegOhm the behaviour is improving a lot but still is not perfect.
I now did try numerous things, looked through my code ( which is pretty long, includes USB and Modbus protocoll and pretty much the whole periphery of the chipset is used) so there is still a chance that I did write some bad code, but right now i would say my code is 99% :) correct.
So to state a clear problem description:
I want to trigger an LED thru the GPIO pin P6.0 or to be more correct I wanna start an PWM signal out of TimerA, when a signal is applied to P6.0.
In normal opreation, this should occure thruh an external switch that can be attached by a long cable ( >1m ) to that pin, the switch puts around 3V on P6.0, which is of course set as an input.
First error: When I put an unconnected piece of cable to that Pin P6.0 the LED starts going on and off, as you can see in the posted picture, it is because the Pin "sees" a 50Hz logical signal applied to itself, which of course is not the purpose of the pin.
I can better the problem a little bit by lowering its impedance, but that is not the end of the problem.
Second error, much more worse:
Sometimes my code freezes, that means the LED keeps on beeing on or off, but doesnt react anymore, I suggest that somekind of EMC problematic due to a floating device is causing havoc insice the silicon, but I honestly have no clue yet what can be done about that.
I read all the errata and couldnt find anything.
Due to the fact that a lot of people must be using floating power supplies, I guess a lot of people might have the same issues, of course they are sometimes statistically and easy to reset, so maybe some simply didnt pay attention.
To add one more thing: When the whole thing is grounded by USB or another means of protectino earth, no problems occure whatsoever; also when programming with JTAG of course the whole thing is grounded trhou my PC, so it is impossible for me to debug that irregular state.
Thanks for reading, thanks for interest, thanks for your help in advance.
seb
