En dan nu:::::: weer IIC !
verklaard door Jan Blok

De vorige maal stonden er twee verhalen over de IIC bus in dit tijdschrift. De andere was van iemand die ik ontmoet heb in de regio Den Haag op een bijeenkomst daar. We hebben elkaar wel gesproken en het was mij duidelijk dat hij ook wat ging doen of al deed aan de IIC bus. Verder zijn we niet gekomen want er is altijd zoveel te kletsen met iedereen.

Schrijft hij een heel verhaal!!
Aangezien iedereen die dit leest het andere artikel ook gelezen kan hebben, ga ik min of meer puntgewijze door de tekst.

Welke chips zijn te gebruiken?
De vraag die gesteld werd kwam erop neer dat hij wil weten waar de klok en ram chips die de instellingen van de machine bewaren, zitten. En dan niet op het bord maar het adres. Ofwel, hoe zijn die chips geadresseerd?
Nou, in de eerste plaats is het slechts een chip. Een kleintje nog wel. Met slechts acht pootjes. En een kristalletje en een C'tje. De heer Philips heeft een gekombineerde chip gemaakt. Dit is de enige chip die in een computer zoals wij die hebben, aan de IIC bus hangt. En dan het address. Daar weet ik zeker van dat het 101000 A1 is. Wat staat hier? Dat bit 7=hoog, bit 6=laag, bit5=hoog, bit4 en 3 en 2 zijn laag, bit A1 kun je kiezen, hoog of laag. En dan beginnen die computergasten te tellen op nul. De enige juiste manier trouwens. Wat doen we met bit nul? Wel daar geven we mee aan of we lezen of schrijven. Wat kunnen we nu aan moeilijkheden verwachten als we andere chips aan de bus hangen?

Geen, als... we maar van dit address afblijven. En dat is niet moeilijk; de andere interessante chips zitten allemaal ergens anders. Temeer daar het aantal chips dat voor ons interessant is, sterk beperkt is. Ga maar na: een parallel In/Uit, een Digitaal/Analoog converter, een klok die als gebeurtenissen teller te gebruiken is, een temperatuur opnemer, en dan nog een ding waar ik nog wel over begin. En dat is het dan wel. Voorlopig speelgoed genoeg.

En dan de atoomtijd.
Simpel, dat gaat niet. Zomaar het vervangen van het een door het ander. Je moet dan enig inzicht hebben in het binnenste van de computer. Zo'n ding leeft bij de gratie van het operating systeem. Dat is een stuk software dat de gang van zaken regelt. Ook de klok. Wat er gebeurt is dat de klokchip een interrupt afgeeft om de seconde. Daarop wordt de klok op het scherm bijgewerkt. Als een file een datum moet krijgen, leest het operatingsysteem de klok en het punt in de tijd wordt in de file geschreven. Je kunt niet om het operating system heen voor wat betreft de timestamp in de file en de klok op de taakbalk. Je kunt wel een heel eigen applicatie bouwen in zowel hard als software maar ja, dat blijft halfslachtig want je kunt de 'echte' tijd niet meedelen aan de files. Wat je wel kunt doen is... je mouwen opstropen en er eens stevig voor te gaan zitten om toch je zin te krijgen. Dat kristalletje en C'tje waar ik het over had, hebben er alles mee te maken.

Ik hoor het wel als je een vasthouder bent. Eigenlijk ben ik vreselijk geïnteresseerd want het is een soort jeugd frustratie van me. Een jaar of vijfentwintig tot dertig geleden was ik geïnteresseerd in stabiele frekwenties. Want dat is wat die zender doet -niks te tijdzender- en het zou genoegdoening zijn om nu met behulp van een Blokker wekkerradio de tijd gelijk te zetten op mijn computer(s). Er zijn twee mogelijkheden om dat op te lossen dus wat ik heb gezegd, simpel dat gaat niet, herroep ik. Dat wordt veranderd in: Dat gaat niet simpel.

En dan de rest.
Die lieden in Gooi en Eemland die bezig zijn met een kaart om teletekst op het scherm te krijgen; hoever zijn jullie? Het lijkt me wel een leuk onderwerp en er is nogal wat eer mee te halen ook. Teletekst immers ziet er ook op de modernste TV uit als een computerscherm uit het stenen tijdperk. Is er een TV tuner die IIC te sturen is? Wanneer komen jullie eens langs? En dan die man die een zender wil automatiseren d.m.v. infrarood bediening. Dat gebeurt nu ook al maar hij wil onder de licentie uit die periodiek vernieuwd moet worden. En hij denkt dat hijzelf het minstens zo goed kan.

Dat spreekt me wel aan dus weer een gespreksonderwerp op de bijeenkomsten. En als je dit leest, er is een chip die SAA3028 heet en een IR-transcoder(RC5) is. Dat lijkt me heel wat gemakkelijker dan een 555 zelf sleutelen. Ik geloof niet dat dat betrouwbaar gaat. Als je kijkt wat er op de IIC bus gebeurt, dan blijkt dat er nogal eens tijdgaten in de clock en datastroom zitten. Dat maakt als zodanig niet uit maar wel als er tijdkritiese dingen gedaan worden. Zullen we het er eens over hebben?

Veiligheid.
Daar ging een groot deel van Henri's artikel over. Om eerlijk te zijn ben ik het er niet mee eens. In die zin dat ik vind dat hij lang niet ver genoeg gaat. Als je zelf wat prutst gaat er af en toe wat fout. Bij mij wel tenminste. En dan voldoet de voorgestelde beveiliging niet. Die doet n.l. niets meer dan voorkomen dat de lijnen door de nul en boven de 5 volt gesleurd worden. Een serieweerstand in de lijn is een prima manier om te zorgen dat je met je signalen niet zover weg komt. Ook al niet goed dus. Wat dan wel? BUFFERS! En wel speciale die hiervoor gemaakt worden. En ik ben ook al een tegenstander van de voeding uit de computer te betrekken. Slingert er echt niet een stuk voeding ergens? Zo nee, een PC voeding is heel bruikbaar als je hem maar een voorbelasting geeft.

Nog meer veiligheid geeft een galvaniese scheiding. Is flink overdreven hoor dat weet ik ook wel. Je moet ook een risiko durven nemen maar in dit geval heeft het grote voordelen. Een nadeel van de IIC bus op onze machines is dat de bus slechts gedeeltelijk is geïnplementeerd. Andere busmasters worden niet ondersteund.

Ik denk zelfs dat het schade kan doen als je dat probeert. Dus ben ik van plan om zelf een echte IIC chip te monteren. Met -jawel- galvaniese scheiding. Dan kun je zien wat er gebeurt. Volgende keer leg ik uit wat ik bedoel.

Op de komende bijeenkomst ben ik aanwezig met een scope om te laten zien wat er nu eigenlijk gebeurt op die data en clock lijn. Komt allen. Dan krijgen jullie de plaatjes die ik hier had willen tekenen. Er was echter zoveel te schrijven dat er geen ruimte voor is. De woord teller van ZAP staat op dik 1100 dus twee bladen vol, wegwezen.