Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Snowflake porta l'IA dove sono i dati, anche grazie a un accordo con OpenAI
Snowflake porta l'IA dove sono i dati, anche grazie a un accordo con OpenAI
Snowflake ha presentato diverse novità per la sua piattaforma legate all'intelligenza artificiale. Quella forse più eclatante è una collaborazione con OpenAI, ma non mancano diverse nuove funzionalità che rendono la piattaforma più flessibile e in grado di rispondere meglio alle esigenze in continuo cambiamento delle aziende
Sistema Mesh Roamii BE Pro: il Wi-Fi 7 secondo MSI
Sistema Mesh Roamii BE Pro: il Wi-Fi 7 secondo MSI
Con velocità teoriche fino a 11 Gbps, gestione tramite app intelligente e protezione avanzata dei dispositivi, Roamii BE Pro porta il Wi‑Fi 7 tri‑band nelle abitazioni più esigenti. Un sistema Wi-Fi Mesh proposto da MSI allo scopo di garantire agli utenti una rete fluida e continua capace di sostenere streaming 8K, gaming competitivo e le applicazioni moderne più esigenti in termini di banda
Recensione HUAWEI Mate X7: un foldable ottimo, ma restano i soliti problemi
Recensione HUAWEI Mate X7: un foldable ottimo, ma restano i soliti problemi
Mate X7 rinnova la sfida nel segmento dei pieghevoli premium puntando su un design ancora più sottile e resistente, unito al ritorno dei processori proprietari della serie Kirin. L'assenza dei servizi Google e del 5G pesa ancora sull'esperienza utente, ma il comparto fotografico e la qualità costruttiva cercano di compensare queste mancanze strutturali con soluzioni ingegneristiche di altissimo livello
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 24-06-2004, 10:48   #1
WhiteR@bbit
Senior Member
 
L'Avatar di WhiteR@bbit
 
Iscritto dal: Jul 2002
Città: 3vis0
Messaggi: 423
HELP..per esame elettonica

Scusate per il topic luuuuungo....

Salve a tutti, ho un mio amico che è depresso al massimo: deve presentare un esame di elettronica, ma non riesce a capire come mai non funziona a dovere.
Il progetto consiste nel realizzare un cancello che si apre quando una vettura passa davanti ad un sensore. Il risultato del codice qua sotto è che il cancello si apre si, ma solo con telecomando.
Vi chiedo aiuto nell'individuare se il problema sta nel codice, o nella realizzazione pratica. (se il codice è ok, gli dirò di controllare il progetto)

Premetto che io non ho la benchè minima conoscenza di quanto sto per postare, il mio ruolo è solo quello di vicino di casa di uno sfigato che un esame tra pochi giorni...
FILE1: "RICEZIONE.ASM"
Codice:
.TITLE	"RICEVITORE"
.VERS	"ST62E65"
;*********************************************** registri per uso generale ***************************************


X 	.DEF 080h			;regisro x
Y 	.DEF 081h			;regisro y
V    	.DEF 082h			;regisro v
W 	.DEF 083h			;regisro w
A 	.DEF 0FFh			;regisro a

;*********************************************** registri per le porte I/O ***************************************

PORT_A	.DEF 0C0h			;Data register A port
PORT_B	.DEF 0C1h			;Data register B port
PORT_C	.DEF 0C2h			;Data register C port

PDIR_A	.DEF 0C4h			;Data direction reg. A port
PDIR_B	.DEF 0C5h			;Data direction reg. B port
PDIR_C	.DEF 0C6h			;Data direction reg. C port

POPT_A	.DEF 0CCh			;Option register A port
POPT_B	.DEF 0CDh			;Option register B port
POPT_C	.DEF 0CEh			;Option register C port


;*********************************************** registri di interrupt ***************************************

IOR	.DEF 0c8h			

;*********************************************** registri data rom windows ***************************************

DRW	.DEF 0c9h

;*********************************************** registri timer 2 ***************************************

