Форум Микро-Чип
Поиск и заказ электронных компонентов
 

Вернуться   Форум Микро-Чип > Микроконтроллеры других производителей

Микроконтроллеры других производителей Все, что касается микроконтроллеров и НЕ подошло в раздел Microchip.

Ответ
 
Опции темы Опции просмотра
Старый 16.03.2016, 15:59   #1
hfmscan
Senior Member
 
Аватар для hfmscan
 
Регистрация: 17.01.2013
Адрес: Москва
Возраст: 42
Сообщений: 375
Вес репутации: 243/23
hfmscan has a spectacular aura abouthfmscan has a spectacular aura abouthfmscan has a spectacular aura about
Отправить сообщение для hfmscan с помощью ICQ
По умолчанию STM32F0, помигать светодиодами, Keil не компилит

Здравствуйте.

есть некая железка, внутри предположительно STM32F042K6, читать и писать в нее уже получилось, теперь нужно научиться код свой писать для этого контроллера.
Для начала установил Keil, скачал pack для F0 (вроде даже тут на форуме ссыль нашел),
светодиоды 4 штуки подключены к ножкам 27-30, (PB4-PB7), один конец светика на массу, другой в порт.
Кварца на плате нет. код Init_HSI может быть и кривой, я его сделал из кода который HSE включал... может вообще это не нужно....

в энвайромент включено только CMSIS CORE и то, потому что если эту галку не поставить - компилер ругается что не находит файл "core_cm0.h"

Keil ругается:
Код:
*** Using Compiler 'V5.05 update 2 (build 169)', folder: 'C:\Keil_v5\ARM\ARMCC\Bin'
Build target 'Target 1'
compiling main.c...
linking...
.\Objects\elm327.axf: Error: L6320W: Ignoring --entry command. Cannot find argument 'Reset_Handler'.
.\Objects\elm327.axf: Warning: L6320W: Ignoring --first command. Cannot find argument '__Vectors'.
Not enough information to list image symbols.
Not enough information to list the image map.
Finished: 2 information, 1 warning and 1 error messages.
".\Objects\elm327.axf" - 1 Error(s), 1 Warning(s).
Target not created.
Build Time Elapsed:  00:00:01
Исходник:
Код:
#include "stm32f0xx.h"
#include <stdio.h>
#include <stdlib.h>
#include "string.h"
 
 
// тактирование от HSI?
void init_HSI (void)
{
                    uint32_t buf;
               
                    RCC->CR &= ~RCC_CR_HSEON; // ВЫКЛЮЧАЕМ HSE. Мало ли работал блок

                    RCC->CIR |= RCC_CIR_HSIRDYC; // сброс флага RCC_CR_HSIRDY

                    RCC->CR |= RCC_CR_HSION; // Запустить HSI.
                    while ((RCC->CR & RCC_CR_HSIRDY)!=RCC_CR_HSIRDY);// Ожидание готовности HSI.

                    buf = RCC->CFGR;
                    buf &=~RCC_CFGR_SW; // Очистить биты SW0 и SW1
                    buf |= RCC_CFGR_SW_HSI;
                
                    //(определяют источник для SYSCLK)
                    RCC->CFGR = buf; // Тактирование с выхода PLL.
                    while ((RCC->CFGR&RCC_CFGR_SWS) != RCC_CFGR_SWS_HSI); // Ожидание переключения на HSI.
}
 
 
void Delay( unsigned int Val)  
{ unsigned int cnt;
                cnt = Val*1400+1;
  do {} while (--cnt);  
} 
 
 
void init(void) {
 
  init_HSI();
                
                // Leds on PB7-PB4, нужно включить тактирование PORTB
                RCC->AHBENR  |= RCC_AHBENR_GPIOBEN;  // GPIOB clock enable
 
 
  // Конфиурация порта PB7-PB4 на вывод       
  GPIOB->MODER |= (GPIO_MODER_MODER7_0 | GPIO_MODER_MODER6_0 | GPIO_MODER_MODER5_0 | GPIO_MODER_MODER4_0 );

                // включить 2 светика.
                GPIOB->ODR |= GPIO_BRR_BR_6;         
                GPIOB->ODR |= GPIO_BRR_BR_5;         
                
                // вЫключить 2 светика.
                GPIOB->ODR &= ~GPIO_BRR_BR_6;     
                GPIOB->ODR &= ~GPIO_BRR_BR_5;     
}
 
 
int main(void) {
  
  init();
 
                Delay(200);
                               
                while (1) {
                                               
                               Delay(250);
                // включить 2 светика.
                               GPIOB->ODR |= GPIO_BRR_BR_6;         
                               GPIOB->ODR |= GPIO_BRR_BR_5;         
 
                               Delay(250);
                // вЫключить 2 светика.
                               GPIOB->ODR &= ~GPIO_BRR_BR_6;     
                               GPIOB->ODR &= ~GPIO_BRR_BR_5;     
                                               
                               }
                               
}
__________________
STM32F042
PIC18F25k80
hfmscan вне форума   Ответить с цитированием
Старый 16.03.2016, 16:34   #2
dosikus
Senior Member
 
