Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту


 
Опции темы
Непрочитано 21.11.2013, 19:04  
tempora
Почётный гражданин KAZUS.RU
 
Регистрация: 10.01.2007
Сообщений: 3,412
Сказал спасибо: 65
Сказали Спасибо 664 раз(а) в 443 сообщении(ях)
tempora на пути к лучшему
По умолчанию Re: FAQ по STM8

Сообщение от nahimovv Посмотреть сообщение
Сообщение от boydyzy Посмотреть сообщение
Код:
...
    for (i=ARR_LEN - 1; i ‹ 0; i--){ ... }
Опять же, на пару тактов короче должно быть.
Та не, сразу на всю длину этой херни!


В КВН'е у Пятигорска весы говорили парнишке - "Пожалуйста, станьте на весы...", а тут - компилер "программеру": "Тэээк-с, ну, а где программа-то? "
Реклама:
__________________
There's always more than one way to skin a cat.
tempora вне форума  
Непрочитано 21.11.2013, 19:36  
Uvavan
Временная регистрация
 
Регистрация: 18.04.2011
Сообщений: 84
Сказал спасибо: 23
Сказали Спасибо 6 раз(а) в 4 сообщении(ях)
Uvavan на пути к лучшему
По умолчанию Re: FAQ по STM8

И снова здравствуйте.
Опять проблема. Суть ситуации АЦП меряет напряжение циклически с 2 входов и пишет через ДМА в массив. А потом из массива в счетчик ШИМ. Все бы хорошо только иногда значения каналов АЦП пишутся не в свою ячейку памяти.

Код:
PHP код:
 u16 rev[2];

  
INTERRUPT_HANDLER(DMA_IRQ2)
{
   
DMA1_Channel0-›CSPR &= ~DMA_CSPR_TCIF;
   
TIM1_CCR2Hrev[0]››8;
   
TIM1_CCR2L|= (u8)rev[0];
   
TIM1_CCR1Hrev[1]››8;
   
TIM1_CCR1L|= (u8)rev[1];     
}

 
CLK_CKDIVR 0;
  
  
PD_DDR_bit.DDR2=1;
  
PD_CR1_bit.C12=1;
  
PD_CR2_bit.C22=1;
  
PD_DDR_bit.DDR3=1;
  
PD_CR1_bit.C13=1;
  
PD_CR2_bit.C23=1;
  
PD_DDR_bit.DDR4=1;
  
PD_CR1_bit.C14=1;
  
PD_CR2_bit.C24=1;
  
CLK-›PCKENR2 |= CLK_PCKENR2_ADC1;
  
CLK_PCKENR2_bit.PCKEN21 1//Включаем тактирование таймера 
  
CLK-›PCKENR2 |= CLK_PCKENR2_DMA1;
  
  
TIM1_CCMR1_bit.OC1M=6//Режим работы
  
TIM1_CCMR2_bit.OC2M=6;
  
TIM1_BKR_bit.MOE=1;
  
TIM1_PSCRH 0;
  
TIM1_PSCRL 0//Делитель на 1
  
TIM1_ARRH =(4100)››8
  
TIM1_ARRL =(4100)&0x00ff;
  
TIM1_CCER1_bit.CC1E=1;  // разрешение канала
  
TIM1_CCER1_bit.CC2E=1;
  
  
ADC1-›CR1 |= ADC_CR1_ADON|ADC_CR1_CONT|ADC_CR1_EOCIE;
  
ADC1-›SQR[3] |=0x0C;
 
// ADC1-›CR2 |= 3;
  
  
DMA1_Channel0-›CNBTR=2;
  
DMA1_Channel0-›CPARH = (ADC1_BASE+4)››8//Адрес регистра АЦП (старший байт)
  
DMA1_Channel0-›CPARL = (uint8_t)(ADC1_BASE+4); //Младший
  
DMA1_Channel0-›CM0ARH = (uint8_t)((uint16_t)rev››8); //Адрес буфера
  
DMA1_Channel0-›CM0ARL =(uint8_t)((uint16_t)rev);  
  
DMA1_Channel0-›CSPR |= DMA_CSPR_16BM;  //Режим работы с 16и битными числами.
  
DMA1_Channel0-›CCR |= DMA_CCR_ARM//ARM - Auto-Reload mode
  
