Отговори на тема  [ 22 мнения ]  Отиди на страница 1, 2  Следваща
От къде описание на HAL_STM32 библоитеки. 
Автор Съобщение
Ранг: Почетен член
Ранг: Почетен член
Аватар

Регистриран на: Нед Окт 19, 2008 6:26 pm
Мнения: 608
Мнение От къде описание на HAL_STM32 библоитеки.
Трябва ми описание на библиотеките генерирани STM32Cube ... Като обикновен HELP вид. Днес започнах да пиша една проста мигалка с KEIL.
И не можах да се сетя как е Delay ... търся в хелпа на KEIL няма- по разбираеми причини. Търся в STM32Cube - там има само pdf-и.
От къде да намеря нещо ofline от вида- https://www.disca.upv.es/aperles/arm_cortex_m3/llibre/st/STM32F439xx_User_Manual/stm32f4xx__hal_8h.html
Само да не е pdf, не е удобно.

_________________
Вниманиене съмвишист....ИЙ.


Пет Авг 26, 2022 5:59 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Вто Фев 07, 2012 10:22 pm
Мнения: 3074
Мнение Re: От къде описание на HAL_STM32 библоитеки.
Едва ли има такова нещо, като хелп за stm32cube.
За delay - ако е за микросекунди, базирано на лууп - с две три проби сам ще си го напишеш...ако е за милискунди , има си сис-тик, с три реда ще си напишеш функция.


Нед Авг 28, 2022 7:27 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Пет Юни 03, 2005 8:39 pm
Мнения: 1969
Мнение Re: От къде описание на HAL_STM32 библоитеки.
Търсиш в сорсовете HAL_Delay и четеш. Има коментари и става ясно за какво иде реч. Ако чак толкова искаш да имаш само документация няма да е сложно да извадиш всяка функция заедно с коментара(скрипт някакъв) и да ги организираш както искаш.

_________________
Определянето стойността на дадена величина се нарича ИЗМЕРВАНЕ!


Нед Авг 28, 2022 7:41 pm
Профил
Ранг: Почетен член
Ранг: Почетен член
Аватар

Регистриран на: Нед Окт 19, 2008 6:26 pm
Мнения: 608
Мнение Re: От къде описание на HAL_STM32 библоитеки.
Ако се сетя че е HAL_Delay ... няма да я търся

_________________
Вниманиене съмвишист....ИЙ.


Нед Авг 28, 2022 8:43 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Пет Юни 03, 2005 8:39 pm
Мнения: 1969
Мнение Re: От къде описание на HAL_STM32 библоитеки.
Имах точно същия случай, за същата функция и търсих само delay(в сорсовете)... и се получи :)

_________________
Определянето стойността на дадена величина се нарича ИЗМЕРВАНЕ!


Нед Авг 28, 2022 8:57 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пон Юни 05, 2006 12:48 pm
Мнения: 4406
Местоположение: където небето среща земята, ракията е Jameson, а бирата Guinness
Мнение Re: От къде описание на HAL_STM32 библоитеки.
Из аз си мисля че ако търсиш в сорсовете на библиотеките , информацията ще е по-меродавна , защото документацияте се пише от хора , парсващи сорсолята, или пишещи с тагове за ауто-документиране, но така или иначе внасят грешки...

_________________
... ако трети ден не ти се работи... това означава, че е сряда !


Пон Авг 29, 2022 1:47 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Апр 27, 2005 11:48 am
Мнения: 4715
Мнение Re: От къде описание на HAL_STM32 библоитеки.
директен delay мисля че нямаше

Код:
static void Delay(unsigned int ms)
{
    uint32_t start = getCurrentMillis();
    do
    {
        asm("nop");
    } while (getCurrentMillis() - start < ms); // от clock.c
}

void delayMicroseconds(unsigned int us)
{
    if (us)
    {
        uint32_t begin = getCurrentMicros();
        while ((begin - getCurrentMicros()) < us) // пак от там
        {
        }
    }
}

_________________
main[-1u]={1};


Пон Авг 29, 2022 2:08 pm
Профил ICQ
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Съб Сеп 25, 2004 11:32 am
Мнения: 7885
Местоположение: София
Мнение Re: От къде описание на HAL_STM32 библоитеки.
Това горното е неточно, надявам се е ясно. :) И спокойно може да се махне asm("nop");


Вто Авг 30, 2022 10:54 am
Профил
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Сря Яну 08, 2014 2:27 pm
Мнения: 2
Мнение Re: От къде описание на HAL_STM32 библоитеки.
Ето това може да ти свърши работа - само трябва да се управя всеки път честотата "cristal="

delay.h

Код:
/******************************************************************************/
/*                      delay.h:                                              */
/******************************************************************************/
/*              edition this &                                                */
/******************************************************************************/

#ifndef _DELAY_INCLUDED_
#define _DELAY_INCLUDED_

//presentation variable

/********************************************************************************/
unsigned long crystal=100000000; // frequecy of MCU - for other crystal change
/********************************************************************************/

unsigned long x;
unsigned long y;

//presentation subs ( we have three sub 1- delay_us 2- delay_ms 3- delay_s

void delay_us(unsigned long a);
void delay_ms(unsigned long b);
void delay_s(unsigned long c);

/******************************************************************************/
// sub delay_us
/******************************************************************************/
void delay_us(unsigned long a){
do{
unsigned long d=0;
x=crystal/50000000;    //
for (d=0;d<x;d++);    //start the VALUE off d is 0 ,  increase  d ,
//if d > x goto next line ,else (d<x) increase d
y++;   // increase y
} while(y<a);  //if y > a goto next line ,else (y<a) goto "do{"
y=0;
}