Аватар для dosikus
 
Регистрация: 05.06.2007
Возраст: 45
Сообщений: 3,574
Вес репутации: 5590/128
dosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond repute
По умолчанию Re: STM32F0, помигать светодиодами, Keil не компилит

Хэдеры CMSIS можно скопировать в папку проекта, не обязательно RTE юзать.
А вот то что стартап и систем_инит подключать надо - видно забыто напрочь... По каким мануалам скачем?

Паки это хорошо , там все есть - стартап и хэдеры . Еще сниппетсы качай ...
dosikus на форуме   Ответить с цитированием
Старый 16.03.2016, 16:36   #3
Sergey
Senior Member
 
Регистрация: 25.02.2007
Адрес: СПб
Сообщений: 606
Вес репутации: 670/51
Sergey is a splendid one to beholdSergey is a splendid one to beholdSergey is a splendid one to beholdSergey is a splendid one to beholdSergey is a splendid one to beholdSergey is a splendid one to behold
Отправить сообщение для Sergey с помощью ICQ
По умолчанию Re: STM32F0, помигать светодиодами, Keil не компилит

Я бы вам посоветовал поставить КУБ и сгенерить проект под кейл.
Sergey вне форума   Ответить с цитированием
Старый 16.03.2016, 16:40   #4
hfmscan
Senior Member
 
Аватар для hfmscan
 
Регистрация: 17.01.2013
Адрес: Москва
Возраст: 42
Сообщений: 375
Вес репутации: 243/23
hfmscan has a spectacular aura abouthfmscan has a spectacular aura abouthfmscan has a spectacular aura about
Отправить сообщение для hfmscan с помощью ICQ
По умолчанию Re: STM32F0, помигать светодиодами, Keil не компилит

полез в поиск и нашел что нужно было startup галку поставить, теперь скомпилилось, спасибо...

в голове у меня каша, летом я писал по урокам для F103 и разбирал каждую строчку, а для F0 ничего не нашел пока что...

Куб не знаю что это, хотя встречал в инете что есть некая генерилка, но я обычно по старинке на примерах познаю, пока просто не нашел вменяемых для F0, везде для F1, ну и плюс не нашел нормально где все регистры расписаны....
__________________
STM32F042
PIC18F25k80
hfmscan вне форума   Ответить с цитированием
Старый 16.03.2016, 16:40   #5
dosikus
Senior Member
 
Аватар для dosikus
 
Регистрация: 05.06.2007
Возраст: 45
Сообщений: 3,574
Вес репутации: 5590/128
dosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond repute
По умолчанию Re: STM32F0, помигать светодиодами, Keil не компилит

Sergey, под F0 и калокуб???!!!! Не смешите ...
hfmscan, качай сниппетсы и читай RM - в самом конце примеры кода.
И не слушай адептов облегчалок, калокуб и SPL - путь к аурдунье.
Регистры расписаны в RM , а определение их и их бит в stm32f0xx.h
dosikus на форуме   Ответить с цитированием
Старый 16.03.2016, 16:43   #6
hfmscan
Senior Member
 
