Merge branch 'work' of https://github.com/stevstrong/Arduino_STM32 into merge_stevstrong
This commit is contained in:
commit
8bf5f62d6f
|
@ -6,6 +6,5 @@ other/maple-bootloader/cscope.out
|
|||
other/maple-bootloader/build
|
||||
other/maple-bootloader/*~
|
||||
*.o
|
||||
tools/src/stm32flash_serial/src/parsers/parsers.a
|
||||
*.bak
|
||||
*.1
|
||||
|
|
|
@ -11,7 +11,7 @@ discovery_f407.upload.protocol=stlink
|
|||
#discovery_f407.upload.use_1200bps_touch=false
|
||||
discovery_f407.upload.file_type=bin
|
||||
discovery_f407.upload.maximum_size=1048576
|
||||
discovery_f407.upload.maximum_data_size=196608
|
||||
discovery_f407.upload.maximum_data_size=131072
|
||||
|
||||
#discovery_f407.upload.usbID=1EAF:0003
|
||||
#discovery_f407.upload.altID=1
|
||||
|
@ -43,9 +43,8 @@ generic_f407v.upload.tool=stlink_upload
|
|||
generic_f407v.upload.protocol=stlink
|
||||
|
||||
generic_f407v.upload.file_type=bin
|
||||
generic_f407v.upload.ram.maximum_size=131072
|
||||
generic_f407v.upload.flash.maximum_size=514288
|
||||
generic_f407v.upload.maximum_size=514288
|
||||
generic_f407v.upload.maximum_data_size=131072
|
||||
|
||||
#generic_f407v.upload.usbID=0483:3748
|
||||
#generic_f407v.upload.altID=1
|
||||
|
@ -82,7 +81,7 @@ stm32f4stamp.upload.protocol=maple_dfu
|
|||
#stm32f4stamp.upload.use_1200bps_touch=false
|
||||
stm32f4stamp.upload.file_type=bin
|
||||
stm32f4stamp.upload.maximum_size=1048576
|
||||
stm32f4stamp.upload.maximum_data_size=196608
|
||||
stm32f4stamp.upload.maximum_data_size=131072
|
||||
|
||||
stm32f4stamp.upload.usbID=0483:df11
|
||||
stm32f4stamp.upload.altID=0
|
||||
|
@ -117,7 +116,7 @@ netduino2plus.upload.protocol=maple_dfu
|
|||
#netduino2plus.upload.use_1200bps_touch=false
|
||||
netduino2plus.upload.file_type=bin
|
||||
netduino2plus.upload.maximum_size=1048576
|
||||
netduino2plus.upload.maximum_data_size=196608
|
||||
netduino2plus.upload.maximum_data_size=131072
|
||||
|
||||
netduino2plus.upload.usbID=0483:df11
|
||||
netduino2plus.upload.altID=0
|
||||
|
|
|
@ -32,11 +32,11 @@
|
|||
#include "fsmc.h"
|
||||
#include "gpio.h"
|
||||
|
||||
#ifdef STM32_HIGH_DENSITY
|
||||
#if defined(STM32_HIGH_DENSITY) && defined(BOARD_generic_f407v) // pins not yet defined for disco F407
|
||||
|
||||
/**
|
||||
* Configure FSMC GPIOs for use with LCDs.
|
||||
*/
|
||||
*/
|
||||
|
||||
void fsmc_init(void) {
|
||||
rcc_clk_enable(RCC_FSMC);
|
||||
|
|
|
@ -40,7 +40,7 @@
|
|||
#ifndef _FSMC_H_
|
||||
#define _FSMC_H_
|
||||
|
||||
#include <libmaple\util.h>
|
||||
#include <libmaple/util.h>
|
||||
#include "libmaple_types.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
|
|
|
@ -54,16 +54,14 @@ spi_dev *SPI3 = &spi3;
|
|||
* Routines
|
||||
*/
|
||||
|
||||
void spi_config_gpios(spi_dev *ignored,
|
||||
void spi_config_gpios(spi_dev *dev,
|
||||
uint8 as_master,
|
||||
uint8 nss_pin,
|
||||
uint8 sck_pin,
|
||||
uint8 miso_pin,
|
||||
uint8 mosi_pin) {
|
||||
if (as_master) {
|
||||
// gpio_set_mode(nss_dev, nss_bit, GPIO_AF_OUTPUT_PP);
|
||||
gpio_set_mode(sck_pin, GPIO_AF_OUTPUT_PP);
|
||||
// gpio_set_mode(comm_dev, miso_bit, GPIO_INPUT_FLOATING);
|
||||
gpio_set_mode(miso_pin, GPIO_AF_INPUT_PD);
|
||||
gpio_set_mode(mosi_pin, GPIO_AF_OUTPUT_PP);
|
||||
} else {
|
||||
|
@ -72,6 +70,15 @@ void spi_config_gpios(spi_dev *ignored,
|
|||
gpio_set_mode(miso_pin, GPIO_AF_OUTPUT_PP);
|
||||
gpio_set_mode(mosi_pin, GPIO_INPUT_FLOATING);
|
||||
}
|
||||
|
||||
uint8_t af_mode = 6;
|
||||
if(dev->clk_id <= RCC_SPI2) { af_mode = 5; }
|
||||
if(!as_master) {
|
||||
gpio_set_af_mode(nss_pin, af_mode);
|
||||
}
|
||||
gpio_set_af_mode(sck_pin, af_mode);
|
||||
gpio_set_af_mode(miso_pin, af_mode);
|
||||
gpio_set_af_mode(mosi_pin, af_mode);
|
||||
}
|
||||
|
||||
void spi_foreach(void (*fn)(spi_dev*)) {
|
||||
|
|
|
@ -26,7 +26,7 @@
|
|||
|
||||
#include "usbd_ioreq.h"
|
||||
#include "usbd_req.h"
|
||||
#include <VCP\usbd_desc.h>
|
||||
#include <VCP/usbd_desc.h>
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -24,8 +24,8 @@
|
|||
#ifndef __USB_CDC_CORE_H_
|
||||
#define __USB_CDC_CORE_H_
|
||||
|
||||
#include <STM32_USB_Device_Library\Core\inc/usbd_ioreq.h>
|
||||
#include <STM32_USB_OTG_Driver\inc\usb_core.h>
|
||||
#include <STM32_USB_Device_Library/Core/inc/usbd_ioreq.h>
|
||||
#include <STM32_USB_OTG_Driver/inc/usb_core.h>
|
||||
|
||||
/** @addtogroup STM32_USB_OTG_DEVICE_LIBRARY
|
||||
* @{
|
||||
|
|
|
@ -58,10 +58,10 @@
|
|||
*/
|
||||
|
||||
/* Includes ------------------------------------------------------------------*/
|
||||
#include <VCP\usb_conf.h>
|
||||
#include <STM32_USB_Device_Library\Class\cdc\inc\usbd_cdc_core.h>
|
||||
#include <VCP\usbd_desc.h>
|
||||
#include <STM32_USB_Device_Library\Core\inc\usbd_req.h>
|
||||
#include <VCP/usb_conf.h>
|
||||
#include <STM32_USB_Device_Library/Class/cdc/inc/usbd_cdc_core.h>
|
||||
#include <VCP/usbd_desc.h>
|
||||
#include <STM32_USB_Device_Library/Core/inc/usbd_req.h>
|
||||
|
||||
|
||||
/** @addtogroup STM32_USB_OTG_DEVICE_LIBRARY
|
||||
|
|
|
@ -26,7 +26,7 @@
|
|||
/* Includes ------------------------------------------------------------------*/
|
||||
#include <STM32_USB_OTG_Driver/inc/usb_dcd.h>
|
||||
#include "usbd_def.h"
|
||||
#include <VCP\usbd_conf.h>
|
||||
#include <VCP/usbd_conf.h>
|
||||
|
||||
/** @addtogroup STM32_USB_OTG_DEVICE_LIBRARY
|
||||
* @{
|
||||
|
|
|
@ -24,7 +24,7 @@
|
|||
#ifndef __USBD_DEF_H
|
||||
#define __USBD_DEF_H
|
||||
/* Includes ------------------------------------------------------------------*/
|
||||
#include <VCP\usbd_conf.h>
|
||||
#include <VCP/usbd_conf.h>
|
||||
|
||||
/** @addtogroup STM32_USB_OTG_DEVICE_LIBRARY
|
||||
* @{
|
||||
|
|
|
@ -27,7 +27,7 @@
|
|||
/* Includes ------------------------------------------------------------------*/
|
||||
#include "usbd_def.h"
|
||||
#include "usbd_core.h"
|
||||
#include <VCP\usbd_conf.h>
|
||||
#include <VCP/usbd_conf.h>
|
||||
|
||||
|
||||
/** @addtogroup STM32_USB_OTG_DEVICE_LIBRARY
|
||||
|
|
|
@ -20,11 +20,11 @@
|
|||
*/
|
||||
|
||||
/* Includes ------------------------------------------------------------------*/
|
||||
#include <STM32_USB_Device_Library\Core\inc\usbd_core.h>
|
||||
#include <STM32_USB_Device_Library\Core\inc\usbd_req.h>
|
||||
#include <STM32_USB_Device_Library\Core\inc\usbd_ioreq.h>
|
||||
#include <STM32_USB_OTG_Driver\inc\usb_dcd_int.h>
|
||||
#include <STM32_USB_OTG_Driver\inc\usb_bsp.h>
|
||||
#include <STM32_USB_Device_Library/Core/inc/usbd_core.h>
|
||||
#include <STM32_USB_Device_Library/Core/inc/usbd_req.h>
|
||||
#include <STM32_USB_Device_Library/Core/inc/usbd_ioreq.h>
|
||||
#include <STM32_USB_OTG_Driver/inc/usb_dcd_int.h>
|
||||
#include <STM32_USB_OTG_Driver/inc/usb_bsp.h>
|
||||
|
||||
/** @addtogroup STM32_USB_OTG_DEVICE_LIBRARY
|
||||
* @{
|
||||
|
|
|
@ -20,7 +20,7 @@
|
|||
*/
|
||||
|
||||
/* Includes ------------------------------------------------------------------*/
|
||||
#include <STM32_USB_Device_Library\Core\inc\usbd_ioreq.h>
|
||||
#include <STM32_USB_Device_Library/Core/inc/usbd_ioreq.h>
|
||||
/** @addtogroup STM32_USB_OTG_DEVICE_LIBRARY
|
||||
* @{
|
||||
*/
|
||||
|
|
|
@ -20,9 +20,9 @@
|
|||
*/
|
||||
|
||||
/* Includes ------------------------------------------------------------------*/
|
||||
#include <STM32_USB_Device_Library\Core\inc\usbd_req.h>
|
||||
#include <STM32_USB_Device_Library\Core\inc\usbd_ioreq.h>
|
||||
#include <VCP\usbd_desc.h>
|
||||
#include <STM32_USB_Device_Library/Core/inc/usbd_req.h>
|
||||
#include <STM32_USB_Device_Library/Core/inc/usbd_ioreq.h>
|
||||
#include <VCP/usbd_desc.h>
|
||||
|
||||
|
||||
/** @addtogroup STM32_USB_OTG_DEVICE_LIBRARY
|
||||
|
|
|
@ -24,7 +24,7 @@
|
|||
#define __USB_CORE_H__
|
||||
|
||||
/* Includes ------------------------------------------------------------------*/
|
||||
#include <VCP\usbd_conf.h>
|
||||
#include <VCP/usbd_conf.h>
|
||||
#include "usb_regs.h"
|
||||
#include "usb_defines.h"
|
||||
|
||||
|
|
|
@ -24,7 +24,7 @@
|
|||
#define __USB_DEF_H__
|
||||
|
||||
/* Includes ------------------------------------------------------------------*/
|
||||
#include <VCP\usbd_conf.h>
|
||||
#include <VCP/usbd_conf.h>
|
||||
|
||||
/** @addtogroup USB_OTG_DRIVER
|
||||
* @{
|
||||
|
|
|
@ -24,8 +24,8 @@
|
|||
#define __USB_OTG_REGS_H__
|
||||
|
||||
/* Includes ------------------------------------------------------------------*/
|
||||
#include <VCP\usbd_conf.h>
|
||||
#include <libmaple\libmaple_types.h>
|
||||
#include <VCP/usbd_conf.h>
|
||||
#include <libmaple/libmaple_types.h>
|
||||
|
||||
/** @addtogroup USB_OTG_DRIVER
|
||||
* @{
|
||||
|
|
|
@ -20,8 +20,8 @@
|
|||
*/
|
||||
|
||||
/* Includes ------------------------------------------------------------------*/
|
||||
#include <STM32_USB_OTG_Driver\inc\usb_bsp.h>
|
||||
#include <STM32_USB_OTG_Driver\inc\usb_core.h>
|
||||
#include <STM32_USB_OTG_Driver/inc/usb_bsp.h>
|
||||
#include <STM32_USB_OTG_Driver/inc/usb_core.h>
|
||||
|
||||
|
||||
/** @addtogroup USB_OTG_DRIVER
|
||||
|
|
|
@ -20,8 +20,8 @@
|
|||
*/
|
||||
|
||||
/* Includes ------------------------------------------------------------------*/
|
||||
#include <STM32_USB_OTG_Driver\inc\usb_dcd.h>
|
||||
#include <STM32_USB_OTG_Driver\inc\usb_bsp.h>
|
||||
#include <STM32_USB_OTG_Driver/inc/usb_dcd.h>
|
||||
#include <STM32_USB_OTG_Driver/inc/usb_bsp.h>
|
||||
|
||||
|
||||
/** @addtogroup USB_OTG_DRIVER
|
||||
|
|
|
@ -20,12 +20,12 @@
|
|||
*/
|
||||
|
||||
/* Includes ------------------------------------------------------------------*/
|
||||
#include <STM32_USB_OTG_Driver\inc\usb_dcd_int.h>
|
||||
#include <STM32_USB_OTG_Driver/inc/usb_dcd_int.h>
|
||||
|
||||
typedef int IRQn_Type;
|
||||
#define __NVIC_PRIO_BITS 4
|
||||
#define __Vendor_SysTickConfig 1
|
||||
#include <VCP\core_cm4.h>
|
||||
#include <VCP/core_cm4.h>
|
||||
|
||||
|
||||
/** @addtogroup USB_OTG_DRIVER
|
||||
|
|
|
@ -21,7 +21,7 @@
|
|||
*/
|
||||
|
||||
/* Includes ------------------------------------------------------------------*/
|
||||
#include <STM32_USB_OTG_Driver\inc\usb_bsp.h>
|
||||
#include <STM32_USB_OTG_Driver/inc/usb_bsp.h>
|
||||
#include "usbd_conf.h"
|
||||
#include <libmaple/gpio.h>
|
||||
typedef enum {DISABLE = 0, ENABLE = !DISABLE} FunctionalState;
|
||||
|
|
|
@ -26,7 +26,7 @@
|
|||
/* Includes ------------------------------------------------------------------*/
|
||||
//#include "stm32f4xx.h"
|
||||
|
||||
#include <STM32_USB_Device_Library\Class\cdc\inc\usbd_cdc_core.h>
|
||||
#include <STM32_USB_Device_Library/Class/cdc/inc/usbd_cdc_core.h>
|
||||
#include "usbd_conf.h"
|
||||
|
||||
|
||||
|
|
|
@ -20,11 +20,11 @@
|
|||
*/
|
||||
|
||||
/* Includes ------------------------------------------------------------------*/
|
||||
#include <STM32_USB_Device_Library\Core\inc\usbd_core.h>
|
||||
#include <STM32_USB_Device_Library/Core/inc/usbd_core.h>
|
||||
#include "usbd_desc.h"
|
||||
#include <STM32_USB_Device_Library\Core\inc\usbd_req.h>
|
||||
#include <STM32_USB_Device_Library/Core/inc/usbd_req.h>
|
||||
#include "usbd_conf.h"
|
||||
#include <STM32_USB_OTG_Driver\inc\usb_regs.h>
|
||||
#include <STM32_USB_OTG_Driver/inc/usb_regs.h>
|
||||
|
||||
/** @addtogroup STM32_USB_OTG_DEVICE_LIBRARY
|
||||
* @{
|
||||
|
|
|
@ -25,7 +25,7 @@
|
|||
#define __USB_DESC_H
|
||||
|
||||
/* Includes ------------------------------------------------------------------*/
|
||||
#include <STM32_USB_Device_Library\Core\inc\usbd_def.h>
|
||||
#include <STM32_USB_Device_Library/Core/inc/usbd_def.h>
|
||||
|
||||
/** @addtogroup STM32_USB_OTG_DEVICE_LIBRARY
|
||||
* @{
|
||||
|
|
|
@ -20,8 +20,8 @@
|
|||
*/
|
||||
|
||||
/* Includes ------------------------------------------------------------------*/
|
||||
#include <STM32_USB_Device_Library\Core\inc\usbd_usr.h>
|
||||
#include <STM32_USB_Device_Library\Core\inc\usbd_ioreq.h>
|
||||
#include <STM32_USB_Device_Library/Core/inc/usbd_usr.h>
|
||||
#include <STM32_USB_Device_Library/Core/inc/usbd_ioreq.h>
|
||||
|
||||
|
||||
/** @addtogroup STM32_USB_OTG_DEVICE_LIBRARY
|
||||
|
|
|
@ -4,11 +4,11 @@
|
|||
|
||||
#include <STM32_USB_Device_Library/Class/cdc/inc/usbd_cdc_core.h>
|
||||
#include <STM32_USB_Device_Library/Core/inc/usbd_usr.h>
|
||||
#include <VCP\usbd_desc.h>
|
||||
#include <VCP/usbd_desc.h>
|
||||
#include "usb.h"
|
||||
#include <libmaple/gpio.h>
|
||||
#include <libmaple/rccF4.h>
|
||||
#include <VCP\usbd_cdc_vcp.h>
|
||||
#include <VCP/usbd_cdc_vcp.h>
|
||||
#include <boards.h>
|
||||
|
||||
USB_OTG_CORE_HANDLE USB_OTG_dev;
|
||||
|
@ -96,7 +96,7 @@ RESULT usbPowerOff(void) {
|
|||
|
||||
void usbDsbISR(void) {};
|
||||
|
||||
#include <STM32_USB_OTG_Driver\inc\usb_dcd_int.h>
|
||||
#include <STM32_USB_OTG_Driver/inc/usb_dcd_int.h>
|
||||
void __irq_OTG_FS_IRQHandler(void)
|
||||
{
|
||||
USBD_OTG_ISR_Handler (&USB_OTG_dev);
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
extern "C" {
|
||||
#endif
|
||||
|
||||
#include <VCP\usb_conf.h>
|
||||
#include <VCP/usb_conf.h>
|
||||
|
||||
typedef enum _RESULT
|
||||
{
|
||||
|
|
|
@ -24,11 +24,12 @@
|
|||
#include <boards.h>
|
||||
|
||||
#define USE_DEBUG_MODE 0
|
||||
#define USE_YIELD 0
|
||||
|
||||
//==============================================================================
|
||||
//#define SDHC_PROCTL_DTW_4BIT 0x01
|
||||
#define CMD8_RETRIES 10
|
||||
#define BUSY_TIMEOUT_MILLIS 500
|
||||
#define BUSY_TIMEOUT_MILLIS 750
|
||||
//==============================================================================
|
||||
#define CMD_RESP_NONE SDIO_CMD_WAIT_NO_RESP
|
||||
#define CMD_RESP_R1 SDIO_CMD_WAIT_SHORT_RESP // normal response
|
||||
|
@ -137,7 +138,8 @@ static void _panic(const char *message, uint32_t code)
|
|||
delay(250);
|
||||
}
|
||||
}
|
||||
/*===========================================================================
|
||||
/*===========================================================================*/
|
||||
#if USE_YIELD
|
||||
void yield(void)
|
||||
{
|
||||
uint32_t val = SDIO->STA;
|
||||
|
@ -169,7 +171,8 @@ void yield(void)
|
|||
_panic(" - DMA: Data Transmission Error ", val);
|
||||
}
|
||||
//Serial.write('.');
|
||||
}*/
|
||||
}
|
||||
#endif
|
||||
//=============================================================================
|
||||
// Error function and macro.
|
||||
inline bool setSdErrorCode(uint8_t code, uint32_t line) {
|
||||
|
@ -191,11 +194,11 @@ void sdhc_isr() {
|
|||
//-----------------------------------------------------------------------------
|
||||
static bool cardCommand(uint16_t xfertyp, uint32_t arg)
|
||||
{
|
||||
#if USE_DEBUG_MODE
|
||||
#if USE_DEBUG_MODE==2
|
||||
Serial.print("cardCommand: "); Serial.print(xfertyp&SDIO_CMD_CMDINDEX); Serial.print(", arg: "); Serial.print(arg, HEX);
|
||||
#endif
|
||||
uint8_t resp = sdio_cmd_send(xfertyp, arg); // returns non-zero if fails, zero if OK
|
||||
#if USE_DEBUG_MODE
|
||||
#if USE_DEBUG_MODE==2
|
||||
Serial.print(", resp: "); Serial.print(resp, HEX);
|
||||
Serial.print(", SDIO->STA: "); Serial.print(SDIO->STA, HEX); Serial.print(", cmd_resp: "); Serial.print(SDIO->RESP[0], HEX);
|
||||
if ( (xfertyp&SDIO_CMD_WAIT_LONG_RESP)==SDIO_CMD_WAIT_LONG_RESP ) {
|
||||
|
@ -330,6 +333,7 @@ static bool dmaTrxStart(uint8_t* buf, uint32_t n, uint8_t dir)
|
|||
static bool dmaTrxEnd(bool multi_block)
|
||||
{
|
||||
if ( !waitDmaStatus() ) {
|
||||
DBG_PRINT();
|
||||
return sdError(SD_CARD_ERROR_DMA);
|
||||
}
|
||||
if ( waitTimeout(isBusyTransferComplete) ) {
|
||||
|
@ -536,6 +540,9 @@ uint32_t SdioCard::kHzSdClk() {
|
|||
/*---------------------------------------------------------------------------*/
|
||||
bool SdioCard::readBlock(uint32_t lba, uint8_t* buf)
|
||||
{
|
||||
#if USE_DEBUG_MODE
|
||||
Serial.print("readBlock: "); Serial.println(lba); //Serial.print(", buf: "); Serial.println((uint32_t)buf, HEX);
|
||||
#endif
|
||||
// prepare SDIO and DMA for data read transfer
|
||||
dmaTrxStart((uint32_t)buf & 3 ? (uint8_t*)aligned : buf, 512, TRX_RD);
|
||||
// send command to start data transfer
|
||||
|
@ -560,6 +567,11 @@ bool SdioCard::readBlock(uint32_t lba, uint8_t* buf)
|
|||
/*---------------------------------------------------------------------------*/
|
||||
bool SdioCard::readBlocks(uint32_t lba, uint8_t* buf, size_t n)
|
||||
{
|
||||
#if USE_DEBUG_MODE
|
||||
Serial.print("readBlocks: "); Serial.print(lba);
|
||||
//Serial.print(", buf: "); Serial.print((uint32_t)buf, HEX);
|
||||
Serial.print(", "); Serial.println(n);
|
||||
#endif
|
||||
if ((uint32_t)buf & 3) {
|
||||
for (size_t i = 0; i < n; i++, lba++, buf += 512) {
|
||||
if (!readBlock(lba, buf)) {
|
||||
|
@ -672,9 +684,12 @@ uint8_t SdioCard::type() {
|
|||
/*---------------------------------------------------------------------------*/
|
||||
bool SdioCard::writeBlock(uint32_t lba, const uint8_t* buf)
|
||||
{
|
||||
#if USE_DEBUG_MODE
|
||||
Serial.print("writeBlock: "); Serial.println(lba); //Serial.print(", buf: "); Serial.println((uint32_t)buf, HEX);
|
||||
#endif
|
||||
uint8_t * ptr = (uint8_t *)buf;
|
||||
if (3 & (uint32_t)ptr) {
|
||||
//Serial.print("writeBlock: "); Serial.print(lba);
|
||||
Serial.print("writeBlock: "); Serial.print(lba);
|
||||
Serial.print(", buf: "); Serial.print((uint32_t)ptr, HEX);
|
||||
//memcpy(aligned, buf, 512);
|
||||
register uint8_t * src = (uint8_t *)ptr;
|
||||
|
@ -701,6 +716,11 @@ bool SdioCard::writeBlock(uint32_t lba, const uint8_t* buf)
|
|||
/*---------------------------------------------------------------------------*/
|
||||
bool SdioCard::writeBlocks(uint32_t lba, const uint8_t* buf, size_t n)
|
||||
{
|
||||
#if USE_DEBUG_MODE
|
||||
Serial.print("writeBlocks: "); Serial.print(lba);
|
||||
//Serial.print(", buf: "); Serial.print((uint32_t)buf, HEX);
|
||||
Serial.print(", "); Serial.println(n);
|
||||
#endif
|
||||
if (3 & (uint32_t)buf) { // misaligned buffer address, write single blocks
|
||||
for (size_t i = 0; i < n; i++, lba++, buf += 512) {
|
||||
if (!writeBlock(lba, buf)) {
|
||||
|
@ -709,7 +729,6 @@ bool SdioCard::writeBlocks(uint32_t lba, const uint8_t* buf, size_t n)
|
|||
}
|
||||
return true;
|
||||
}
|
||||
//Serial.print("writeBlocks: "); Serial.print(lba); Serial.print(", "); Serial.print(n);
|
||||
if (yieldTimeout(isBusyCMD13)) {
|
||||
return sdError(SD_CARD_ERROR_CMD13);
|
||||
}
|
||||
|
|
|
@ -611,29 +611,6 @@ static void configure_gpios(spi_dev *dev, bool as_master) {
|
|||
Serial.println(")");
|
||||
#endif
|
||||
|
||||
#ifdef STM32F4
|
||||
if(dev->clk_id <= RCC_SPI2) {
|
||||
if(nssi) {
|
||||
if(!as_master) {
|
||||
gpio_set_af_mode(pins->nss, 5);
|
||||
}
|
||||
}
|
||||
gpio_set_af_mode(pins->sck, 5);
|
||||
gpio_set_af_mode(pins->miso, 5);
|
||||
gpio_set_af_mode(pins->mosi, 5);
|
||||
} else {
|
||||
if(nssi) {
|
||||
if(!as_master) {
|
||||
gpio_set_af_mode(pins->nss, 6);
|
||||
}
|
||||
}
|
||||
gpio_set_af_mode(pins->sck, 6);
|
||||
gpio_set_af_mode(pins->miso, 6);
|
||||
gpio_set_af_mode(pins->mosi, 6);
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
spi_config_gpios(dev, as_master, pins->nss, pins->sck, pins->miso, pins->mosi);
|
||||
}
|
||||
|
||||
|
@ -674,4 +651,4 @@ static spi_baud_rate determine_baud_rate(spi_dev *dev, uint32_t freq) {
|
|||
}
|
||||
|
||||
|
||||
//SPIClass SPI(3);
|
||||
SPIClass SPI(3); // needed for external libs
|
||||
|
|
|
@ -6,6 +6,6 @@ paragraph=implements the same API as stock Ethernet-lib. Just replace the includ
|
|||
category=Communication
|
||||
url=https://github.com/ntruchsess/arduino_uip
|
||||
architectures=STM32F4
|
||||
version=1.04
|
||||
version=1.0.4
|
||||
dependencies=
|
||||
core-dependencies=arduino (>=1.5.0)
|
||||
|
|
|
@ -10,13 +10,13 @@ version=0.1.0
|
|||
# ----------------------
|
||||
compiler.path={runtime.tools.arm-none-eabi-gcc.path}/bin/
|
||||
compiler.c.cmd=arm-none-eabi-gcc
|
||||
compiler.c.flags=-c -g -Os -w -MMD -std=gnu11 -ffunction-sections -fdata-sections -nostdlib --param max-inline-insns-single=500 -DBOARD_{build.variant} -D{build.vect} -DERROR_LED_PORT={build.error_led_port} -DERROR_LED_PIN={build.error_led_pin}
|
||||
compiler.c.flags=-c -g -Os -Wall -MMD -std=gnu11 -ffunction-sections -fdata-sections -nostdlib --param max-inline-insns-single=500 -DBOARD_{build.variant} -D{build.vect} -DERROR_LED_PORT={build.error_led_port} -DERROR_LED_PIN={build.error_led_pin}
|
||||
compiler.c.elf.cmd=arm-none-eabi-g++
|
||||
compiler.c.elf.flags=-Os -Wl,--gc-sections
|
||||
compiler.S.cmd=arm-none-eabi-gcc
|
||||
compiler.S.flags=-c -g -x assembler-with-cpp -MMD
|
||||
compiler.cpp.cmd=arm-none-eabi-g++
|
||||
compiler.cpp.flags=-c -g -Os -w -MMD -std=gnu++11 -ffunction-sections -fdata-sections -nostdlib --param max-inline-insns-single=500 -fno-rtti -fno-exceptions -DBOARD_{build.variant} -D{build.vect} -DERROR_LED_PORT={build.error_led_port} -DERROR_LED_PIN={build.error_led_pin}
|
||||
compiler.cpp.flags=-c -g -Os -Wall -MMD -std=gnu++11 -ffunction-sections -fdata-sections -nostdlib --param max-inline-insns-single=500 -fno-rtti -fno-exceptions -DBOARD_{build.variant} -D{build.vect} -DERROR_LED_PORT={build.error_led_port} -DERROR_LED_PIN={build.error_led_pin}
|
||||
compiler.ar.cmd=arm-none-eabi-ar
|
||||
compiler.ar.flags=rcs
|
||||
compiler.objcopy.cmd=arm-none-eabi-objcopy
|
||||
|
@ -123,4 +123,3 @@ tools.stlink_upload.path.linux64={runtime.hardware.path}/tools/linux64
|
|||
tools.stlink_upload.upload.params.verbose=-d
|
||||
tools.stlink_upload.upload.params.quiet=
|
||||
tools.stlink_upload.upload.pattern="{path}/{cmd}" {serial.port.file} {upload.altID} {upload.usbID} "{build.path}/{build.project_name}.bin"
|
||||
|
||||
|
|
|
@ -27,7 +27,6 @@
|
|||
#ifndef _WIRISH_ARDUINO_H_
|
||||
#define _WIRISH_ARDUINO_H_
|
||||
|
||||
//#warning Include Arduino.h from system\libmaple
|
||||
|
||||
#include "wirish.h"
|
||||
|
||||
|
|
|
@ -34,8 +34,8 @@
|
|||
|
||||
#include "discovery_f4.h"
|
||||
|
||||
#include <libmaple\gpio.h>
|
||||
#include <libmaple\rcc.h>
|
||||
#include <libmaple/gpio.h>
|
||||
#include <libmaple/rcc.h>
|
||||
|
||||
#include "wirish_types.h"
|
||||
|
||||
|
|
|
@ -39,9 +39,9 @@ extern "C"{
|
|||
//#include "generic_f407v.h"
|
||||
|
||||
//#include "fsmc.h"
|
||||
#include <libmaple\gpio.h>
|
||||
#include <libmaple\rcc.h>
|
||||
#include <libmaple\timer.h>
|
||||
#include <libmaple/gpio.h>
|
||||
#include <libmaple/rcc.h>
|
||||
#include <libmaple/timer.h>
|
||||
|
||||
#include <wirish_types.h>
|
||||
|
||||
|
|
Loading…
Reference in New Issue