Skip to content

Commit

Permalink
Updating a few components to be compatible with the linux computers in
Browse files Browse the repository at this point in the history
the labs.
  • Loading branch information
ashgti authored and John Lawrence Harrison committed Dec 1, 2011
1 parent e59b806 commit 5ed167b
Show file tree
Hide file tree
Showing 3 changed files with 23 additions and 9 deletions.
1 change: 1 addition & 0 deletions include/ardulator/containers/clock.h
Expand Up @@ -5,6 +5,7 @@

#include <stdint.h>

#include <cstdio>
#include <string>

#include "avr/config.h"
Expand Down
5 changes: 4 additions & 1 deletion src/vee-cmd.py
Expand Up @@ -32,7 +32,10 @@ def main(options, args):
with open(args[0], 'r') as f:
settings = load(f)
print(settings)
signals = {pin_id: generate_signal(settings[pin_id]) for pin_id in settings}
signals = {}
for pin_id in settings:
signals[pin_id] = generate_signal(settings[pin_id])
# signals = {pin_id: generate_signal(settings[pin_id]) for pin_id in settings}
print("signals:", signals)
a = PyArdulator(options.runtime, signals)
# a.length = 50.0 # Another way of setting the secnario length
Expand Down
26 changes: 18 additions & 8 deletions src/vee/ardulator.py
Expand Up @@ -23,7 +23,13 @@
if 'VEE_ROOT' in os.environ:
veelib = c.cdll.LoadLibrary(find_library(os.environ['VEE_ROOT'] + '/build/libvee'))
else:
veelib = c.cdll.LoadLibrary(find_library('build/libvee'))
if find_library('build/libvee') == None:
if os.uname()[0] == 'Linux':
veelib = c.cdll.LoadLibrary('build/libvee.so')
else:
veelib = c.cdll.LoadLibrary('build/libvee.dylib')
else:
veelib = c.cdll.LoadLibrary(find_library('build/libvee'))

if not veelib:
raise ImportError("Could not load the libvee library. Please check your installation.")
Expand Down Expand Up @@ -208,16 +214,20 @@ def _generate_signal_data(self):

## Generates a report for each pin.
def generate_reports(self, display_graph=False):
import itertools as i
colors = i.cycle(['blue', 'green', 'black'])
offset = 0
for s in self.signals:
l = list(self._data[s])
j = {i : v.hist.caught_at for i, v in enumerate(l)
if v.hist.caught_at > 0}
print('Pin:', s, len(j), 'of', len(l),)
print('data: [', ', '.join([str(z) for z in l]), ']', "\n")
for signal_name in self.signals:
pin_history = list(self._data[signal_name])
caught_signals = dict()
for i, v in enumerate(pin_history):
if v.hist.caught_at > 0:
caught_signals[i] = v.hist.caught_at
print('Pin:', signal_name, len(caught_signals), 'of',
len(pin_history),)
print('data: [', ', '.join([str(change) for change in pin_history]), ']', "\n")
if display_graph:
changes = format_data(s, l, offset)
changes = format_data(signal_name, pin_history, offset)
xs, ys = zip(*changes)
p.plot(xs, ys, color=colors.next())
offset += 1.5
Expand Down

0 comments on commit 5ed167b

Please sign in to comment.