Аватар для hfmscan
 
Регистрация: 17.01.2013
Адрес: Москва
Возраст: 42
Сообщений: 375
Вес репутации: 243/23
hfmscan has a spectacular aura abouthfmscan has a spectacular aura abouthfmscan has a spectacular aura about
Отправить сообщение для hfmscan с помощью ICQ
По умолчанию Re: STM32F0, помигать светодиодами, Keil не компилит

Вы для тупого переведите плиз что такое сниппетсы ? может ссыль? ну или тупо название а я найду

поиском не нахожу:
https://www.google.ru/search?client=...fm32f0+snippet
__________________
STM32F042
PIC18F25k80
hfmscan вне форума   Ответить с цитированием
Старый 16.03.2016, 16:44   #7
dosikus
Senior Member
 
Аватар для dosikus
 
Регистрация: 05.06.2007
Возраст: 45
Сообщений: 3,574
Вес репутации: 5590/128
dosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond repute
По умолчанию Re: STM32F0, помигать светодиодами, Keil не компилит

http://www.st.com/web/en/catalog/too...2snippetsf0-pr
dosikus на форуме   Ответить с цитированием
Старый 16.03.2016, 16:46   #8
hfmscan
Senior Member
 
Аватар для hfmscan
 
Регистрация: 17.01.2013
Адрес: Москва
Возраст: 42
Сообщений: 375
Вес репутации: 243/23
hfmscan has a spectacular aura abouthfmscan has a spectacular aura abouthfmscan has a spectacular aura about
Отправить сообщение для hfmscan с помощью ICQ
По умолчанию Re: STM32F0, помигать светодиодами, Keil не компилит

Спасибо, я так понял надо все пдф качнуть и глазами проглядеть - спасибо!

Радости нет предела - светики моргают
__________________
STM32F042
PIC18F25k80

Последний раз редактировалось hfmscan; 16.03.2016 в 16:51.
hfmscan вне форума   Ответить с цитированием
Старый 16.03.2016, 16:55   #9
hfmscan
Senior Member
 
Аватар для hfmscan
 
Регистрация: 17.01.2013
Адрес: Москва
Возраст: 42
Сообщений: 375
Вес репутации: 243/23
hfmscan has a spectacular aura abouthfmscan has a spectacular aura abouthfmscan has a spectacular aura about
Отправить сообщение для hfmscan с помощью ICQ
По умолчанию Re: STM32F0, помигать светодиодами, Keil не компилит

Кстати а на русском по F0 что нить есть вменяемое для начинающего?
__________________
STM32F042
PIC18F25k80
hfmscan вне форума   Ответить с цитированием
Старый 16.03.2016, 17:02   #10
hfmscan
Senior Member
 
Аватар для hfmscan
 
Регистрация: 17.01.2013
Адрес: Москва
Возраст: 42
Сообщений: 375
Вес репутации: 243/23
hfmscan has a spectacular aura abouthfmscan has a spectacular aura abouthfmscan has a spectacular aura about
Отправить сообщение для hfmscan с помощью ICQ
По умолчанию Re: STM32F0, помигать светодиодами, Keil не компилит

Цитата:
Сообщение от dosikus Посмотреть сообщение
Регистры расписаны в RM , а определение их и их бит в stm32f0xx.h
1. что есть RM и где взять это? уж извините за тупые вопросы...
а так да, поиск по файлу stm32f0xx.h мне помог когда я пытался переделать проект который под F103 был написан...

2. Кстати а на русском по F0 что нить есть вменяемое для начинающего?
__________________
STM32F042
PIC18F25k80
hfmscan вне форума   Ответить с цитированием
Старый 16.03.2016, 17:55   #11
Sergey
Senior Member
 
