en seriell feil om proteus6.1 ?????. Hjelp!

R

RogueRabbit

Guest
Jeg har funnet et alvorlig problem om Protues VSM 6.1sp1.
Det vil si: det er ingen ALE signalet på 8051 hvis ikke bruk "movx @ dptr, a" og "movx a, @ dptr".
Faktisk er det ALE signalet alltid i existence.It 's frequensy er 1 / 6 av klokke frequensy
av 8051.This kan forårsake mange problemer.

 
Det er et par av unøyaktigheter i det du sa.

Først av alt, er ikke helt sant at ALE er Actives i alle forhold.

program memory and accesses to external
data memory.

Ølet signal (Adresse Latch Enable) sammen med PSEN (Program store aktivere), RD og WR (alternative funksjoner pinner P3.7 og P3.6) gir tilgang til to typer eksternt minne operasjoner; tilgang til eksternt
program minne og tilgang til eksterne
data minne.Spesielt er ALE signalet brukes til DEMUX og låsen (på ALE fallende kant) den lave byte adressen til en ekstern sperren (vanligvis 74HC373).Så henter bare instrunctions krever ekstern kode eller eksterne data vil føre de riktige overgangene aktiviteter ALE og over relaterte signaler.Så korrekt som du sier, alle MOVX op instrunctions er i denne kategorien.

Imidlertid, 8051 brukt som enkelt brikke program, som er uten noen form for eksternt minne (jeg mener, ved hjelp av interne PROM, eller som kode FLASH minne og idata data minne) vil ikke bruke i det hele tatt ALE, PSEN, RD og WR.Ja, i denne tilstanden kan du bruke RD og WR som I / O-porter pins, P3.7 og P3.6.
The 8051 modell som er implementert i Proteus (alle Proteus versjonen siden 5.2) har blitt optimalisert for enkelt brikke programmer, å si at programmet du lager er lastet som standard i interne chip minne.Så, har mindre strengt nødvendig fra programmet selv og selvsagt fra eksterne data åpner du programmet, vil ølet bli aldri aktivert og fordi å forbedre simulering forestillinger, adressen og data buss aktiviteter for eksternt minne redusert minst.Men dette vil påvirker ikke på atferd din søknad vil utføres i Realty.Hvis du trenger å hente koden i eksterne minnet (dvs. EPROM), kan du alltid sette den fulle bussen aktiviteter (kl expence av simulering performaces) hvis du åpner "Rediger Component" dialogen og sette "Ja" til "Simuler Program henter".

Den andre unøyaktighet er om ALE frekvens.ALE frekvensen er 1 / 12 av klokken, som er en maskin syklus, eller at samme 1US på 12MHz klokke.Dette gjelder for alle "klassiske" intellektet 8051 CPUer og derivater som gjør ikke bruk av X2 alternativet.Atmel og Philips (for eksempel Atmel AT89C51RD2 er en støtte X2 alternativet) og mange andre leverandører som Dallas (MAXIM nå) gjør bruk av X2 alternativ som reduserer maskinens koden fra 1 / 12 til 1 / 6 av klokke, bedre hastighet med samme klokkefrekvens.Men etter hva jeg vet, ikke Proteus ikke støtter ennå X2 modus.

Du kan laste ned tonnevis av dokumentasjon fra:

http://developer.intel.com/design/mcs51/docs_mcs51.htm

Jeg foreslår http://developer.intel.com/design/mcs51/applnots/01502a01.htm og http://developer.intel.com/design/mcs51/manuals/272383.htm for en fullstendig beskrivelse av MCS51 maskinvare og ALE funksjonaliteter.

Håper dette hjelper

 

Welcome to EDABoard.com

Sponsor

Back
Top