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

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

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

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

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

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


 
Опции темы
Непрочитано 04.10.2012, 15:38  
vovchik69
Частый гость
 
Регистрация: 21.07.2005
Сообщений: 29
Сказал спасибо: 2
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
vovchik69 на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Вот http://files.mail.ru/XM34X5
Реклама:
vovchik69 вне форума  
Непрочитано 05.10.2012, 01:52  
Hives
Гражданин KAZUS.RU
 
Регистрация: 25.11.2010
Сообщений: 516
Сказал спасибо: 1
Сказали Спасибо 126 раз(а) в 109 сообщении(ях)
Hives на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

http://www.ixbt.com/news/hard/index.shtml?16/16/87
вариантов два: или это начало конца или скоро попрут гигагерцовые stm32 (шутк)
Hives вне форума  
Непрочитано 06.10.2012, 18:36  
индюк
Гуру портала
 
Аватар для индюк
 
Регистрация: 17.07.2010
Адрес: мурмурляндия
Сообщений: 10,661
Сказал спасибо: 185
Сказали Спасибо 3,183 раз(а) в 2,063 сообщении(ях)
индюк на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

люди!!!!
к сожалению вчитываться в бесконечное количество страниц не имею возможности поэтому если не сложно подскажите вот чего - установил ягурто и коиде и все вроде работает и вроде устраивает только вот не нашел там ничего кроме дебажного режима сбора поршивки.

как быть?

чем щас модно вообще стм32 кодить?

я кодил лпц1343 и 1768 но там среда была экспрессо и там таких сложностей не было но эти процы чото стали пропадать из продажи и вот пришлось на стм перейти потихоньку

Последний раз редактировалось индюк; 06.10.2012 в 18:43.
индюк вне форума  
Непрочитано 06.10.2012, 21:00  
Hives
Гражданин KAZUS.RU
 
Регистрация: 25.11.2010
Сообщений: 516
Сказал спасибо: 1
Сказали Спасибо 126 раз(а) в 109 сообщении(ях)
Hives на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Выбирай: IAR, Keil, Eclipse/GCC
первые два платные, но могут работать с некоторыми ограничениями. так что ставь все и пробуй по одному.
Hives вне форума  
Непрочитано 07.10.2012, 15:10  
BolshoyK
Гражданин KAZUS.RU
 
Регистрация: 25.11.2009
Сообщений: 609
Сказал спасибо: 37
Сказали Спасибо 140 раз(а) в 72 сообщении(ях)
BolshoyK на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Есть ли тут кто-нибудь, кто делал программу для чтения датчика BMP085 ? Можете поделиться кодом ? Ну и за одно свой неработающий код привожу, может кто подскажет ошибку.
Инициализация
Код:
#define I2C_EE				I2C2
#define BMP085_W			0xEE
#define BMP085_R			0xEF


void I2C_Configuration(void)
{

           I2C_InitTypeDef  I2C_InitStructure;
           GPIO_InitTypeDef  GPIO_InitStructure;

           RCC_APB1PeriphClockCmd(RCC_APB1Periph_I2C2,ENABLE)  ;

           RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB| RCC_APB2Periph_AFIO , ENABLE);//

           /* Configure I2C2 pins: PB10-›SCL and PB11-›SDA */
           GPIO_InitStructure.GPIO_Pin =  GPIO_Pin_10 | GPIO_Pin_11;
           GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
           GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_OD;
           GPIO_Init(GPIOB, &GPIO_InitStructure);

           I2C_DeInit(I2C_EE);
           I2C_InitStructure.I2C_Mode = I2C_Mode_I2C;
           I2C_InitStructure.I2C_DutyCycle = I2C_DutyCycle_16_9;
           I2C_InitStructure.I2C_OwnAddress1 = 1;
           I2C_InitStructure.I2C_Ack = I2C_Ack_Enable;
           I2C_InitStructure.I2C_AcknowledgedAddress = I2C_AcknowledgedAddress_7bit;
           I2C_InitStructure.I2C_ClockSpeed = 100000;  /* 100kHz */

           I2C_Cmd(I2C_EE, ENABLE);
           I2C_Init(I2C_EE, &I2C_InitStructure);
           I2C_AcknowledgeConfig(I2C_EE, ENABLE);

}
Процедура чтения
Код:
uint8_t I2C_ByteRead( uint8_t I2C_HW_ADDRESS, uint8_t ReadAddr)
{
    uint8_t tmp;
    while(I2C_GetFlagStatus(I2C_EE, I2C_FLAG_BUSY));
    I2C_GenerateSTART(I2C_EE, ENABLE);
    while(!I2C_CheckEvent(I2C_EE, I2C_EVENT_MASTER_MODE_SELECT));
    I2C_Send7bitAddress(I2C_EE, I2C_HW_ADDRESS, BMP085_W);
GPIO_SetBits(GPIOB , GPIO_Pin_1); //LED2
    while(!I2C_CheckEvent(I2C_EE, I2C_EVENT_MASTER_TRANSMITTER_MODE_SELECTED));
GPIO_SetBits(GPIOB , GPIO_Pin_0); //LED1
    I2C_SendData(I2C_EE, ReadAddr);
    while(!I2C_CheckEvent(I2C_EE, I2C_EVENT_MASTER_BYTE_TRANSMITTED));
    I2C_GenerateSTART(I2C_EE, ENABLE);
    while(!I2C_CheckEvent(I2C_EE, I2C_EVENT_MASTER_MODE_SELECT));
    I2C_Send7bitAddress(I2C_EE, I2C_HW_ADDRESS, BMP085_R);
    while(!I2C_CheckEvent(I2C_EE,I2C_EVENT_MASTER_BYTE  _RECEIVED));
    tmp=I2C_ReceiveData(I2C_EE);
    I2C_AcknowledgeConfig(I2C_EE, DISABLE);
    I2C_GenerateSTOP(I2C_EE, ENABLE);
    return tmp;
    }
