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

 
 
9 страниц V   1 2 3 > »   
Reply to this topicStart new topic
> Проблемы с STM8
_Bill
сообщение May 19 2010, 17:58
Сообщение #1


Местный
***

Группа: Участник
Сообщений: 416
Регистрация: 18-04-06
Из: Челябинск
Пользователь №: 16 219



Проблема состоит в конфигурации портов В/В.
Имею контроллер STM8S103K. Для начала решил попробовать использовать порт как обычный счетчик и посмотреть на нем сигналы. Для этого выбрал PORTB. Сконфигуриловал его как порт вывода. В бесконечном цикле наращиваю счетчик на 1
Код
1$: inc      PB_ODR
    jra      1$

Смотрю сигналы на выводах порта. А сигналов там вовсе и нет. На паре выводов низкий уровень (true open drain), на остальных - высокий. Попробовал использовать другой порт - PORTC. Абсолютно все то же самое. Взял третий - PORTD. Вроде и работает, но не совсем. На разрядах 0, 7 высокий уровень, на остальных как и положено - меандр. Попробовал чуть усложнить код
Код
1$:  inc    PB_ODR
     mov    PD_ODR, PB_ODR
     jra    1$

Абсолютно ничего не изменилось. На разрядах порта B постоянные уровни, на разрядах 1-6 порта D - меандр.
Вот и ломаю голову - что я сделал не так? Смотрел фирменные библиотеки, каких-то особых хитростей по конфигурации портов не увидел. Можно предположить, что я при пайке спалил выходы портов. Но это маловероятно. На всякий случай решил собрать еще одну платку с контроллером и посмотреть что будет.
PS: А контроллер мне нравится все больше и больше. Вот только бы заставить его работать нормально. rolleyes.gif

Сообщение отредактировал _Bill - May 19 2010, 18:07
Go to the top of the page
 
+Quote Post
scifi
сообщение May 19 2010, 18:31
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 3 020
Регистрация: 7-02-07
Пользователь №: 25 136



А что если новое значение, записываемое в порт, не успевает передёрнуть уровни, и чтение из порта возвращает старое значение (или, хуже, комбинацию старого и нового)?
IMHO, нужно, чтобы счётчик крутился во внутренней памяти, а наружу выводить копию счётчика.
Go to the top of the page
 
+Quote Post
_Bill
сообщение May 19 2010, 18:37
Сообщение #3


Местный
***

Группа: Участник
Сообщений: 416
Регистрация: 18-04-06
Из: Челябинск
Пользователь №: 16 219



Цитата(scifi @ May 19 2010, 22:31) *
IMHO, нужно, чтобы счётчик крутился во внутренней памяти, а наружу выводить копию счётчика.

И так тоже делал, разницы нет.
Go to the top of the page
 
+Quote Post
Dog Pawlowa
сообщение May 20 2010, 06:37
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 2 702
Регистрация: 14-07-06
Пользователь №: 18 823



Цитата(_Bill @ May 19 2010, 20:58) *
Проблема состоит в конфигурации портов В/В.

Так выложите, как Вы конфигурируете, сравню с библиотечными.
Светодиод то моргает. rolleyes.gif


--------------------
Уходя, оставьте свет...
Go to the top of the page
 
+Quote Post
Stanislav_S
сообщение May 20 2010, 08:51
Сообщение #5


извечный пессимист
*****

Группа: Свой
Сообщений: 1 113
Регистрация: 9-10-06
Из: Днепропетровск
Пользователь №: 21 125



Кстати каая у вас там ожидаемая частота должна быть на выходе?, потому как там есть еще регистры CR1 и CR2, там максимальная частота ногодрыганья задается, да и выводы в порту имеют разную допустимую частоту ногодрыганья.


--------------------
Slaves are those of this world
Given freedom to lay chains upon The Master
The wolf is no longer free
Release the chains and come for me
Go to the top of the page
 
+Quote Post
_Bill
сообщение May 20 2010, 09:14
Сообщение #6


Местный
***

Группа: Участник
Сообщений: 416
Регистрация: 18-04-06
Из: Челябинск
Пользователь №: 16 219



Цитата(Dog Pawlowa @ May 20 2010, 10:37) *
Так выложите, как Вы конфигурируете, сравню с библиотечными.
Светодиод то моргает. rolleyes.gif

Нет светодиод не мигает. Я пока все осциллографом смотрю. А код... вот он
Код
;
; ** InitPorts    -- функция инициализации портов В/В
;
InitPorts:
    ld    a, #0FFh    ; Initiate ports
    ld    PB_DDR,    a        ;
    ld    PB_CR1,    a        ;
    ld    PD_DDR,    a        ;
    ld    PD_CR1,    a        ;
    ld    PD_CR2,    a        ;
;    ld    a, #LED_MASK ; Установить порт управления LED драйвером на вывод
;    ld    LED_DDR, a    ;
;    ld    LED_CR1, a    ; включить push-pull режим
;    clr    LED_PORT    ; Сбросить порт
    ret
;
; ***** main - головная функция *****
;
_main:
    ldw    x, #RAM_END    ; Инициализировать стек
    ldw    sp, x            ;
    bset    SWEN        ; Switch clock to HSE
    mov    CLK_SWR, #0xB4        ;
    callr    InitPorts    ; Инициализировать порты

1$:        ;;; Бесконечный цикл
;    btjf    TIM_05, 2$    ; Проверить флаг события и переход, если не установлен
;    bres    TIM_05        ; Сбросить флаг
;    callr    Bin2BCD        ; Преобразовать новое значение счетчикак для вывода
;2$:
;    callr    LEDout        ; Вывод значения счетчика на индикатор
;    inc    PB_ODR        ; Use ports a a binary counter
    inc    PD_ODR            ;
    bcpl    PB_ODR, #1
    bcpl    PD_ODR, #1
    bcpl    PD_ODR, #6
    bres    PD_ODR, #0
    jra    1$;;;
Go to the top of the page
 
+Quote Post
Dog Pawlowa
сообщение May 20 2010, 10:04
Сообщение #7


Гуру
******

Группа: Свой
Сообщений: 2 702
Регистрация: 14-07-06
Пользователь №: 18 823



Цитата(_Bill @ May 20 2010, 12:14) *
Нет светодиод не мигает.

У меня диод мигает при использовании функции из библиотеки, содержащей
GPIOx->ODR ^=(u8) mask;

А порт конфигурируется в режим GPIO_MODE_OUT_PP_LOW_FAST, т.е. вроде вижу по тексту - и в CR2 записывается 1.
После обеда гляну с отладчиком.


--------------------
Уходя, оставьте свет...
Go to the top of the page
 
+Quote Post
_Bill
сообщение May 20 2010, 10:10
Сообщение #8


Местный
***

Группа: Участник
Сообщений: 416
Регистрация: 18-04-06
Из: Челябинск
Пользователь №: 16 219



Цитата(Dog Pawlowa @ May 20 2010, 14:04) *
У меня диод мигает при использовании функции из библиотеки, содержащей
GPIOx->ODR ^=(u8) mask;

А порт конфигурируется в режим GPIO_MODE_OUT_PP_LOW_FAST, т.е. вроде вижу по тексту - и в CR2 записывается 1.
После обеда гляну с отладчиком.

Это все в "железе" работает?
Go to the top of the page
 
+Quote Post
topkin
сообщение May 20 2010, 10:42
Сообщение #9


Частый гость
**

Группа: Свой
Сообщений: 152
Регистрация: 21-12-05
Из: Москва
Пользователь №: 12 476



Взял STM8S - Discovery, подаренный на компэловском семинаре, написал простецкую программу, как раз по вашему случаю. По - поводу написания и всего остального прошу не пинать, в связи с отсутствием времени получилось вот так и все работает

/* MAIN.C file
*
* Copyright © 2002-2005 STMicroelectronics
*/

#include "STM8S105C6.h"

void GPIO_Conf(void)
{
PD_DDR = 0xFF; // all PD pins as output
PD_CR1 = 0xFF; // all PD pins output push pull
PD_CR2 = 0; // all PD pins speed 2MHz
PD_ODR = 0; // all set to 0
}


void main()
{
unsigned long int i;

GPIO_Conf();
while (1)
{
for(i = 0; i < 10000; i++);
PD_ODR = PD_ODR ^ 0xFF;
}
}

А почему вы тут сразу 2 порта настраиваете, порт B и D:
InitPorts:
ld a, #0FFh ; Initiate ports
ld PB_DDR, a ;
ld PB_CR1, a ;
ld PD_DDR, a ;
ld PD_CR1, a ;
ld PD_CR2, a ;

Сообщение отредактировал topkin - May 20 2010, 10:44
Go to the top of the page
 
+Quote Post
_Bill
сообщение May 20 2010, 11:11
Сообщение #10


Местный
***

Группа: Участник
Сообщений: 416
Регистрация: 18-04-06
Из: Челябинск
Пользователь №: 16 219



Ну, так оба порта хотел попробовать. Один не получился, сконфигурировал второй. Правда, контроллер у меня другой - STM8S103K.
Причина редактирования: Обширное, Ненужное, Бездумное цитирование
Go to the top of the page
 
+Quote Post
topkin
сообщение May 20 2010, 11:37
Сообщение #11


Частый гость
**

Группа: Свой
Сообщений: 152
Регистрация: 21-12-05
Из: Москва
Пользователь №: 12 476



При беглом просмотре вашего кода ошибок не видно, может быть Stanislav_S прав про частоту? Попробуйте сделать совсем просто, к примеру как в моем коде или скомпилируйте и прошейте его, поменяв только заголовочник и порт. Плюс ватч дог у вас отключен? Может дело в нем. По умолчанию он должен быть отключен, но, если я не ошибаюсь, конфигурация периферии и ватч дога в частности, задается в options bytes и далее работа контроллера при включении питания будет зависеть от настроект в этих байтах.

Сообщение отредактировал topkin - May 20 2010, 11:38
Go to the top of the page
 
+Quote Post
_Bill
сообщение May 20 2010, 12:58
Сообщение #12


Местный
***

Группа: Участник
Сообщений: 416
Регистрация: 18-04-06
Из: Челябинск
Пользователь №: 16 219



Цитата(topkin @ May 20 2010, 15:37) *
При беглом просмотре вашего кода ошибок не видно, может быть Stanislav_S прав про частоту? Попробуйте сделать совсем просто, к примеру как в моем коде или скомпилируйте и прошейте его, поменяв только заголовочник и порт. Плюс ватч дог у вас отключен? Может дело в нем. По умолчанию он должен быть отключен, но, если я не ошибаюсь, конфигурация периферии и ватч дога в частности, задается в options bytes и далее работа контроллера при включении питания будет зависеть от настроект в этих байтах.

Я проверял программу с использованием фабричных установок (частота внутреннего генератора / 8 = 2МГц). Разницы абсолютно никакой. И потом, у порта D не работает самый старший разряд, а все остальные, за исключением самого младшего, работают. Пробовал управлять скоростью нарастания на выходе порта при помощи регистра CR2, разница в длительности фронтов заметна, но работоспособности никак не сказывается.
Что касается Watchdog таймера, то он у меня отключен. Даже если бы он был включен, то при правильной работе сигналы на выходах портов все равно были бы видны, разница между периодом Watchdog таймера и цикла программы составляет несколько порядков.
Go to the top of the page
 
+Quote Post
topkin
сообщение May 20 2010, 13:06
Сообщение #13


Частый гость
**

Группа: Свой
Сообщений: 152
Регистрация: 21-12-05
Из: Москва
Пользователь №: 12 476



