doc: renamed project

This commit is contained in:
SylvanArnold
2025-04-29 13:52:54 +02:00
committed by Sylvan Arnold
parent 244e516bd8
commit 32618389d1
985 changed files with 1 additions and 1 deletions

View File

@@ -0,0 +1,474 @@
/* ###################################################################
** This component module is generated by Processor Expert. Do not modify it.
** Filename : McuSTM32HALI2C.h
** Project : FRDM-K64F_Generator
** Processor : MK64FN1M0VLL12
** Component : STM32CubeI2C
** Version : Component 01.004, Driver 01.00, CPU db: 3.00.000
** Compiler : GNU C Compiler
** Date/Time : 2018-08-27, 17:24, # CodeGen: 349
** Abstract :
** Driver for STM32CubMX HAL I2C library
** Settings :
** Component name : McuSTM32HALI2C
** SDK : McuLib
** Wait : McuWait
** Contents :
** SendChar - uint8_t McuSTM32HALI2C_SendChar(uint8_t Chr);
** RecvChar - uint8_t McuSTM32HALI2C_RecvChar(uint8_t *Chr);
** SendBlock - uint8_t McuSTM32HALI2C_SendBlock(void *Ptr, uint16_t Siz, uint16_t *Snt);
** SendBlockContinue - uint8_t McuSTM32HALI2C_SendBlockContinue(void *Ptr, uint16_t Siz, uint16_t...
** RecvBlock - uint8_t McuSTM32HALI2C_RecvBlock(void *Ptr, uint16_t Siz, uint16_t *Rcv);
** SendAck - void McuSTM32HALI2C_SendAck(bool Ack);
** SendStop - uint8_t McuSTM32HALI2C_SendStop(void);
** SelectSlave - uint8_t McuSTM32HALI2C_SelectSlave(uint8_t Slv);
** GetSelected - uint8_t McuSTM32HALI2C_GetSelected(uint8_t *Slv);
** SetDeviceHandle - uint8_t McuSTM32HALI2C_SetDeviceHandle(I2C_HandleTypeDef *handle);
** Deinit - void McuSTM32HALI2C_Deinit(void);
** Init - void McuSTM32HALI2C_Init(void);
**
** * Copyright (c) 2018, Erich Styger
** * Web: https://mcuoneclipse.com
** * SourceForge: https://sourceforge.net/projects/mcuoneclipse
** * Git: https://github.com/ErichStyger/McuOnEclipse_PEx
** * All rights reserved.
** *
** * Redistribution and use in source and binary forms, with or without modification,
** * are permitted provided that the following conditions are met:
** *
** * - Redistributions of source code must retain the above copyright notice, this list
** * of conditions and the following disclaimer.
** *
** * - Redistributions in binary form must reproduce the above copyright notice, this
** * list of conditions and the following disclaimer in the documentation and/or
** * other materials provided with the distribution.
** *
** * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
** * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
** * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
** * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
** * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
** * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
** * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
** * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
** * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
** * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
** ###################################################################*/
/*!
** @file McuSTM32HALI2C.h
** @version 01.00
** @brief
** Driver for STM32CubMX HAL I2C library
*/
/*!
** @addtogroup McuSTM32HALI2C_module McuSTM32HALI2C module documentation
** @{
*/
/* MODULE McuSTM32HALI2C. */
#include "McuSTM32HALI2C.h"
#include "McuWait.h" /* waiting routines */
#include "McuLib.h" /* SDK and API used */
#if McuLib_CONFIG_CPU_IS_STM32 /* only for STM32 */
static uint8_t McuSTM32HALI2C_slaveAddr; /* destination slave address, this is the shifted (8bit) address */
static I2C_HandleTypeDef *McuSTM32HALI2C_device; /* device handle */
/*
** ===================================================================
** Method : SendAck (component STM32CubeI2C)
**
** Description :
** The method sends ACK to the bus.
** Parameters :
** NAME - DESCRIPTION
** Ack - If acknowledge is high or low
** Returns : Nothing
** ===================================================================
*/
void McuSTM32HALI2C_SendAck(bool Ack)
{
}
/*
** ===================================================================
** Method : SendChar (component STM32CubeI2C)
**
** Description :
** When working as a MASTER, this method writes 7 bits of slave
** address plus R/W bit = 0 to the I2C bus and then writes one
** character (byte) to the bus. The slave address must be
** specified before by the "SelectSlave" method or in the
** component initialization section of 'Slave address init'
** property. When working as the SLAVE, this method writes one
** character (byte) to the bus. If the ERR_NOTAVAIL error code
** returned, the char is successfully sent to master but the
** master device responds by an acknowledgment instead of no
** acknowledgment at the end of transfer. 'OnError' event is
** called in this case.
** Parameters :
** NAME - DESCRIPTION
** Chr - Character to send
** Returns :
** --- - Error code, possible codes:
** ERR_OK - OK
** ERR_SPEED - This device does not work in
** the active speed mode
** ERR_BUSY - The slave device is busy, it
** does not respond by the acknowledgment
** (MASTER mode only)
** ERR_NOTAVAIL - The master device sends
** acknowledgment instead of no acknowledgment
** after the last byte transfer (SLAVE mode
** only)
** ERR_DISABLED - Device is disabled
** ERR_BUSOFF - Clock timeout elapsed (SLAVE
** mode only)
** ===================================================================
*/
uint8_t McuSTM32HALI2C_SendChar(uint8_t Chr)
{
HAL_StatusTypeDef res;
res = HAL_I2C_Master_Transmit(McuSTM32HALI2C_device, McuSTM32HALI2C_slaveAddr, &Chr, 1, HAL_MAX_DELAY);
if (res!=HAL_OK) {
return ERR_FAILED;
}
return ERR_OK;
}
/*
** ===================================================================
** Method : RecvChar (component STM32CubeI2C)
**
** Description :
** When working as a MASTER, this method writes 7 bits of slave
** address plus R/W bit = 1 to the I2C bus and then reads one
** character (byte) from the bus. The slave address must be
** specified before by the "SelectSlave" method or in the
** component initialization section of 'Slave address init'
** property. When working as a SLAVE, this method reads one
** character (byte) from the bus.
** Parameters :
** NAME - DESCRIPTION
** * Chr - Pointer to received character
** Returns :
** --- - Error code, possible codes:
** ERR_OK - OK
** ERR_SPEED - This device does not work in
** the active speed mode
** ERR_BUSY - The slave device is busy, it
** does not respond by the acknowledgment
** (MASTER mode only)
** ERR_DISABLED - Device is disabled
** ERR_BUSOFF - Clock timeout elapsed (SLAVE
** mode only)
** ===================================================================
*/
uint8_t McuSTM32HALI2C_RecvChar(uint8_t *Chr)
{
return ERR_OK;
}
/*
** ===================================================================
** Method : SendBlock (component STM32CubeI2C)
**
** Description :
** When working as a MASTER, this method writes 7 bits of slave
** address plus R/W bit = 0 to the I2C bus and then writes the
** block of characters to the bus. If the component is disabled
** (by the "Disable" method or initialization), the block is
** moved to the output buffer if the 'Output buffer size'
** property is different from zero. The content of the output
** buffer is sent immediately with the stop condition at the
** end when the component is enabled by the "Enable" method.
** After the output buffer transmission, the whole output
** buffer is cleared. The slave address must be specified
** before by the "SelectSlave" method or in component
** initialization section of 'Slave address init' property.
** When working as a SLAVE, this method writes block of
** characters to the bus. If the ERR_NOTAVAIL error code is
** returned, the whole block is successfully sent to a master
** but the master device responds by an acknowledgment instead
** of no acknowledgment sent at the end of the last block byte
** transfer. 'OnError' event is called in this case.
** Parameters :
** NAME - DESCRIPTION
** * Ptr - A pointer to the block of data to send
** Siz - The size of the block
** * Snt - A pointer to the number of data that are
** sent (copied to buffer)
** Returns :
** --- - Error code, possible codes:
** ERR_OK - OK
** ERR_SPEED - This device does not work in
** the active speed mode
** ERR_BUSY - The slave device is busy, it
** does not respond by the acknowledgment
** (MASTER mode only)
** ERR_TXFULL - Output buffer is full (MASTER
** mode only)
** ERR_NOTAVAIL - The master device sends
** acknowledgment instead of no acknowledgment
** after the last byte transfer (SLAVE mode
** only)
** ERR_DISABLED - Device is disabled
** ERR_BUSOFF - Clock timeout elapsed (SLAVE
** mode only)
** ===================================================================
*/
uint8_t McuSTM32HALI2C_SendBlock(void *Ptr, uint16_t Siz, uint16_t *Snt)
{
HAL_StatusTypeDef res;
res = HAL_I2C_Master_Transmit(McuSTM32HALI2C_device, McuSTM32HALI2C_slaveAddr, Ptr, Siz, HAL_MAX_DELAY);
if (res!=HAL_OK) {
return ERR_FAILED;
}
if (Snt!=NULL) {
*Snt = Siz;
}
return ERR_OK;
}
/*
** ===================================================================
** Method : SendBlockContinue (component STM32CubeI2C)
**
** Description :
** Same is SendBlock() but does not send start condition. When
** working as a MASTER, this method writes 7 bits of slave
** address plus R/W bit = 0 to the I2C bus and then writes the
** block of characters to the bus. If the component is disabled
** (by the "Disable" method or initialization), the block is
** moved to the output buffer if the 'Output buffer size'
** property is different from zero. The content of the output
** buffer is sent immediately with the stop condition at the
** end when the component is enabled by the "Enable" method.
** After the output buffer transmission, the whole output
** buffer is cleared. The slave address must be specified
** before by the "SelectSlave" method or in component
** initialization section of 'Slave address init' property.
** When working as a SLAVE, this method writes block of
** characters to the bus. If the ERR_NOTAVAIL error code is
** returned, the whole block is successfully sent to a master
** but the master device responds by an acknowledgment instead
** of no acknowledgment sent at the end of the last block byte
** transfer. 'OnError' event is called in this case.
** Parameters :
** NAME - DESCRIPTION
** * Ptr - A pointer to the block of data to send
** Siz - The size of the block
** * Snt - A pointer to the number of data that are
** sent (copied to buffer)
** Returns :
** --- - Error code, possible codes:
** ERR_OK - OK
** ERR_SPEED - This device does not work in
** the active speed mode
** ERR_BUSY - The slave device is busy, it
** does not respond by the acknowledgment
** (MASTER mode only)
** ERR_TXFULL - Output buffer is full (MASTER
** mode only)
** ERR_NOTAVAIL - The master device sends
** acknowledgment instead of no acknowledgment
** after the last byte transfer (SLAVE mode
** only)
** ERR_DISABLED - Device is disabled
** ERR_BUSOFF - Clock timeout elapsed (SLAVE
** mode only)
** ===================================================================
*/
uint8_t McuSTM32HALI2C_SendBlockContinue(void *Ptr, uint16_t Siz, uint16_t *Snt)
{
return ERR_OK;
}
/*
** ===================================================================
** Method : RecvBlock (component STM32CubeI2C)
**
** Description :
** When working as a MASTER, this method writes 7 bits of slave
** address plus R/W bit = 1 to the I2C bus and then reads the
** block of characters from the bus. The slave address must be
** specified before by the "SelectSlave" method or in component
** initialization section of 'Slave address init' property.
** When working as a SLAVE, this method reads the block of
** characters from the bus.
** Parameters :
** NAME - DESCRIPTION
** * Ptr - A pointer to the block space for received
** data
** Siz - The size of the block
** * Rcv - A pointer to the number of actually
** received data
** Returns :
** --- - Error code, possible codes:
** ERR_OK - OK
** ERR_SPEED - This device does not work in
** the active speed mode
** ERR_BUSY - The slave device is busy, it
** does not respond by the acknowledgment
** (MASTER mode only)
** ERR_DISABLED - Device is disabled
** ERR_BUSOFF - Clock timeout elapsed (SLAVE
** mode only)
** ===================================================================
*/
uint8_t McuSTM32HALI2C_RecvBlock(void *Ptr, uint16_t Siz, uint16_t *Rcv)
{
return ERR_OK;
}
/*
** ===================================================================
** Method : SendStop (component STM32CubeI2C)
**
** Description :
** When working as a MASTER, if the 'Automatic stop condition'
** property value is 'no', this method sends a valid stop
** condition to the serial data line of the I2C bus to
** terminate the communication on the bus after using send
** methods. This method is enabled only if the component is in
** MASTER mode and 'Automatic stop condition' property value is
** 'no'
** Parameters : None
** Returns :
** --- - Error code, possible codes:
** ERR_OK - OK
** ERR_SPEED - This device does not work in
** the active speed mode
** ERR_DISABLED - Device is disabled
** ===================================================================
*/
uint8_t McuSTM32HALI2C_SendStop(void)
{
return ERR_OK;
}
/*
** ===================================================================
** Method : SelectSlave (component STM32CubeI2C)
**
** Description :
** When working as a MASTER, this method selects a new slave
** for communication by its slave address value. Any send or
** receive method are directed to or from the selected device,
** until a new slave device is selected by this method. If the
** selected slave uses 10-bit slave addressing, as the
** parameter 7 bits must be passed, which involves 10-bit
** addressing (11110XX), including two MSBs of slave address
** (XX). The second byte of the 10-bit slave address must be
** sent to the slave as a general character of send methods.
** This method is available only if the component is in MASTER
** mode.
** Parameters :
** NAME - DESCRIPTION
** Slv - Slave address value
** Returns :
** --- - Error code, possible codes:
** ERR_OK - OK
** ERR_SPEED - This device does not work in
** the active speed mode
** ERR_DISABLED - Device is disabled
** ===================================================================
*/
uint8_t McuSTM32HALI2C_SelectSlave(uint8_t Slv)
{
McuSTM32HALI2C_slaveAddr = (uint8_t)(Slv<<1);
return ERR_OK;
}
/*
** ===================================================================
** Method : GetSelected (component STM32CubeI2C)
**
** Description :
** When working as a MASTER, this method returns the
** identification address value of the slave, which is
** currently selected for communication with the master. If the
** current slave uses 10-bit slave addressing, the method
** returns the first 7 bits only, which involves 10-bit
** addressing (11110XX), including two MSBs of the slave
** address (XX). This method is not able to return the rest
** value of 10-bit slave address. This method is available only
** if the component is in MASTER mode.
** Parameters :
** NAME - DESCRIPTION
** * Slv - A pointer to the current selected slave
** address value
** Returns :
** --- - Error code, possible codes:
** ERR_OK - OK
** ERR_SPEED - This device does not work in
** the active speed mode
** ===================================================================
*/
uint8_t McuSTM32HALI2C_GetSelected(uint8_t *Slv)
{
*Slv = (uint8_t)(McuSTM32HALI2C_slaveAddr>>1);
return ERR_OK;
}
/*
** ===================================================================
** Method : Init (component STM32CubeI2C)
**
** Description :
** Initializes the associated peripheral(s) and the components
** internal variables.
** Parameters : None
** Returns : Nothing
** ===================================================================
*/
void McuSTM32HALI2C_Init(void)
{
McuSTM32HALI2C_slaveAddr = 0;
McuSTM32HALI2C_device = NULL;
}
/*
** ===================================================================
** Method : Deinit (component STM32CubeI2C)
**
** Description :
** Driver de-initialization method.
** Parameters : None
** Returns : Nothing
** ===================================================================
*/
void McuSTM32HALI2C_Deinit(void)
{
McuSTM32HALI2C_slaveAddr = 0;
McuSTM32HALI2C_device = NULL;
}
/*
** ===================================================================
** Method : SetDeviceHandle (component STM32CubeI2C)
**
** Description :
** Sets the HAL device handle.
** Parameters :
** NAME - DESCRIPTION
** handle - Pointer to I2C_HandleTypeDef
** Returns :
** --- - Error code
** ===================================================================
*/
uint8_t McuSTM32HALI2C_SetDeviceHandle(I2C_HandleTypeDef *handle)
{
McuSTM32HALI2C_device = handle;
return ERR_OK;
}
/* END McuSTM32HALI2C. */
#endif /* McuLib_CONFIG_CPU_IS_STM32 */ /* only for STM32 */
/*!
** @}
*/