реклама на сайте
подробности

 
 
> Проблема с функцией задержки., STM32F107
Jenya7
сообщение Jun 27 2016, 09:05
Сообщение #1


Профессионал
*****

Группа: Участник
Сообщений: 1 778
Регистрация: 29-03-12
Пользователь №: 71 075



Какая то ну очень странная проблема.
Я сделал функцию задержки так.
Код
void Delay_us(uint32_t us)
{
    uint32_t ticks = 72 * us;
    SysTick->LOAD = ticks;
    SysTick->CTRL |= 0x01;  //enable
    while (!(SysTick->CTRL&SysTick_CTRL_COUNTFLAG_Msk));
    SysTick->CTRL &= ~0x01; //disable
}

Проверяю
Код
PIN_OUT_PP(One_Wire_Pin);
while (1)
{
    PIN_ON(One_Wire_Pin);
    Delay_us(500);
    PIN_OFF(One_Wire_Pin);
    Delay_us(500);
}

Вижу хороший сигнал 500 микросек. Никаких проблем.
А вот в этой функции
Код
unsigned int One_Wire_Reset(GPIO_TypeDef * GPIOx, uint16_t PINx)
{
    unsigned int tmp;
    PIN_IN(GPIOx, PINx);
    if ((PIN_SYG(GPIOx, PINx))==0)    return One_Wire_Bus_Low_Error;

    PIN_OUT_PP(GPIOx, PINx);
    PIN_OFF(GPIOx, PINx);
    Delay_us(480);
    PIN_ON(GPIOx, PINx);
    PIN_IN(GPIOx, PINx);
    Delay_us(60);

    if ((PIN_SYG(GPIOx, PINx))==0) tmp=One_Wire_Success;
        else tmp=One_Wire_Error_No_Echo;
    Delay_us(Time_After_Reset);
    return tmp;
}

я вижу сигнал идет вниз на 350 микро (вместо 480). Кручу и так и этак, ума не приложу в чем проблема

Сообщение отредактировал Jenya7 - Jun 27 2016, 09:06
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Jenya7   Проблема с функцией задержки.   Jun 27 2016, 09:05
- - scifi   А я вот так сделал: CODE#include "systick.h...   Jun 27 2016, 09:16
|- - Jenya7   Цитата(scifi @ Jun 27 2016, 14:16) А я во...   Jun 27 2016, 09:38
|- - scifi   Цитата(Jenya7 @ Jun 27 2016, 12:38) Я не ...   Jun 27 2016, 11:09
|- - pitt   Цитата(Jenya7 @ Jun 27 2016, 05:38) Я не ...   Jun 27 2016, 13:23
- - KnightIgor   Цитата(Jenya7 @ Jun 27 2016, 10:05) Какая...   Jun 27 2016, 11:35
|- - Jenya7   Цитата(KnightIgor @ Jun 27 2016, 16:35) У...   Jun 27 2016, 12:01
- - Сергей Борщ   Извиняюсь, что не про задержку: QUOTE (Jenya7 ...   Jun 27 2016, 12:45
|- - Jenya7   Цитата(Сергей Борщ @ Jun 27 2016, 17:45) ...   Jun 27 2016, 13:18
|- - Сергей Борщ   QUOTE (Jenya7 @ Jun 27 2016, 16:18) выход...   Jun 27 2016, 13:23
|- - Jenya7   Цитата(Сергей Борщ @ Jun 27 2016, 18:23) ...   Jun 27 2016, 13:28
|- - Сергей Борщ   QUOTE (Jenya7 @ Jun 27 2016, 16:28) Серге...   Jun 27 2016, 13:46
|- - Jenya7   Цитата(Сергей Борщ @ Jun 27 2016, 18:46) ...   Jun 27 2016, 13:54
|- - Сергей Борщ   QUOTE (Jenya7 @ Jun 27 2016, 16:54) После...   Jun 27 2016, 16:13
||- - Jenya7   Цитата(Сергей Борщ @ Jun 27 2016, 21:13) ...   Jun 27 2016, 16:22
||- - Сергей Борщ   QUOTE (Jenya7 @ Jun 27 2016, 19:22) Нижни...   Jun 27 2016, 16:48
||- - Jenya7   Цитата(Сергей Борщ @ Jun 27 2016, 21:48) ...   Jun 27 2016, 16:57
|- - jcxz   Цитата(Jenya7 @ Jun 27 2016, 19:54) Вообщ...   Jun 28 2016, 03:47
- - jcxz   Цитата(Jenya7 @ Jun 27 2016, 15:05) Какая...   Jun 27 2016, 13:44
- - Jenya7   Переделал функции под вариант с OPEN DRAIN. CODE#...   Jun 28 2016, 05:34
|- - Сергей Борщ   QUOTE (Jenya7 @ Jun 28 2016, 08:34) но те...   Jun 28 2016, 07:29
|- - Jenya7   То есть нужно так? Код PIN_OFF(GPIOx, PINx...   Jun 28 2016, 07:44
- - Tarbal   Цитата(Jenya7 @ Jun 27 2016, 13:05) Какая...   Jun 29 2016, 18:13
|- - Alechek   Цитата(Tarbal @ Jun 29 2016, 23:13) Я бол...   Jun 29 2016, 18:42
||- - Tarbal   Цитата(Alechek @ Jun 29 2016, 22:42) И чт...   Jun 29 2016, 20:26
|- - Jenya7   Цитата(Tarbal @ Jun 29 2016, 23:13) Я бол...   Jun 30 2016, 08:05
|- - Сергей Борщ   QUOTE (Jenya7 @ Jun 30 2016, 11:05) Единс...   Jun 30 2016, 08:48
|- - KnightIgor   Цитата(Сергей Борщ @ Jun 30 2016, 09:48) ...   Jun 30 2016, 09:04
|- - Jenya7   Цитата(Сергей Борщ @ Jun 30 2016, 13:48) ...   Jun 30 2016, 09:30
|- - jcxz   Цитата(Jenya7 @ Jun 30 2016, 15:30) разгр...   Jun 30 2016, 10:15
||- - Tarbal   Цитата(jcxz @ Jun 30 2016, 14:15) А чем у...   Jun 30 2016, 12:47
|- - Эдди   Цитата(Jenya7 @ Jun 30 2016, 12:30) Интер...   Jun 30 2016, 10:40
- - Эдди   ТС, возьми нормальную реализацию 1-wire через тайм...   Jun 30 2016, 09:14
|- - Сергей Борщ   QUOTE (Эдди @ Jun 30 2016, 12:14) ТС, воз...   Jun 30 2016, 09:43
- - Alechek   Ой, о чем спор? Ногодрыг или аппаратный 1-wire? ...   Jun 30 2016, 11:21
- - Jenya7   Цитата(Alechek @ Jun 30 2016, 16:21) Ой, ...   Jun 30 2016, 12:26
- - Alechek   Цитата(Jenya7 @ Jun 30 2016, 17:26) Я вид...   Jul 1 2016, 04:58


Reply to this topicStart new topic
5 чел. читают эту тему (гостей: 5, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 18th July 2025 - 15:13
Рейтинг@Mail.ru


Страница сгенерированна за 0.01456 секунд с 7
ELECTRONIX ©2004-2016