Регистрация: 25.02.2007
Адрес: СПб
Сообщений: 606
Вес репутации: 670/51
Sergey is a splendid one to beholdSergey is a splendid one to beholdSergey is a splendid one to beholdSergey is a splendid one to beholdSergey is a splendid one to beholdSergey is a splendid one to behold
Отправить сообщение для Sergey с помощью ICQ
По умолчанию Re: STM32F0, помигать светодиодами, Keil не компилит

Цитата:
Сообщение от dosikus Посмотреть сообщение
Sergey, под F0 и калокуб???!!!! Не смешите ...
hfmscan, качай сниппетсы и читай RM - в самом конце примеры кода.
И не слушай адептов облегчалок, калокуб и SPL - путь к аурдунье.
Регистры расписаны в RM , а определение их и их бит в stm32f0xx.h
Program Size: Code=2720 RO-data=240 RW-data=8 ZI-data=512
что то не входит в память контроллера? Работает, мигает, вопросов не вызывает. Задача была проверить что за чип и работоспособность. Это самый быстрый путь. Быстрее чем на форуме спрашивать почему не компилит...
Sergey вне форума   Ответить с цитированием
Старый 16.03.2016, 18:06   #12
dosikus
Senior Member
 
Аватар для dosikus
 
Регистрация: 05.06.2007
Возраст: 45
Сообщений: 3,574
Вес репутации: 5590/128
dosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond repute
По умолчанию Re: STM32F0, помигать светодиодами, Keil не компилит

У вас все еще впереди, можете и калокуб юзать. Только другим не советуйте. И дело здесь не в размере кода, хотя если простейший ногодрыг занял почти 3Кб -это просто смех.
Да и простыни быдлокода это нечто...

Последний раз редактировалось dosikus; 16.03.2016 в 18:17.
dosikus на форуме   Ответить с цитированием
Старый 16.03.2016, 19:39   #13
dosikus
Senior Member
 
Аватар для dosikus
 
Регистрация: 05.06.2007
Возраст: 45
Сообщений: 3,574
Вес репутации: 5590/128
dosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond repute
По умолчанию Re: STM32F0, помигать светодиодами, Keil не компилит

RM -Reference manual , качается на сайте производителя.
А документацию надо читать в оригинале.
Ну в крайнем случае здесь вопросы задавай.
Завтра скину "рыбу"...
dosikus на форуме   Ответить с цитированием
Старый 16.03.2016, 19:39   #14
hfmscan
Senior Member
 
Аватар для hfmscan
 
Регистрация: 17.01.2013
Адрес: Москва
Возраст: 42
Сообщений: 375
Вес репутации: 243/23
hfmscan has a spectacular aura abouthfmscan has a spectacular aura abouthfmscan has a spectacular aura about
Отправить сообщение для hfmscan с помощью ICQ
По умолчанию Re: STM32F0, помигать светодиодами, Keil не компилит

Reference Manual нашел, слил, голова пухнет.

вопрос по Кейлу - я вот привык что держа клавишу Ctrl и жамкнув мышой куда либо в переменную, или функцию, то сразу перемещаюсь на ее объевление либо исходник... как такое настроить в Кейл? это сильно удобно, чем поиском тыкать каждый раз
__________________
STM32F042
PIC18F25k80
hfmscan вне форума   Ответить с цитированием
Старый 16.03.2016, 19:47   #15
dosikus
Senior Member
 
Аватар для dosikus
 
Регистрация: 05.06.2007
Возраст: 45
Сообщений: 3,574
Вес репутации: 5590/128
dosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond repute
По умолчанию Re: STM32F0, помигать светодиодами, Keil не компилит

Правый щелчок по объекту-и в контекстном меню все найдешь.
Распухание головы легко исправляется. Изучишь рыбу , попутно задавая вопросы, и все встанет на свое место.
dosikus на форуме   Ответить с цитированием
Старый 16.03.2016, 19:53   #16
hfmscan
Senior Member
 
Аватар для hfmscan
 
Регистрация: 17.01.2013
Адрес: Москва
Возраст: 42
Сообщений: 375
Вес репутации: 243/23
hfmscan has a spectacular aura abouthfmscan has a spectacular aura abouthfmscan has a spectacular aura about
Отправить сообщение для hfmscan с помощью ICQ
По умолчанию Re: STM32F0, помигать светодиодами, Keil не компилит

