mirror of
https://github.com/eddyem/stm32samples.git
synced 2026-02-28 11:54:30 +03:00
fixed schematics @ canon managing, add initialization for absolute positioning, TODO: add CAN bus management
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* This file is part of the canonmanage project.
|
||||
* Copyright 2022 Edward V. Emelianov <edward.emelianoff@gmail.com>.
|
||||
* Copyright 2023 Edward V. Emelianov <edward.emelianoff@gmail.com>.
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
@@ -17,40 +17,39 @@
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
#ifndef __HARDWARE_H__
|
||||
#define __HARDWARE_H__
|
||||
|
||||
#include <stm32f1.h>
|
||||
|
||||
// LED0 - PC13 (bluepill), blinking each second
|
||||
#define LED0_port GPIOC
|
||||
#define LED0_pin (1<<13)
|
||||
|
||||
#define LED_blink(x) pin_toggle(x ## _port, x ## _pin)
|
||||
#define LED_on(x) pin_clear(x ## _port, x ## _pin)
|
||||
#define LED_off(x) pin_set(x ## _port, x ## _pin)
|
||||
|
||||
// USB DP pullup: PA10
|
||||
#define USBPU_port GPIOA
|
||||
#define USBPU_pin (1<<15)
|
||||
#define USBPU_ON() pin_set(USBPU_port, USBPU_pin)
|
||||
#define USBPU_OFF() pin_clear(USBPU_port, USBPU_pin)
|
||||
#define USBPU_pin (1<<10)
|
||||
#define USBPU_ON() pin_clear(USBPU_port, USBPU_pin)
|
||||
#define USBPU_OFF() pin_set(USBPU_port, USBPU_pin)
|
||||
|
||||
// Ven (enable lens voltage) - PA8
|
||||
#define VEN_port GPIOA
|
||||
#define VEN_pin (1<<8)
|
||||
#define LENS_ON() pin_set(VEN_port, VEN_pin)
|
||||
#define LENS_OFF() pin_clear(VEN_port, VEN_pin)
|
||||
|
||||
// CAN-USB switch: PC13, pullup
|
||||
#define USBCAN_port GPIOC
|
||||
#define USBCAN_pin (1<<13)
|
||||
#define ISUSB() (USBCAN_port->IDR & USBCAN_pin)
|
||||
|
||||
// Lens detect: PA4, pullup
|
||||
#define LENSDET_port GPIOA
|
||||
#define LENSDET_pin (1<<4)
|
||||
#define LENSCONNECTED() (0 == (LENSDET_port->IDR & LENSDET_pin))
|
||||
|
||||
// Overcurrent detect: PA9, pullup
|
||||
#define OC_port GPIOA
|
||||
#define OC_pin (1<<9)
|
||||
#define OVERCURRENT() (0 == (OC_port->IDR & OC_pin))
|
||||
|
||||
extern volatile uint32_t Tms;
|
||||
|
||||
void hw_setup();
|
||||
|
||||
// SPI RX/TX max len
|
||||
#define SPIBUFSZ (32)
|
||||
|
||||
#define DMA_SPI_Rx_IRQ DMA1_Channel2_IRQn
|
||||
#define SPIx SPI1
|
||||
#define SPI_APB2 RCC_APB2ENR_SPI1EN
|
||||
#define DMA_SPI DMA1
|
||||
#define DMA_SPI_AHBENR RCC_AHBENR_DMA1EN
|
||||
#define DMA_SPI_TCIF DMA_ISR_TCIF2
|
||||
#define DMA_SPI_CTCIF DMA_IFCR_CTCIF2
|
||||
#define DMA_SPI_TxChannel DMA1_Channel3
|
||||
#define DMA_SPI_RxChannel DMA1_Channel2
|
||||
#define DMA_SPI_Rx_ISR dma1_channel2_isr
|
||||
|
||||
#endif // __HARDWARE_H__
|
||||
|
||||
Reference in New Issue
Block a user