RISOLTO - Control Word Intel PPI8255

Discussioni sui sistemi operativi, programmi e tools.
Rispondi
Avatar utente
fra3point
Membro attivo
Messaggi: 388
Iscritto il: 24/08/2010, 15:16
Specialità: Prog. e 3D Modelling
Località: L'Aquila
Contatta:

RISOLTO - Control Word Intel PPI8255

Messaggio da fra3point »

Ciao a tutti... Non mi aspetto di trovare una risposta precisa su un argomento che potrebbe essere abbastanza sconosciuto. Ho cercato un po' ovunque senza trovare risposta, quindi provo anche qui (spero che non venga ritenuto un offtopic).
Dovrei studiare per la scuola il dispositivo di interfacciamento parallelo Intel PPI8255 ed in particolare come configurare le sue porte A,B,C in tutti i modi possibili tramite l'assembler ( :roll: ) 8086. Per fare questo avrei però bisogno delle varie word control. Su alcuni appunti che ho trovato in giro per la rete ho letto che bisogna cercare sul datasheet del componente, ma non ho trovato nulla.
Spero di trovare qualcuno che ne sappia più di me e che mi possa aiutare, ma ripeto: forse non è il forum adatto quindi non mi aspetto nulla :)

Grazie a chiunque saprà aiutarmi! :sisisi:

P.S. IMMAGINO DI NON ESSERMI SPIEGATO BENE.. ANZI NE SONO SICURO. MA NON SAPREI COME FARE, VOGLIATE SCUSARMI! :spat:
Ultima modifica di fra3point il 15/02/2011, 19:43, modificato 1 volta in totale.
draw_text(100,100,"fra3point");

Progetti in corso:
Spoiler
Tuning Paradise --> 10%

Saw: The Game --> 60%

Tropic Races --> 40%

Avatar utente
BaronVsCorsar
GMI VIP
Messaggi: 4699
Iscritto il: 14/02/2004, 12:05
Specialità: Saccenza
Uso: GameMaker 8.1
Località: Ferrara
Contatta:

Re: Word Control Intel PPI8255

Messaggio da BaronVsCorsar »

PPI8255 è direttamente il nome dell'integrato oppure è una sua componente?
Procurati il nome dell'integrato, cerca su google il suo datasheet (a volte è difficile da trovare, ma normalmente sono disponibili gratis direttamente dai produttori, ci sono anche siti che raccolgono DS di varie marche).
Sul datasheet trovi anche tutta la documentazione per programmare il componente con il suo assembly.
ImmagineSchiva questo - http:\\baronvscorsar.altervista.org
by Lego: Vado in un bar e faccio "votiamo che quel tizio la in fondo venga buttato fuori", ma perché?

Avatar utente
fra3point
Membro attivo
Messaggi: 388
Iscritto il: 24/08/2010, 15:16
Specialità: Prog. e 3D Modelling
Località: L'Aquila
Contatta:

Re: Word Control Intel PPI8255

Messaggio da fra3point »

Credo che PPI8255 sia proprio il nome dell'integrato. Ho trovato un datasheet abbastanza esplicativo ma parla solo in generale di queste maledettissime word control. E per di più spiega come programmarlo con un assembler di cui ignoro ogni particolare.. :|
draw_text(100,100,"fra3point");

Progetti in corso:
Spoiler
Tuning Paradise --> 10%

Saw: The Game --> 60%

Tropic Races --> 40%

Avatar utente
BaronVsCorsar
GMI VIP
Messaggi: 4699
Iscritto il: 14/02/2004, 12:05
Specialità: Saccenza
Uso: GameMaker 8.1
Località: Ferrara
Contatta:

Re: Word Control Intel PPI8255

Messaggio da BaronVsCorsar »

non è che un integrato si programmi con un assembler di tua scelta: si programma con il suo assembler (l'assembly deve essere in rapporto 1:1 con il linguaggio macchina!).
io davo per scontato che il suo fosse quello dell' 8086.
Ovviamente operazioni banali come "muovi un contenuto di memoria" è sempre disponibile, quindi ANCHE quello di configurare una word di sistema spostandogli gli opportuni bit (in altre parole un MOV con opportuna sequenza di bit su opportuna word).
Certo che facendolo con un altro assembly discorsi come simmetria dei registri, possibilità di fare mov da costanti o solo da celle di memoria e così via (vale a dire tutti i vincoli HW del tuo dispositivo) non è detto che saranno rispettati... ma vabbè, se è un esercizio.

CMQ:
1)dal datasheet trova quali registri ti configurano le porte del dispositivo
2)individua tutte le possibili configurazioni (verosimilmente controllate da uno o più bit di uno o più registri)
3)fai tutte le possibili combinazioni
4)esegui l'operazione (equivalente a) MOV alterando solo i bit di interesse dei tuoi registri in tutti i possibili modi

Il datasheet di un integrato e' sempre esaustivo, completo e autosufficiente. Altrimenti puoi aver trovato altri documenti (brochure "pubblicitarie", facts, guide alle scelte degli integrati con comparison tra dispositivi...)
ma il datasheet è sempre tutto quello che ti serve, sia a livello elettrico, sia a livello software...

