Skip to content

STM32F100 Прошивка для DIY-сканера 35мм киноплёнки

License

Notifications You must be signed in to change notification settings

anrej0705/rmv3fw

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

rmv3fw

STM32F100 Прошивка для DIY-сканера 35мм киноплёнки

Цикл статей о сканере, для понимания о чём проект Часть 1 Хабр Часть 2 Хабр Часть 3 Хабр Часть 4 Хабр

С версии 1.1 прошивка адаптирована для тушки Fujifilm XT-4

Разработано в кооперации с проектом Видачество(Boosty) и FTC

Всё что отмечено в пины.txt "закончились ноги" означает что это не удалось реализовать на STM32F100 и возможно получится на STM32F107 так как там банально больше ресурсов доступно

Компиляция и прошивка: Keil 5.36 с установленным ARM CMSIS 6.2.0, CMSIS Compiler 2.1.0, DFP 2.4.1, CMSIS Driver 2.10.0, ARM Compiler 1.7.2, MDK 8.1.0. Компилятор 6я версия, частота кварца 8 мгц, C99

Таблица распределения ножек STM32F100RBy из файла пины.txt

GPIO Нога Что подключено Функция Сделано?
PA0 14 GPIO Сервисное меню
PA1 15 TIM2_CH2 Подсветка кадра - зелёный ✔️
PA2 16 TIM2_CH3 Подсветка кадра - синий ✔️
PA3 17 TIM2_CH4 Подсветка кадра - красный ✔️
PA4 20 ADC1_IN4 Фоторезистор датчика натяжения подающей бобины ✔️
PA5 21 ADC1_IN5 Фоторезистор датчика натяжения принимающей бобины ✔️
PA6 22 ADC1_IN6 Терморезистор двигателя подающей бобины
PA7 23 ADC1_IN7 Терморезистор двигателя принимающей бобины
PA8 41 GPIO Переключение направления вращения подающей бобины ✔️
PA9 42 USART1_TX Экран отображения информации BA63 ✔️
PA10 43 USART1_RX Экран отображения информации BA63 ✔️
PA11 44 GPIO Переключение направления вращения принимающей бобины ✔️
PA12 45 TIM1_ETR Счётчик импульсов привода ЛПМ, соединить с PB14 ✔️
PB0 26 ADC1_IN8 Терморезистор двигателя привода лпм
PB1 27 ADC1_IN9 Терморезистор блока подсветки
PB2 28 GPIO Вход Отключение принимающей бобины ✔️
PB5 57 GPIO Вкл/выкл двигателей бобин ✔️
PB6 58 GPIO Вкл/выкл двигателя привода ЛПМ ✔️
PB7 59 GPIO Кнопка команд Пуск и Остановка ✔️
PB8 61 TIM17_CH1 Управление скоростью двигателя подающей бобины ✔️
PB9 62 TIM16_CH1 Управление скоростью двигателя принимающей бобины ✔️
PB10 29 GPIO Жёлтый светодиод работы подающей бобины ✔️
PB11 30 GPIO Жёлтый светодиод работы принимающей бобины ✔️
PB12 33 GPIO Зелёный светодиод смены кадра ✔️
PB13 34 GPIO Красный светодиод тревоги ✔️
PB14 35 TIM15_CH1 Управление скоростью двигателя привода ЛПМ ✔️
PB15 36 GPIO Переключение направления вращения двигателя ЛПМ ✔️
PC0 8 GPIO Клавиатура строка 1 вход ✔️
PC1 9 GPIO Клавиатура строка 2 вход ✔️
PC2 10 GPIO Клавиатура строка 3 вход ✔️
PC3 11 GPIO Клавиатура строка 4 вход ✔️
PC4 24 ADC1_IN14 Фотодатчик обратной связи от камеры ✔️
PC5 25 ADC1_IN15 Фоторезистор калибровки уровня яркости
PC6 37 GPIO Клавиатура столбец 1 выход ✔️
PC7 38 GPIO Клавиатура столбец 2 выход ✔️
PC8 39 GPIO Клавиатура столбец 3 выход ✔️
PC9 40 GPIO Клавиатура столбец 4 выход ✔️
PC10 51 GPIO Датчик выпадения плёнки ✔️
PC11 52 GPIO Светодиод работающей подсветки ✔️
PC12 53 GPIO Сигнал на затвор камеры + светодиод ✔️
PC13 2 GPIO Таходатчик подающей бобины
PC14 3 GPIO Таходатчик принимающей бобины
PC15 4 GPIO Таходатчик привода лпм
PD2 54 GPIO Вкл/выкл драйверов - переключатель ✔️

Таблица распределения таймеров STM32F100RBy из файла пины.txt

Таймер Назначение Сделано?
TIM1 Счётчик импульсов от привода ЛПМ ✔️
TIM2 ШИМ подсветки к,з,с,ж - RGBY ✔️
TIM3 Опрос датчиков натяжения и датчика от камеры ✔️
TIM4 Управление светодиодами и экраном ✔️
TIM6 Генерация миллисекундной задержки ✔️
TIM7 Опрос кнопок и переключателей ✔️
TIM15 Управление скоростью двигателя привода ЛПМ ✔️
TIM16 Управление скоростью двигателя принимающей бобины ✔️
TIM17 Управление скоростью двигателя подающей бобины ✔️

Таблица распределения каналов АЦП STM32F100RBy из файла пины.txt

Канал Назначение Сделано?
ADC1_IN0 Не используется - занят кнопкой сервисного меню(датчик дырок перфорации)
ADC1_IN1 Не используется - занят ШИМ зелёного(вольтметр шим)
ADC1_IN2 Не используется - занят ШИМ синего(вольтметр 5В на логику)
ADC1_IN3 Не используется - занят ШИМ красного(вольтметр 3.3В контроллера)
ADC1_IN4 Фоторезистор датчика натяжения плёнки подающей бобины ✔️
ADC1_IN5 Фоторезистор датчика натяжения плёнки принимающей бобины ✔️
ADC1_IN6 Терморезистор двигателя подающей бобины
ADC1_IN7 Терморезистор двигателя принимающей бобины
ADC1_IN8 Терморезистор двигателя привода лпм
ADC1_IN9 Терморезистор блока подсветки
ADC1_IN10 Не используется - занят клавиатурой(вольтметр напряжения ключей драйверов)
ADC1_IN11 Не используется - занят клавиатурой(ток двигателя подающей бобины)
ADC1_IN12 Не используется - занят клавиатурой(терморезистор DC-DC шим подсветки)
ADC1_IN13 Не используется - занят клавиатурой(ток двигателя привода лпм)
ADC1_IN14 Фотодатчик обратной связи ✔️
ADC1_IN15 Фоторезистор калибровки уровня яркости
ADC1_IN16 Терморезистор чипа
ADC1_IN17 Опорное напряжение от внутреннего генератора

Таблица распределения портов USART STM32F100RBy из файла пины.txt

USART Назначение Сделано?
USART1 BA63 основной экран ✔️
USART2 Не используется - занят ШИМ каналов к,з,с,ж(связь в другими мозгами?)
USART3 Не используется - занят светодиодами и датчиком(связь с компом)

About

STM32F100 Прошивка для DIY-сканера 35мм киноплёнки

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published