бум ждать рыбу
__________________
STM32F042
PIC18F25k80
hfmscan вне форума   Ответить с цитированием
Старый 16.03.2016, 23:08   #17
Sergey
Senior Member
 
Регистрация: 25.02.2007
Адрес: СПб
Сообщений: 606
Вес репутации: 670/51
Sergey is a splendid one to beholdSergey is a splendid one to beholdSergey is a splendid one to beholdSergey is a splendid one to beholdSergey is a splendid one to beholdSergey is a splendid one to behold
Отправить сообщение для Sergey с помощью ICQ
По умолчанию Re: STM32F0, помигать светодиодами, Keil не компилит

Цитата:
Сообщение от dosikus Посмотреть сообщение
У вас все еще впереди, можете и калокуб юзать. Только другим не советуйте. И дело здесь не в размере кода, хотя если простейший ногодрыг занял почти 3Кб -это просто смех.
Да и простыни быдлокода это нечто...
У меня многое уже позади, но не спорю жду очень многое впереди еще Пока куб использую полным ходом. Для сегодняшнего обсуждения - в самый раз. Я думаю куб обычный инструмент. Нужно просто использовать его по назначению. а чтобы проверить работоспособность платы большего чем куб и не нужно. и делать это можно за 8 минут примерно. а потом от познаний. есть знаний столько что-бы говорить что куб это быдлокод - вперед, пишите сами. только на моей памяти еще ни разу не видел программистов, которые пишут программы и так хорошо структурируют их как куб. и кстати вот тут автор топика говорит что в принципе не знает что такое куб. при этом пытается писать для stm32. это как писать для пиков и не знать что такое мплаб например... или пик кит... почему же ему не посоветовать куб? для решения задачи моргнуть светодиодом подошло бы... время не резиновое... если не за чужой счет... кстати а можете пример быдлокода в кубе привести? я не постебаться и не поддергиваю. действительно интересно узнать в каком месте там пишут «не так как нужно».
Sergey вне форума   Ответить с цитированием
Старый 17.03.2016, 06:53   #18
Greg
Super Moderator
 
Регистрация: 25.02.2007
Адрес: Moscow, ODBS
Сообщений: 6,614
Вес репутации: 5056/155
Greg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond repute
По умолчанию Re: STM32F0, помигать светодиодами, Keil не компилит

Цитата:
Сообщение от Sergey Посмотреть сообщение
кстати а можете пример быдлокода в кубе привести? я не постебаться и не поддергиваю. действительно интересно узнать в каком месте там пишут «не так как нужно».
посмотрите внимательно, как сделаны обработчики прерываний от тех же таймеров (обработчик там по факту один). тут это где-то обсуждалось. в этом смысле пресловутые "библиотеки" - чистый ассемблер...
т.е. на большее чем подсмотреть настройку периферии - это вряд ли. слишком гнет свою линию. типа как в анекдоте про программиста - "проснуться ночью и взять стакан с тумбочки, если есть жажда - выпить, если нет - поставить назад".
и да, не знать куб вполне можно.
Greg вне форума   Ответить с цитированием
Старый 17.03.2016, 07:30   #19
dosikus
Senior Member
 
Аватар для dosikus
 
Регистрация: 05.06.2007
Возраст: 45
Сообщений: 3,574
Вес репутации: 5590/128
dosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond repute
По умолчанию Re: STM32F0, помигать светодиодами, Keil не компилит

Sergey, в чем проблема самому сравнить? Качаете сниппетсы, ссылку выше дал. Изучаете как код так и выхлоп и сравниваете с калокубом.
Да и , сравнивать IDE с визардами это жесть...
dosikus на форуме   Ответить с цитированием
Старый 17.03.2016, 08:24   #20
dosikus
Senior Member
 
Аватар для dosikus
 
