Commit Graph

369 Commits

Author SHA1 Message Date
Håvard Espeland 9996570987 Sigma: Move sigma state to device specific struct
Thanks to Daniel Ribeiro for contributing this patch. Some
modifications were done.

Not tested on multiple Sigmas, because of lack of hardware.
2011-01-15 17:04:21 +01:00
Håvard Espeland 3aa403e858 output_text: Allocate enough memory for output 2011-01-15 16:12:12 +01:00
Uwe Hermann 858fb11c5e Drop unused debug.c.
Even if we'd use it, it probably belongs into the frontend, not libsigrok.
2011-01-15 15:57:54 +01:00
Uwe Hermann 484760d1a8 Cosmetics. 2011-01-15 15:57:54 +01:00
Uwe Hermann aa0b6b208e sigrok-proto.h: Sort the prototypes, fix comments. 2011-01-15 15:57:54 +01:00
Uwe Hermann 1483577eed Start moving private stuff to sigrok-internal.h.
This is work-in-progress, unfinished.
2011-01-15 15:57:54 +01:00
Bert Vermeulen f7606f9b75 fix hex output 2011-01-15 15:25:08 +01:00
Uwe Hermann c2bd92ec08 Slightly more consistent #include-guard naming. 2011-01-15 14:48:21 +01:00
Bert Vermeulen 917e0e71d5 added example code for generating a stored pattern 2011-01-15 14:28:39 +01:00
Håvard Espeland 9be9893eed Sigma: Check state in hw_closedev
If the device is closed without previously running hw_openedev
the driver crashes (happens in cleanup). This patch checks
if the device has been opened.
2011-01-15 14:13:23 +01:00
Uwe Hermann 02440dd88c demo: Cosmetics, constify. 2011-01-15 13:06:04 +01:00
Bert Vermeulen e15f48c268 cleaned up demo driver
removed unused samplerate
added patternmode (random and incremental)
2011-01-15 05:12:41 +01:00
Bert Vermeulen 925dbf9f97 add new HWCAP patternmode 2011-01-15 05:11:40 +01:00
Uwe Hermann 63570167d6 Cosmetics for the -D output. 2011-01-15 03:44:19 +01:00
Uwe Hermann 17e1afcb81 Whitespace and consistency fixes.
Also, drop a <poll.h> #include. It's unused anyway, and breaks the build
on MinGW/Windows as there is no poll.h there.
2011-01-13 23:52:25 +01:00
Bert Vermeulen 9ab95e5408 make output modules a bit more crashproof
the event handler in output modules is now optional.
2011-01-13 07:55:35 +01:00
Bert Vermeulen 2507648e63 use us instead of µs in periods (VCD can't handle it) 2011-01-13 07:55:35 +01:00
Uwe Hermann 2119ab0364 MinGW/Windows: Serial port portability fixes.
Add serial_read()/serial_write() which have different implementations on
MinGW/Windows.

Add some more error code handling and documentation.
2011-01-12 01:09:31 +01:00
Olivier Fauchon ba3d481bb7 add ontinuous mode for demo driver 2011-01-12 00:25:15 +01:00
Bert Vermeulen 13a1291350 fully implement input_binary module 2011-01-11 23:59:33 +01:00
Bert Vermeulen 78ed642035 code cleanup 2011-01-11 23:59:33 +01:00
Uwe Hermann a61b0e6a35 configure: Add --enable-demo option. 2011-01-11 22:17:33 +01:00
Uwe Hermann 1fdb75e145 MinGW: Quickfix to make serial.c/ols.c compile.
Note: It does NOT actually work, yet, it only compiles!
2011-01-11 01:27:16 +01:00
Bert Vermeulen 74b9b43836 cli: support --continuous option for continuous sampling 2011-01-11 00:38:15 +01:00
Uwe Hermann 8a839354c1 Cosmetics, whitespace, consistency fixes. 2011-01-10 23:20:37 +01:00
Uwe Hermann fc96e6f8c8 demo: Add missing copyright line. 2011-01-10 22:49:38 +01:00
Daniel Ribeiro 2566bd4884 Merge branch 'master' of git://sigrok.git.sourceforge.net/gitroot/sigrok/sigrok 2011-01-10 15:58:05 -02:00
Daniel Ribeiro 01cf881494 Add incomplete mso-19 plugin
* Both Analog and Logic capture works.
* Analog values are raw ADC, still useless.
* Triggers aren't implemented.
* Pattern Generator not implemented.
* Everything is broken. :)
2011-01-10 15:15:51 -02:00
Daniel Ribeiro 3677f3ec3f Add HZ_TO_NS macro 2011-01-10 15:14:26 -02:00
Daniel Ribeiro c2616fb9fa update plugins and cli to use new DF_HEADER 2011-01-10 15:12:38 -02:00
Daniel Ribeiro 921e753f7e Support for analog probes
Add a field to the probe struct to store the probe type.
Change DF_HEADER to report the quantity of each type of probe.
2011-01-10 15:08:43 -02:00
Daniel Ribeiro ac4a2ea45a serial.c: fix parity != none
The flag write was wrong
2011-01-10 15:05:14 -02:00
Bert Vermeulen 882e2075bb finish split of sigrok.h 2011-01-10 13:47:24 +01:00
Bert Vermeulen 10509bc2e4 split off prototypes into their own header file 2011-01-10 13:44:11 +01:00
Bert Vermeulen 655756e01d cli: new option to list output modules 2011-01-10 12:39:53 +01:00
Daniel Ribeiro 43275b4712 Merge branch 'master' of git://sigrok.git.sourceforge.net/gitroot/sigrok/sigrok 2011-01-10 02:36:50 -02:00
Daniel Ribeiro 9d4bde70fc Finish serial_set_params implementation
Adds the most common baud rates and support bits, parity, stopbits
and flocontrol settings.
2011-01-10 05:35:05 +01:00
Daniel Ribeiro e006af1116 Merge branch 'master' of git://sigrok.git.sourceforge.net/gitroot/sigrok/sigrok 2011-01-10 02:28:59 -02:00
Bert Vermeulen 9b36e360f3 output_analog: allow samples per line arg (default analog10) 2011-01-10 05:27:22 +01:00
Daniel Ribeiro 1ff7712c93 Finish serial_set_params implementation
Adds the most common baud rates and support bits, parity, stopbits
and flocontrol settings.
2011-01-10 02:21:07 -02:00
Bert Vermeulen 1437e8934b add DF_ANALOG, and an analog output module
Samples in DF_ANALOG packets are fixed in length to sizeof(double).
2011-01-10 05:13:46 +01:00
Bert Vermeulen f0411b1d17 output modules now register the DF type they can use 2011-01-09 23:23:56 +01:00
Daniel Ribeiro 8d67255061 Add a per-instance pointer storage for hardware plugins.
We need this to properly support more than one device connected
at the same time.
2011-01-09 03:50:45 -02:00
Daniel Ribeiro dfa4b731da Add ARRAY_AND_SIZE macro
Just a handy macro
2011-01-09 03:48:39 -02:00
Bert Vermeulen 4c046c6bcc change all DF_LOGIC* to a single DF_LOGIC type
The datafeed packet has a new field 'unitsize' to denote the number of
bytes per sample in the payload.
2011-01-09 06:32:38 +01:00
Uwe Hermann af812219f6 Only build specific source files if needed. 2011-01-08 20:58:44 +01:00
Uwe Hermann 7c17ac6cc4 Only build hardware drivers if they're enabled. 2011-01-08 20:58:43 +01:00
Uwe Hermann 5096c6a6c1 demo driver: Small cleanups, error handling. 2011-01-08 20:58:42 +01:00
Uwe Hermann 85b5af0687 Make the demo driver work.
When initialized, the driver starts a thread that generates signal data.
This data is written to a pipe (write file descriptor).
The other end of the pipe (read file descriptor), is connected to the
main polling code, like any other driver.