Уже лучше, ну если эти пины внешне не притянуты к земле или питанию, тогда мистика или что то не так с контроллером
Вообще, на этот раз, я отошел от своих принципов и использую предлагаемые библиотеки ST, в общем, солидарен с "Dog Pawlowa".

Сообщение отредактировал topkin - May 20 2010, 13:09
Go to the top of the page
 
+Quote Post
_Bill
сообщение May 20 2010, 13:23
Сообщение #14


Местный
***

Группа: Участник
Сообщений: 416
Регистрация: 18-04-06
Из: Челябинск
Пользователь №: 16 219



Цитата(topkin @ May 20 2010, 17:06) *
Уже лучше, ну если эти пины внешне не притянуты к земле или питанию, тогда мистика или что то не так с контроллером
Вообще, на этот раз, я отошел от своих принципов и использую предлагаемые библиотеки ST, в общем, солидарен с "Dog Pawlowa".

Только что попробовал другой контроллер, результат тот же самый. sad.gif
Go to the top of the page
 
+Quote Post
topkin
сообщение May 21 2010, 05:00
Сообщение #15


Частый гость
**

Группа: Свой
Сообщений: 152
Регистрация: 21-12-05
Из: Москва
Пользователь №: 12 476



Очень странно, где то трабл, чудес не бывает. Можете выложить полный код еще раз?
Go to the top of the page
 
+Quote Post
_Bill
сообщение May 21 2010, 05:13
Сообщение #16


Местный
***

Группа: Участник
Сообщений: 416
Регистрация: 18-04-06
Из: Челябинск
Пользователь №: 16 219



Цитата(topkin @ May 21 2010, 09:00) *
Очень странно, где то трабл, чудес не бывает. Можете выложить полный код еще раз?

Нет проблем
Код
    switch    .text
;
; ** InitPorts    -- функция инициализайии портов В/В
;
InitPorts:
    ld    a, #0FFh    ; Initiate ports
    ld    PB_DDR,    a        ;
    ld    PB_CR1,    a        ;
    ld    PD_DDR,    a        ;
    ld    PD_CR1,    a        ;
    ld    PD_CR2,    a        ;
;    ld    a, #LED_MASK ; Установить порт управления LED драйвером на вывод
;    ld    LED_DDR, a    ;
;    ld    LED_CR1, a    ; включить push-pull режим
;    clr    LED_PORT    ; Сбросить порт
    ret
;
; ***** main - головная функция *****
;
_main:
    ldw    x, #RAM_END    ; Инициализировать стек
    ldw    sp, x            ;
    bset    SWEN        ; Switch clock to HSE
    mov    CLK_SWR, #0xB4        ;
    callr    InitPorts    ; Инициализировать порты

1$:        ;;; Бесконечный цикл
;    btjf    TIM_05, 2$    ; Проверить флаг события и переход, если не установлен
;    bres    TIM_05        ; Сбросить флаг
;    callr    Bin2BCD        ; Преобразовать новое значение счетчикак для вывода
;2$:
;    callr    LEDout        ; Вывод значения счетчика на индикатор
    inc    PB_ODR        ; Use ports a a binary counter
    inc    PD_ODR            ;
;    bcpl    PB_ODR, #1
;    bcpl    PD_ODR, #1
;    bcpl    PD_ODR, #6
;    bres    PD_ODR, #0
    jra    1$;;;
Go to the top of the page
 
+Quote Post
Dog Pawlowa
сообщение May 21 2010, 05:53
Сообщение #17


Гуру
******

Группа: Свой
Сообщений: 2 702
Регистрация: 14-07-06
Пользователь №: 18 823



Вот мой "моргающий код" на библиотечных функциях.

Код
void main(void)
{    CLK_HSIPrescalerConfig(CLK_PRESCALER_HSIDIV1);
    GPIO_DeInit(GPIOD);
    GPIO_Init(GPIOD, GPIO_PIN_0, GPIO_MODE_OUT_PP_LOW_FAST);

  for (;;)
  {    GPIO_WriteReverse(GPIOD, GPIO_PIN_0);
  }
}


--------------------
Уходя, оставьте свет...
Go to the top of the page
 
+Quote Post
topkin
сообщение May 25 2010, 09:22
Сообщение #18


Частый гость
**

Группа: Свой
Сообщений: 152
Регистрация: 21-12-05
Из: Москва
Пользователь №: 12 476



Приболел, засем долго не появлялся.
Вы свою проблему так и не победили? Могу только высказать предположение. Максимальная частота изменения пина 10МГц. У вас другом за другомЭ, в общем цикле, идет инкрементирование счетчика(порта), может тут собака зарыта? Попробуйте "подергать" именно проблемными пинами через задежку. Если и это не поможет, то я не знаю даже....
Go to the top of the page
 
+Quote Post
_Bill
сообщение May 25 2010, 10:05
Сообщение #19


Местный
***

Группа: Участник
Сообщений: 416
Регистрация: 18-04-06
Из: Челябинск
Пользователь №: 16 219



Цитата(topkin @ May 25 2010, 13:22) *
Приболел, засем долго не появлялся.
Вы свою проблему так и не победили? Могу только высказать предположение. Максимальная частота изменения пина 10МГц. У вас другом за другомЭ, в общем цикле, идет инкрементирование счетчика(порта), может тут собака зарыта? Попробуйте "подергать" именно проблемными пинами через задежку. Если и это не поможет, то я не знаю даже....

Нет, проблема до сих пор не решена. Собрал вторую плату - ведет себя аналогично первой. Если говорить насчет частоты, то6 во-первых PORTD все-таки работает; во-вторых, изначально я пробовал запускать программу с внутренним генератором (16МГц / 8) и результат был тот же самый. Инкрементирование порта ни чем не отличается от инкрементирования любой другой ячейки памяти (в PIC, кстати сказать, сделано аналогично). Я пробовал по-разному изменять программу. Например, инкрементировал аккумулятор и результат пересылал в порт, инкрементировал один порт (неработающий) и результат пересылал в другой (работающий) порт. Абсолютно нет никакой разницы. Ни один порт толком не заработал.
В общем, пришел к выводу, что дело скорее всего не в программе, а именно в "железе". Правда, единственное в чем я отошел от рекомендаций фирмы, это величина емкости внешнего конденсатора. Фирма рекомендует значения 0.47 - 1.0 мкф. У меня стоит конденсатор номиналом 2.2 мкф. Есть призрачная надежда, что с заменой конденсатора все встанет на свои места. Но ...
Go to the top of the page
 
+Quote Post
topkin
сообщение May 25 2010, 11:45
Сообщение #20


Частый гость
**

Группа: Свой
Сообщений: 152
Регистрация: 21-12-05
Из: Москва
Пользователь №: 12 476



Цитата(_Bill @ May 25 2010, 14:05) *
Нет, проблема до сих пор не решена. Собрал вторую плату - ведет себя аналогично первой. Если говорить насчет частоты, то6 во-первых PORTD все-таки работает; во-вторых, изначально я пробовал запускать программу с внутренним генератором (16МГц / 8) и результат был тот же самый. Инкрементирование порта ни чем не отличается от инкрементирования любой другой ячейки памяти (в PIC, кстати сказать, сделано аналогично). Я пробовал по-разному изменять программу. Например, инкрементировал аккумулятор и результат пересылал в порт, инкрементировал один порт (неработающий) и результат пересылал в другой (работающий) порт. Абсолютно нет никакой разницы. Ни один порт толком не заработал.
В общем, пришел к выводу, что дело скорее всего не в программе, а именно в "железе". Правда, единственное в чем я отошел от рекомендаций фирмы, это величина емкости внешнего конденсатора. Фирма рекомендует значения 0.47 - 1.0 мкф. У меня стоит конденсатор номиналом 2.2 мкф. Есть призрачная надежда, что с заменой конденсатора все встанет на свои места. Но ...

Дам-с, выходит какие то проблемы с железом, поставка такая что ли, я с таким не сталкивался...
Go to the top of the page
 
+Quote Post
oll
сообщение May 25 2010, 20:23
Сообщение #21


Частый гость
**

Группа: Участник
Сообщений: 163
Регистрация: 10-10-05
Пользователь №: 9 463



Цитата(_Bill @ May 25 2010, 16:05) *
Нет, проблема до сих пор не решена. Собрал вторую плату - ведет себя аналогично первой.

2 _Bill может попробовать проверить железо на Си, а потом перейти к ассемблеру (можно и листинг подсмотреть). Аналогично Dog Pawlowa в IAR сделал пробный проектик моргания штатным светодиодом Discovery с использованием библиотек из примера - по прерыванию 2 таймера светодиодик исправно мигает. Ассемблер STM8 хорош, но на Си хороши и готовые библиотеки - не пришлось сильно копаться в даташите.
Go to the top of the page
 
+Quote Post
_Bill
сообщение May 26 2010, 16:53
Сообщение #22


Местный
***

Группа: Участник
Сообщений: 416
Регистрация: 18-04-06
Из: Челябинск
Пользователь №: 16 219



Цитата(oll @ May 26 2010, 00:23) *
2 _Bill может попробовать проверить железо на Си, а потом перейти к ассемблеру (можно и листинг подсмотреть). Аналогично Dog Pawlowa в IAR сделал пробный проектик моргания штатным светодиодом Discovery с использованием библиотек из примера - по прерыванию 2 таймера светодиодик исправно мигает. Ассемблер STM8 хорош, но на Си хороши и готовые библиотеки - не пришлось сильно копаться в даташите.

Делал я на Си. Попробовал IAR. Разницы абсолютно никакой нет.
Go to the top of the page
 
+Quote Post
topkin
сообщение May 27 2010, 07:09
Сообщение #23


Частый гость
**

Группа: Свой
Сообщений: 152
Регистрация: 21-12-05
Из: Москва
Пользователь №: 12 476



Проверил все пины D - порта, на своем ките, все работает. Что то у вас не то с партией наверное....
Go to the top of the page
 
+Quote Post
_Bill
сообщение May 27 2010, 18:35
Сообщение #24


Местный
***

Группа: Участник
Сообщений: 416
Регистрация: 18-04-06
Из: Челябинск
Пользователь №: 16 219



Цитата(topkin @ May 27 2010, 11:09) *
Проверил все пины D - порта, на своем ките, все работает. Что то у вас не то с партией наверное....

В партии еще осталось 8 штук. Что-то не хочется их все запаивать.
А какой контроллер у вас? Может свой код выложите?
Go to the top of the page
 
+Quote Post
topkin
сообщение May 28 2010, 04:52
Сообщение #25


Частый гость
**

Группа: Свой
Сообщений: 152
Регистрация: 21-12-05
Из: Москва
Пользователь №: 12 476



Контроллер у меня STM8S105C6T6. Я предпочитаю использовать готовые библиотеки, но для вашего случая написал на прямую с регистрами, для более понятного восприятия. Код до безобразия прост, все в одном файле)
Код
/* MAIN.C file
*
* Copyright (c) 2002-2005 STMicroelectronics
*/

#include "STM8S105C6.h"

void GPIO_Conf(void)
{
    PD_DDR = 0xFF;            // all PD pins as output
    PD_CR1 = 0xFF;            // all PD pins output push pull
    PD_CR2 = 0;                    // all PD pins speed 2MHz
    PD_ODR = 0;                    // all set to 0
}


void main()
{
    unsigned long int i;
    
    GPIO_Conf();
    while (1)
    {
        for(i = 0; i < 10000; i++);
            PD_ODR = PD_ODR ^ 0xFF;
    }
}
Go to the top of the page
 
+Quote Post
_Bill
сообщение May 28 2010, 05:31
Сообщение #26


Местный
***

Группа: Участник
Сообщений: 416
Регистрация: 18-04-06
Из: Челябинск
Пользователь №: 16 219



