roadrunner84
Meep! Meep!
Het lijkt me dat de pin op je MCU actief laag is, dus die trekt de interrupt pin naar beneden. Dat verklaart ook dat het maar 2 volt is (3*0.7=2.1V).
Alternatief kan je een transistor gebruiken i.p.v. drie diodes.
rew
four NANDS do make a NOR . Kijk ook eens in onze shop: http://www.bitwizard.nl/shop/
Op maandag 24 maart 2025 17:06:14 schreef Arco:
0.7Vcc is 3.5v...
En voor I2C met een pullup naar de 5V kom je daar boven: 3.3+0.5 = 3.8V.
De pico kan evt aanstoot geven aan de pullup naar de 5V. (op alledrie de lijnen). De PCF is toevallig een chip die de max clamp stroom duidelijk in het datasheet heeft staan. Volgens mij zijn veel chips in werkelijkheid zeer vergelijkbaar, maar zetten ze het niet in het datasheet. Ik zou de clampstroom met een "max 20mA" op rond de 1mA mikken: Een factor 10 marge op "het staat niet in het datasheet, 10mA zal het wel minstens zijn". Dan mogen je pullups niet lager dan 1k7 zijn, dat is een heel prima waarde, waar je goed mee kan werken. Ik gebruik meestal 4k7 en dat werkt ook prima. Anderen doen wel eens een kleinere waarde dus 2k2 of 1k8 mag ook.
fatbeard
Honourable Member
Een goed begin is geen excuus voor half werk; goed gereedschap trouwens ook niet. Niets is ooit onmogelijk voor hen die het niet hoeven te doen.
De pull-up waarde bepaalt de maximaal haalbare snelheid in combinatie met de parasitaire capaciteiten en de capaciteiten van de aangesloten chips. Per pin reken ik gemakshalve voor SMD met 5pF, voor DIL hanteer ik 7pF per pin; de exacte waarde staat meestal in de desbetreffende datasheet.
Parasitaire capaciteiten hangen af van de bedrading en boardlayout.
rew
four NANDS do make a NOR . Kijk ook eens in onze shop: http://www.bitwizard.nl/shop/
Daar komt dan nog ongeveer 1pF per cm bij voor de bedrading.
Het maximum mocht vroeger 400pF zijn. Ik denk dat dat in de tijd was dat je geen keuze had in de snelheid: "moet 100kHz zijn".
Voor nattevinger berekeningen is 5-10 pF per pootje plus die 1 pF per cm gewoon een redelijke benadering.
Met 400pF en een 4k7 pullup krijg je dan een RC van 1.88us.
Op een halve-clock van 5us is dat behapbaar. Met een STM32 i2c module kan je dan je clock-laag periode ongeveer 1.88 us korter maken zodat de clock digitaal geinterpreteerd weer ongeveer symmetrisch is. Dit heeft vaak tot gevolg dat je net wat hogere snelheid kan halen.
(NA 1 RC tijd is 63% van de eindwaarde bereikt, voldoende "bij benadering boven de VCC*0.7 die als "gezien als 1" grens opgegeven wordt).
Ik heb nog nooit i2c op de RP2040 gedaan, dus de I2C module daar niet bestudeerd. Ik denk niet dat die deze truuk implementeert.
Maar goed... Onder de 400pF blijven is makkelijk. Waarschijnlijk gaat het om 10cm plus 2 chips. minder dan 40pF, dus 4k7 wekrt ook op 400kHz.
Arco
Special Member
Arco - "Simplicity is a prerequisite for reliability" - hard-, firm-, en software ontwikkeling: www.arcovox.com
Staat allemaal in de specs... 