//in mine program , you write "delay_s(4);" . in this Header "a" is 4 & do-while
//loop repeat 4 ---time = (x*5)/ crystal

/******************************************************************************/
// sub delay_ms
/******************************************************************************/
void delay_ms(unsigned long b){
do{
unsigned long e=0;
x=crystal/5000;   
for (e=0;e<x;e++);
y++;
} while(y<b);
y=0;
}
/******************************************************************************/
// sub delay_s
/******************************************************************************/
void delay_s(unsigned long c){
do{
unsigned long f=0;
x=crystal/5;
for (f=0;f<x;f++);
y++;
} while(y<c);
y=0;
}
#endif


Вто Авг 30, 2022 3:16 pm
Профил
Ранг: Почетен член
Ранг: Почетен член
Аватар

Регистриран на: Нед Окт 19, 2008 6:26 pm
Мнения: 608
Мнение Re: От къде описание на HAL_STM32 библоитеки.
Да не цвъкам повече теми да питам нещо друго:
Принтвам на един 2.8 дисплей едни температури със запетайки
кирилицата си ми е OK. KEIL съм минал на win1251
Имам проблем такъв:
Като отлепя %.3f от равното със шпация, и се шашка, а и аз също.
sprintf(data_T,"Температура =%.3f 'C ",temp); //Работи ОК
sprintf(data_T,"Температура = %.3f 'C ",temp);// не работи

_________________
Вниманиене съмвишист....ИЙ.


Пон Сеп 26, 2022 1:18 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Нед Ное 21, 2004 10:31 pm
Мнения: 9645
Мнение Re: От къде описание на HAL_STM32 библоитеки.
колко е голям data_T?
друга причина не виждам. пък и 'не работи' е малко непълно.

Код:
int main(void) {
float temp=4532.1;
    printf("Темп = %.3f°C\n",temp);
}

Темп = 4532.100°C


Пон Сеп 26, 2022 1:30 pm
Профил
Ранг: Почетен член
Ранг: Почетен член
Аватар

Регистриран на: Нед Окт 19, 2008 6:26 pm
Мнения: 608
Мнение Re: От къде описание на HAL_STM32 библоитеки.
Добре де :o :o :o - ДедоБоре как се сети ??? 8O 8O 8O
Кода е пред мен, даже аз съм го писал . Даже си написах драйверите за AHT10 датчика за температура и влажност . Дал съм дължина на масива 30 ... изчислих паузите отзад да не ми остава последния символ да виси като намалее разряда на десетиците. Напудрих го ... и си рекох да отдалеча първите цифри от равното с една пауза ...
И съм забравил, че като допълня елемент да пипна и дължината на масива . И настана едночасово ровене в кода едно дебъгване . А ми гърми тихо, без грешки и предупреждения.
Благодаря ти.

_________________
Вниманиене съмвишист....ИЙ.


Пон Сеп 26, 2022 5:18 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Нед Сеп 26, 2004 8:21 pm
Мнения: 27994
Местоположение: София
Мнение Re: От къде описание на HAL_STM32 библоитеки.
Ами според мен типичен проблем който рядко виждаш в собственият си код, не и преди няколко пъти да се почешеш навсякъде където не те сърби.
Аз понеже знам че правя такива простотии често, гледам да оставям масивите по-големи, естествено с малките въшки това не е много удачен подход ама като вземе да свършва РАМ първо си проверявам масивите дали някъде не съм оставил някой ненужно голям.


Пон Сеп 26, 2022 5:58 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Пет Юни 03, 2005 8:39 pm
Мнения: 1969
Мнение Re: От къде описание на HAL_STM32 библоитеки.
RM написа:
...Дал съм дължина на масива 30 ...

Имаш си дължина буфера => използвай snprintf :)

_________________
Определянето стойността на дадена величина се нарича ИЗМЕРВАНЕ!


Пон Сеп 26, 2022 7:56 pm
Профил
Ранг: Почетен член
Ранг: Почетен член
Аватар

Регистриран на: Нед Окт 19, 2008 6:26 pm
Мнения: 608
Мнение Re: От къде описание на HAL_STM32 библоитеки.
Имам един модул RTC с DS3231
Същия като този (https://circuitdigest.com/microcontroller-projects/interfacing-ds3231-rtc-with-arduino-and-diy-digital-clock )
Но не ползвам среда ардуино или как там беше, ползвам KEIL.
Управлението е лесно и работи без проблем , сложих батерийка 3,1V -използвана . Когато работи на захранване всичко е ОК. Сутринта изключих платката и сега след 7-8 часа времето беше изостанало с повече от час и половина , датата беше добре - батерийката пак беше 3,1V. Някога съм работил с някакъв PCFххххх чип на филипс и не помня да съм имал каквито и да са проблеми. Нямам си на идея какво да търся. Пишат по форумите че модула има проблем с резистора и диода които би трябвало да изпълняват зареждането ... но захранването ми е 3,3V и по никакъв начин няма да зареди батерийката , и не виждам как обратния диод ще пречи на работата и. Премерих всички изводи към минус, и никъде освен на 14 краче нямаше напрежение.


Прикачени файлове:
platka.jpg
platka.jpg [ 121.8 KiB | Прегледано 1304 пъти ]

_________________
Вниманиене съмвишист....ИЙ.
Пон Окт 03, 2022 6:01 pm
Профил
Покажи мненията от миналия:  Сортирай по  
Отговори на тема   [ 22 мнения ]  Отиди на страница 1, 2  Следваща

Кой е на линия

Потребители разглеждащи този форум: Google [Bot] и 3 госта


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

Търсене:
Иди на:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.
Хостинг и Домейни