Цитата(topkin @ May 28 2010, 08:52) *
Код до безобразия прост, все в одном файле)

Попробовал как у вас. Никаких изменений. Уже не знаю что и делать.

Сообщение отредактировал rezident - May 28 2010, 23:53
Причина редактирования: Нарушение п.3.4 Правил форума.
Go to the top of the page
 
+Quote Post
topkin
сообщение May 28 2010, 05:49
Сообщение #27


Частый гость
**

Группа: Свой
Сообщений: 152
Регистрация: 21-12-05
Из: Москва
Пользователь №: 12 476



Даааа, причина должна быть, чудес не бывает. А больше вариантов никаких нет? Проблема только с этим железом или другие мк от STM8 вы не пробывали? Прям мистика какае то. жаль что вы из другого города, я бы вам дал свой кит для теста, или подарил) второй такой же подаренный лежит без толку)

Сообщение отредактировал topkin - May 28 2010, 05:53
Go to the top of the page
 
+Quote Post
_Bill
сообщение May 28 2010, 13:08
Сообщение #28


Местный
***

Группа: Участник
Сообщений: 416
Регистрация: 18-04-06
Из: Челябинск
Пользователь №: 16 219



Цитата(topkin @ May 28 2010, 09:49) *
Даааа, причина должна быть, чудес не бывает. А больше вариантов никаких нет? Проблема только с этим железом или другие мк от STM8 вы не пробывали? Прям мистика какае то. жаль что вы из другого города, я бы вам дал свой кит для теста, или подарил) второй такой же подаренный лежит без толку)

Нет, других МК пока нет. Жду когда появится STM8S Discovery в "Промэлектроника".
Go to the top of the page
 
+Quote Post
_Bill
сообщение Jun 23 2010, 09:27
Сообщение #29


Местный
***

Группа: Участник
Сообщений: 416
Регистрация: 18-04-06
Из: Челябинск
Пользователь №: 16 219



Цитата(_Bill @ May 28 2010, 17:08) *
Нет, других МК пока нет. Жду когда появится STM8S Discovery в "Промэлектроника".

В общем, дело такое. Прошил свою программу в STM8S Discovery. Все работает нормально. Так что, похоже, все упирается в STM8S103K6 (в Discovery стоит STM8S105C6). Или нет?
Go to the top of the page
 
+Quote Post
dimka76
сообщение Jun 23 2010, 11:23
Сообщение #30


developer
****

Группа: Свой
Сообщений: 902
Регистрация: 12-04-06
Из: Казань
Пользователь №: 16 032



Цитата(_Bill @ Jun 23 2010, 13:27) *
В общем, дело такое. Прошил свою программу в STM8S Discovery. Все работает нормально.


А чем вы прошивали контроллер до появления у вас STM8S-Discovery ?


--------------------
Все может быть и быть все может, и лишь того не может быть-чего уж точно быть не может, хотя..и это может быть.
Go to the top of the page
 
+Quote Post
_Bill
сообщение Jun 23 2010, 15:28
Сообщение #31


Местный
***

Группа: Участник
Сообщений: 416
Регистрация: 18-04-06
Из: Челябинск
Пользователь №: 16 219



Цитата(dimka76 @ Jun 23 2010, 15:23) *
А чем вы прошивали контроллер до появления у вас STM8S-Discovery ?

ST_Link
Go to the top of the page
 
+Quote Post
fmdost
сообщение Jun 23 2010, 23:23
Сообщение #32


Местный
***

Группа: Свой
Сообщений: 479
Регистрация: 8-05-07
Из: г. Ставрополь. Северный Кавказ. Россия
Пользователь №: 27 606



Цитата(_Bill @ May 25 2010, 14:05) *
В общем, пришел к выводу, что дело скорее всего не в программе, а именно в "железе". Правда, единственное в чем я отошел от рекомендаций фирмы, это величина емкости внешнего конденсатора. Фирма рекомендует значения 0.47 - 1.0 мкф. У меня стоит конденсатор номиналом 2.2 мкф. Есть призрачная надежда, что с заменой конденсатора все встанет на свои места. Но ...


2.2 мкф керамика 0805 y5v?
Если да то надо заменить на электролит аналогичной ёмкости + керамику на 0.1. Звенят эти чЮдоконденсаторы(0805) на мегагерце, ничуть не хуже кварцев cranky.gif.
Go to the top of the page
 
+Quote Post
_Bill
сообщение Jun 24 2010, 02:13
Сообщение #33


Местный
***

Группа: Участник
Сообщений: 416
Регистрация: 18-04-06
Из: Челябинск
Пользователь №: 16 219



Цитата(Т.Достоевский @ Jun 24 2010, 03:23) *
2.2 мкф керамика 0805 y5v?
Если да то надо заменить на электролит аналогичной ёмкости + керамику на 0.1. Звенят эти чЮдоконденсаторы(0805) на мегагерце, ничуть не хуже кварцев cranky.gif.

У меня стоят танталовые чип. Емкость пробовал ставить и 2.2, и 1.0. Разницы никакой нет.
Go to the top of the page
 
+Quote Post
topkin
сообщение Jun 24 2010, 04:38
Сообщение #34


Частый гость
**

Группа: Свой
Сообщений: 152
Регистрация: 21-12-05
Из: Москва
Пользователь №: 12 476



Цитата(_Bill @ Jun 23 2010, 13:27) *
В общем, дело такое. Прошил свою программу в STM8S Discovery. Все работает нормально. Так что, похоже, все упирается в STM8S103K6 (в Discovery стоит STM8S105C6). Или нет?

Да, в моих двух экземплярах STM8S - DISCOVERY стоит именно STM8S105C6, думаю и у вас тоже, чай на одной китайской фабрике сделаны. Судя по всему дело было в контроллере, хотя очень странно это все, мне как то слабо верится)
Go to the top of the page
 
+Quote Post
Peps
сообщение Jul 9 2010, 06:37
Сообщение #35


Частый гость
**

Группа: Участник
Сообщений: 183
Регистрация: 12-01-10
Из: Минск
Пользователь №: 54 745



Мельком просматривая Ваш код (в ассемблере ST8S не силен) обратил внимание, что Вы используете таймер 5, которого в микроконтроллере STM8S103K просто нету (смотрел даташит).
Может быть это как то влияет на работоспособность вашей программы.
Сам сейчас пишу библиотеки инициализации и отлаживаюсь на Discovery но с расчетом на 103 контроллеры, которые буду использовать. Поэтому Ваша проблема меня насторожила.
Go to the top of the page
 
+Quote Post
_Bill
сообщение Jul 9 2010, 07:14
Сообщение #36


Местный
***

Группа: Участник
Сообщений: 416
Регистрация: 18-04-06
Из: Челябинск
Пользователь №: 16 219



Цитата(Peps @ Jul 9 2010, 09:37) *
Мельком просматривая Ваш код (в ассемблере ST8S не силен) обратил внимание, что Вы используете таймер 5, которого в микроконтроллере STM8S103K просто нету (смотрел даташит).
Может быть это как то влияет на работоспособность вашей программы.
Сам сейчас пишу библиотеки инициализации и отлаживаюсь на Discovery но с расчетом на 103 контроллеры, которые буду использовать. Поэтому Ваша проблема меня насторожила.

Кому вопрос? Если - мне, то я таймер вообще не использую.
Go to the top of the page
 
+Quote Post
ведущий_специали...
сообщение Jul 16 2010, 16:02
Сообщение #37


Участник
*

Группа: Участник
Сообщений: 44
Регистрация: 24-11-07
Пользователь №: 32 645



Всем привет. Решил прицепить часы реального времени ds1338 к stm8s105c4. Платка самодельная, на ней успешно работает SPI и шим. С I2C получилась проблема. Кое как контроллер все таки начал писать в дску данные. При считывании контроллер висит. При отладке посмотрел что ждет event события. Осцил показывает что sda в нуле. I2C использую аппаратный, причем в "фузах" прошил ремап на другие ноги порта. Всю голову изломал, уже готов сделать все на программном i2c, но движет какой то спортивный интерес.
Прилагаю кусок кода....
Код
void Init_I2C(void)
{


    I2C_Init(400000, 0xD0, I2C_DUTYCYCLE_2, I2C_ACK_CURR, I2C_ADDMODE_7BIT, (u8)16 );

}


//=============Читаем И2ц Часы =========================
unsigned char ds_read(unsigned char address)
{
unsigned char data;
/* генерируем start & ожидаем event detection */
        I2C_GenerateSTART(ENABLE); // i2c_start();
        while (!I2C_CheckEvent(I2C_EVENT_MASTER_START_SENT));   // тут уже висим.......
    
        I2C_Send7bitAddress(0xD0, I2C_DIRECTION_TX);
        while (!I2C_CheckEvent(I2C_EVENT_MASTER_ADDRESS_ACKED));
        I2C_ClearFlag(I2C_FLAG_ADDRESSSENTMATCHED); // i2c_write(0xD0);
        
         I2C_SendData(address);
         while (!I2C_CheckEvent(I2C_EVENT_MASTER_BYTE_TRANSMITTED)); // i2c_write(address);

         I2C_GenerateSTART(ENABLE);
         while (!I2C_CheckEvent(I2C_EVENT_MASTER_START_SENT));      // i2c_start(); (повторный старт)
        
        
         I2C_Send7bitAddress(0xD0, I2C_DIRECTION_RX);
         while (!I2C_CheckEvent(I2C_EVENT_MASTER_ADDRESS_ACKED));
         I2C_ClearFlag(I2C_FLAG_ADDRESSSENTMATCHED);  //       i2c_write(0xD1); (читаем)

          while (!I2C_CheckEvent(I2C_EVENT_MASTER_BYTE_RECEIVED));
         data = I2C_ReceiveData(); //data=i2c_read(0);
        
        I2C_GenerateSTOP(ENABLE); // i2c_stop();
        return data;
}

//======================Пишем в И2ц Часы ================ (вроде как работает)
void ds_write(unsigned char address, unsigned char data)
{
        I2C_GenerateSTART(ENABLE); // i2c_start();
        while (!I2C_CheckEvent(I2C_EVENT_MASTER_START_SENT)); //
        // I2C_SendData(0xd0);
        // while (!I2C_CheckEvent(I2C_EVENT_MASTER_BYTE_TRANSMITTED)); // i2c_write(address);
        
        I2C_Send7bitAddress(0xD0, I2C_DIRECTION_TX);
        while (!I2C_CheckEvent(I2C_EVENT_MASTER_ADDRESS_ACKED));
        I2C_ClearFlag(I2C_FLAG_ADDRESSSENTMATCHED); // i2c_write(0xD0);
        
        I2C_SendData(address);
        while (!I2C_CheckEvent(I2C_EVENT_MASTER_BYTE_TRANSMITTED)); // i2c_write(address);
        
        I2C_SendData(data);
        while (!I2C_CheckEvent(I2C_EVENT_MASTER_BYTE_TRANSMITTED)); // i2c_write(data);
        
        I2C_GenerateSTOP(ENABLE); // i2c_stop();

}

void write_time_ds (void)
{
  ds_write(0x00, s);  
  ds_write(0x01, m);
  ds_write(0x02, h);
}


void  get_time_ds(void)
{
  //  
  //
  s = ds_read(0x00);
  m = ds_read(0x01);
  h = ds_read(0x02);
}
проверяю так, сперва вызываю write_time_ds(); потом пытаюсь читать get_time_ds();
вобщем ваши мнения господа
Go to the top of the page
 
+Quote Post
ведущий_специали...
сообщение Jul 19 2010, 17:37
Сообщение #38


Участник
*

Группа: Участник
Сообщений: 44
Регистрация: 24-11-07
Пользователь №: 32 645



