Программирование

Вопросы по программированию Arduino.

изменение аргумента функции

можно ли изменять значение аргумента функции внутри функции?

void Func(unsigned char arg1)
{
    arg1 = 0;
}

изменится ли значение переменной, которую я передам в качестве аргумента или нет?

не правильно работает время

Скажите, пожалуйста, а вот такая программа:

SIM800-900 tcp/ip

Здравствуйте. 

Долго изучал глубину вопроса, цель, отсыл данных через GPRS. Возможно ли с модулями SimCOM 800-900 серий отсылать используя не АТ команды, а именно tcp/ip стэк?

 

спасибо

STM32 для начала

Не подскажете, какую плату для макетирования взять, если STM32 ни разу в руках не держал?

слишком долго переходит в сон мк

Здравствуйте.

понадобилось работать со сном мк atmega328. тактируюсь от внешнего кварца 8 МГц с делителем на 8 во фьюзах.

программа типа:

void loop() {
      digitalWrite(test_pin, f);
delay(500);
f=!f;
}

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

но стоит реализовать программу через сон:

Как сделать чтоб дисплей обновлялся каждую сек

Например я на дисплей позазываю температуру, но она обновляется только когда я перезагружаю ардуино 

Получение данных через монитор порта

byte Str[10];

byte i=0;
void setup()  
{ 
  Serial.begin(9600); 
} 

void loop()  
{ 
  if (Serial.available() > 0)  
 {
  byte k= Serial.available(); 
 for ( i=0; i < k-1; i++) 
 {Str[i] = Serial.read();Serial.println(Str[i]);Serial.println((char)Str[i]); }
 
 } 
  delay(100);
 
}  

Вопрос про Монитор порта

Это можно исправить?

Nano v3 и GPS Neo-6m

Добрый день !

Буду благодарен за помощь с Ардуинкой (я полный чайник - только начал этим заниматься).

Ситуация такая: сделал схемку на Uno, GPS и OLED - программа выдает на экран координаты, время итд. ВСЕ РАБОТАЕТ

недавно получил NANO v3 (китайский на CH340G) и решил перенести всю схему на неё (плоско-параллельный перенос на такие же пины) - и оно НЕ работает (дисплей работает, но не обновляет текст, хотя GPS работатет и словил спутники - Led горит)

 

Непонятки с оптимизацией и временем выполнения STM32

Имеется следующий код:
#define LCD_CS        0x1000 // PB12       
#define LCD_WR        0x4000 // PB14
#define DATA_MASK     0x07f8 // PB3-PB10

void LCD_Clear(unsigned int c)
{	
  GPIOB_BASE->BRR = LCD_CS;
  Address_set(0,0,239,319);
  for(unsigned int i=0; i<(320*240); i++){  //  для  1 пикселя за итерацию
      GPIOB_BASE->ODR = 0xa803 | ((c >> 5) & DATA_MASK); \
      GPIOB_BASE->BSRR = LCD_WR;                         \
      GPIOB_BASE->ODR = 0xa803 | ((c << 3) & DATA_MASK); \