DMA1_Channel0-›CCR |= DMA_CCR_IDM DMA_CCR_CE |DMA_CCR_TCIE//Включаем канал и разрешаем прерывание
  
DMA1-›GCSR |= DMA_GCSR_GE//Включаем DMA
  
  
enableInterrupts(); //Разрешаем прерывания
 
  
ADC1-›CR1|=ADC_CR1_START;
  
TIM1_CR1_bit.CEN=1
иногда это через 2-3 цикла измерения.
Правильно я понял что прерывании от ДМА приходит при заполнении всего массива (записи указанного числа байт)?

Последний раз редактировалось Uvavan; 21.11.2013 в 20:25.
Uvavan вне форума  
Непрочитано 21.11.2013, 20:48  
nahimovv
Заблокирован
 
Регистрация: 25.04.2013
Сообщений: 1,431
Сказал спасибо: 0
Сказали Спасибо 385 раз(а) в 254 сообщении(ях)
nahimovv на пути к лучшему
По умолчанию Re: FAQ по STM8

Сообщение от Uvavan Посмотреть сообщение
Все бы хорошо только иногда значения каналов АЦП пишутся не в свою ячейку памяти.
А куда они пишутся? Сразу скажу, никуда в другое место они писаться не могут!
nahimovv вне форума  
Непрочитано 21.11.2013, 20:57  
Uvavan
Временная регистрация
 
Регистрация: 18.04.2011
Сообщений: 84
Сказал спасибо: 23
Сказали Спасибо 6 раз(а) в 4 сообщении(ях)
Uvavan на пути к лучшему
По умолчанию Re: FAQ по STM8

Сообщение от nahimovv Посмотреть сообщение
А куда они пишутся? Сразу скажу, никуда в другое место они писаться не могут!
Получается значения каналов АЦП меняются в массиве местами. Пару раз в 0 элементе массива 2 канал, а в 1 - 3 канала. Потом значения поменялись местами и так скачут.

Последний раз редактировалось Uvavan; 21.11.2013 в 21:05.
Uvavan вне форума  
Непрочитано 21.11.2013, 21:53  
ut1wpr
Почётный гражданин KAZUS.RU
 
Аватар для ut1wpr
 
Регистрация: 19.08.2006
Адрес: Львов
Сообщений: 1,616
Сказал спасибо: 65
Сказали Спасибо 315 раз(а) в 264 сообщении(ях)
ut1wpr на пути к лучшему
По умолчанию Re: FAQ по STM8

Сообщение от Uvavan Посмотреть сообщение
Получается значения каналов АЦП меняются в массиве местами. Пару раз в 0 элементе массива 2 канал, а в 1 - 3 канала. Потом значения поменялись местами и так скачут.
Опять программы начинают жить самостоятельно от задумок создателя. Вспоминается, здесь однажды утверждал наш коллега, что у него "программа не заходит в функцию". Очень похоже. Только тут значения "скачут по памяти", как лошадки на лужайке.
Читайте и еще раз читайте, что же вы там написали. И постарайтесь написанное вами же понять.
__________________
С уважением,
Vic / ut1wpr
ut1wpr вне форума  
Непрочитано 23.11.2013, 15:27  
woroba
Гражданин KAZUS.RU
 
Регистрация: 13.06.2005
Адрес: РК г.Павлодар
Сообщений: 866
Сказал спасибо: 99
Сказали Спасибо 216 раз(а) в 140 сообщении(ях)
woroba на пути к лучшему
По умолчанию Re: FAQ по STM8

Решил таки и либы STD попробовать.
STM8L к IAR прикрутилась без проблем, а вот STM8S не получается.
Где я накосячил? Поправьте проект кому не влом.
Миниатюры:
Нажмите на изображение для увеличения
Название: ERR.JPG
Просмотров: 56
Размер:	8.5 Кб
ID:	55134  
Вложения:
Тип файла: rar STDLIB.rar (2.05 Мб, 33 просмотров)
__________________
Не ошибается лишь тот, кто ни чего не делает!
woroba вне форума  
Непрочитано 23.11.2013, 16:24  
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,269 раз(а) в 1,563 сообщении(ях)
dosikus на пути к лучшему
По умолчанию Re: FAQ по STM8

woroba, На кой хрен, проблем мало? Ради бога .


