From 7baf4a6467a1a05396f3028d80d06f7b86c02a0e Mon Sep 17 00:00:00 2001 From: Guy McSwain Date: Wed, 23 Dec 2020 23:11:15 -0600 Subject: [PATCH] Auto generate MAN and HTML. --- DOC/dbase/pigpio.sqlite | Bin 1433600 -> 1433600 bytes pigpio.3 | 59 ++++++++++++++-------------------------- pigpiod_if2.3 | 34 +++++++++++++++-------- pigs.1 | 59 ++++++++++++++++++++++++++++++++++++---- 4 files changed, 96 insertions(+), 56 deletions(-) diff --git a/DOC/dbase/pigpio.sqlite b/DOC/dbase/pigpio.sqlite index 9f96137ee3f1e6ebbb2c2dca3b8f1def93b8f1ae..017dd86e9dca6cf22b79549b8ae3aaa0353a0618 100644 GIT binary patch delta 11560 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 UG_hOhO^4u(EPcDuz&@h=H_nsEwEzGB delta 8068 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 ywWZLO3= 0) .EE +.br + +.br +The BSC slave in SPI mode deserializes data from the MOSI pin into its +receiver/FIFO when the LSB of the first byte is a 0. No data is output on +the MISO pin. When the LSB of the first byte on MOSI is a 1, the +transmitter/FIFO data is serialized onto the MISO pin while all other data +on the MOSI pin is ignored. + +.br + +.br +The BK bit of the BSC control register is non-functional when in the SPI +mode. The transmitter along with its FIFO can be dequeued by successively +disabling and re-enabling the TE bit on the BSC control register while in +SPI mode. + .IP "\fBint bbSPIOpen(unsigned CS, unsigned MISO, unsigned MOSI, unsigned SCLK, unsigned baud, unsigned spiFlags)\fP" .IP "" 4 This function selects a set of GPIO for bit banging SPI with @@ -5908,36 +5919,6 @@ PI_TOO_MANY_PARAM. param is an array of up to 10 parameters which may be referenced in the script as p0 to p9. -.IP "\fBint gpioRunScript(unsigned script_id, unsigned numPar, uint32_t *param)\fP" -.IP "" 4 -This function runs a stored script. - -.br - -.br - -.EX -script_id: >=0, as returned by \fBgpioStoreScript\fP -.br - numPar: 0-10, the number of parameters -.br - param: an array of parameters -.br - -.EE - -.br - -.br -The function returns 0 if OK, otherwise PI_BAD_SCRIPT_ID, or -PI_TOO_MANY_PARAM. - -.br - -.br -param is an array of up to 10 parameters which may be referenced in -the script as p0 to p9. - .IP "\fBint gpioUpdateScript(unsigned script_id, unsigned numPar, uint32_t *param)\fP" .IP "" 4 This function sets the parameters of a script. The script may or diff --git a/pigpiod_if2.3 b/pigpiod_if2.3 index 9226593..1f55ee5 100644 --- a/pigpiod_if2.3 +++ b/pigpiod_if2.3 @@ -716,7 +716,7 @@ No value is returned. .br The thread to be stopped should have been started with \fBstart_thread\fP. -.IP "\fBint pigpio_start(char *addrStr, char *portStr)\fP" +.IP "\fBint pigpio_start(const char *addrStr, const char *portStr)\fP" .IP "" 4 Connect to the pigpio daemon. Reserving command and notification streams. @@ -949,7 +949,8 @@ user_gpio: 0-31. .br .br -Returns current PWM dutycycle if OK, otherwise PI_BAD_USER_GPIO or PI_NOT_PWM_GPIO. +Returns current PWM dutycycle if OK, +otherwise PI_BAD_USER_GPIO or PI_NOT_PWM_GPIO. .br @@ -6215,12 +6216,6 @@ queue and the master removes it. .br -.br -I can't get SPI to work properly. I tried with a -control word of 0x303 and swapped MISO and MOSI. - -.br - .br The function sets the BSC mode, writes any data in the transmit buffer to the BSC transmit FIFO, and @@ -6306,7 +6301,7 @@ GPIO used for models other than those based on the BCM2711. .br I2C 18 19 - - - - .br -SPI - - 18 19 20 21 +SPI - - 20 19 18 21 .br .br @@ -6321,7 +6316,7 @@ GPIO used for models based on the BCM2711 (e.g. the Pi4B). .br I2C 10 11 - - - - .br -SPI - - 10 11 9 8 +SPI - - 9 11 10 8 .br .br @@ -6417,7 +6412,7 @@ details. .br SSSSS number of bytes successfully copied to transmit FIFO .br -RRRRR number of bytes in receieve FIFO +RRRRR number of bytes in receive FIFO .br TTTTT number of bytes in transmit FIFO .br @@ -6476,6 +6471,23 @@ if (status >= 0) .EE +.br + +.br +The BSC slave in SPI mode deserializes data from the MOSI pin into its +receiver/FIFO when the LSB of the first byte is a 0. No data is output on +the MISO pin. When the LSB of the first byte on MOSI is a 1, the +transmitter/FIFO data is serialized onto the MISO pin while all other data +on the MOSI pin is ignored. + +.br + +.br +The BK bit of the BSC control register is non-functional when in the SPI +mode. The transmitter along with its FIFO can be dequeued by successively +disabling and re-enabling the TE bit on the BSC control register while in +SPI mode. + .IP "\fBint bsc_i2c(int pi, int i2c_addr, bsc_xfer_t *bscxfer)\fP" .IP "" 4 This function allows the Pi to act as a slave I2C device. diff --git a/pigs.1 b/pigs.1 index 9b53e0e..1d9bf6f 100644 --- a/pigs.1 +++ b/pigs.1 @@ -928,10 +928,6 @@ The output process is simple. You simply append data to the FIFO buffer on the chip. This works like a queue, you add data to the queue and the master removes it. -.br -I can't get SPI to work properly. I tried with a -control word of 0x303 and swapped MISO and MOSI. - .br The command sets the BSC mode and writes any data \fBbvs\fP to the BSC transmit FIFO. It returns the data count (at least 1 @@ -956,7 +952,7 @@ GPIO used for models other than those based on the BCM2711. .EX SDA SCL MOSI SCLK MISO CE I2C 18 19 - - - - -SPI - - 18 19 20 21 +SPI - - 20 19 18 21 .EE @@ -968,7 +964,7 @@ GPIO used for models based on the BCM2711 (e.g. the Pi4B). .EX SDA SCL MOSI SCLK MISO CE I2C 10 11 - - - - -SPI - - 10 11 9 8 +SPI - - 9 11 10 8 .EE @@ -1139,6 +1135,57 @@ $ pigs i2crd 0 5 .EE +.br +The BSC slave in SPI mode deserializes data from the MOSI pin into its receiver/ +FIFO when the LSB of the first byte is a 0. No data is output on the MISO pin. +When the LSB of the first byte on MOSI is a 1, the transmitter/FIFO data is +serialized onto the MISO pin while all other data on the MOSI pin is ignored. + +.br +The BK bit of the BSC control register is non-functional when in the SPI mode. +The transmitter along with its FIFO can be dequeued by successively disabling +and re-enabling the TE bit on the BSC control register while in SPI mode. + +.br +This example demonstrates a SPI master talking to the BSC as SPI slave: +Requires SPI master SCLK / MOSI / MISO / CE GPIO are connected to +BSC peripheral GPIO 11 / 9 / 10 / 8 respectively, on a Pi4B (BCM2711). + +.br + +\fBExample\fP +.br + +.EX +$ pigs bspio 15 26 13 14 10000 0 # open bit-bang spi master on random gpio +.br + +.br +$ pigs bscx 0x303 # start BSC as SPI slave, both rx and tx enabled +.br +1 18 +.br + +.br +$ pigs bspix 15 0 0xd 0xe 0xa 0xd # write 0xdead to BSC +.br +5 0 0 0 0 0 +.br + +.br +$ pigs bscx 0x303 0xb 0xe 0xe 0xf # place 0xbeef in BSC tx FIFO, read rx FIFO +.br +5 262338 13 14 10 13 +.br + +.br +$ pigs bspix 15 1 0 0 0 0 # read four bytes from BSC +.br +5 0 11 14 14 15 +.br + +.EE + .br .IP "\fBBSPIC cs\fP - Close bit bang SPI"