ARRC	.DEF 0D9h			;reload capture register
ARCP	.DEF 0DAh			;compare register
ARMC	.DEF 0D5h			;mode control register
ARSC0	.DEF 0D6h			;status control register
ARSC1	.DEF 0D7h			;status control register
ARLR	.DEF 0Dbh			;load register

;*********************************************** registri A/D converter ***************************************

ADCR	.DEF 0D1h			;registro di controllo
ADDR	.DEF 0D0h			;registro dati

;*********************************************** controllo oscillatore ***************************************

OSCR	.DEF 0DCh			;oscillator control register

;*********************************************** controllo eeprom ***************************************

DRBR	.DEF 0E8h			;data ram/eeprom bank register
EECR	.DEF 0EAh			;eeprom control register

;*********************************************** registr watchdog ***************************************

WDOG	.DEF 0D8h			;registro wachdog

;*********************************************** timer 1 ***************************************
PSC	.DEF 0D2h			;controllo prescaler
TCR	.DEF 0D3h			;registro dati
TSCR	.DEF 0D4h			;registro di controllo dati

;*********************************************** controllo SPI ***************************************

SPID 	.DEF 0E0h			;SPI data register
DIV	.DEF 0E1h			;SPI divider register 
MOD	.DEF 0E2h			;SPI mode register
MISCR	.DEF 0DDh			;miscellaneous register


;****************************************************variabili****************************************
CODICEA .DEF  084h			;codice apricancello
CODICEB .DEF  085h			;CODICE B
MEMMOT	.DEF  086h
L	.DEF  087h

;*********************************************** inizio programma dall'ind. 080h ***********************************

	.org 080h			;inizio programma
INIZIO	LDI  WDOG,0ffh			;ricarico watchdog
	LDI  PDIR_A,11000000b		
	LDI  POPT_A,00000000b		
	LDI  PORT_A,00000000b		
	
	LDI  PDIR_A,11000000b		
	LDI  POPT_A,11000000b		
	LDI  PORT_A,00000000b

	LDI  PDIR_B,11000010b		
	LDI  POPT_B,00110000b		
	LDI  PORT_B,00001101b	

	LDI  PDIR_B,11000010b		
	LDI  POPT_B,11110010b		
	LDI  PORT_B,00001101b	

	LDI  PDIR_C,00000001b		
	LDI  POPT_C,00000000b		
	LDI  PORT_C,00000000b	

	LDI  PDIR_C,00000001b		
	LDI  POPT_C,00000001b		
	LDI  PORT_C,00000000b		

	LDI  ADCR,0			;disabilita il convertitore
	LDI  TSCR,0			;disabilita timer 1
	LDI  ARMC,0			;disabilita ARMTIM
	LDI  IOR,00110000b 		;disabilita tutte le interruzioni
	LDI  MOD,0			;disabilita spi
	RETI				;ripristina i flag principali
	JP  MAIN			;salta al programma principale

;****************************************Programma principale**************************



MAIN	LDI  WDOG,0ffh
	RES	6,PORT_B		;DISABILITO 555
	RES	0,MEMMOT
BIT0	JRR	0,PORT_A,MEM0		;LEGGO IL CODICE	
	SET	0,CODICEA
	JP	BIT1
MEM0	RES	0,CODICEA
BIT1	JRR	1,PORT_A,MEM1
	SET	1,CODICEA
	JP	BIT2
MEM1	RES	1,CODICEA
BIT2	JRR	2,PORT_A,MEM2
	SET	2,CODICEA
	JP	BIT3
MEM2	RES	2,CODICEA
BIT3	JRR	3,PORT_A,MEM3
	SET	3,CODICEA
	JP	BIT4
MEM3	RES	3,CODICEA
BIT4	JRR	4,PORT_A,MEM4
	SET	4,CODICEA
	JP	BIT5
MEM4	RES	4,CODICEA
BIT5	JRR	5,PORT_A,MEM5
	SET	5,CODICEA
	JP	BIT6
MEM5	RES 	5,CODICEA
BIT6	RES	6,PORT_A		;DISABILITO TRASMISSIONE
	RES	7,PORT_A		;ABILITO RICEZIONE
	LD	A,CODICEA
	ANDI	A,00111111B
	LD	CODICEA,A
	CALL	DELAY					
