RS232-drivare som klarar 460kbit/s till en debugport
Postat: 21 september 2010, 15:52:46
Jag har en debugport som kör asynkron seriedata via en UART med en enkel funktion för att bitbanga ut datan till en terminal/PC. För att få bitbangen att funka med rätt tider så stängs avbrottet av under en teckentid. Inga problem så långt. Så funkar det idag.
För att denna funktion skall kunna användas överallt, även i t.ex avbrottsrutiner, så måste tiden som avbrottet är avstängt hållas minimal. Detta görs enklast genom att hålla en riktigt hög bithastighet som då gör att teckentiden blir kort, och därmed även avstängningstiden. Jag skulle vilja köra den på 460kbit/s för att få tillräckligt korta tider. Problemet är att MAX232:an som sitter mot terminalen/PC:n då inte hänger med.
Det går givetvis att göra en diskret eller op-baserad drivare som kan klara det, men det hade varit mycket enklare att bara köpa en MAX232-kompatibel krets att plugga in istället för den befintliga. Då blir det ingen utvecklingstid alls. Eftersom jag har lite knappt med tid så skulle en kompatibel krets lösa saker mycket smidigare. Någon som vet om någon sådan? Dom flesta verkar bara klara 115kbit/s eller däromkring. Eller har jag letat för dåligt?
För att denna funktion skall kunna användas överallt, även i t.ex avbrottsrutiner, så måste tiden som avbrottet är avstängt hållas minimal. Detta görs enklast genom att hålla en riktigt hög bithastighet som då gör att teckentiden blir kort, och därmed även avstängningstiden. Jag skulle vilja köra den på 460kbit/s för att få tillräckligt korta tider. Problemet är att MAX232:an som sitter mot terminalen/PC:n då inte hänger med.
Det går givetvis att göra en diskret eller op-baserad drivare som kan klara det, men det hade varit mycket enklare att bara köpa en MAX232-kompatibel krets att plugga in istället för den befintliga. Då blir det ingen utvecklingstid alls. Eftersom jag har lite knappt med tid så skulle en kompatibel krets lösa saker mycket smidigare. Någon som vet om någon sådan? Dom flesta verkar bara klara 115kbit/s eller däromkring. Eller har jag letat för dåligt?