Всем спасибо за ответы....Разобрался сам. Надо перед стоп было ставить NACK
Go to the top of the page
 
+Quote Post
Stanislav_S
сообщение Jul 20 2010, 14:50
Сообщение #39


извечный пессимист
*****

Группа: Свой
Сообщений: 1 113
Регистрация: 9-10-06
Из: Днепропетровск
Пользователь №: 21 125



Начал мучать потихоньку DISCОVERY, работаю с IAR, создал два проекта - один с использованием стандартной библиотеки периферии, другой без нее - так сказать все руками smile.gif Решил запустить таймер номер 4 и поморгать светодиодиком, однако что то нифига не получается ни руками ни с использованием библиотеки, нет ли у кого примера работы с таймером 4? А то весь моск сломал, но чего то не идет smile3046.gif


--------------------
Slaves are those of this world
Given freedom to lay chains upon The Master
The wolf is no longer free
Release the chains and come for me
Go to the top of the page
 
+Quote Post
oll
сообщение Jul 20 2010, 17:42
Сообщение #40


Частый гость
**

Группа: Участник
Сообщений: 163
Регистрация: 10-10-05
Пользователь №: 9 463



Цитата(Stanislav_S @ Jul 20 2010, 20:50) *
Начал мучать потихоньку DISCОVERY, работаю с IAR, создал два проекта - один с использованием стандартной библиотеки периферии, другой без нее - так сказать все руками smile.gif Решил запустить таймер номер 4 и поморгать светодиодиком, однако что то нифига не получается ни руками ни с использованием библиотеки, нет ли у кого примера работы с таймером 4? А то весь моск сломал, но чего то не идет smile3046.gif

для второго таймера не пойдет?

Прикрепленные файлы
Прикрепленный файл  Probe.zip ( 203.06 килобайт ) Кол-во скачиваний: 59
 
Go to the top of the page
 
+Quote Post
topkin
сообщение Jul 21 2010, 04:50
Сообщение #41


Частый гость
**

Группа: Свой
Сообщений: 152
Регистрация: 21-12-05
Из: Москва
Пользователь №: 12 476



Цитата(Stanislav_S @ Jul 20 2010, 18:50) *
Начал мучать потихоньку DISCОVERY, работаю с IAR, создал два проекта - один с использованием стандартной библиотеки периферии, другой без нее - так сказать все руками smile.gif Решил запустить таймер номер 4 и поморгать светодиодиком, однако что то нифига не получается ни руками ни с использованием библиотеки, нет ли у кого примера работы с таймером 4? А то весь моск сломал, но чего то не идет smile3046.gif


Один из первых проектов под дискавери, используется таймер 2, зажигает светодиод с частотой 1Гц по прерыванию с использованием библиотек ST. Правда использовался STVD + компилятор от raisonance. С cosmic тоже где то есть, разницы там почти нет, но искать лень. Подогнать под IAR проблем не составит.

Сообщение отредактировал topkin - Jul 21 2010, 04:51
Прикрепленные файлы
Прикрепленный файл  TIM2.ZIP ( 371.75 килобайт ) Кол-во скачиваний: 58
 
Go to the top of the page
 
+Quote Post
Stanislav_S
сообщение Jul 21 2010, 07:53
Сообщение #42


извечный пессимист
*****

Группа: Свой
Сообщений: 1 113
Регистрация: 9-10-06
Из: Днепропетровск
Пользователь №: 21 125



Ок спасибо, помучаю таймер номер 2, хотя все таки хотелось 4, поскольку из доки нифига не ясно как оно работает, дока пока только удручает своей лаконичностью 07.gif , а за примеры спасибо, буду ломать моск дальше smile.gif


--------------------
Slaves are those of this world
Given freedom to lay chains upon The Master
The wolf is no longer free
Release the chains and come for me
Go to the top of the page
 
+Quote Post
topkin
сообщение Jul 21 2010, 09:27
Сообщение #43


Частый гость
**

Группа: Свой
Сообщений: 152
Регистрация: 21-12-05
Из: Москва
Пользователь №: 12 476



Цитата(Stanislav_S @ Jul 21 2010, 11:53) *
Ок спасибо, помучаю таймер номер 2, хотя все таки хотелось 4, поскольку из доки нифига не ясно как оно работает, дока пока только удручает своей лаконичностью 07.gif , а за примеры спасибо, буду ломать моск дальше smile.gif

Так с TIM4 должно быть еще проще, ибо он 8-ми разрядный. Что касаемо док от ST то это да, особенно после атмела было тяжко). Но я сейчас привык и кажется что удобно и понятно) Что касаемо микроконтроллеров, то вам нужно 2 доки, одна - по сути саммари конкретно на чип с его характеристиками, а вторая более подробная - reference manual, где подробно расписана вся периферия и прочее.... Удачного освоения

Вот код мерцания светодиодом по прерыванию TIM4, за 5 минут написал, так что не пинайте сильно. Сам проект под STVD + raisonance в прикрепленных файлах. Частота мерцания правда чуть больше герца, с делителями баловаться не стал)
Функция main:
Код
/* MAIN.C file
*
* Copyright (c) 2010, topkin
*/
#include "stm8s.h"

#define LED1             GPIO_PIN_0
#define _1Hz_LSI         0xFE


//*******************************************************************************
//                                                                     Main function
//*******************************************************************************
main()
{
    
    // 1. Initialize HSI CLK
    CLK_DeInit();                                                                                                                                        // after reset Fclk = HSI / 8 = 2MHz
        //CLK_HSIPrescalerConfig(CLK_PRESCALER_HSIDIV1);    //set prescaler
    CLK_ClockSwitchConfig(CLK_SWITCHMODE_AUTO, CLK_SOURCE_LSI, DISABLE, DISABLE);        // set to LSI

    // 3. GPIO config
    GPIO_DeInit(GPIOD);
        // Configure PD0 (LED1) as output push-pull low (led switched on)
    GPIO_Init(GPIOD, GPIO_PIN_0, GPIO_MODE_OUT_PP_LOW_FAST);
    
    // 4. TIM4 initialization
    TIM4_DeInit();
    CLK_PeripheralClockConfig(CLK_PERIPHERAL_TIMER4, ENABLE);
    TIM4_TimeBaseInit(TIM4_PRESCALER_128,_1Hz_LSI);
    TIM4_SetAutoreload(_1Hz_LSI);
    TIM4_ITConfig(TIM4_IT_UPDATE, ENABLE);
    TIM4_Cmd(ENABLE);
    
    enableInterrupts();
    
    // Main loop
    while (1){
        
    };
    
}


И прерывание:

Код
void IRQ23Handler (void) interrupt 23
{
    GPIO_WriteReverse(GPIOD, GPIO_PIN_0);                // Blink LED1
    TIM4_ClearITPendingBit(TIM4_IT_UPDATE);
}


Сообщение отредактировал topkin - Jul 21 2010, 09:29
Прикрепленные файлы
Прикрепленный файл  BlinkLED.zip ( 346.99 килобайт ) Кол-во скачиваний: 47
 
Go to the top of the page
 
+Quote Post
Stanislav_S
сообщение Jul 21 2010, 09:43
Сообщение #44


извечный пессимист
*****

Группа: Свой
Сообщений: 1 113
Регистрация: 9-10-06
Из: Днепропетровск
Пользователь №: 21 125



Ага спасибо заработало, все оказалось просто smile.gif Буду мучать дальше, а вот библиотека их ненравится, больно код пухлый получается, поэтому лучше руками делать ИМХО.


--------------------
Slaves are those of this world
Given freedom to lay chains upon The Master
The wolf is no longer free
Release the chains and come for me
Go to the top of the page
 
+Quote Post
topkin
сообщение Jul 21 2010, 09:57
Сообщение #45


Частый гость
**

Группа: Свой
Сообщений: 152
Регистрация: 21-12-05
Из: Москва
Пользователь №: 12 476



Цитата(Stanislav_S @ Jul 21 2010, 13:43) *
Ага спасибо заработало, все оказалось просто smile.gif Буду мучать дальше, а вот библиотека их ненравится, больно код пухлый получается, поэтому лучше руками делать ИМХО.

Не за что. Библиотека - согласен, мне тоже не нравится, как более плотно сяду на STM8, так я ее под себя перепишу
Go to the top of the page
 
+Quote Post
Linker
сообщение Jul 22 2010, 15:51
Сообщение #46


Местный
***

Группа: Свой
Сообщений: 210
Регистрация: 15-01-08
Из: Новосибирск
Пользователь №: 34 105



На самом деле разбираться с данным процем по имеющейся документации сложновато - очень много букаф. Пытаюсь разобраться как работает железо используя дизасемблированнный СИ код, однако следовать по лабиринтам сотворенного компилятором кода не хватает сил.
Пытался понять как происходит моргание диодом - замаялся ходить по бесконечным переходам и вызовам подпрограм. Зачем столько кода для такой простой операции? В чем смысл? Может СИшный компилятор так многочисленные железячные баги обходит? Может кто объяснит популярно?


--------------------
Я здесь и сейчас...
Go to the top of the page
 
+Quote Post
IGK
сообщение Jul 22 2010, 16:42
Сообщение #47


Местный
***

Группа: Свой
Сообщений: 313
Регистрация: 7-01-07
Из: Севастополь
Пользователь №: 24 170



Цитата(Linker @ Jul 22 2010, 18:51) *
...однако следовать по лабиринтам сотворенного компилятором кода не хватает сил.

Ну, слава Богу! Думал, один я такой тупой:-) Уже с понедельника не могу разобраться с работой сенсорной кнопки - именно по причине того, что засыпаю над ассемблером:-) Правда, сижу за компом по вечерам, после работы на корабле. А там работа то вприсядку, то вприпрыжку:-)
Не думаю, что это попытка замылить что-то не работающее в камне. Скорее, стиль программирования такой.
Но лично для себя уже решил - в пень их библиотеки, буду писать свой код с нуля, по даташиту. Долго, но хоть ошибки свои будут... Типа как я взял с avrfreaks умножение 16х24 для ЦФ и потом много месяцев искал ошибки в алгоритме. А это ассемблерная вставка врала, но только при определенных значениях множителей и не так часто:-( Пока я не догадался устроить тотальную проверку (умножением в столбик). Это первый и, надеюсь, последний раз, когда я пользовался чужими подпрограммами. И написал бы это умножение за час-другой, да лень было. Что, кстати, и пришлось сделать в конце-концов.
Go to the top of the page
 
+Quote Post
Dog Pawlowa
сообщение Jul 22 2010, 17:09
Сообщение #48


Гуру
******

Группа: Свой
Сообщений: 2 702
Регистрация: 14-07-06
Пользователь №: 18 823



Цитата(IGK @ Jul 22 2010, 19:42) *
Ну, слава Богу! Думал, один я такой тупой:-) Уже с понедельника не могу разобраться с работой сенсорной кнопки

По информации о работе сенсорных кнопок от других производителей, это весьма непростое дело.
Может, не стоит тратить время? wink.gif


--------------------
Уходя, оставьте свет...
Go to the top of the page
 
+Quote Post
topkin
сообщение Jul 23 2010, 04:46
Сообщение #49


Частый гость
**

Группа: Свой
Сообщений: 152
Регистрация: 21-12-05
Из: Москва
Пользователь №: 12 476



Цитата(Linker @ Jul 22 2010, 19:51) *
На самом деле разбираться с данным процем по имеющейся документации сложновато - очень много букаф. Пытаюсь разобраться как работает железо используя дизасемблированнный СИ код, однако следовать по лабиринтам сотворенного компилятором кода не хватает сил.
Пытался понять как происходит моргание диодом - замаялся ходить по бесконечным переходам и вызовам подпрограм. Зачем столько кода для такой простой операции? В чем смысл? Может СИшный компилятор так многочисленные железячные баги обходит? Может кто объяснит популярно?

