⚲
Projet
Général
Profil
Connexion
S'enregistrer
Accueil
Projets
Aide
Recherche
:
P24AB06.1 Logique de protection à base de "Programmable Mixed-Signal Products".1
Tous les projets
Polytech Projets Ge
»
Projets 2024
»
P24AB06.1 Logique de protection à base de "Programmable Mixed-Signal Products".1
Aperçu
Activité
Roadmap
Demandes
Gantt
Calendrier
Annonces
Documents
Wiki
Fichiers
Dépôt
Télécharger (1,72 ko)
Logiciel
» csv_to_c.py
Adam-Musharraf IMTHADULLA
, 31/01/2025 23:59
import
csv
def
generate_c_truth_table
(
input_csv
,
output_file
):
try
:
# Ouvre le fichier CSV pour lecture
with
open
(
input_csv
,
mode
=
'r'
)
as
csv_file
:
csv_reader
=
csv
.
reader
(
csv_file
)
# Liste pour stocker les lignes formatées
formatted_lines
=
[]
row_count
=
0
# Compteur pour le nombre de lignes
for
row
in
csv_reader
:
row_count
+=
1
# Incrémenter à chaque ligne
# Les entrées (toutes sauf la dernière colonne) et la sortie (dernière colonne)
inputs
=
row
[:
-
1
]
output
=
row
[
-
1
]
# Formate la ligne pour le tableau C en utilisant des virgules
formatted_line
=
(
f
" {{
{
','
.
join
(
inputs
+
[
output
])
}
}}"
# Valeurs des entrées et sortie
)
formatted_lines
.
append
(
formatted_line
)
# Écrit le tableau C dans le fichier de sortie
with
open
(
output_file
,
mode
=
'w'
)
as
output
:
output
.
write
(
f
"const uint16_t truth_table[
{
row_count
}
][17] = {{
\n
"
)
output
.
write
(
",
\n
"
.
join
(
formatted_lines
))
output
.
write
(
"
\n
};
\n
"
)
print
(
f
"Le fichier
{
output_file
}
a été généré avec succès."
)
except
Exception
as
e
:
print
(
f
"Une erreur s'est produite :
{
e
}
"
)
# Fichier d'entrée (CSV) et fichier de sortie
input_csv
=
'/Users/a.imthadulla/Desktop/Punch/look_up_table_unformatted.csv'
# Remplacez par le chemin de votre fichier CSV
output_file
=
'/Users/a.imthadulla/Desktop/Punch/look_up_table_formatted_to_C.c'
generate_c_truth_table
(
input_csv
,
output_file
)
« Précédent
1
…
3
4
5
6
7
8
Suivant »
(5-5/8)
Chargement...