Cosa hai trovato riguardo alle word control? Puoi copia&incollare uno stralcio?
ImmagineSchiva questo - http:\\baronvscorsar.altervista.org
by Lego: Vado in un bar e faccio "votiamo che quel tizio la in fondo venga buttato fuori", ma perché?

Avatar utente
fra3point
Membro attivo
Messaggi: 388
Iscritto il: 24/08/2010, 15:16
Specialità: Prog. e 3D Modelling
Località: L'Aquila
Contatta:

Re: Word Control Intel PPI8255

Messaggio da fra3point »

mi dispiace ma non posso copia incollarlo.. è una serie di schemi in pdf che indicano come sono interpretati i bit relativi al registro di controllo dell'intrgrato, cioè quel registro dove dovrei inserire la word control che mi serve. Forse devo vedere bene ogni singolo bit a cosa si riferisce, impostare tutto il registro nella configurazione che mi serve, trasformare in esadecimale il numero binario che così ottengo e sperare che il valore hex che viene fuori sia proprio quella word control.. :shock:
draw_text(100,100,"fra3point");

Progetti in corso:
Spoiler
Tuning Paradise --> 10%

Saw: The Game --> 60%

Tropic Races --> 40%

Avatar utente
BaronVsCorsar
GMI VIP
Messaggi: 4699
Iscritto il: 14/02/2004, 12:05
Specialità: Saccenza
Uso: GameMaker 8.1
Località: Ferrara
Contatta:

Re: Word Control Intel PPI8255

Messaggio da BaronVsCorsar »

Forse devo vedere bene ogni singolo bit a cosa si riferisce, impostare tutto il registro nella configurazione che mi serve, trasformare in esadecimale il numero binario che così ottengo e sperare che il valore hex che viene fuori sia proprio quella word control.. :shock:
togli il forse, la tua speranza e soprattutto la faccina stupita in fondo alla tua affermazione :lol:
questo è il modo per configurare un registro, ovviamente i bit che non influenzano le tue porte (ma che avranno effetti su altri settaggi) li devi lasciare in alterati.

in genere:
leggo la word control (contenuta in un registro) e la metto in ram
altero alcuni bit che mi interessano
sovrascrivo la word control (cioè il registro che la contiene)

non capisco perchè vuoi trasformare in esadecimale, in assembly se ben ricordo le costanti le puoi passare anche in decimale, o binario.
E lavora con gli operatori bit a bit per alzare o abbassare i bit che vuoi, in modo che quelli non coinvolti siano inalterati
vecchia_control_word & 11111101 //per abbassare il secondo bit e lasciare inalterati gli altri
vecchia_control_word | 00000100 //per alzare il terzo bit e lasciare inalterati gli altri

& sta per and bit a bit (non ho idea del mnemonico in assembly)
| sta per or bit a bit
ImmagineSchiva questo - http:\\baronvscorsar.altervista.org
by Lego: Vado in un bar e faccio "votiamo che quel tizio la in fondo venga buttato fuori", ma perché?

Avatar utente
fra3point
Membro attivo
Messaggi: 388
Iscritto il: 24/08/2010, 15:16
Specialità: Prog. e 3D Modelling
Località: L'Aquila
Contatta:

Re: Word Control Intel PPI8255

Messaggio da fra3point »

ancora non sono a questo livello con l'assembly, non ho mai usato gli operatori logici e i "bit a bit".. Comunque uso l'esadecimale per maggiore chiarezza.. E per ricordare meglio i valori delle word control.. Inoltre nelle esercitazioni di laboratorio a scuola usiamo sempre l'esadecimale..
Domani provo queste operazioni e cerco di far funzionare il dispositivo. Grazie per l'aiuto! :D
draw_text(100,100,"fra3point");

Progetti in corso:
Spoiler
Tuning Paradise --> 10%

Saw: The Game --> 60%

Tropic Races --> 40%

Avatar utente
pontino
Admin
Messaggi: 947
Iscritto il: 17/09/2006, 21:30
Contatta:

Re: Word Control Intel PPI8255

Messaggio da pontino »

Invece credo che le classiche operazioni bitwise si "devono" e per forza DEVONO imparare per prima. Anche perchè sennò, cosa cavolo ci fai con l'assembler...
Sposto in una sezione più appropriata.
ਗੁਰੂ

Avatar utente
fra3point
Membro attivo
Messaggi: 388
Iscritto il: 24/08/2010, 15:16
Specialità: Prog. e 3D Modelling
Località: L'Aquila
Contatta:

Re: RISOLTO - Control Word Intel PPI8255

Messaggio da fra3point »

ho risolto!! Ho trovato un datasheet che spiegasse come dovevo settare i bit del registro di controllo e sono riuscito a trovare la control word giusta! :) Potete chiudere se volete, non credo ci saranno altri post relativi! :lol:
draw_text(100,100,"fra3point");

Progetti in corso:
Spoiler
Tuning Paradise --> 10%

Saw: The Game --> 60%

Tropic Races --> 40%

Rispondi

Chi c’è in linea

Visitano il forum: Nessuno e 55 ospiti