Вы имеете ввиду моргание светодиодом по срабатыванию сенсорной кнопки? Я тоже посмотрел тач сенс пример, в общем и целом стало понятно как оно работает, но до мелочей докапываться не стал, ибо времени нет) Кстати, что за Си - компилятор?
Go to the top of the page
 
+Quote Post
IGK
сообщение Jul 23 2010, 05:14
Сообщение #50


Местный
***

Группа: Свой
Сообщений: 313
Регистрация: 7-01-07
Из: Севастополь
Пользователь №: 24 170



Цитата(Dog Pawlowa @ Jul 22 2010, 20:09) *
По информации о работе сенсорных кнопок от других производителей, это весьма непростое дело.
Может, не стоит тратить время? wink.gif

Я просто хотел убедиться, что кнопки и от СТМ боятся влаги и пота. Решил, для начала, разобраться с алгоритмом. Потом тестовую платку из 4-х кнопок сварганить. А тут такой облом - вызов на вызове, голова пухнет. Хотя, глядя на картинки из док, и не скажешь, что сложный алгоритм.
Да ну их, эти сенсоры. Оставлю кнопки, как было. Тем более, все таймеры, кроме 4-го, заняты под ШИМы.
Ладно, займусь сравнением "пухлости" кода фильтров. Пока не имею понятия, насколько будет оптимален 40-битный МАС по объему кода и скорости. Значит, опять ассемблер рассматривать. А вокруг лето, море. Девушки на пляже, наверное, как минимум топлесс. Но я там еще не был в этом году...

Цитата(topkin @ Jul 23 2010, 07:46) *
Кстати, что за Си - компилятор?

Пока космик. То, что скачал с примерами.
Но у меня фильтры реализованы на ассемблере, так как не смог уместить 4 ФНЧ2 и 4 ПФ1 в 16-ю мегу. МАС 16х24=40 бит, это оптимально для моего сигнала. На первый взгляд камешек не настолько шустрый, чтобы здесь обойтись без ассемблера. И вообще пока непонятно, как в него все упихать :-) Я ведь стал присматриваться к СТМ8 по простой причине: нужно малое потребление (батарейное питание), нужен дешевый, не слишком точный и многоразрядный АЦП. 18 разрядов, как минимум. Тут хорошо работает связка ЦАП-АЦП, с оверсемплингом можно получить 19-20 бит. Это все есть на борту, и за смешные деньги. И место должно все это занимать как можно меньше. На отдельных микрухах никак не складывалось, чего только я туда не тыкал... То АЦП дорогой, то быстродействие маловато, то ЦАПа дешевого не купить. Там, где это в одном флаконе, так флакон дорогущий и поставки на Украину проблематичны. А тут в свободной продаже и недорого:-)
Но, как всегда - только начал им заниматься, как один за другим начали выходить из строя разные приборы. Жара в этом году несусветная. 2012 и не дождемся, наверное...
Go to the top of the page
 
+Quote Post
vasily777
сообщение Jul 23 2010, 11:14
Сообщение #51





Группа: Участник
Сообщений: 3
Регистрация: 11-05-08
Пользователь №: 37 408



Цитата(Dog Pawlowa @ Jul 22 2010, 23:09) *
По информации о работе сенсорных кнопок от других производителей, это весьма непростое дело.
Может, не стоит тратить время? wink.gif


Кто тестил сенсорную библиотеку от ST напишите насколько стабильно работает?
Необходимо сделать пару сенсорных кнопок. Вчера запустил сенсорные кнопки
на либе qtouch от avr. Работает очень стабильно (ложняк получилось создать только налив приличное количество воды на кнопки).
Но библиотека использует первый таймер который нужен (нужен 12-ти разрядный шим).
С таймерами в stm8 получше. Но ревизия библиотеки 1.0.3 от st против 4 версии атмела склоняет в сторону последнего.

Сообщение отредактировал vasily777 - Jul 23 2010, 11:16
Go to the top of the page
 
+Quote Post
Stanislav_S
сообщение Jul 23 2010, 12:43
Сообщение #52


извечный пессимист
*****

Группа: Свой
Сообщений: 1 113
Регистрация: 9-10-06
Из: Днепропетровск
Пользователь №: 21 125



Такая ситуация, приехал фирменный ST-LINK из Китая, с ним идет диск с ПО, однако на этом диске никаких дров к нему не идет, а проблема вот в чем, есть STM8S-DISCOVERY через него все шьется и отлаживается, при подключении ST-LINK к целевой плате, не удается прошить проц, пишет данного проца нет в списке, прошиваю прямо из IAR, такое впечатление что там прошита версия только под STM32, вопрос как добраться до версии прошивки и как обновить прошивку? Вроде как на диске что шел STM8S-DISCOVERY, была какя то утилита для работы с линком, но диск к сожалению где то ушел, поэтому нужна помощь клуба.
PS Couldn't find STM8S103K3 in the list of supported MCUs. - то что пишется во время отладки.


--------------------
Slaves are those of this world
Given freedom to lay chains upon The Master
The wolf is no longer free
Release the chains and come for me
Go to the top of the page
 
+Quote Post
IGK
сообщение Jul 23 2010, 13:52
Сообщение #53


Местный
***

Группа: Свой
Сообщений: 313
Регистрация: 7-01-07
Из: Севастополь
Пользователь №: 24 170



Цитата(Stanislav_S @ Jul 23 2010, 15:43) *
Вроде как на диске что шел STM8S-DISCOVERY, была какя то утилита для работы с линком, но диск к сожалению где то ушел, поэтому нужна помощь клуба.


Есть только stlinkupgrade, там внутри длл-ка и экзешник. Где брал, не помню.

Сейчас глянул на фтп - там нет. Положил stlinkupgrade.zip в /upload/mcs/stm8
Go to the top of the page
 
+Quote Post
Stanislav_S
сообщение Jul 23 2010, 14:26
Сообщение #54


извечный пессимист
*****

Группа: Свой
Сообщений: 1 113
Регистрация: 9-10-06
Из: Днепропетровск
Пользователь №: 21 125



Ага спасибо, проверил прошивку, прошивка вроде как надо, но вот незадача шить все равно отказывается, упорно выводит - Fri Couldn't find STM8S103K3 in the list of supported MCUs, эх наверно прийдется DISCOVERY ломать, потому как непонятно в чем проблема 07.gif Может кто встречался с такой проблемой?
ЗЫ Забыл сказать, работаю с IAR.


--------------------
Slaves are those of this world
Given freedom to lay chains upon The Master
The wolf is no longer free
Release the chains and come for me
Go to the top of the page
 
+Quote Post
Xenia
сообщение Jul 23 2010, 15:59
Сообщение #55


Гуру
******

Группа: Модератор FTP
Сообщений: 4 479
Регистрация: 20-02-08
Из: Москва
Пользователь №: 35 237



Цитата(Stanislav_S @ Jul 23 2010, 17:26) *
...вот незадача шить все равно отказывается...
ЗЫ Забыл сказать, работаю с IAR.

А вы патчи к нему прикладывали? http://supp.iar.com/Updates/?product=EWSTM8
Go to the top of the page
 
+Quote Post
Stanislav_S
сообщение Jul 23 2010, 16:22
Сообщение #56


извечный пессимист
*****

Группа: Свой
Сообщений: 1 113
Регистрация: 9-10-06
Из: Днепропетровск
Пользователь №: 21 125



Цитата(Xenia @ Jul 23 2010, 19:59) *
А вы патчи к нему прикладывали? http://supp.iar.com/Updates/?product=EWSTM8

В принципе ставил, единственное второй сервис пак не ставил, ставил первый и третий.


--------------------
Slaves are those of this world
Given freedom to lay chains upon The Master
The wolf is no longer free
Release the chains and come for me
Go to the top of the page
 
+Quote Post
IGK
сообщение Jul 23 2010, 17:26
Сообщение #57


Местный
***

Группа: Свой
Сообщений: 313
Регистрация: 7-01-07
Из: Севастополь
Пользователь №: 24 170



Цитата(Stanislav_S @ Jul 23 2010, 17:26) *
эх наверно прийдется DISCOVERY ломать

Фи, как грубо! Там же есть такие блямбы припоя - чтобы не ломать ея.
Go to the top of the page
 
+Quote Post
Stanislav_S
сообщение Jul 23 2010, 17:37
Сообщение #58


извечный пессимист
*****

Группа: Свой
Сообщений: 1 113
Регистрация: 9-10-06
Из: Днепропетровск
Пользователь №: 21 125



Цитата(IGK @ Jul 23 2010, 21:26) *
Фи, как грубо! Там же есть такие блямбы припоя - чтобы не ломать ея.

Ага SB1, SB2 уже посмотрел, так что ломать не надо smile.gif В понедельник буду распаивать и пробовать, кто виноват программатор или я кривую плату сделал smile.gif


--------------------
Slaves are those of this world
Given freedom to lay chains upon The Master
The wolf is no longer free
Release the chains and come for me
Go to the top of the page
 
+Quote Post
ведущий_специали...
сообщение Jul 23 2010, 18:25
Сообщение #59


Участник
*

Группа: Участник
Сообщений: 44
Регистрация: 24-11-07
Пользователь №: 32 645



Цитата(Stanislav_S @ Jul 23 2010, 18:26) *
Ага спасибо, проверил прошивку, прошивка вроде как надо, но вот незадача шить все равно отказывается, упорно выводит - Fri Couldn't find STM8S103K3 in the list of supported MCUs, эх наверно прийдется DISCOVERY ломать, потому как непонятно в чем проблема 07.gif Может кто встречался с такой проблемой?
ЗЫ Забыл сказать, работаю с IAR.

Не понял вопроса. Ст линк не может увидеть ваш 103й камушек или дискавери?

Сообщение отредактировал ведущий_специалист - Jul 23 2010, 18:32
Go to the top of the page
 
+Quote Post
ArtemDement
сообщение Jul 24 2010, 04:13
Сообщение #60


Местный
***

Группа: Свой
Сообщений: 446
Регистрация: 19-09-09
Из: Санкт-Петербург
Пользователь №: 52 460



Уважаемые, при 16 МГц насколько горячим должен быть корпус микроконтроллера ?
Go to the top of the page
 
+Quote Post
_Bill
сообщение Jul 24 2010, 04:55
Сообщение #61


Местный
***

Группа: Участник
Сообщений: 416
Регистрация: 18-04-06
Из: Челябинск
Пользователь №: 16 219



Цитата(ArtemDement @ Jul 24 2010, 08:13) *
Уважаемые, при 16 МГц насколько горячим должен быть корпус микроконтроллера ?

У меня он вообще-то холодный.
Go to the top of the page
 
+Quote Post
ArtemDement
сообщение Jul 24 2010, 05:11
Сообщение #62


Местный
***

Группа: Свой
Сообщений: 446
Регистрация: 19-09-09
Из: Санкт-Петербург
Пользователь №: 52 460



Частота какая ?
Go to the top of the page
 
+Quote Post
IGK
сообщение Jul 24 2010, 15:27
Сообщение #63


Местный
***

Группа: Свой
Сообщений: 313
Регистрация: 7-01-07
Из: Севастополь
Пользователь №: 24 170



Цитата(ArtemDement @ Jul 24 2010, 08:11) *
Частота какая ?