ABTRASM	LDI  WDOG,0ffh
	JRR	0,PORT_B,ABTRASM	;QUANDO ARRIVA UN FRONTE DI DISCESA PROSEGUE	
	CALL	DELAY4	
	LDI	W,7
	LDI	L,0
RX	LD	PORT_B,A
	ANDI	A,00000001B
	ADD	A,L
	SLA	A
	LD	L,A
	CALL	DELAY1
	DEC	W
	JRZ	FIN1	
	JP	RX
FIN1	SZ<X,A

	

	LD	A,CODICEA
	CP	A,CODICEB		;COMPARO I DUE CODICI
	JRNC    BAM
	JP	MAIN
BAM	JRZ	APRI
	JP	MAIN
APRI	SET	6,PORT_B		;ABILITO 555
	SET	7,PORT_B		;COMANDO1 MOTORE
	RES	0,PORT_C		;COMANDO2 MOTORE
	SET	0,MEMMOT
FINEC2	LDI  WDOG,0ffh
	JRR	3,PORT_B,FINEC2
	RES	6,PORT_B
	CALL	DELAY2
	SET	6,PORT_B		;RIABILITO555
	RES	7,PORT_B		;INVERTO IL VERSO DEL MOTORE
	SET	0,PORT_C
	SET	1,MEMMOT		
FINEC1	LDI  WDOG,0ffh
	JRR	2,PORT_B,FINEC1
	RES	6,PORT_B
	RES	7,PORT_B
	RES	0,PORT_C
	JP   	MAIN



DELAY2  LDI	v,255
	LDI	Y,93
DEL2	LDI	X,255
CIC2	LDI  WDOG,0ffh
	DEC	X
	JRNZ	CIC2
	LDI  WDOG,0ffh
	DEC	Y
	JRNZ	DEL2
	LDI  WDOG,0ffh
DEL3	DEC	V
	JRNZ	DEL3
	RETI

DELAY	LDI  WDOG,0ffh
	LDI	Y,41
DEL	LDI	X,255
CIC	LDI  WDOG,0ffh
	DEC	X
	JRNZ	CIC
	DEC	Y
	JRNZ	DEL	
	RET

DELAY1	LDI  WDOG,0ffh
	LDI	Y,3
DEL1	LDI	X,34
CIC1	LDI  WDOG,0ffh
	DEC	X
	JRNZ	CIC1
	DEC	Y
	JRNZ	DEL1
	RET

DELAY4	LDI  WDOG,0ffh
	LDI	Y,3
DEL2A	LDI	X,35
CIC2A	LDI  WDOG,0ffh
	DEC	X
	JRNZ	CIC2A
	DEC	Y
	JRNZ	DEL2A
	RET
;*****************************************GESTIONE INTERRUPT*********************************

TAD_INT RETI
ART_INT	RETI
C_INT	RETI
FOT_INT	RES	6,PORT_B
	RES	7,PORT_B
	RES	0,PORT_C
CONTR1	LDI  WDOG,0ffh
	JRS	4,PORT_B,CONTR1
CONTR2	LDI  WDOG,0ffh
	JRS	5,PORT_B,CONTR2
	RETI
NMI_INT	RETI
;******************************************************INTERRUPT VECTOR******************************

	.ORG	0FF0H	
	JP	TAD_INT	
	JP	C_INT
	JP	FOT_INT
	.ORG	0FFCH
	JP	NMI_INT
	JP	INIZIO
	.END	
	.ORG	0FFCH
	.END
FILE2: "TRASMISSIONE.ASM"
Codice:
.TITLE	"TRASMETTITORE"
.VERS	"ST62E60"
;*********************************************** registri per uso generale ***************************************


X 	.DEF 080h			;regisro x
Y 	.DEF 081h			;regisro y
V    	.DEF 082h			;regisro v
W 	.DEF 083h			;regisro w
A 	.DEF 0FFh			;regisro a

