Кто любит RISC в жизни, заходим, не стесняемся.
Пн июл 30, 2018 18:26:29
Имеется STM32F407VGT6 и ILI 9341 (с тачем и без),на них реально собрать ваш осциллограф?
Пн июл 30, 2018 19:53:17
Мурзик нельзя. Но с такой связкой плюс пару AD9280 будет истинно народный осциллограф)
Два канала по 32 msps. А может и до 2х50 разгонится.
Но тема про stm32f3 с встроенным АЦП.
Пн июл 30, 2018 20:05:52
Спасибо! буду заказывать стм32ф3
Пт авг 03, 2018 02:29:33
Добрый день ребята. Тут нашел у вас схему Мурзик 2 с 8bit дисплеем, я правильно понимаю прошивку под него не делали? А то тут принесли 3 дисплея от самсунга G5230, думал собрать по этой схеме.
Пт авг 03, 2018 19:24:28
Не все прочитали .
https://radiokot.ru/forum/viewtopic.php ... 9#p3038939 и т.д..
Так же у меня на диске все есть.
Сб авг 04, 2018 19:41:45
Добрый день ребята. Тут нашел у вас схему Мурзик 2 с 8bit дисплеем, я правильно понимаю прошивку под него не делали? А то тут принесли 3 дисплея от самсунга G5230, думал собрать по этой схеме.
Присоединюсь к просьбе! Имеется 3 шт. вот таких
дисплеев Я уже подключал его к макетке с F103 прошитой под DSO138, он рабочий. Но к сожалению не имеет выведенного на шлейф, конфигурационного контакта, для переключения в SPI режим. Может работать только в 8-ми и 16-ти битном параллельном режиме. Очень прошу автора прошивок скомпилировать прошивку с 8-ми битным подключением дисплея. Ну и куда какой пин подключить. Я конечно не программист, но думаю это не так трудно. А как это повлияет на разводку мне не важно.
- Вложения
-
- fly_ds123_20160823_122914-320x240.jpg
- (12.75 KiB) Скачиваний: 4218
Вс авг 05, 2018 09:13:01
В схеме на F303 под параллельный экран не хватает ног контроллера.
Вт авг 07, 2018 02:25:22
Добрый день. Просто наткнулся на схему от 366566432 схема_м2.pdf и подумал что это мурзик2 :
https://radiokot.ru/forum/viewtopic.php ... &start=640 .
Сб авг 11, 2018 11:39:03
Самый интересный проект из данной ветки для меня. Это проект на STM32F303 в корпусе LQFP32 шаг 0,8 мм.На али и ебэй их нет. Вопрос их сняли с производства? Есть варианты купить данные микросхемы?
Сб авг 11, 2018 19:26:33
А в интернете поискать не пробовали ?
Сб авг 11, 2018 22:52:59
Спасибо! буду заказывать стм32ф3
опрокинули в чип и дип-когда заказывал было написано положить в корзину,положил,начал оплачивать-под заказ,заказал-написали-в течении 7-14 дней,сегодня написали нет в наличии и предлагают сделать новый заказ...
вышлите пожалуйста мне этот стм32ф303,я не знаю как и где заказывать,на али не хочу-пишут много брака...
извините за отклонение от темы=оффтоп...
Чт авг 16, 2018 17:30:51
На сайте Fusion выложена схема и прошивка осциллографа на STM32F303, схема отличается от схем в подписи у 240265.Возник вопрос по схеме с сайта Fusion. Куда идет KEY1 с контроллера? С какой ноги контроллера выходит KEY8? Еще вопрос какой вариант лучше собрать?( с сайта автора или из подписи 240265)
Чт авг 16, 2018 20:02:25
Поправил схему. KEY8 клавиши нет. Есть KEY0-KEY7.
KEY0 на плюс для включения. Остальные на минус
Пт авг 17, 2018 04:52:36
KEY1 аж 2 штуки
bumbec В обоих схемах присутствуют преобразователи, а "Они либо дорогие либо шумные " как Вы выражались.
Пт авг 17, 2018 05:36:34
Так какой вариант лучше? У меня преобразователя не будет))
Пт сен 14, 2018 19:33:11
положу здесь, может кто чего-нибудь для себя в этом насмотрит.
собственно опрос кнопок. попробовал малым кол-вом проверок и проч. телодвижений - если никакая кнопка не нажата, чтоб побыстрее вернуться в основной цикл. антидребезг - на апп-ном таймере, опросом бита его регистра.
вроде никакой скобки не потерял. И да, для случая если кнопки на одном порту.
пользуясь случаем
Огромное спасибо товарищу Fusion
за его наработки и милость к начинающим осцило-ваятелям.
Спойлер
// в инитах:
#define KeySHIFT GPIO_Pin_3
#define Key4 GPIO_Pin_4
#define Key5 GPIO_Pin_5
#define Key6 GPIO_Pin_6
#define Key7 GPIO_Pin_7
#define Key8 GPIO_Pin_8
#define Key9 GPIO_Pin_9
//...
GPIO_InitStructure.GPIO_Pin = KeySHIFT|Key4|Key5|Key6|Key7|Key8|Key9 ;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU;
GPIO_Init(GPIOB, &GPIO_InitStructure);
//...
RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM3, ENABLE);
TIM_TimeBaseInitTypeDef base_timer;
TIM_TimeBaseStructInit(&base_timer);
base_timer.TIM_Prescaler = 49152-1; // значения почти "с потолка"
base_timer.TIM_Period = 512-1; // вам сюда свои ставить (зависит от тактирования АРВ1)
TIM_TimeBaseInit(TIM3, &base_timer);
TIM3->EGR |= TIM_EGR_UG;
//...
// в майне:
//...
if (!(TIM3->CR1&TIM_CR1_CEN)) { // keyantibag если еще тикает - опрос кнопок перепрыгиваем
// start scan key
uint8_t tmp1 = (((GPIOB->IDR)<<6)>>10); // кнопка KeySHIFT сюда не поподает, у нее своя песня
if((tmp1 != 0xFF)|(KHCount != 0)){ // nokey если не нажата и счетчик на 0 - обработку перепрыгиваем
if((KHCount != 0) & ((tmp1 == 0xFF) | (tmp1 != (KeyStatus |0x80)))) { // если кнопку отпустили
KHCount = 0; // в 0 счетчик для определения что кнопка удерживается
KeyStatus=0xFF;
}
else { // иначе - нажата - принимаем и запускаем счетчики
// TIM3->ARR = 512-1;
// TIM3->EGR |= TIM_EGR_UG;
TIM3->CR1 |= TIM_CR1_CEN|TIM_CR1_OPM; // стартуем таймер в однопроходном режиме
KeyStatus = tmp1;
if (KeyStatus != 0xFF) { // если что-то нажато (не все биты 1)
KHCount++; // увеличиваем счетчик
if(KHCount == 8 ) { // 8 чтений подряд - будем считать что удерживают
KeyStatus &= 0x7F; // 0 старшего разряда - признак "удержания"
--KHCount;
}
}
}
// end scan key
// теперь обработка
switch(KeyStatus) {
// тройка примеров обработки
case 0xDF: // Up 1101 1111
if (Mode ==0) { // mode в 0
if (!(GPIOB->IDR & KeySHIFT)) { // если с KeySHIFT - поднимать линию
if (Hline2<255) {
Hline2++;} // побитно
}
}
else { // mode не 0
// код
}
break;
case 0x5F: // Up та же кнопка, но удержавается 0101 1111
if (Mode ==0) { // mode в 0
if (!(GPIOB->IDR & KeySHIFT)) { // если KeySHIFT нажата
if (Hline2<255-50) {
Hline2=Hline2+10;} // будем поднимать линию с шагом 10 бит
}
}
break;
case 0x7B: // < кнопка удерживается 0111 1011
if (Freez ==1) { // freez в 1
if (Mode ==0) { // mode в 0
if (PointSync>128) {PointSync=PointSync-128;} // смещаю "курсор" с шагом 128 бит
// обновление основного экрана
// обновление вспомогательного (с курсором)
}
else { // freez в 1, mode не 0
// код
}
}
break;
} // end switch
} // nokey
} // keyantibag TIM3
// далее основной цикл
//...
Пн сен 17, 2018 15:24:21
Присоединяюсь к благодарности Fusion, а заодно попрошу его скомпилировать или подсказать пины для реализации проекта Вольтметр 0-40V на МК типа STM32F303CBT6
Пн сен 17, 2018 19:25:50
Вот тут прошивка:
http://cvs.ru/aiq/oled128x32/oled128x32.htmlИ распиновка для К6. Для CBT6 номера ног поменять по названию портов.
Не проверял. Не на чем.
Чт сен 20, 2018 10:23:00
покаюсь
пару постов назад выкладывал опрос кнопок, если кто его брал "как есть" исправьте мой косяк
:
в комплексных проверках замените побитовые операции (|, &) на логические (||, &&), напр. должно быть:
if((tmp1 != 0xFF)||(KHCount != 0))
в бинарнике - опрос кнопок (если никакая не нажималась) не более 11-и инструкций (30 байт) - и мы снова в основном цикле.
Чт сен 20, 2018 21:01:55
Кнопки обычно вешаю на прерывания.
- Код:
void EXTI9_5_IRQHandler(void) {
if (EXTI_GetITStatus(EXTI_Line9) != RESET){ // PA9 KeyUp
if (!KeyAntiBug) {
if (!(GPIOA->IDR & KeyUp)) {
KeyStatus=1;
}
}
KeyAntiBug=KeyAntiBug_Time;
}
EXTI_ClearITPendingBit(EXTI_Line9);
}
В основном цикле только проверить кейстатус на ноль.
От дребезга KeyAntiBug вычитается в прерывании таймера
Powered by phpBB © phpBB Group.
phpBB Mobile / SEO by Artodia.