Как положено, 16 МГц. Если греется - ищите кз на плюс/землю. В мегах увеличение тока на 10-15 ма означало замыкание одной ноги. Несколько - до 20 ма. Тогда немного грелась.
У меня потребление по +3.3В для 8S - 12-18ма, в зависимости от включенной периферии. 8L - до 8 ма. Греться вроде нечему. Но это пока прикидочно, ибо не все еще включал.
Ну, и еще от распальцовки зависит, при ощупывании кристалла :-)
Go to the top of the page
 
+Quote Post
ArtemDement
сообщение Jul 24 2010, 16:24
Сообщение #64


Местный
***

Группа: Свой
Сообщений: 446
Регистрация: 19-09-09
Из: Санкт-Петербург
Пользователь №: 52 460



Нагрев серьезный - не больше 5 секунд пальцем можно держать поверхностность контроллера.
Но вроде разобрался с проблемой.
Питание на stm8-discovery подавал напрямую с импульсного стабилизатора BP5225 (не пропуская через линейный стабилизатор, что есть на плате)
http://www.rohm.com/products/databook/pm/pdf/bp5225.pdf
При питании от USB не греется.
Наверное, BP5225 шумит слишком.

Сообщение отредактировал ArtemDement - Jul 24 2010, 16:26
Go to the top of the page
 
+Quote Post
IGK
сообщение Jul 24 2010, 19:30
Сообщение #65


Местный
***

Группа: Свой
Сообщений: 313
Регистрация: 7-01-07
Из: Севастополь
Пользователь №: 24 170



Цитата(ArtemDement @ Jul 24 2010, 19:24) *
Питание на stm8-discovery подавал напрямую с импульсного стабилизатора BP5225 (не пропуская через линейный стабилизатор, что есть на плате)

Что-то на моем дискавери ничего такого не наблюдается. Просто стабилизатор на 3.3 вольта, и все.
Надо было LC цепочку для интереса вставить, да и осцилом глянуть. Я как то пока таким образом СТМки не насиловал. Интересно, какие пульсации там, что греется столь сильно. Вот мега спокойно пульсации в сотни мв держит, не греется. Но, наверное, выше 5.5В импульсы не поднимались. Тут, согласно даташита, должно быть более 4В, чтобы ей поплохело. Пульсации >>0.7В? Я даташит на этот дц преобразователь не смотрел, но если он маленький, то там внутри выходной емкости нет, ее снаружи лепят. Где-то так, наверное.
Go to the top of the page
 
+Quote Post
ведущий_специали...
сообщение Jul 25 2010, 13:58
Сообщение #66


Участник
*

Группа: Участник
Сообщений: 44
Регистрация: 24-11-07
Пользователь №: 32 645



вообще то он не должен быть горячим. по крайней мере у меня корпус мк комнатной температуры.
Go to the top of the page
 
+Quote Post
topkin
сообщение Jul 26 2010, 05:54
Сообщение #67


Частый гость
**

Группа: Свой
Сообщений: 152
Регистрация: 21-12-05
Из: Москва
Пользователь №: 12 476



Цитата(vasily777 @ Jul 23 2010, 15:14) *
Кто тестил сенсорную библиотеку от ST напишите насколько стабильно работает?
Необходимо сделать пару сенсорных кнопок. Вчера запустил сенсорные кнопки
на либе qtouch от avr. Работает очень стабильно (ложняк получилось создать только налив приличное количество воды на кнопки).
Но библиотека использует первый таймер который нужен (нужен 12-ти разрядный шим).
С таймерами в stm8 получше. Но ревизия библиотеки 1.0.3 от st против 4 версии атмела склоняет в сторону последнего.


Я тестировал STM8S - DISCOVERY, ни одного сбоя не было. Вы для тач - сенса какой контроллер собираетесь использовать, STM8S или STM8L? На семинаре по STM8 в перерыве задавался подобный вопрос инженеру от ST, он сказал что производитель рекомендует для "серьезных" приложений использовать тач - сенс - контроллеры естественно от ST), либо STM8L. Насчет STM8S точно не помню что он ответил, что то вроде стабильность похуже чем у первых. Но все равно думаю нужно пробовать, статистику набирать.
Go to the top of the page
 
+Quote Post
IGK
сообщение Jul 26 2010, 08:18
Сообщение #68


Местный
***

Группа: Свой
Сообщений: 313
Регистрация: 7-01-07
Из: Севастополь
Пользователь №: 24 170



Цитата(topkin @ Jul 26 2010, 08:54) *
Я тестировал STM8S - DISCOVERY, ни одного сбоя не было.

Насколько серьезно Вы проверяли? Это ведь не просто пальцем ткнуть на столе. Я проверял в свое время сенсорные кнопки эмульсиями (эмуляция жирных пальцев), паром, водой (чаем, кофе с осадком) поливал. Ни одна, на то время, сенсорная кнопка нормально не работала. Но то был заказ фирмачей (лет 5 назад), в результате я написал, что такое решение не пройдет и заказ "ушел"...
Я сделал проектик платы на 4 кнопки для дискавери, да вот времени никак не выберу протравить. Это именно для носимого устройства, в жару и холод (до -15), может моросить дождь и туман обязательно:-) Просто, чтобы проверить.
Go to the top of the page
 
+Quote Post
Stanislav_S
сообщение Jul 26 2010, 09:12
Сообщение #69


извечный пессимист
*****

Группа: Свой
Сообщений: 1 113
Регистрация: 9-10-06
Из: Днепропетровск
Пользователь №: 21 125



Посыпаю голову пеплом, проверил ST-LINK с платкой - Дискавери, все нормально работает, так что проблема с процом стоящим на моей плате. Проверял осцилом, импульс сброса проходит, и по линии SWIM какая то посылка пробегает, но очевидно что проц не отвечает, либо не отвечает так как надо, питание в норме, питание ядра присутствует, вроде все нормально, но шится не хочет crying.gif Пока незнаю чего и думать, может кто то уже сталкивался с проблемой с заливкой проца на своей плате? Думается может в кварце дело, однако никакого сигнала на кварце не обнаружил, как впрочем и на Дисковери то же. Забыл сказать проц - STM8S103K.


--------------------
Slaves are those of this world
Given freedom to lay chains upon The Master
The wolf is no longer free
Release the chains and come for me
Go to the top of the page
 
+Quote Post
IGK
сообщение Jul 26 2010, 13:27
Сообщение #70


Местный
***

Группа: Свой
Сообщений: 313
Регистрация: 7-01-07
Из: Севастополь
Пользователь №: 24 170



Цитата(Stanislav_S @ Jul 26 2010, 12:12) *
Посыпаю голову пеплом... Забыл сказать проц - STM8S103K.

Если каждый раз пеплом сыпать, его на всех не хватит. Мы все тут такие...
Старт вроде со встроенного генератора.

И еще Bill отметился, с тем же STM8S103K. Настораживающая тенденция, однако.
Atmel, ау, есть второй шанс!
Go to the top of the page
 
+Quote Post
Stanislav_S
сообщение Jul 26 2010, 15:02
Сообщение #71


извечный пессимист
*****

Группа: Свой
Сообщений: 1 113
Регистрация: 9-10-06
Из: Днепропетровск
Пользователь №: 21 125



Теперь буду посыпать голову песком, его много на планете, однако smile.gif После утомительных эксперементов, таки удалось его прошить, теперь ситуация такая - прошить кристалл можно штатной утилитой, которая ST Visual Programmer, это гуд, однако отладчик упорно работать отказался, поэтому дальнейшая отладка теперь только со светодиодиком smile.gif Ну и пес с ним, я как то не привык к такой отладке, светодиод рулит! smile.gif


--------------------
Slaves are those of this world
Given freedom to lay chains upon The Master
The wolf is no longer free
Release the chains and come for me
Go to the top of the page
 
+Quote Post
topkin
сообщение Jul 26 2010, 19:07
Сообщение #72


Частый гость
**

Группа: Свой
Сообщений: 152
Регистрация: 21-12-05
Из: Москва
Пользователь №: 12 476



Цитата(IGK @ Jul 26 2010, 12:18) *
Насколько серьезно Вы проверяли? Это ведь не просто пальцем ткнуть на столе. Я проверял в свое время сенсорные кнопки эмульсиями (эмуляция жирных пальцев), паром, водой (чаем, кофе с осадком) поливал. Ни одна, на то время, сенсорная кнопка нормально не работала. Но то был заказ фирмачей (лет 5 назад), в результате я написал, что такое решение не пройдет и заказ "ушел"...
Я сделал проектик платы на 4 кнопки для дискавери, да вот времени никак не выберу протравить. Это именно для носимого устройства, в жару и холод (до -15), может моросить дождь и туман обязательно:-) Просто, чтобы проверить.

Да, Вы правы, я провел в комнатных условиях. Будем ждать ваших результатов. После рестарта микроконтроллер запускается от внутреннего RC генератора HSI/8
Цитата(Stanislav_S @ Jul 26 2010, 19:02) *
Теперь буду посыпать голову песком, его много на планете, однако smile.gif После утомительных эксперементов, таки удалось его прошить, теперь ситуация такая - прошить кристалл можно штатной утилитой, которая ST Visual Programmer, это гуд, однако отладчик упорно работать отказался, поэтому дальнейшая отладка теперь только со светодиодиком smile.gif Ну и пес с ним, я как то не привык к такой отладке, светодиод рулит! smile.gif

Т.е. прошить его из под среды(в вашем случае IAR?) так и не удалось? Вот это как то не радужно совсем, я все же на первых порах предпочитаю внутрисхемную отладку. Со светодиодом особо не разгонишься, в таких случаях предпочитаю использовать для отладки COM - порт + собственную программу по вениками, аля терминал
Go to the top of the page
 
+Quote Post
Stanislav_S
сообщение Jul 27 2010, 08:59
Сообщение #73


извечный пессимист
*****

Группа: Свой
Сообщений: 1 113
Регистрация: 9-10-06
Из: Днепропетровск
Пользователь №: 21 125



Цитата(topkin @ Jul 26 2010, 23:07) *
Т.е. прошить его из под среды(в вашем случае IAR?) так и не удалось? Вот это как то не радужно совсем, я все же на первых порах предпочитаю внутрисхемную отладку. Со светодиодом особо не разгонишься, в таких случаях предпочитаю использовать для отладки COM - порт + собственную программу по вениками, аля терминал

Да прошить из IAR не удалось, пока я надеюсь, хотя там конечно настроек то и нету никаких на ST-LINK, но надежда умирает последней smile.gif, но у меня на плате LCD стоит, как раз вот его запустил, так что теперь вместо светодиодика LCD, что уже легче, и отладка веселее пойдет, благо только с АЦП осталось разобраться и с ШИМ на таймере 2, но в принципе пока от кристалла впечатления хорошие, напрягает только документация своей излишней лаконичностью smile.gif


--------------------
Slaves are those of this world
Given freedom to lay chains upon The Master
The wolf is no longer free
Release the chains and come for me
Go to the top of the page
 
+Quote Post
Speleoastronom
сообщение Jul 27 2010, 15:10
Сообщение #74


Участник
*

Группа: Участник
Сообщений: 36
Регистрация: 23-07-10
Пользователь №: 58 575



Начал что-то делать с STM8, написал даже текстик по первым впечатлениям.

http://speleoastronomy.org/elektro/stm/index.html

Но проблемы есть. Например, под Vista компилятор Raisonance требует админ. моды для регистрации.
И работает только из админ. моды, под обычным юзером говорит, что ограничен 1К
Причем это в среде RIDE и в STVD, а в командной строке он всегда говорит что ограничен 1К. Почему-то.

Как-то можно его научить работать из-под обычного пользователя ?


Go to the top of the page
 
+Quote Post
topkin
сообщение Jul 28 2010, 05:10
Сообщение #75


Частый гость
**