1) Удаляешь папку inc из менеджера проекта и свои абсолютные пути в препроцессоре .
Вместо этого прописываешь путь к хэдерам в препроцессоре :
$PROJ_DIR$\inc
2) Удаляешь
Код:
   #include "stm8s.h"
   #include "stm8s_adc1.h"
   #include "stm8s_gpio.h"
И вписываешь только

Код:
 #include "stm8s_conf.h"
3) Добавляешь в конец main.c

Код:
#ifdef USE_FULL_ASSERT

void assert_failed(u8* file, u32 line)
{ 
  
  while (1)
  {
  }
}
#endif
В stm8l скорей всего точно так же "насоздавал" без понятия.

Прикольно конечно наблюдать, как новичок вместо изучения архитектуры и С , наслушавшись кухарок-визажистов любителей SPL, сам себе злобный буратино...
__________________
Осторожно , злой кот

Последний раз редактировалось dosikus; 23.11.2013 в 16:27.
dosikus вне форума  
Сказали "Спасибо" dosikus
woroba (23.11.2013)
Непрочитано 23.11.2013, 18:18  
nahimovv
Заблокирован
 
Регистрация: 25.04.2013
Сообщений: 1,431
Сказал спасибо: 0
Сказали Спасибо 385 раз(а) в 254 сообщении(ях)
nahimovv на пути к лучшему
По умолчанию Re: FAQ по STM8

dosikus, может пора выложить новую мурзилку с весёлыми картинками для создателей проекта ИАР с применением SPL? У тя хорошо получается! Не?
nahimovv вне форума  
Непрочитано 23.11.2013, 18:36  
ut1wpr
Почётный гражданин KAZUS.RU
 
Аватар для ut1wpr
 
Регистрация: 19.08.2006
Адрес: Львов
Сообщений: 1,616
Сказал спасибо: 65
Сказали Спасибо 315 раз(а) в 264 сообщении(ях)
ut1wpr на пути к лучшему
По умолчанию Re: FAQ по STM8

Сообщение от nahimovv Посмотреть сообщение
dosikus, может пора выложить новую мурзилку с весёлыми картинками для создателей проекта ИАР с применением SPL? У тя хорошо получается! Не?
Точно. Типа "как правильно прошивать фьюзы?"...
Только вот ведь беда. Сколько уже про эти фьюзы и мурзилок, и юнтехников понаписано, а вопросы эти в соответствующих темах/ветках по количеству бьют все остальные.
Написать можно. Кто читать будет?
Ну и еще одно. Многие из новисов требуют, чтобы выложили им как "раз и навсегда правильно..." И невдомек им, что существуют много способов сконфигурировать среду до рабочего состояния. И впадают они в ступор, когда читают в одной мурзилке "У мну вот так и все работает, знацца у мну истина!", а в другой, не менее уважаемой мурзилке совсем другие картинки, и (о ужас) - "У мну работает, знацца у мну полный ТРУ!".
__________________
С уважением,
Vic / ut1wpr
ut1wpr вне форума  
Непрочитано 23.11.2013, 18:54  
nahimovv
Заблокирован
 
Регистрация: 25.04.2013
Сообщений: 1,431
Сказал спасибо: 0
Сказали Спасибо 385 раз(а) в 254 сообщении(ях)
nahimovv на пути к лучшему
По умолчанию Re: FAQ по STM8

Та не! На тру пьедестал никто не замахивается, просто я попробовал как предложил dosikus, ан не взлетело!
Я понимам, что у меня в голове свои тараканы, элитные и откормленные, свои привычки и требования.
Ладно, пусть не выкладывает, а то действительно думать и разговаривать разучатся!
nahimovv вне форума  
 

Закладки

Метки
arm, cortex, stm32, stm8
Опции темы

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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Импульсная зарядка для авто-аккумуляторов (новодел) Falconist Источники питания и свет 1915 14.03.2024 19:56
FAQ (ЧаВО) по PROTEUS для начинающих и не только dosikus Proteus 221 07.03.2024 22:45
STM8(S/L), первые впечатления kison STM8 1423 19.05.2018 19:23
Вопросы и замечания по топику - FAQ по PROTEUS avr123-nm-ru Proteus 291 05.06.2015 20:49
FAQ Импульсный трансформатор alberio Источники питания и свет 87 13.11.2012 18:07


Часовой пояс GMT +4, время: 19:12.


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