Re: PS/2 mouse as 1351?

From: Hársfalvi Levente (
Date: 2003-09-17 12:52:33


> While I don't understand what exactly he meant, I guess that this is the
> cause why I don't get any interrupts on my AVR. From its datasheet I
> learned that it has Schmitt-trigger input.

Neither did I fully understand the situation, I just noticed that it 
received no interrupts after I changed the microcontroller ;-). I suspect, 
the Schmitt-trigger input will notice the level drop (since the signal level 
on the POTX/Y lines is always close to 0v -- remember, the input voltage 
threshold value of the SID inputs is 0.8v and not Vcc/2), but probably won't 
notice the rise. A simple TTL input will switch both forth and back at 
around 0.8~1V, but the Schmitt-trigger won't (without a larger voltage 
swing) as it has hysteresis.

> Are there any other options?

Use the onboard comparitor of the AVR to trigger an interrupt at whatever 
voltage level you set ;-). I'd at least do this. The comparitor has no 
hysteresis (as I remember), and you can also set the trigger level by a 
simple trimmer potmeter or a fixed voltage divider.


> PS: What is the smallest AVR that has an SPI bus?

I seem to remember a "small" (28-pin) AtMega as the smallest one.

> For instance, the 2313,
> which would otherwise be up to the task, has it only for programming purposes.

Yep :-(

> I believe, however, that you could use bit-banging on the 2313 like Levente
> did on the PIC.  On the PS/2 interface you even have the advantage over
> RS-232 that the clock is driven by the "computer", isn't it?

No, it's the other way (if it was that simple, I could have as well done it 
on the 16c84 by bit-banging ;-) ). The clock is generated by the device, and 
it's pretty fast. By itself, it could be done by bit-banging, but I guess 
it's almost impossible to run it simultaneously with the also time-sensitive 
1351 emulation task.

Best regards,


       Message was sent through the cbm-hackers mailing list

Archive generated by hypermail pre-2.1.8.