Note: This patch adds a new dependency on libgthread.

At the moment, you can list the driver's device:

$ ./cli/sigrok-cli -D
The following devices were found:
ID  Device
0   Sigrok project Demo Driver v1.0 with 8 probes

And use it for random signal generation:

$ /opt/sigrok/bin/sigrok-cli -d 0 --samples 50 -f bits -p 1-8
sigrok 0.1pre2
Acquisition with 8/8 probes at 0 Hz
1:10111100 11010110 00001011 00011110 00111010 11110100 10
2:11010110 00111111 01001010 11111101 11010011 00010010 11
3:11000101 01000001 10100011 10100100 10110000 11110011 00
4:00100111 11110100 10011101 01100111 00100101 01001110 10
5:00011100 00101100 10111000 11001101 01011101 01011011 01
6:10110101 10111110 10010110 10111000 11011010 10000100 11
7:11111111 01001111 11110110 11010010 10000101 01001111 00
8:01000101 01111110 01010111 00000111 00010010 00000101 11

The next step is to make demo driver customisable (per-probe signal clock,
reference sample signals : serial, I2C, CAN...).

Thanks Olivier Fauchon <olivier@aixmarseille.com> for the patch.
2011-01-08 18:29:10 +01:00
Bert Vermeulen d4ae8eaa7c fix buffer size, various error checks 2011-01-08 15:50:14 +01:00