Raceautoelectro
Солнце 2 июля 2017 г., 8:36 вечера
Привет, у меня есть небольшая проблема с таймерами; Таймер меняется, я - это нечто простое, но я не нахожу его ...
https: // www.YouTube.com/watch?V = I-NWHMR ... e = youtu.быть Мой код
https: // www.YouTube.com/watch?V = I-NWHMR ... e = youtu.быть Мой код
char *myStr="Hello world";
Стивестронг
Пн, 3 июля 2017 г. 12:46
Вы поймете проблему из своего описания?
Потому что я этого не сделаю.
Потому что я этого не сделаю.
Raceautoelectro
Пн, 3 июля 2017 г., 18:40
Stevestrong, Timer1.setPeriod (5 * 1000); не ведет себя так, как должно ... Период меняется, в фильме вы можете увидеть сигнал по сравнению с нулевым крестом . Извините за мой плохой английский, надеюсь, вы понимаете на этот раз .
Raceautoelectro
Пн, 3 июля 2017 г. 18:54
Я тоже пытаюсь
waitfor 0 /t 1 2> NUL
%1\dfu-util.exe -l -d %2 -a %3 -s %4 -D %5
%1\dfu-util.exe -l -d %2 -a %3 --reset-stm32
Пито
Пн, 3 июля 2017 г., 19:36
Таким образом, желтый сигнал представляет собой выход ZCD (детектор с нулевым детектором), а на падающем крае сигнала ZCD (PB1 ZCD_PIN, вход) вы хотите запустить таймер1, такой как он дает активный низкий сигнал (PB0 LED_PIN, выход) длины XX Microsecs (синий сигнал).
Но активная низкая продолжительность Blue_Signal (LED_PIN) меняется (он растет со временем) - это проблема?
Но активная низкая продолжительность Blue_Signal (LED_PIN) меняется (он растет со временем) - это проблема?
Raceautoelectro
Пн, 3 июля 2017 г., 19:58
Пито, эксплуатационно , И после роста он становится более низкой ценности и снова начнет расти снова .
Пито
Пн, 3 июля 2017 г., 8:21 вечера
Что, когда вы добавляете перед настройкой ()
Sketch uses 27,180 bytes (1%) of program storage space. Maximum is 2,097,152 bytes.
Global variables use 14,680 bytes of dynamic memory.
Raceautoelectro
Пн, 3 июля 2017 г. 20:37
Пито, не работает eeeuk: 13: ошибка: 'timer1' не называет типа
Таймер1.setCompare (timer_ch1, 1);
^
«Timer1» не называет тип
Таймер1.setCompare (timer_ch1, 1);
^
«Timer1» не называет тип
ZMEMW16
Пн, 3 июля 2017 г., 8:58 вечера
та же ошибка
Стивен
Стивен
Пито
Пн, 3 июля 2017 г., 21:06
Ребята,
arm-none-eabi-objcopy -I binary -O elf32-big generic_boot20_hytiny.bin generic_boot20_hytiny.elf
Raceautoelectro
Пн, 3 июля 2017 г., 21:17
Я попробовал все комбинацию, мой разум с любопытством способен )) (все еще есть много для обучения) . Я также пытаюсь попробовать Hardwaretimer Timer1 (1); но это не будет компилироваться (C: \ users \ raceautoelectroctro \ documents \ arduino \ ardware \ arduino_stm32 \ stm32f1 \ cores \ maple/hardwaretimer.CPP: 48: множественное определение `timer1 ') ... Я также постараюсь удалить, переместить то, что я думаю, что это конфликты ... Но не повезло .
Пито
Пн, 3 июля 2017 г., 21:25
Будьте креативны
Это компилируется здесь:
Это компилируется здесь:
# jlink upload
tools.jlink_upload.cmd=jlink_upload
tools.jlink_upload.cmd.windows=jlink_upload.bat
tools.jlink_upload.path.windows={runtime.hardware.path}/tools/win
tools.jlink_upload.path.macosx={runtime.hardware.path}/tools/macosx
tools.jlink_upload.path.linux={runtime.hardware.path}/tools/linux
tools.jlink_upload.upload.params.verbose=-d
tools.jlink_upload.upload.params.quiet=
tools.jlink_upload.upload.pattern="{path}/{cmd}" "{build.path}/{build.project_name}.bin"
Raceautoelectro
Пн, 3 июля 2017 г., 21:40
Pito, с вами код ведет себя как мой код, полное представление о проблеме: https: // www.YouTube.com/watch?v = e5mkb-g ... e = youtu.быть
Пито
Пн, 3 июля 2017 г., 21:44
Поэтому, когда он достигает 5 мс (на основе вашего видео), он сбрасывается в ноль.
Raceautoelectro
Пн, 3 июля 2017 г. 9:50 вечера
Пито, да и хочу все время оставаться на 5 мс
Пито
Пн, 3 июля 2017 г. 9:51 вечера
Попробуйте с этим:
// Touch screen library with X Y and Z (pressure) readings as well
// as oversampling to avoid 'bouncing'
// (c) ladyada / adafruit
// Code under MIT License
// Ported to STM32 by Jaret Burkett https://github.com/jaretburkett
#ifndef _ADAFRUIT_TOUCHSCREEN_STM_H_
#define _ADAFRUIT_TOUCHSCREEN_STM_H_
#include
class TSPoint {
public:
TSPoint(void);
TSPoint(int16_t x, int16_t y, int16_t z);
bool operator==(TSPoint);
bool operator!=(TSPoint);
int16_t x, y, z;
};
class TouchScreen {
public:
TouchScreen(uint8_t xp, uint8_t yp, uint8_t xm, uint8_t ym);
TouchScreen(uint8_t xp, uint8_t yp, uint8_t xm, uint8_t ym, uint16_t rx);
bool isTouching(void);
uint16_t pressure(void);
int readTouchY();
int readTouchX();
TSPoint getPoint();
int16_t pressureThreshhold;
private:
uint8_t _yp, _ym, _xm, _xp;
uint16_t _rxplate;
};
#endif
Raceautoelectro
Пн, 3 июля 2017 г. 9:59 вечера
Без изменений в областях Изменить: время уменьшается ... Freo от 5 мс до 0 .... Затем 5 снова
Пито
Пн, 3 июля 2017 г. 22:11
Я обновил источник, попробуйте, пожалуйста.
Не уверен, как
таймер.setCompare (timer_ch1, 1);
Работа.
Попробуйте прокомментировать это.
Не уверен, как
таймер.setCompare (timer_ch1, 1);
Работа.
Попробуйте прокомментировать это.
Raceautoelectro
Пн, 3 июля 2017 г. 22:18
Такое же задача растет (от 0 до 5 с, затем сбрасывается), с линией, которое растут, время меньше (это требует меньше, чем до 0 до 5 мс)
Пито
Пн, 3 июля 2017 г. 22:23
И попробуй, что происходит с
таймер.setCompare (timer_ch1, 0);
Также попробуйте
таймер.setCompare (timer_ch1, 0);
Также попробуйте
#include
//#include // Hardware-specific library
//Adafruit_TFTLCD_8bit_STM32 tft;
// Touch screen library with X Y and Z (pressure) readings as well
// as oversampling to avoid 'bouncing'
// This demo code returns raw readings, public domain
#include
#include
#define YP PA2 // must be an analog pin
#define XM PA1 // must be an analog pin
#define YM PB8 // can be a digital pin
#define XP PB9 // can be a digital pin
// For better pressure precision, we need to know the resistance
// between X+ and X- Use any multimeter to read it
// For the one we're using, its 300 ohms across the X plate
TouchScreen ts = TouchScreen(XP, YP, XM, YM);
/************************** SETUP ******************************/
void setup(void) {
Serial.begin(9600);
} /* Setup */
/*************************** LOOP ********************************/
void loop(void) {
// a point object holds x y and z coordinates
// pinMode(PA3,OUTPUT);
// digitalWrite(PA3,HIGH);
/*
pinMode(PA1, INPUT_PULLDOWN);
pinMode(PA1, INPUT_ANALOG);
pinMode(PA2, INPUT_PULLUP);
pinMode(PA2, INPUT_ANALOG);
*/
TSPoint p = ts.getPoint();
// Serial.print("A0 = "); Serial.print(analogRead(PA0));
Serial.print("\tA1 = "); Serial.print(analogRead(PA1));
Serial.print("\tA2 = "); Serial.println(analogRead(PA2));
// Serial.print("\tA3 = "); Serial.println(analogRead(PA3));
// we have some minimum pressure we consider 'valid'
// pressure of 0 means no pressing!
if (p.z > ts.pressureThreshhold) {
Serial.print("X = "); Serial.print(p.x);
Serial.print("\tY = "); Serial.print(p.y);
Serial.print("\tPressure = "); Serial.println(p.z);
}
/*
Serial.print("\tX = "); Serial.print(p.x);
Serial.print("\tY = "); Serial.print(p.y);
Serial.print("\tPressure = "); Serial.println(p.z);
*/
delay(2000);
} /* Loop */
Raceautoelectro
Пн, 3 июля 2017 г. 22:37
таймер.setCompare (timer_ch1, 0); ничего не меняет и с
#include
Raceautoelectro
Пн, 3 июля 2017 г. 22:47
Этот код работает, большое спасибо, пито !
#include
#include
#include
SPIClass SPI_2(2); //Create an instance of the SPI Class called SPI_2 that uses the 2nd SPI Port
#include
#include "streaming.h"
/****** Display stuff *******/
#include "Adafruit_GFX_AS.h"
#include "Adafruit_ILI9341_STM.h"
#define TFT_DC PB6 //Data/Command
#define TFT_CS PB7 //Chip select
#define TFT_RST PB9
/*For hardware SPI channel 1:
* PA5 SCK
* PA6 MISO
* PA7 MOSI
*/
// Create TFT display of the name tft
Adafruit_ILI9341_STM tft = Adafruit_ILI9341_STM(TFT_CS, TFT_DC, TFT_RST);
int w = 0;
int h = 0; //w & h of the tft to make calculations easier
/****** Touch screen stuff ******/
#include
#define TS_CS PB8
XPT2046_Touchscreen ts(TS_CS);
/****** Temp reading stuff ********/
#include
#define MAX_CS PB12
//SPI.setModule(2);
MAX31855 thermocouple(MAX_CS);
Пито
Втюю 04 июля 2017 г., 7:32 утра
Большой!!
Дэнниф
Втюл 04 июля 2017 г., 17:13
Мне кажется, что для чего -то такого простого код чрезмерно сложный.
Ваша задача может быть сломана до двух частей:
1) После того, как будет обнаружен нулевой пересечение, перезапустите таймер и сбросьте выходные контакты;
2) Как только таймер переполнится, переверните выходной штифт. Нет смысла работать на таймере здесь вообще.
Это кусок кода, который я написал для Dimmer (Cosine Mode Commutation для линейного светового вывода). Я воспроизвел соответствующую часть здесь для демонстрации.
Ваша задача может быть сломана до двух частей:
1) После того, как будет обнаружен нулевой пересечение, перезапустите таймер и сбросьте выходные контакты;
2) Как только таймер переполнится, переверните выходной штифт. Нет смысла работать на таймере здесь вообще.
Это кусок кода, который я написал для Dimmer (Cosine Mode Commutation для линейного светового вывода). Я воспроизвел соответствующую часть здесь для демонстрации.
SPI.beginTransaction(SPISettings(, ...));
Rogerclark
Вт, 04 июля 2017 г., 21:56
Это действительно интересно..
Спасибо за публикацию.
Я думаю, что написал что -то подобное, но у меня были небольшие проблемы с десятью таймером, изначально называемыми ISR, когда начался код.
Интересно, какое оборудование вы используете для обнаружения нуля. Я нашел проблемы с простого оборудования E.глин. Просто оптокупа, так как она может вмешаться в пользу эксплуатации, если у вас шумная электрическая нагрузка на одну и ту же схему входной сети.
Я также проделал некоторую работу по сопоставлению доли власти с доли задержки, чтобы я мог, например, выбрать определенный процент власти.
Потому что задержка 25 % не приводит к 75 % мощности из -за формы синусоидальной волны.
Но, в конце концов, я не использовал проект, и я не совсем уверен, куда я поместил код
Спасибо за публикацию.
Я думаю, что написал что -то подобное, но у меня были небольшие проблемы с десятью таймером, изначально называемыми ISR, когда начался код.
Интересно, какое оборудование вы используете для обнаружения нуля. Я нашел проблемы с простого оборудования E.глин. Просто оптокупа, так как она может вмешаться в пользу эксплуатации, если у вас шумная электрическая нагрузка на одну и ту же схему входной сети.
Я также проделал некоторую работу по сопоставлению доли власти с доли задержки, чтобы я мог, например, выбрать определенный процент власти.
Потому что задержка 25 % не приводит к 75 % мощности из -за формы синусоидальной волны.
Но, в конце концов, я не использовал проект, и я не совсем уверен, куда я поместил код
Дэнниф
Ср. 5 июля 2017 г. 15:36
Я использовал резистор. Первоначально это было для диммера, а затем регулируемого источника питания.
Схема по существу такая же, как и ST в примечании применения в калибере HSI. Код в значительной степени следует за применением применения микрочипов на Dimmers.
Код прост. Единственное, что интересно - это офлайн расчет таблицы поиска вверх.
Надеюсь, это поможет.
Схема по существу такая же, как и ST в примечании применения в калибере HSI. Код в значительной степени следует за применением применения микрочипов на Dimmers.
Код прост. Единственное, что интересно - это офлайн расчет таблицы поиска вверх.
Надеюсь, это поможет.