;*********************************************** registri per le porte I/O ***************************************

PORT_A	.DEF 0C0h			;Data register A port
PORT_B	.DEF 0C1h			;Data register B port
PORT_C	.DEF 0C2h			;Data register C port

PDIR_A	.DEF 0C4h			;Data direction reg. A port
PDIR_B	.DEF 0C5h			;Data direction reg. B port
PDIR_C	.DEF 0C6h			;Data direction reg. C port

POPT_A	.DEF 0CCh			;Option register A port
POPT_B	.DEF 0CDh			;Option register B port
POPT_C	.DEF 0CEh			;Option register C port


;*********************************************** registri di interrupt ***************************************

IOR	.DEF 0c8h			

;*********************************************** registri data rom windows ***************************************

DRW	.DEF 0c9h

;*********************************************** registri timer 2 ***************************************

ARRC	.DEF 0D9h			;reload capture register
ARCP	.DEF 0DAh			;compare register
ARMC	.DEF 0D5h			;mode control register
ARSC0	.DEF 0D6h			;status control register
ARSC1	.DEF 0D7h			;status control register
ARLR	.DEF 0Dbh			;load register

;*********************************************** registri A/D converter ***************************************

ADCR	.DEF 0D1h			;registro di controllo
ADDR	.DEF 0D0h			;registro dati

;*********************************************** controllo oscillatore ***************************************

OSCR	.DEF 0DCh			;oscillator control register

;*********************************************** controllo eeprom ***************************************

DRBR	.DEF 0E8h			;data ram/eeprom bank register
EECR	.DEF 0EAh			;eeprom control register

;*********************************************** registr watchdog ***************************************

WDOG	.DEF 0D8h			;registro wachdog

;*********************************************** timer 1 ***************************************
PSC	.DEF 0D2h			;controllo prescaler
TCR	.DEF 0D3h			;registro dati
TSCR	.DEF 0D4h			;registro di controllo dati

;*********************************************** controllo SPI ***************************************

SPID 	.DEF 0E0h			;SPI data register
DIV	.DEF 0E1h			;SPI divider register 
MOD	.DEF 0E2h			;SPI mode register
MISCR	.DEF 0DDh			;miscellaneous register

;*********************************************** dichiarazioni variabili *******************************************
CODICEA .DEF  084h			;codice apricancello
H	.DEF  085h
L	.DEF  086h

;*********************************************** inizio programma dall'ind. 080h ***********************************

	.org 080h			;inizio programma
INIZIO	LDI  WDOG,0ffh			;ricarico watchdog
	ldi  PDIR_A,00000000B		
	ldi  POPT_A,00000000B		
	ldi  PORT_A,00000000B	
	

	LDI  PDIR_B,10000000b		
	LDI  POPT_B,01110000b		
	LDI  PORT_B,00000000b

	LDI  PDIR_B,10000000b		
	LDI  POPT_B,11110000b		
	LDI  PORT_B,00000000b
	
	LDI  PDIR_C,11111111b		
	LDI  POPT_C,00000000b		
	LDI  PORT_C,00000000b
	
	LDI  PDIR_C,11111111b		
	LDI  POPT_C,11111111b		
	LDI  PORT_C,00000000b		

	LDI  ADCR,0			;disabilita il convertitore
	LDI  TSCR,00100000B			;disabilita timer 1
	LDI  ARMC,0			;disabilita ARMTIM
	ldi  IOR,00010000b 		;abilita tutte le interruzioni
	LDI  MOD,0			;disabilita spi
	RETI				;ripristina i flag principali
	JP  MAIN			;salta al programma principale


;****************************************Programma principale**************************

MAIN	LDI  WDOG,0ffh
	LD	A,PORT_A
	ANDI	A,00001111B
	LD	H,A
	LD	A,PORT_B
	RLC	A
	RLC	A
	RLC	A
	RLC	A
	ANDI	A,00110000B
	ADD	A,H
	RLC	A
	ANDI	A,01111110B
	SET	7,A
	RES	0,A
	LD	CODICEA,A
	WAIT
	JP 	MAIN
	

