[abc80] koppla ABC80 till PIC32:an

H. Peter Anvin hpa at zytor.com
Sön Sep 5 23:52:04 PDT 2010


On 08/31/2010 02:26 AM, juhasz at abc.se wrote:
> Behövs inte - det finns redan pull-ups på bussen. Senast jag testade körde
> jag ju faktiskt med open-drain ut från PIC:en och det funkade fint, bara
> man hann i tid.

Open Drain är långsammare om bussen har legat LOW sedan tidigare, så det
är troligen inte den bästa idén.

Det andra som man får se upp med är att se till att stänga av drivningen
i tid -- tekniskt sett så fort INP# eller STATUS# går tillbaka till HIGH.

Jag skulle nog implementera det genom att programmera interrupt endast
på HIGH->LOW transition, och sedan polla i interrupthandlern till
signalen går hög igen.

Det torde vara relativt enkelt att skriva en interrupthandler i
assembler som kräver väldigt få register, men som sagt för MIPS så blir
det nog svårt att skriva det i C utan att få problem om inte kompilaton
är smart nog.

Det är också viktigt att undvika onödigt arbete i interruptrutinen,
eftersom detta definitivt är "hard real-time!"  STATUS# (INP1#) är ett
statusvärde som man kan helt enkelt läsa i minnet, och INP# läser från
en kö om det finns några data att läsa -- läs pekare, läs data, skriv
data, uppdatera pekare.

	-hpa

-- 
H. Peter Anvin, Intel Open Source Technology Center
I work for Intel.  I don't speak on their behalf.



More information about the ABC80 mailing list