Регистрация: 05.06.2007
Возраст: 45
Сообщений: 3,574
Вес репутации: 5590/128
dosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond repute
По умолчанию Re: STM32F0, помигать светодиодами, Keil не компилит

Как и обещал шаблон под F0. С примером мигания LED'ом в прерывании таймера.
Можно просто копировать в новый проект, переименовав :

F0_template.uvguix.Max
F0_template.uvoptx
F0_template.uvprojx


Этот можно удалить - F0_template.uvguix.Max
все равно свой создаст под юзера.

А так же вбить другое имя для выхлопа. В опциях проекта ->Output->Name of Executable.
В данном шаблоне system_stm32f0xx.c не используется , настройка тактовой прописана в main.c
Файлы CMSIS, хэдеры вендора и стартап взяты из паков.
Вложения
Тип файла: rar template.rar (132.9 Кб, 25 просмотров)

Последний раз редактировалось dosikus; 17.03.2016 в 08:30.
dosikus на форуме   Ответить с цитированием
Старый 17.03.2016, 10:41   #21
hfmscan
Senior Member
 
Аватар для hfmscan
 
Регистрация: 17.01.2013
Адрес: Москва
Возраст: 42
Сообщений: 375
Вес репутации: 243/23
hfmscan has a spectacular aura abouthfmscan has a spectacular aura abouthfmscan has a spectacular aura about
Отправить сообщение для hfmscan с помощью ICQ
По умолчанию Re: STM32F0, помигать светодиодами, Keil не компилит

Спасибо, компилится без проблем, но в среде разработки почему-то показывает ошибку (картинка)...

Еще вопрос - у вас стоит прескалер 6, а я хочу чтобы ядро работало так же на 8 Мгц, но в объявлениях констант прескалеры начинаются с умножения на 2, (константа 0x00000000), действительно нельзя сделать частоту 8? вопрос не принципиальный, просто интересуюсь...

ну и еще просьба(не сочтите за наглость), может Вы можете дать пример из вашей библиотеки по работе с USART и по входам цифровым... ?