Группа: Свой
Сообщений: 152
Регистрация: 21-12-05
Из: Москва
Пользователь №: 12 476



Цитата(Speleoastronom @ Jul 27 2010, 19:10) *
Начал что-то делать с STM8, написал даже текстик по первым впечатлениям.

http://speleoastronomy.org/elektro/stm/index.html

Но проблемы есть. Например, под Vista компилятор Raisonance требует админ. моды для регистрации.
И работает только из админ. моды, под обычным юзером говорит, что ограничен 1К
Причем это в среде RIDE и в STVD, а в командной строке он всегда говорит что ограничен 1К. Почему-то.

Как-то можно его научить работать из-под обычного пользователя ?


Проблема один в один на домашнем компе, только с 7й виндой. Побороть так и не удалось, мне кажется что мне знаний по этой ОС не хватает. Если кто сталкивался, то подскажите. Сносить и ставить старый родной XP пока рука не поднимается
Go to the top of the page
 
+Quote Post
IGK
сообщение Jul 28 2010, 16:42
Сообщение #76


Местный
***

Группа: Свой
Сообщений: 313
Регистрация: 7-01-07
Из: Севастополь
Пользователь №: 24 170



Цитата(topkin @ Jul 26 2010, 22:07) *
Будем ждать ваших результатов.

Думаю, не скоро будет. Партнер вчера споткнулся и упал с трапа (это на корабле). Результат - сложный перелом руки, лежит под капельницей, будет операция. Я один на месяц остался, куда уж тут о кнопках думать...
Go to the top of the page
 
+Quote Post
topkin
сообщение Jul 30 2010, 05:00
Сообщение #77


Частый гость
**

Группа: Свой
Сообщений: 152
Регистрация: 21-12-05
Из: Москва
Пользователь №: 12 476



Цитата(IGK @ Jul 28 2010, 20:42) *
Думаю, не скоро будет. Партнер вчера споткнулся и упал с трапа (это на корабле). Результат - сложный перелом руки, лежит под капельницей, будет операция. Я один на месяц остался, куда уж тут о кнопках думать...

Печально, надеюсь все будет хорошо.
Тут в сети наткнулся на статью забавную, сравнение STM8 и AVR. Не со всем согласен, но все же http://speleoastronomy.org/elektro/stm/index.html
Go to the top of the page
 
+Quote Post
zltigo
сообщение Jul 30 2010, 05:38
Сообщение #78


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



QUOTE (Speleoastronom @ Jul 27 2010, 18:10) *
Начал что-то делать с STM8, написал даже текстик по первым впечатлениям.
http://speleoastronomy.org/elektro/stm/index.html

Ну что сказать, в обзорке заметен перекос с сторону (очень условно) "радилюбительского" подхода:
1. Почему-то делается сравнение "цены старта", хотя речь идет в обоих случаях о скромных суммах, для занимающихся сколь-либо профессиональной деятельностью.
2. Сравнивается наличие книг - я бы предпочел хорошую документацию и поддержку иметь, а книг, например, то тому-же Atmel не брал в руки ни одной - не видел и не вижу ни малейших причин для контроллеров уровня AVR/STM8 иметь чего-либо разжевывающее.
3. Оценка функциональности AVR, как "лучше", тоже с "потолка" - можно говорить о каких-то нюансах в конкретных случаях, но в общем дело обстоит с точностью до наоборот.
4. Наличие "Коммьюнити" (что названо "самым важным") - несомненно полезно. Но огромная толпа занимающаяся генерацией в подавляющей своей части генерацией "мусора", "слухов", "copy-paste"... и выкладывания все это в интернет совсем не есть плюс - если речь идет о работе, а не о том, из чего-бы такого слепить чего-нибудь.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
MRW
сообщение Jul 30 2010, 08:46
Сообщение #79


Участник
*

Группа: Участник
Сообщений: 40
Регистрация: 17-06-04
Пользователь №: 36



Ну вот и я начал неспешно осваивать STM8. При выборе замены в серийных изделиях ATmega16/32/64/128 остановился на STM. Получили Discovery, скачали tools.
STVD показался замароченным (в части прикручивания С компиляторов), но наверное это дело привычки.
Документация - скудненькая, в основном все ищешь в апнотах, примерах и т.д.
Я так понял АЦП тут получше чем в АВР (гораздо быстрее и немного точнее), хотя еще не мерил в железе.
Показалось, что RTOS написать для STM будет ГОРАЗДО легче, чем на АВР (будем пробовать).
Стабильность в условиях помех заявлена высокая, что радует.
Нагрузочная способность выводов не порадовала (не все по 20ма)
Ну и конечно же цены.
Непонятно как компилить статические библиотеки под него (типа *.a в winAVR) и есть ли такое.

Go to the top of the page
 
+Quote Post
Speleoastronom
сообщение Jul 30 2010, 10:13
Сообщение #80


Участник
*

Группа: Участник
Сообщений: 36
Регистрация: 23-07-10
Пользователь №: 58 575



Цитата(zltigo @ Jul 30 2010, 09:38) *
Ну что сказать, в обзорке заметен перекос с сторону (очень условно) "радилюбительского" подхода:


Совершенно справедливо замечено, обзор писался именно с точки зрения любителя. Обзоров для профессионалов в сети достаточно много.

Цитата(zltigo @ Jul 30 2010, 09:38) *
4. Наличие "Коммьюнити" (что названо "самым важным") - несомненно полезно. Но огромная толпа занимающаяся генерацией в подавляющей своей части генерацией "мусора", "слухов", "copy-paste"... и выкладывания все это в интернет совсем не есть плюс - если речь идет о работе, а не о том, из чего-бы такого слепить чего-нибудь.


Коммьюнити AVR породило несколько весьма удачных проектов: Arduino, Ethernut, V-USB и так далее. Грань между "работой" и
"из чего-бы такого слепить чего-нибудь" слишком тонкая, чтобы ей можно было всерьез заниматься. Есть, конечно,
профессиональный гонор, но это слишком ничтожная вещь сама по себе.
Go to the top of the page
 
+Quote Post
vesago
сообщение Jul 30 2010, 16:14
Сообщение #81


Тутэйшы
****

Группа: Свой
Сообщений: 708
Регистрация: 30-11-04
Пользователь №: 1 263



Я тоже начал подымать эту платформу. Намерян в IAR писать. Не очень понравилось, что в хедерах кишки в виде масок представлены. Ну и нет задержек. Сами камни согласно документации очень привлекательны для своей ниши - по мере знакомства все больше проникаюсь. Имхо неплохо было бы завести отдельный раздел, посвященный STM8.
Go to the top of the page
 
+Quote Post
Linker
сообщение Jul 30 2010, 16:39
Сообщение #82


Местный
***

Группа: Свой
Сообщений: 210
Регистрация: 15-01-08
Из: Новосибирск
Пользователь №: 34 105



[quote name='Speleoastronom' date='Jul 30 2010, 17:13' post='791946']
Совершенно справедливо замечено, обзор писался именно с точки зрения любителя. Обзоров для профессионалов в сети достаточно много.

Вот с этого места подробнее. Кроме пары статей техподдержки Компелла ткните в рускоязычные ссылки, плз.
Сайт оригинала ST тоже не радует содержанием. Название некоторых папок с примерами не соответствует содержимому. Симулятор работает отвратно. Дебуггер ST-Link сбоит. Характеристики заявлены привлекательными, однако проверить их не просто. Все это настораживает.
И еще: во всем инете не нашел ни одного примера на ассемблере ( мне надо). Есть какие-то обрывки для ST7, но ведь это совсем не то. Может кто встречал, то дайте ссылку.


--------------------
Я здесь и сейчас...
Go to the top of the page
 
+Quote Post
IGK
сообщение Jul 30 2010, 17:12
Сообщение #83


Местный
***

Группа: Свой
Сообщений: 313
Регистрация: 7-01-07
Из: Севастополь
Пользователь №: 24 170



Цитата(Linker @ Jul 30 2010, 19:39) *
И еще: во всем инете не нашел ни одного примера на ассемблере ( мне надо). Есть какие-то обрывки для ST7, но ведь это совсем не то. Может кто встречал, то дайте ссылку.

Я тоже не нашел. Пока приходится писать, как мозг разумеет, по системе команд. Потом проверять Космиком и ИАРом:-) Но что-то этот ассемблер мне дается труднее, чем АВРовский...

Обзор читал. По моему, писать автору пока особенно не о чем. Если только продолжение будет, а так ничего особо нового по сравнению с Компеловским.
Я думаю, когда здесь прибавится пользователей - человек так до 20,- то можно просить и ветку завести. С помощью Атмела этого ждать недолго:-)
Вон, ветка МИПсов хиреет, место почти свободно.

topkin, спасибо, мой друг чувствует себя уже лучше. Ему не привыкать, три года назад он на параплане сел на прибрежные скалы (в феврале). Это его и спасло, холодная вода взбодрила и не дала истечь кровью, пока полз до берега. Но теперь он весь изломан:-( Ассемблер STM8 как-то спокойнее будет, заснул - лбом в клавиатуру приложился в худшем случае :-)
Go to the top of the page
 
+Quote Post
MRW
сообщение Jul 30 2010, 17:47
Сообщение #84


Участник
*

Группа: Участник
Сообщений: 40
Регистрация: 17-06-04
Пользователь №: 36



В отличии от АВР увидел в STM8 аппаратную поддержку программных прерываний (TRAP).
Так же есть переход на внутреннее тактирование при отказе внешнего.
Go to the top of the page
 
+Quote Post
Speleoastronom
сообщение Jul 31 2010, 04:08
Сообщение #85


Участник
*

Группа: Участник
Сообщений: 36
Регистрация: 23-07-10
Пользователь №: 58 575



Цитата(IGK @ Jul 30 2010, 21:12) *
Я тоже не нашел. Пока приходится писать, как мозг разумеет, по системе команд. Потом проверять Космиком и ИАРом:-) Но что-то этот ассемблер мне дается труднее, чем АВРовский...


Это и странно. По идее, он должен быть проще, почему я и взялся за STM8 (ну, кроме задач по работе)

Цитата(IGK @ Jul 30 2010, 21:12) *
Обзор читал. По моему, писать автору пока особенно не о чем. Если только продолжение будет, а так ничего особо нового по сравнению с Компеловским.


Совершенно верно. Пока что я развел платку регистратора, если удастся завести на ней I2C термометр, АЦП и запись всего этого на SD карту, будет о чем написать.

Go to the top of the page
 
+Quote Post
zltigo
сообщение Jul 31 2010, 08:30
Сообщение #86


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



QUOTE (IGK @ Jul 30 2010, 20:12) *
Но что-то этот ассемблер мне дается труднее, чем АВРовский...

Ассемблер, это в смысле системы команд? Да, это не AVR и если нет навыков к работе с разнообразными системами команд, то тяжело sad.gif. А вообще система команд (про Ассемблер, как инструментальное средство позже) очень приличная (это с учетом писательства, например, на 8088 smile.gif ), непривычная, после вагона регистров и load/store от AVR, но очень даже дружелюбная. Cудя по моему предыдущему опыту, программироваться должно "ровнее" и однообразнее. Дальше идет собственно синтаксис, вот тот синтаксис, который ST мне заметно не понравился. Пробовал почитать - в голове сидят другие синтаксисы и сбивают очень сильно sad.gif. Впрочем это общая болезнь всех ассемблеров. То, чего надо еще смотреть, а какие собственно сервисы предоставляет собственно Ассемблер, как инструментальная программа за пределами трансляции в коды? При имеющемся многообразии 8-16-24 бит адресации тот-же Ассемблер (как инструмент) способен самостоятельно разбираться, например, а как адресоваться к `дата` в команде LD A,data short? long? extended?.
Ну а вообще после 4-5-6 ассемблера и 2-3-4 мегабайта исходников на ASM, ясно понимаешь, что писать эти самые мегабайты на ASM не стоило sad.gif. Достаточно уметь читать ASM и быть способным написать на ASM несколько сот команд одним куском.