Вызов для чтения первой константы калибровочной.
Код:
	ac1 = I2C_ByteRead(0x77,0xAA);
В процедуре чтения вставлены "дебагеры" в виде зажигания светодиодов. LED2 загорается, а до LED1 не доходит. В цикле крутимся, после выдачи адреса slave устройства.
За пример брал чтение EEPROM откуда то с инета. Чую где-то глобально накосячил, но понять не могу...
BolshoyK вне форума  
Непрочитано 08.10.2012, 00:27  
Yurkin2007
Заблокирован
 
Регистрация: 27.03.2007
Сообщений: 1,328
Сказал спасибо: 12
Сказали Спасибо 576 раз(а) в 460 сообщении(ях)
Yurkin2007 на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Скачал свежую копию библтиотеки STM32F10x_StdPeriph_Lib_V3.5.0. Заглянул в описание функции I2C_Send7bitAddress, на которой у Вас затык произошёл.
Вот она во всей красе.
Код:
void I2C_Send7bitAddress(I2C_TypeDef* I2Cx, uint8_t Address, uint8_t I2C_Direction)
{
  /* Check the parameters */
  assert_param(IS_I2C_ALL_PERIPH(I2Cx));
  assert_param(IS_I2C_DIRECTION(I2C_Direction));
  /* Test on the direction to set/reset the read/write bit */
  if (I2C_Direction != I2C_Direction_Transmitter)
  {
    /* Set the address bit0 for read */
    Address |= OAR1_ADD0_Set;
  }
  else
  {
    /* Reset the address bit0 for write */
    Address &= OAR1_ADD0_Reset;
  }
  /* Send the address */
  I2Cx-›DR = Address;
}
Во-первых, никто в ней не сдвигает 7-битный адрес устройства! Нужно двигать самому ручками. То есть
Код:
ac1 = I2C_ByteRead(0x77 ‹‹ 1, 0xAA);
Во-вторых, передаваемый параметр I2C_Direction может иметь только два значения:
или I2C_Direction_Transmitter или I2C_Direction_Receiver. И в зависимости от него функция I2C_Send7bitAddress сама либо установит мл.бит в 0 либо в 1. Поэтому никакие BMP085_W и BMP085_R не нужны, их нужно заменить на библиотечные величины.

Последний раз редактировалось Yurkin2007; 08.10.2012 в 00:36.
Yurkin2007 вне форума  
Непрочитано 08.10.2012, 02:41  
Hives
Гражданин KAZUS.RU
 
Регистрация: 25.11.2010
Сообщений: 516
Сказал спасибо: 1
Сказали Спасибо 126 раз(а) в 109 сообщении(ях)
Hives на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Кто нибудь в курсе, как отключить JTAG/SWD на камнях STM32L ?

Доку индусы писали видимо под каким то веществом:
"29.4.2 Flexible SWJ-DP pin assignment
...
For more details on how to disable SWJ-DP port pins, please refer to Section 29.4.2"
Hives вне форума  
Непрочитано 08.10.2012, 14:31  
RingQ
Частый гость
 
Регистрация: 09.04.2007
Сообщений: 35
Сказал спасибо: 0
Сказали Спасибо 1 раз в 1 сообщении
RingQ на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

не работает SPI в режиме ремапа..вернее с моси данные идут а на SCK полный молчок. в чем может быть дела?

Последний раз редактировалось RingQ; 08.10.2012 в 15:02.
RingQ вне форума  
Непрочитано 08.10.2012, 15:11  
BolshoyK
Гражданин KAZUS.RU
 
Регистрация: 25.11.2009
Сообщений: 609
Сказал спасибо: 37
Сказали Спасибо 140 раз(а) в 72 сообщении(ях)
BolshoyK на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Сообщение от Yurkin2007 Посмотреть сообщение
Во-первых, никто в ней не сдвигает 7-битный адрес устройства! Нужно двигать самому ручками. То есть
Код:
ac1 = I2C_ByteRead(0x77 ‹‹ 1, 0xAA);
Во-вторых, передаваемый параметр I2C_Direction может иметь только два значения:
или I2C_Direction_Transmitter или I2C_Direction_Receiver. И в зависимости от него функция I2C_Send7bitAddress сама либо установит мл.бит в 0 либо в 1. Поэтому никакие BMP085_W и BMP085_R не нужны, их нужно заменить на библиотечные величины.
Спасибо ! Поехал дальше
BolshoyK вне форума  
Непрочитано 08.10.2012, 16:28  
polyname
Прописка
 
Регистрация: 19.05.2012
Сообщений: 99
Сказал спасибо: 0
Сказали Спасибо 10 раз(а) в 8 сообщении(ях)
polyname на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Цитата:
Кто нибудь в курсе, как отключить JTAG/SWD на камнях STM32L ?
как-то так:

GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable, ENABLE); // disable JTAG pins
polyname вне форума  
 

Закладки
Опции темы

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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Школа АRMрестлинга Uragan90 Микроконтроллеры, АЦП, память и т.д 54 22.08.2011 16:13
ARM Cortex M3 + Linux SiMiLya Микроконтроллеры, АЦП, память и т.д 10 17.06.2011 17:20
Помогите с STM32 - очень нужно... yakuzaa Микроконтроллеры, АЦП, память и т.д 60 04.08.2010 11:04
Как добавить поддержку для STM32 SFHK Микроконтроллеры, АЦП, память и т.д 11 18.12.2009 18:09


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


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