Перейти к содержанию

gafbich

Members
  • Постов

    40
  • Зарегистрирован

  • Посещение

Весь контент gafbich

  1. Я в курсе, что там обычный SPI, с этим проблем нет. А вот в реализации функции WRITE_TAG проблемы. Все остальное работает +\-
  2. Доброй ночи, пытаюсь сроднить HTRC11001 и stm32(просто сейчас под рукой он), цель затеи такова - чтение запись EM-Marine. Чтение карт получается, а вот как реализовать запись не понимаю, из контекста даташита есть такая процедура WRITE_TAG, если я правильно понимаю с помощью ее можно реализовать подачу импульса конкретной ширины. В общем буду рад вашей помощи в данной задаче. Если есть желающие помочь не бесплатно - тоже рассмотрю ваше предложение. Проект не коммерческий - выгода только разобраться.
  3. Доброго Вам утра, спасибо, что откликнулись, получилось самостоятельно решить проблему. Тему можно закрывать.
  4. Использую платформу STM32F103C8T6, не получается инициализировать трансивер.
  5. Столкнулся с следующей проблемой, не могу передать сырые данные (при помощи ногодрыга) в эфир при помощи встроенного трансивера CC1101, цель передать Прицетон (для управления умным домом). //Через Timer_A получилось передавать TA1CCR0 = 50; TA1CCR1 = 50; TA1CCTL0 = OUTMOD_4; TA1CCTL1 = OUTMOD_4; TA1CTL = TASSEL__SMCLK + MC_1 + TACLR; // Init P2.2 to output TX signal to the radio P2SEL |= BIT2; P2DIR |= BIT2; P2SEL |= BIT7; P2DIR &= ~BIT7; PMAPPWD = 0x02D52; // Get write-access to port mapping regs P2MAP2 = PM_TA1CCR0A; // Map TA output to TX to P2.2 PMAPPWD = 0x00; // Lock Port mapping Жду Вашей помощи.
  6. Александр, спасибо за помощь. Проблема в другом оказалась, впаял микрофон с радиомаяка, работает идеально, внутренне сопротивление 768 Ом - гула нет, к сожалению не знаю маркировку того микрофона, у моего сопротивление порядка 900 Ом. Вопрос в другом, как запустить на этом микрофоне. По даташиту диапазон напряжения должен быть вроде как до 2,2В. Я свой с Али заказывал, параметры не указаны, но я так понимаю он на 4.5В
  7. Ок, а что же по Вашему припаяно к конденсаторам? А как это выглядит? Александр Д. Все как схеме выше, так и у меня с теми же номиналами типоразмера 0603. Единственно меня смущает только то, что при разводке UART использую перемычки ввиду сопротивлений 0 - под ними земля проходит, могут ли они в виде индуктивности такие наводки давать?!
  8. Длинна не более сантиметра. Земля общая. Со стороны подключения микрофона участок текстолита срезан по контакты микрофона.
  9. Прошу оказать помощь в подключении микрофона к GSM модему SIM800C. На текущий момент имеется проблема, подключил микрофон согласно даташиту на данный модуль (игрался регистром AT+CMIC), при снятии трубки модемом (при помощи AT команды), на фоне постоянный гул (редно, крайне редко он исчезает, на несколько секунд), как мне его победить.?! Кто сталкивался с данной задачей - пишите!
  10. Многие Гаврилова ругают! Но гляну, сравнить особо не с чем. Спасибо
  11. Специально для oldmao, ваш сарказм не уместен. А за книженцию спасибо. Про видеоуроки это все хорошо, но принцип изложения информации мне не нравится, смотрел не уложилось, либо создавалась еще куча вопросов. Для colorad, да хоть каскадные усилители, усилители для микрофона...
  12. Уважаемые, обращаюсь к Вам на предмет получения знаний. Проблема в том что я не очень понимаю принцип работы транзистора, много задумок, а они разбиваются о барьер не знания. Могли бы Вы мне оказать услугу, дать мне понимания работы транзистора что БИ что ПОЛЕВОГО. Я правда не знаю, сколько такая услуга может стоить, но я готов потерпеть расходы. Просто устал как мартышка собирать чужие схемы. С Уважением Сергей.
  13. gafbich

    SIM800L

    Доброй ночи, ситуация значит такая имеется модуль SIM800L, подключил электретный микрофон ECM-60D согласно даташиту на модуль. При вызове один шум, если громко в микрофон сказать, на другой стороне еле слышно. В даташите нашел команду AT+CMIC - настройка чувствительности микрофона - модуля под рукой нет, проверить не могу. Юзать команду?
  14. Еще один вопрос, в чем может быть затык в работе SPI на STM8S, к примеру настраивал на STM32 проблем вообще не было. а на данном камне мне посл каждой посылки (передачи) надо делать задержу в 20 nop`ОВ, а иначе выброс кривой, если что могу кинуть с лог анализатора что получается без nop а что с nop
  15. Попробовал Ваш пример - не пашет( Вот в чем проблема не пойму. Прошу прощения, Ваш пример и в правду работает! Спасибо
  16. Вы имеете ввиду UIF флаг (TIM1_SR1) void delay_us(unsigned int d) { TIM1_CNTRH=0;TIM1_CNTRL=0; TIM1_ARRH=((d&0xFF00)>>8); TIM1_ARRL=d&0x00FF; while((TIM1_SR1&(1<<0))!=1){}; TIM1_SR1&=~(1<<0); }
  17. gafbich

    STM8S103F3P6

    Объясните пожалуйста следующие, на руках имеется STM8S103F3P6, сначала была проблема запустить SPI, проблема была даже не в запуске а корректной работе - сделал! А вот с таймером я засел вообще. Хочу сделать программный delay по средствам таймера TIM1 без прерываний. Ниже скидываю инициализацию таймера TIM1 и обработчник(функция delay) Тактовая частота 2MHz. Где загвоздка? #include "iostm8s103f3.h" void TIM1_init(void); void delay_us(unsigned int d); void TIM1_init(void) { ////Величина автоперезагрузки//// unsigned int auto_preload = 65535; TIM1_ARRH=((auto_preload&0xFF00)>>8); TIM1_ARRL=auto_preload&0x00FF; //////////////////////////////// ////////Установка делителя////// unsigned int div_load = 2000; TIM1_PSCRH=((div_load&0xFF00)>>8); TIM1_PSCRL=div_load&0x00FF; //////////////////////////////// TIM1_CR1|=(1<<7)|(1<<1)|(1<<0); } void delay_us(unsigned int d) { TIM1_CNTRH=0;TIM1_CNTRL=0; TIM1_ARRH=((d&0xFF00)>>8); TIM1_ARRL=d&0x00FF; while(((unsigned int)((TIM1_CNTRH<<8)+TIM1_CNTRL))<d){}; } int main() { ///////////////////////////////////// //Отключаем Всю периферию // CLK_PCKENR1=0x00; CLK_PCKENR2=0x00; ///////////////////////////////////// CLK_PCKENR1|=(1<<7);//Включаем тактирование для TIM1 TIM1_init(); //Настройка ногодрыга для проверки таймера// PB_DDR|=(1<<5); PB_CR1|=(1<<5); PB_CR2|=(1<<5); //////////////////////////////////////////// while(1) { PB_ODR&=~(1<<5); delay_us(1000);//1сек PB_ODR|=(1<<5); delay_us(1000);//1сек } return 0; }
  18. Есть сигнал от датчика, который передается по "воздуху", перехват сделал при помощи таймера и условия в прерывании, на данном этапе интересно применить захват и реализовать при помощи его!
  19. gafbich

    Stm32F0Discovery (Stm32F051R8T6)

    Прошу помощи, не могу разобраться с режимом захвата таймера. как правильно настроить! Читал разные статьи, но понимания от этого не добавилось!
  20. Добрый день, необходим перевод страниц (с 6 по 10), текста мало в основном картинки, из технической документации на трансивер Si4432. AN463.pdf
  21. Проблема с настройкой внешнего прерывания на PA1 Настройки прерывания: #include "stm32f0xx_exti.h" #include "stm32f0xx_gpio.h" #include "stm32f0xx_rcc.h" #include "stm32f0xx_misc.h" #include "stm32f0xx_syscfg.h" EXTI_InitTypeDef exti; NVIC_InitTypeDef nvic; GPIO_InitTypeDef gpio; void RCC_Set(void); void exti_setting(void); void GPIO_Set(void); //############################################################// //##################Включаем тактирование#####################// //############################################################// void RCC_Set(void) { RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOA,ENABLE); RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOC,ENABLE); } //############################################################// //############################################################// //############################################################// //############################################################// //#######################Настройка GPIO#######################// //############################################################// void GPIO_Set(void) { gpio.GPIO_Mode=GPIO_Mode_OUT; gpio.GPIO_OType=GPIO_OType_PP; gpio.GPIO_Pin=GPIO_Pin_8|GPIO_Pin_9; gpio.GPIO_PuPd=GPIO_PuPd_NOPULL; gpio.GPIO_Speed=GPIO_Speed_Level_2; GPIO_Init(GPIOC,&gpio); gpio.GPIO_Mode=GPIO_Mode_IN; gpio.GPIO_OType=GPIO_OType_PP; gpio.GPIO_Pin=GPIO_Pin_1; gpio.GPIO_PuPd=GPIO_PuPd_NOPULL; gpio.GPIO_Speed=GPIO_Speed_Level_2; GPIO_Init(GPIOA,&gpio); } //############################################################// //############################################################// //############################################################// //############################################################// //###################Настройка Прерывания#####################// //############################################################// void exti_setting(void) { exti.EXTI_Line=EXTI_Line1; exti.EXTI_LineCmd=ENABLE; exti.EXTI_Mode=EXTI_Mode_Interrupt; exti.EXTI_Trigger=EXTI_Trigger_Rising_Falling; EXTI_Init(&exti); nvic.NVIC_IRQChannel=EXTI0_1_IRQn; nvic.NVIC_IRQChannelCmd=ENABLE; nvic.NVIC_IRQChannelPriority=0; NVIC_Init(&nvic); SYSCFG_EXTILineConfig(EXTI_PortSourceGPIOA,EXTI_PinSource1); NVIC_EnableIRQ(EXTI0_1_IRQn); } //############################################################// //############################################################// //############################################################// int main(void) { RCC_Set(); GPIO_Set(); exti_setting(); while(1) { } } //############################################################// //##################Обработчик Прерывания#####################// //############################################################// void EXTI0_1_IRQHandler(void) { GPIOC->ODR^=GPIO_Pin_8; //Инвертируем состояние светодиода EXTI_ClearITPendingBit(EXTI_Line1); } //############################################################// //############################################################// //############################################################// Чтобы не подать на PA1, обработчик не отрабатывает! Что не так, что я упустил?
×
×
  • Создать...