QUOTE (vesago @ Jul 30 2010, 19:14) *
Не очень понравилось, что в хедерах кишки в виде масок представлены.

Ну это как раз совершенно правильно - максимально гибкий, универсальный и переносимый вариант. Кривизна в том, что НЕ только ввиде масок - имеет место быть каша из IARовских красатулек
CODE
typedef struct
{
  unsigned char TIM2_EV0    : 1;

Оберток на этих красатульках:
CODE
#define WFE_CR1_TIM2_EV0         WFE_CR1_bit.TIM2_EV0

нормальных битовых описаний:
QUOTE
#define MASK_WFE_CR1_TIM2_EV0 0x01

и того, что эти макро имеют имена начинающиеся с MASK smile.gif. Так-что все как обычно надо будет править и чистить.
Или Вам жаль что не в Atmel стиле - (1<<EV0)? Вот уж где море разливанное символов "( 1 0 << )" для спотыкания глазом и простор для ошибок (даже имени регистра нет к которому бит относится ) на ровном месте sad.gif.
А вообще совершенно спокойно и необременительно при разборках с конкретной периферией пишутся свои хидеры, "как надо" - все будет "удобно" и не вызовет глупых ошибок при использовании по привычке навязанной каким-либо писателем хидеров.








--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
IGK
сообщение Jul 31 2010, 08:36
Сообщение #87


Местный
***

Группа: Свой
Сообщений: 313
Регистрация: 7-01-07
Из: Севастополь
Пользователь №: 24 170



Цитата(zltigo @ Jul 31 2010, 10:55) *
Ассемблер, это в смысле системы команд?
Ну а вообще после 4-5-6 ассемблера и 2-3-4 мегабайта исходников на ASM, ясно понимаешь, что писать эти самые мегабайты на ASM не стоило sad.gif. Достаточно уметь читать ASM и быть способным написать на ASM несколько сот команд одним куском.

Система команд, да.
Именно так. Но, прежде чем доверится С, надо бы его проверить, хоть как то...
А предыдущее, о сложности - так я старый уже для программирования. Оно как с девочками, молоденькими - и тяжело, и хочется. И жалеешь потом... до следующего раза:-)
С я осваивал еще на СМ4 :-), с тех пор то изменяю ему с ассемблером, то опять за старое. Это как придется. Процессоров, правда, немного применять приходилось. Например, с АРМами пока не сталкивался (я имею в виду проекты с нуля), больше АВР, 51-е разные, пару раз МСП применял. Пытался МИПС как-то применить, потом на ТМС перешел. Вот и все. Типа вся жизнь прошла перед глазами:-) Но это только контроллеры.
И, кстати, надобность во вставках ассемблерных практически отпала: сейчас сижу, платку с STM8 набрасываю в оркаде, и заменил по пути ногодрыжество RC-цепочкой с компаратором. Теперь чистый си, на два прерывания меньше и, соответственно, больше спать можно будет. Хорошо! На АВРке не получалось.
Go to the top of the page
 
+Quote Post
zltigo
сообщение Jul 31 2010, 08:41
Сообщение #88


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



QUOTE (IGK @ Jul 31 2010, 11:36) *
Но, прежде чем доверится С, надо бы его проверить, хоть как то...

Дык сразу в бою smile.gif и проверять.
QUOTE
А предыдущее, о сложности - так я старый уже для программирования.

Так и мне, считай, полтинник, но пока ничего smile.gif


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
IGK
сообщение Jul 31 2010, 18:41
Сообщение #89


Местный
***

Группа: Свой
Сообщений: 313
Регистрация: 7-01-07
Из: Севастополь
Пользователь №: 24 170



Цитата(zltigo @ Jul 31 2010, 11:41) *
Дык сразу в бою smile.gif и проверять.

Так и мне, считай, полтинник, но пока ничего smile.gif

Это я не утерпел. Хотя обычно так и делаю, самый надежный способ. Как с арбузами - никогда не надрезаю и не пробую. Не понравилось - выбросил и забыл. А процессор еще и дешевле обходится:-)
Полтинник - ну совсем молодой еще... Но, слышал, активно жить можно до 130 лет, какие-то евреи писали:-) Так что все еще впереди!
Go to the top of the page
 
+Quote Post
_Bill
сообщение Aug 14 2010, 12:50
Сообщение #90


Местный
***

Группа: Участник
Сообщений: 416
Регистрация: 18-04-06
Из: Челябинск
Пользователь №: 16 219



Дело начинает проясняться. Ребята из "Промэлектроники" проделали такой же опыт с STM8S103K6 и получили аналогичный результат. После этого они обратились на фирму ST и там признали свой баг. Они его исправили, обещают прислать новые контроллеры.
Go to the top of the page
 
+Quote Post
IGK
сообщение Aug 15 2010, 07:45
Сообщение #91


Местный
***

Группа: Свой
Сообщений: 313
Регистрация: 7-01-07
Из: Севастополь
Пользователь №: 24 170



Цитата(_Bill @ Aug 14 2010, 15:50) *
Дело начинает проясняться. Ребята из "Промэлектроники" проделали такой же опыт с STM8S103K6 и получили аналогичный результат. После этого они обратились на фирму ST и там признали свой баг. Они его исправили, обещают прислать новые контроллеры.

Угу, наслышаны уже...
Так эти ребята через годик-другой и еррату обновят:-)
Go to the top of the page
 
+Quote Post
Stanislav_S
сообщение Aug 15 2010, 14:49
Сообщение #92


извечный пессимист
*****

Группа: Свой
Сообщений: 1 113
Регистрация: 9-10-06
Из: Днепропетровск
Пользователь №: 21 125



Цитата(_Bill @ Aug 14 2010, 16:50) *
Дело начинает проясняться. Ребята из "Промэлектроники" проделали такой же опыт с STM8S103K6 и получили аналогичный результат.

Ох блин, я этот кристалл как замену AVR застолбил, как раз многие мои девайсы закрывает, они только кристаллы будут править или еще и софт?


--------------------
Slaves are those of this world
Given freedom to lay chains upon The Master
The wolf is no longer free
Release the chains and come for me
Go to the top of the page
 
+Quote Post
_Bill
сообщение Aug 16 2010, 07:03
Сообщение #93


Местный
***

Группа: Участник
Сообщений: 416
Регистрация: 18-04-06
Из: Челябинск
Пользователь №: 16 219



Цитата(Stanislav_S @ Aug 15 2010, 17:49) *
Ох блин, я этот кристалл как замену AVR застолбил, как раз многие мои девайсы закрывает, они только кристаллы будут править или еще и софт?

А причем тут soft? А кристаллы, говорят, уже исправили. Жду новых, исправленных.
Go to the top of the page
 
+Quote Post
IGK
сообщение Aug 17 2010, 09:02
Сообщение #94


Местный
***

Группа: Свой
Сообщений: 313
Регистрация: 7-01-07
Из: Севастополь
Пользователь №: 24 170



Цитата(_Bill @ Aug 16 2010, 10:03) *
А причем тут soft?

Ножками дергать с извращениями... На неисправленных кристаллах. Наверное, так.
Go to the top of the page
 
+Quote Post
Speleoastronom
сообщение Aug 26 2010, 07:58
Сообщение #95


Участник
*

Группа: Участник
Сообщений: 36
Регистрация: 23-07-10
Пользователь №: 58 575



Цитата(_Bill @ Aug 14 2010, 16:50) *
Дело начинает проясняться. Ребята из "Промэлектроники" проделали такой же опыт с STM8S103K6 и получили аналогичный результат. После этого они обратились на фирму ST и там признали свой баг. Они его исправили, обещают прислать новые контроллеры.


Извините, _Bill, нельзя ли подробнее про баг, в каких контроллерах он есть, и в чем именно проявляется. Или ссылочку, если ST уже это документировала.
Go to the top of the page
 
+Quote Post
Xenia
сообщение Aug 26 2010, 09:12
Сообщение #96


Гуру
******

Группа: Модератор FTP
Сообщений: 4 479
Регистрация: 20-02-08
Из: Москва
Пользователь №: 35 237



Цитата(_Bill @ Aug 16 2010, 10:03) *
А кристаллы, говорят, уже исправили. Жду новых, исправленных.

А неисправные кристаллы, надо понимать, из торговой сети не отзовут. У нас на прилавках лежать будут. Теперь трижды перекрестишься, прежде чем STM8 покупать...
Go to the top of the page
 
+Quote Post
Linker
сообщение Aug 26 2010, 16:06
Сообщение #97


Местный
***

Группа: Свой
Сообщений: 210
Регистрация: 15-01-08
Из: Новосибирск
Пользователь №: 34 105



Цитата(Xenia @ Aug 26 2010, 16:12) *
А неисправные кристаллы, надо понимать, из торговой сети не отзовут. У нас на прилавках лежать будут. Теперь трижды перекрестишься, прежде чем STM8 покупать...

Не имел дела раньше с компанией ST. За ними водилось подобное? На самом деле страшновато переходить на такую продукцию. А может это черный PR? Где правда, брат?


--------------------
Я здесь и сейчас...
Go to the top of the page
 
+Quote Post
_Bill
сообщение Aug 27 2010, 07:34
Сообщение #98


Местный
***

Группа: Участник
Сообщений: 416
Регистрация: 18-04-06
Из: Челябинск
Пользователь №: 16 219



Цитата(Speleoastronom @ Aug 26 2010, 10:58) *
Извините, _Bill, нельзя ли подробнее про баг, в каких контроллерах он есть, и в чем именно проявляется. Или ссылочку, если ST уже это документировала.

Подробности см. мое первое сообщение. ST это не документировала, сказала что исправила.
Go to the top of the page
 
+Quote Post
gyperios
сообщение Aug 27 2010, 08:17
Сообщение #99





Группа: Новичок
Сообщений: 10
Регистрация: 25-08-05
Пользователь №: 7 965



Цитата(Linker @ Aug 26 2010, 19:06) *
Не имел дела раньше с компанией ST. За ними водилось подобное? На самом деле страшновато переходить на такую продукцию. А может это черный PR? Где правда, брат?


Ничего необычного, свежие кристаллы обычно проходят несколько ревизий. В серию идет самая последняя, максимально избавленная от багов. Отладка появляется одновременно с появлением первой ревизии кристалла. Поэтому вполне вероятно, что на отладке может стоять камень одной из "сырых" ревизий. Ничего не мешает потом перепаять на серийный кристалл.

Цитата(Xenia @ Aug 26 2010, 12:12) *
А неисправные кристаллы, надо понимать, из торговой сети не отзовут. У нас на прилавках лежать будут. Теперь трижды перекрестишься, прежде чем STM8 покупать...


Просто внимательно смотреть на маркировку чипов, версия кристалла обычно у ST обозначается отдельно стоящей буквой в правом верхнем либо нижнем углу.
Go to the top of the page
 
+Quote Post
sonycman
сообщение Aug 27 2010, 08:29
Сообщение #100


Любитель
*****

Группа: Свой
Сообщений: 1 864
Регистрация: 20-08-06
Из: Тольятти
Пользователь №: 19 695



Цитата(_Bill @ Aug 27 2010, 11:34) *
Подробности см. мое первое сообщение. ST это не документировала, сказала что исправила.

Да, какая ревизия у глючных чипов?
Go to the top of the page
 
+Quote Post

9 страниц V   1 2 3 > » 
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


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


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