Hur bra är utvecklings verktygen för STM32 ARM ??
Re: Hur bra är utvecklings verktygen för STM32 ARM ??
Finns det någon bra HW implementering? Problemet är ju att mjukvaran stup i kvarten måste ta beslut vad som skall göras härnäst i överföringen t.ex. ack/nack'as ju varje överförd byte.
Re: Hur bra är utvecklings verktygen för STM32 ARM ??
Nejdå, det behövs inte. Kolla rad 483 i min länk på sidan innan med min implementering.
Den bara puttar in mer data i shiftregistret så länge det ska skickas mer.
Alternativt rad 576 för recieve. Den ända gången man måste pilla med ACK/NACK är när det är de sista bytesen kvar.
Den bara puttar in mer data i shiftregistret så länge det ska skickas mer.
Alternativt rad 576 för recieve. Den ända gången man måste pilla med ACK/NACK är när det är de sista bytesen kvar.
Re: Hur bra är utvecklings verktygen för STM32 ARM ??
Mja, jag tänkte mer på att eftersom protokollet har en ack/nack bit efter varje databyte, går det inte bara att ha en HW fifo som pytsar ut databyten automatiskt, som med USART. Istället måste HW'n implementeras med mycket "öppenhet" så att mjukvaran har kontroll över varje enskilld byte. Detta leder till håriga implementationer där hårdvaran inte avlastar mjukvaran så värst mycket. Din kod tycker jag är en bra illustration över när hårdvaran är hårig. Din interrupt handler skulle jag beskriva som enorm med tanke på att den (om jag förstått koden rätt) körs för varje överförd byte och bitraten är ändå på 400 kHz.
Tack för övrigt att du postade koden, den kommer till bra användning snart.
Tack för övrigt att du postade koden, den kommer till bra användning snart.

Re: Hur bra är utvecklings verktygen för STM32 ARM ??
Det du vill tror jag händer automatiskt via DMA.
Dock har inte testat då när jag väl fick det att fungera ville jag inte arbeta mer med I2Cn.
Dock har inte testat då när jag väl fick det att fungera ville jag inte arbeta mer med I2Cn.
