Jag är en nybörjare och jag behöver hjälp med mitt kopplingshema. Jag hadde tängt att efterlikna detta projekt http://www.rickard.gunee.com/projects/m ... amesys.php
Kan någon kolla på mitt koplingshema och tala om om det är något fel med det?
Jag är lite osäker med kristallen om det är något fel där?
Senast redigerad av Nutrino 28 december 2004, 19:50:17, redigerad totalt 4 gånger.
Och snälla - spara bilderna som png eller gif, inte bmp som nu....
Storleken krymper från 3800 KB till 64KB. Alltså 60 ggr mindre.
---
Några tankar kring bygget.
1) Varför har du två resetströmbrytare? Är det inte bättra att bara ha en och låda den driva båda?
2) Varför två kristaller. Kör med en kristall och koppla Osc2 på den med kristallen till Osc1 på den utan. (Med så kort förbindelse som möjligt.)
3) Varför använder du inte RX/TX-pinnarna på båda kretsarna för att koppla ihop dom. Som det är nu så måste du bitbanga kommunikationen i den ena kretsen.
4) Om jag inte minns helt fel så använder man inte 40 MHz-kristaller. Man kör med 10 MHz och aktiverar en intern "klock-quadrupplare" för att komma upp i 40 MHz. (Har dock inte kollat databladet nu, men jag har för mig att det är så)
Nu är schemat borta, men vad jag kom ihåg var det 2 PIC:ar som enbart drev en massa lysdioder.
Om syftet med den andra PIC:en enbart var att få fler portar att driva lysdioder med, är det ju enkare att använda t.e.x. skiftregister för att få fler utportar. Då kan du lägga på en jäkla massa lysdioder om du har lust, och slippa köra två processorer som kommunicerar seriellt.
Använd några stycken 74HC595, då behöver du bara 3 portar på uC:n för att driva hur många utgångar du vill.
Port1: Seriell data in till skiftregistren
Port2: Bitklocka in till skiftregistren
Port3: Aktiveras för att latcha ut data på skiftregistrens utgångar
Du klockar in data seriellt i skiftregistren, och latchar ut datat när alla utgångar på skiftregistret ligger som du vill.
Nackdelen med detta är att det tar lite tid. Jag vet inte hur ofta din display ska uppdateras, men det borde nog fungera.
Du kan även använda multiplexing för att få ner antalet portar, istället för ovanstående metod.
Om du söker lite på google hittar du säkert massor av scheman.
Senast redigerad av Schnegelwerfer 28 december 2004, 18:36:28, redigerad totalt 1 gång.
Med en 40 MHz klocka vilket ger 10 miljoner instruktioner per sekund borde det inte ta längre än 1 uS att shifta ut en bit till shiftregistret. Om vi säger att du ska uppdatera alla lysdioderna 775 ggr per sekund så har du kraft nog att hantera 1290 lysdioder. Det är några fler än du har :-)
Om man räknar med att det tar 10 instruktionscykler för att klocka ut en bit i skiftregistret (antagligen tar det mindre tid) så tar det 560*775us = 434ms att uppdatera displayen 775ggr.
Du har då 565ms över till annat varje sekund.
Hur mycket annat ska processorn hinna med?
EDIT: matseng hann före Jag räknade dessutom på en intern klockfrekvens på 1MHz
Hur snabbt kan man klocka ett "normalt" skiftregister? Är det så väl att man kan "synka" den med interna klockfrekvensen och klocka ut en bit var fjärde instruktion, eller vad det nu kan bli (~ runt 1MHz)?