вчера вечер убил на пробу с входами, но то ли я что-то не так делаю, то ли не знаю... суть в чем, у меня на одну из ног проца, предположительно PA3 идет сигнал с к-линии через резистивный делитель, так вот я пытался читать эту ногу и в зависимости от ее состояния зажигать\гасить светодиод(управлять светодиодом уже умею). но реакции никакой нет(когда я к-линию на землю сажу светодиод должен гаснуть, а он у меня на этом порту всегда не горит, по другим 3-м горят постоянно), хотя я пробовал по 4-м ножкам микры PA3-PA6 (у меня капля и я не могу по схеме точно знать на какую из ног идет дорожка от 2-ух резисторов под каплей (22к+68к, делитель на 4), я ориентируюсь на версию платы, на которой еще стояла микросхема в нормальном корпусе 32 ноги (смотри под спойлером)....
Миниатюры
image002.png  
__________________
STM32F042
PIC18F25k80

Последний раз редактировалось hfmscan; 17.03.2016 в 10:56.
hfmscan вне форума   Ответить с цитированием
Старый 17.03.2016, 11:54   #22
dosikus
Senior Member
 
Аватар для dosikus
 
Регистрация: 05.06.2007
Возраст: 45
Сообщений: 3,574
Вес репутации: 5590/128
dosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond reputedosikus has a reputation beyond repute
По умолчанию Re: STM32F0, помигать светодиодами, Keil не компилит

Ошибок у меня нет, какая версия Keil? У меня v5.17.

Настроить пин как Input floating и читаем :

Код:
temp =(GPIOx->IDR) & mask_pin;
Можно настроить как OD с пуллап , тогда и управлять сможем.
А почему K-line без драйвера?


USART
Код:
#define APBCLK 48000000UL
#define BAUDRATE 115200UL
Код:
void Usart_init (void) 
    {
      RCC->AHBENR |= RCC_AHBENR_GPIOAEN;
      RCC->APB2ENR|=RCC_APB2ENR_USART1EN;
      
      fifo_init(RxFifo, (void *)RxBuffer, sizeof(RxBuffer));
      fifo_init(TxFifo, (void *)TxBuffer, sizeof(TxBuffer));
	  	                               ;
      
      GPIOA->MODER &= ~(GPIO_MODER_MODER1 | GPIO_MODER_MODER10 |GPIO_MODER_MODER9);
      GPIOA->MODER |=  GPIO_MODER_MODER1_0 | GPIO_MODER_MODER10_1 |GPIO_MODER_MODER9_1; 
    
      GPIOA->AFR[1] |=(1<<(4*1)) |(1<<(4*2));
      USART1->BRR =(APBCLK+BAUDRATE/2)/BAUDRATE; //usart
      USART1->CR1 |= USART_CR1_TE |USART_CR1_RE|USART_CR1_RXNEIE; // USART1
      USART1->CR1 |= USART_CR1_UE; //   USART1  
			
      NVIC_SetPriority(USART1_IRQn, 0); 
      NVIC_EnableIRQ(USART1_IRQn); 
          
    }
    
 void Usart_Transmit(uint8_t Data)
{
  while(!(USART1->ISR & USART_ISR_TC));
  USART1->TDR = Data;
}

void USART1_IRQHandler(void)
{
	uint16_t rx;
	if(USART1->ISR & USART_ISR_RXNE)
	{

 
    rx = (uint8_t)(USART1->RDR); // Receive data, clear flag 
 
    fifo_write(RxFifo, &rx, 1); // Place in reception fifo
		 if(rx==0x0D) 
		 {
			ReadStat= 1;
		 }
	}
}


void USART1_str (const char * data)
{

	while((*data )){ 
	  Usart_Transmit (*data);
		data++;
	  }
}
dosikus на форуме   Ответить с цитированием
Старый 17.03.2016, 23:07   #23
Sergey
Senior Member
 
Регистрация: 25.02.2007
Адрес: СПб
Сообщений: 606
Вес репутации: 670/51
Sergey is a splendid one to beholdSergey is a splendid one to beholdSergey is a splendid one to beholdSergey is a splendid one to beholdSergey is a splendid one to beholdSergey is a splendid one to behold
Отправить сообщение для Sergey с помощью ICQ
По умолчанию Re: STM32F0, помигать светодиодами, Keil не компилит

Цитата:
Сообщение от Greg Посмотреть сообщение
посмотрите внимательно, как сделаны обработчики прерываний от тех же таймеров (обработчик там по факту один). тут это где-то обсуждалось. в этом смысле пресловутые "библиотеки" - чистый ассемблер...
т.е. на большее чем подсмотреть настройку периферии - это вряд ли. слишком гнет свою линию. типа как в анекдоте про программиста - "проснуться ночью и взять стакан с тумбочки, если есть жажда - выпить, если нет - поставить назад".
и да, не знать куб вполне можно.
Я уже говорил что кубом пользуюсь. Обработчик как обработчик. есть у меня в проекте 2 таймера, у каждого свой обработчик... или вы о чем то другом? Может вы про вызов обработчика прерывания из процедуры прерывания? на мой взгляд удобно. все варианты разобраны и есть колбэки... нет - пишите свой код сразу в функции вызываемой по прерыванию... куб не запрещает...

ну начиная изучать новое железо, стараюсь рассмотреть все возможные варианты работы с ним. и тогда делать выбор с чем работать. а куб это первое что предлагает производитель для ознакомления. поэтому не знать может и можно, но слышать просто необходимо...
Sergey вне форума   Ответить с цитированием
Старый 17.03.2016, 23:30   #24
Sergey
Senior Member
 
Регистрация: 25.02.2007
Адрес: СПб
Сообщений: 606
Вес репутации: 670/51
Sergey is a splendid one to beholdSergey is a splendid one to beholdSergey is a splendid one to beholdSergey is a splendid one to beholdSergey is a splendid one to beholdSergey is a splendid one to behold
Отправить сообщение для Sergey с помощью ICQ
По умолчанию Re: STM32F0, помигать светодиодами, Keil не компилит

Цитата:
Сообщение от dosikus Посмотреть сообщение
Sergey, в чем проблема самому сравнить? Качаете сниппетсы, ссылку выше дал. Изучаете как код так и выхлоп и сравниваете с калокубом.
Да и , сравнивать IDE с визардами это жесть...
ну иде с визардом я вроде бы тут не путал...

обязательно посмотрю на сниппетсы эти.

теперь по быдлокоду и калокубу. как я и говорил - еще не видел что бы кто то написал настолько понятный код и структурировал бы его так как дает на выходе куб. то что привел автор темы ни в какие ворота не лезет. и ваша «рыба» оттуда же. ваш пример работы с уартом такой же. ни структуры кода, ни обработки ошибок, ни комментов... этот ваш код через пол года будет проще выкинуть и заново писать. разберетесь в нем только вы сами. да, соглашусь что куб создает больше кода чем нужно для моргания светодиодом. но я не думаю что у всех на этом жизнь кончается, так же? всяко проект должен уметь больше чем ногой подрыгать... и в кубе я просто трачу намного меньше времени для создания скелета моего проекта. причем низкоуровневого скелета. никто не мешает вам все поправить как вам нужно. но править гораздо быстрее чем писать заново самому. теперь по объему кода. а вы уверены что вам важны эти 3кб «лишнего» кода? неужели вы забиваете память проца на 99,999%? я вот думаю что от задач наверное зависит. где-то может лучше писать без библиотек, а в другом месте важнее переносимость кода и быстрая подстройка конфигурации... кстати в вашей рыбе есть «магические» числа, поменяете кварц и побежали искать где что править... да и настройка портов и таймера в одной функции на мой взгляд не очень верное решение... и по уарту ошибки нужно обрабатывать... кстати по википедии быдлокодеры и те кто стремится к идеальному коду и те кто к этому не стремится... не понятно это как то.. видимо проблема глубоко философская...
Sergey вне форума   Ответить с цитированием
Старый 18.03.2016, 00:56   #25
HHIMERA
Banned
 
Регистрация: 10.06.2008
Возраст: 55
Сообщений: 2,716
Вес репутации: 3742/0
HHIMERA has a reputation beyond reputeHHIMERA has a reputation beyond reputeHHIMERA has a reputation beyond reputeHHIMERA has a reputation beyond reputeHHIMERA has a reputation beyond reputeHHIMERA has a reputation beyond reputeHHIMERA has a reputation beyond reputeHHIMERA has a reputation beyond reputeHHIMERA has a reputation beyond reputeHHIMERA has a reputation beyond reputeHHIMERA has a reputation beyond repute
По умолчанию Re: STM32F0, помигать светодиодами, Keil не компилит

Цитата:
Сообщение от Sergey Посмотреть сообщение
теперь по быдлокоду и калокубу. как я и говорил ..
Ваше мнение не единично... но это не значит что оно верное... быстрее совсем наоборот...

У вас есть два пути... учиться на чужих ошибках... или учиться на своих... Ваш выбор номер два... это ваши проблемы и вам с этим жить...

И вообще... тема калокуба уже настолько поднадоела... что от неё уже тошнит... Вам нравится??? Юзайте... на свой страх и риск...

Хотите что-то узнать больше... стучите поиском... холивары ваш хлеб насущный... там много сказано... а перемалывать всё это в 87569165976939659-й раз... нет никакого смысла...
HHIMERA вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
что за зверь - Скатерограмма Edua Общетехнические вопросы 17 01.03.2013 23:33
Алгоритм Герцеля. Mario Продукция MICROCHIP 45 08.12.2009 15:53
Нужна ли МК ОС? syv Инструментарий 179 22.01.2009 10:59
Макимальная частота прерываний от TMR0 ANH Продукция MICROCHIP 114 05.04.2008 00:50
Нужна прошивка на PIC16F877 для бегущей строки!!! VanoMC Продукция MICROCHIP 12 13.04.2007 11:06


Часовой пояс GMT +3, время: 23:01.


Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd. Перевод: zCarot