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

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

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

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

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

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


Закрытая тема
Опции темы
Непрочитано 29.11.2010, 13:16   #591
kittec
Гражданин KAZUS.RU
 
Регистрация: 14.11.2008
Сообщений: 701
Сказал спасибо: 298
Сказали Спасибо 283 раз(а) в 193 сообщении(ях)
kittec на пути к лучшему
По умолчанию Re: STM8(S/L), первые впечатления

Добрый день уважаемые.
Я только начинаю изучать ARM, но только STM32. Я думаю, что у STM32 и STM8 есть общие моменты, несмотря на то , что одна 8 а другая 32 битная, и поэтому я хочу спросить о переключениях битов портов УВВ.
Изучая литературу по STM32 прочитал вот это:
PB8 = 1; //включаем светодиод
После компиляции будут сгенерированы следующие ассемблерные инструкции:
MOVS r0,#0x01
LDR r1,[pc,#104]
STR r0,[r1,#0x00]
Для отключения светодиода используем строку:PB8 = 0; // отключаем светодиод
Ей соответствуют следующие ассемблерные инструкции:
MOVS r0,#0x00
LDR r1,[pc,#88]
STR r0,[r1,#0x00]

Значит ли это, что одной асм команды , как у AVR ( CBI и SBI ) нет?

P.S. Можно в этой теме задавать вопросы по STM32, или создавать новую тему?.
Если новую, то хотелось бы и вашего участия .
Реклама:
kittec вне форума  
Непрочитано 29.11.2010, 13:19   #592
EugVor
Временная регистрация
 
Регистрация: 15.03.2006
Сообщений: 80
Сказал спасибо: 3
Сказали Спасибо 83 раз(а) в 11 сообщении(ях)
EugVor на пути к лучшему
По умолчанию Re: STM8(S/L), первые впечатления

Сообщение от kison Посмотреть сообщение
Гы ... Он и при этом ту же гадость пихает...
LED^=1; // Так надо писать.
Хоть и через аккумулятор но вменяемый код. В одну команду начиная с IAR 1.2, как тут кто-то уже говорил.

Как много откровений чудных...

Последний раз редактировалось EugVor; 29.11.2010 в 13:58.
EugVor вне форума  
Непрочитано 29.11.2010, 13:20   #593
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,269 раз(а) в 1,563 сообщении(ях)
dosikus на пути к лучшему
По умолчанию Re: STM8(S/L), первые впечатления

Сообщение от kison Посмотреть сообщение
Использовать Cosmic
Ну это то понятно .
Как раз и лицензия пришла...
__________________
Осторожно , злой кот
dosikus вне форума  
Непрочитано 29.11.2010, 13:24   #594
kison
Почётный гражданин KAZUS.RU
 
Регистрация: 13.12.2004
Сообщений: 3,172
Сказал спасибо: 11
Сказали Спасибо 692 раз(а) в 504 сообщении(ях)
kison на пути к лучшему
По умолчанию Re: STM8(S/L), первые впечатления

Сообщение от dosikus Посмотреть сообщение
Как раз и лицензия пришла...
На 16К или на 32К? Мне на 32К так и не пришла.

Сообщение от kittec Посмотреть сообщение
P.S. Можно в этой теме задавать вопросы по STM32, или создавать новую тему?.
STM32 - ARM. Тут уже и так полно тем по АРМ
https://kazus.ru/forums/showthread.php?t=14719
https://kazus.ru/forums/showthread.php?t=20914
и т.д.
kison вне форума  
Непрочитано 29.11.2010, 13:31   #595
kison
Почётный гражданин KAZUS.RU
 
Регистрация: 13.12.2004
Сообщений: 3,172
Сказал спасибо: 11
Сказали Спасибо 692 раз(а) в 504 сообщении(ях)
kison на пути к лучшему
По умолчанию Re: STM8(S/L), первые впечатления

Сообщение от EugVor Посмотреть сообщение
Хоть и через аккумулятор но вменяемый код.
Нет, у dosikus реально лучше вышло. Его вариант атомарный, Ваш - нет. И хоть Ваш на команду короче, но потребует критической секции в некоторых случаях.
kison вне форума  
Непрочитано 29.11.2010, 13:46   #596
EugVor
Временная регистрация
 
Регистрация: 15.03.2006
Сообщений: 80
Сказал спасибо: 3
Сказали Спасибо 83 раз(а) в 11 сообщении(ях)
EugVor на пути к лучшему
По умолчанию Re: STM8(S/L), первые впечатления

Дело в том, что у меня с битовой инверсией в листинге вообще какой-то ливер на 14 строк.
EugVor вне форума  
Непрочитано 29.11.2010, 13:53   #597
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,269 раз(а) в 1,563 сообщении(ях)
dosikus на пути к лучшему
По умолчанию

Сообщение от kison Посмотреть сообщение
На 16К или на 32К? Мне на 32К так и не пришла.
Кинь в личку мыло , у него похоже привязки ни к чему нет.

По kison'у вообще все прелестно выходит :

PHP код:
main.c:24          DDRB2 1
0x80dd BSET  _PB_DDR,#2 
main.c:25        DDRB1 1
0x80e1 BSET  _PB_DDR,#1 
main.c:26            PB_CR1=0XFF
0x80e5 MOV   _PB_CR1,#0xff 
main.c:29            delay(); 
0x80e9 CALLR delay 
main
.c:31             PORTB1=~PORTB1
0x80eb BCPL  _PB_ODR,#1 
main.c:33              delay(); 
0x80ef CALLR delay 
main
.c:35                PORTB2=~PORTB2
0x80f1 BCPL  _PB_ODR,#2 
0x80f5 JRT   0x80e9 
rupt_vector
.c:17        return; 
0x80f7 IRET 
В IAR охренительно :

Код:
  30            while(1)
     31            {
     32              LED=~LED;   //Переключим светодиод
   \                     ??main_1:
   \   000028 C6500F                LD        A, L:0x500f
   \   00002B 43                    CPL       A
   \   00002C 44                    SRL       A
   \   00002D 9011500F              BCCM      L:0x500f, #0x0
     33              LED5=~LED5;
   \   000031 C6500F                LD        A, L:0x500f
   \   000034 43                    CPL       A
   \   000035 CD0000                CALL      L:?srl8_a_a_5
   \   000038 44                    SRL       A
   \   000039 901B500F              BCCM      L:0x500f, #0x5
__________________
Осторожно , злой кот

Последний раз редактировалось dosikus; 29.11.2010 в 14:07.
dosikus вне форума  
Непрочитано 29.11.2010, 14:04   #598
kison
Почётный гражданин KAZUS.RU
 
Регистрация: 13.12.2004
Сообщений: 3,172
Сказал спасибо: 11
Сказали Спасибо 692 раз(а) в 504 сообщении(ях)
kison на пути к лучшему
По умолчанию Re: STM8(S/L), первые впечатления

Сообщение от dosikus Посмотреть сообщение
у него похоже привязки ни к чему нет.
Да мне пока 16К хватает. Просто интересно почему всем приходит, а мне фиг...
А чужая лицензия = кряку. Кряк то на Космик и так в сети есть.
kison вне форума  
Непрочитано 29.11.2010, 14:06   #599
EugenyAM
Временная регистрация
 
Регистрация: 24.09.2010
Сообщений: 97
Сказал спасибо: 9
Сказали Спасибо 41 раз(а) в 31 сообщении(ях)
EugenyAM на пути к лучшему
По умолчанию Re: STM8(S/L), первые впечатления

Сообщение от kison Посмотреть сообщение
Посмотрел хидеры от IAR. Там все же не структуры с битовыми полями в памяти, а собственные конструкции типа __IO_REG8_BIT(PA_CR2,....
Это макрос и на выходе он дает юнион в котором есть собственно определение регистра PA_CR2, как указателя на область памяти и на его фоне структура с битовыми полями PA_CR2_bit
EugenyAM вне форума  
Непрочитано 29.11.2010, 14:08   #600
kison
Почётный гражданин KAZUS.RU
 
Регистрация: 13.12.2004
Сообщений: 3,172
Сказал спасибо: 11
Сказали Спасибо 692 раз(а) в 504 сообщении(ях)
kison на пути к лучшему
По умолчанию Re: STM8(S/L), первые впечатления

Сообщение от EugenyAM Посмотреть сообщение
Это макрос и на выходе он дает юнион в котором есть собственно определение регистра PA_CR2, как указателя на область памяти
А тогда во что разворачивается параметр __READ_WRITE?
Вообще IAR-овцы смешной народ. Найдите отличия:
Код:
typedef struct
{
  unsigned char DDR0        : 1;
  unsigned char DDR1        : 1;
  unsigned char DDR2        : 1;
  unsigned char DDR3        : 1;
  unsigned char DDR4        : 1;
  unsigned char DDR5        : 1;
  unsigned char DDR6        : 1;
  unsigned char DDR7        : 1;
} __BITS_PA_DDR;

typedef struct
{
  unsigned char DDR0        : 1;
  unsigned char DDR1        : 1;
  unsigned char DDR2        : 1;
  unsigned char DDR3        : 1;
  unsigned char DDR4        : 1;
  unsigned char DDR5        : 1;
  unsigned char DDR6        : 1;
  unsigned char DDR7        : 1;
} __BITS_PB_DDR;

Последний раз редактировалось kison; 29.11.2010 в 14:11.
kison вне форума  
Закрытая тема

Закладки


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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
KiCAD-объявления и впечатления al_dan KiCAD 32 03.10.2016 17:02
Народ, посмотрите quasm, Как ваши впечатления? suri Proteus, KiCAD и другие ECAD 5 14.10.2009 11:57


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


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