;*****************************************GESTIONE INTERRUPT*********************************

TAD_INT RETI
ART_INT	RETI
C_INT	RETI
BLK_INT LD	A,CODICEA
	LDI	W,8
	SET	7,PORT_B
	CALL	DELAY	
	RLC	A
	RLC	A
	RLC	A
	RLC	A
	RLC	A
TX	RLC	A
	LD	L,A
	ANDI	A,00010000B
	LD	PORT_C,A
	CALL	DELAY1
	LD	A,L
	DEC	W
	JRZ	FIN1	
	JP	TX
FIN1	RETI

DELAY	LDI  WDOG,0ffh
	LDI	Y,41
DEL	LDI	X,255
CIC	LDI  WDOG,0ffh
	DEC	X
	JRNZ	CIC
	DEC	Y
	JRNZ	DEL	
	RET

DELAY1	LDI  WDOG,0ffh
	LDI	Y,3
DEL1	LDI	X,34
CIC1	LDI  WDOG,0ffh
	DEC	X
	JRNZ	CIC1
	DEC	Y
	JRNZ	DEL1
	RET
	
NMI_INT	RETI
;******************************************************INTERRUPT VECTOR******************************

	.ORG	0FF0H	
	JP	TAD_INT	
	JP	ART_INT
	JP	C_INT
	JP	BLK_INT
	.ORG	0FFCH
	JP	NMI_INT
	JP	INIZIO
	.END
Grazie mille!
__________________
Ci sono due modi di fare le cose: quello giusto e quello mio. E sono la stessa cosa!
WhiteR@bbit è offline   Rispondi citando il messaggio o parte di esso
Old 24-06-2004, 12:18   #2
kk3z
Senior Member
 
L'Avatar di kk3z
 
Iscritto dal: Nov 2003
Messaggi: 980
Qui ci vorrebbe buffon
kk3z è offline   Rispondi citando il messaggio o parte di esso
Old 24-06-2004, 12:32   #3
WhiteR@bbit
Senior Member
 
L'Avatar di WhiteR@bbit
 
Iscritto dal: Jul 2002
Città: 3vis0
Messaggi: 423
Quote:
Originariamente inviato da kk3z
Qui ci vorrebbe buffon
A dire il vero, il cancello dovrebbe far passare la macchina...quindi meglio lasciare stare San Buffon...
__________________
Ci sono due modi di fare le cose: quello giusto e quello mio. E sono la stessa cosa!
WhiteR@bbit è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Snowflake porta l'IA dove sono i dati, anche grazie a un accordo con OpenAI Snowflake porta l'IA dove sono i dati, anche gra...
Sistema Mesh Roamii BE Pro: il Wi-Fi 7 secondo MSI Sistema Mesh Roamii BE Pro: il Wi-Fi 7 secondo M...
Recensione HUAWEI Mate X7: un foldable ottimo, ma restano i soliti problemi Recensione HUAWEI Mate X7: un foldable ottimo, m...
Nioh 3: souls-like punitivo e Action RPG Nioh 3: souls-like punitivo e Action RPG
Test in super anteprima di Navimow i220 LiDAR: il robot tagliaerba per tutti Test in super anteprima di Navimow i220 LiDAR: i...
2 scope elettriche imperdibili: 102€ la ...
Ford: l'elettrico genera una perdita di ...
Ayaneo Next 2: la console portatile Wind...
Il WiFi può vederti senza telecam...
Linux sotto assedio: SSHStalker riporta ...
Stellantis: dopo il crollo di venerd&igr...
Combat Liquid 360 HUD: raffreddamento AI...
Tornano le EVO Sessions della Formula E:...
Moltbook, il social network per AI: i po...
Cina: eseguito il test della navicella M...
Mistral, il rivale europeo di OpenAI, in...
Libri piratati, allarme rosso: 722 milio...
Ayaneo svela quasi tutte le specifiche d...
Sony chiude definitivamente con i regist...
Renault Twingo E-Tech Electric sotto i 2...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 08:04.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v