@@ -99,11 +99,11 @@ def exportDbc(db, filename, **options):
99
99
f .write ((" m%d " % int (signal ._multiplex )).encode (dbcExportEncoding ))
100
100
101
101
startbit = signal .getMsbStartbit ()
102
-
103
- if signal ._is_signed :
102
+
103
+ if signal ._is_signed :
104
104
sign = '-'
105
105
else :
106
- sign = '+'
106
+ sign = '+'
107
107
f .write ((" : %d|%d@%d%c" % (startbit , signal ._signalsize ,signal ._is_little_endian , sign )).encode (dbcExportEncoding ))
108
108
f .write ((" (%g,%g)" % (signal ._factor , signal ._offset )).encode (dbcExportEncoding ))
109
109
f .write ((" [{}|{}]" .format (signal ._min , signal ._max )).encode (dbcExportEncoding ))
@@ -171,17 +171,23 @@ def exportDbc(db, filename, **options):
171
171
#boardunit-attributes:
172
172
for bu in db ._BUs ._list :
173
173
for attrib ,val in sorted (bu ._attributes .items ()):
174
+ if not val :
175
+ val = '""'
174
176
f .write (('BA_ "' + attrib + '" BU_ ' + bu ._name + ' ' + str (val ) + ';\n ' ).encode (dbcExportEncoding ))
175
177
f .write ("\n " .encode (dbcExportEncoding ))
176
178
177
179
#global-attributes:
178
180
for attrib ,val in sorted (db ._attributes .items ()):
181
+ if not val :
182
+ val = '""'
179
183
f .write (('BA_ "' + attrib + '" ' + val + ';\n ' ).encode (dbcExportEncoding ))
180
184
f .write ("\n " .encode (dbcExportEncoding ))
181
185
182
186
#messages-attributes:
183
187
for bo in db ._fl ._list :
184
188
for attrib ,val in sorted (bo ._attributes .items ()):
189
+ if not val :
190
+ val = '""'
185
191
f .write (('BA_ "' + attrib + '" BO_ %d ' % bo ._Id + val + ';\n ' ).encode (dbcExportEncoding ))
186
192
f .write ("\n " .encode (dbcExportEncoding ))
187
193
@@ -190,13 +196,15 @@ def exportDbc(db, filename, **options):
190
196
for signal in bo ._signals :
191
197
for attrib ,val in sorted (signal ._attributes .items ()):
192
198
name = normalizeName (signal ._name , whitespaceReplacement )
199
+ if not val :
200
+ val = '""'
193
201
f .write (('BA_ "' + attrib + '" SG_ %d ' % bo ._Id + name + ' ' + val + ';\n ' ).encode (dbcExportEncoding ))
194
202
f .write ("\n " .encode (dbcExportEncoding ))
195
203
196
204
#signal-values:
197
205
for bo in db ._fl ._list :
198
206
for signal in bo ._signals :
199
- if len ( signal ._values ) > 0 :
207
+ if signal ._values :
200
208
f .write (('VAL_ %d ' % bo ._Id + signal ._name ).encode (dbcExportEncoding ))
201
209
for attrib ,val in sorted (signal ._values .items (), key = lambda x : int (x [0 ])):
202
210
f .write ((' ' + str (attrib ) + ' "' + val + '"' ).encode (dbcExportEncoding ))
0 commit comments