Переход от Ардуинки к отдельному кристаллу

Vadim0312
Offline
Зарегистрирован: 27.11.2016

Немного понял как писать программы, пользоваться загрузчиком, создал на Ардуине несколько игрушек. Пришла пора брать отдельный контроллер. Собрал схему с минимальной обвязкой, залил HEX на Ардуине  в контроллер. Поставил на плату и всё, тишина. Снял камень поставил в Ардуину. Живой. Питание на плате 5 В. Кварц 16 МГц. 4 порта на сетодиоды подвесил. Ничего....  Что я не учет, или не залал чего то ещё.

Прошу помощи коллетивного разума.

Valera19701
Valera19701 аватар
Offline
Зарегистрирован: 18.10.2015

гадалки спились, хрустальный шар сломался,.... где схема , скетч?

Клапауций 234
Offline
Зарегистрирован: 24.10.2016

Vadim0312 пишет:

Немного понял как писать программы, пользоваться загрузчиком, создал на Ардуине несколько игрушек. Пришла пора брать отдельный контроллер. Собрал схему с минимальной обвязкой, залил HEX на Ардуине  в контроллер. Поставил на плату и всё, тишина. Снял камень поставил в Ардуину. Живой. Питание на плате 5 В. Кварц 16 МГц. 4 порта на сетодиоды подвесил. Ничего....  Что я не учет, или не залал чего то ещё.

Прошу помощи коллетивного разума.

брехня.

Vadim0312
Offline
Зарегистрирован: 27.11.2016

Схема самая простая . Что то не получается загрузить графическое изображение.  А вот скетч :

const int POT=0; // Аналоговый вход A0 для подключения потенциометра
 int valpot = 0; // переменная для хранения значения потенциометра
 // список контактов подключения светодиодной шкалы
 const int pinsled[8]={4,5,6,7,8,9,10,11};
 int countleds = 0; // переменная для хранения значения шкалы
int randNumber=0 ;
int caseVale=0 ;
 
void setup()
 {
  // Serial.begin(9600);
   
  randomSeed(analogRead(0));
 
 for(int i=0;i<10;i++)
 {
 // Сконфигурировать контакты подсоединения шкалы как выходы
 pinMode(pinsled[i],OUTPUT);
 digitalWrite(pinsled[i],LOW);
 }
 }
 
void loop()
 { 
  
   randNumber = random(1023);
  
  //delay(100);
 valpot = analogRead(POT); // чтение данных потенциометра
 // масштабируем значение к интервалу 0-8
 countleds=map(randNumber,100,800,0,8);
    
   // Serial.println (countleds) ;
 switch (countleds) 
{
       case 9 :
 goto Ser;
        break;
        case 2 :
    // код для выполнения
   goto Ser;
    break;
        case 3 :
    // код для выполнения
     goto Ser;
  break;
     case 4 :
    // код для выполнения
   goto Ser;
   break;
     case 5 :
    // код для выполнения
  goto Ser;
   break;
       case 6 :
    // код для выполнения
  goto Ser;
   break;
    case 7 :
    // код для выполнения
  goto Ser;
   break;
    case 8 :
    // код для выполнения
   goto Ser;
   break;
    case 1 :
    // код для выполнения
   goto Ser;
   break;
 
Ser: ;
//Serial.print ("=== ") ;
  // Serial.print( countleds) ;
//Serial.println (" === ") ;
   //delay(1000);
}
 
// зажигаем количество светодиодов, равное countled
 for(int i=0;i<8;i++){
 //delay(500);
 
 if(i<countleds) // зажигаем светодиод шкалы
 {digitalWrite(pinsled[i],HIGH);
 delay (50);
 }
else // отрабатываем цикл светодиод шкалы
delay(10);
 }  
 
 
 
 for(int i=8;i>0;i--){
  digitalWrite(pinsled[i],LOW);
 delay(30);
 }
 }
 
 
в ардуине всё клёво, а в железе что то не то..
Vadim0312
Offline
Зарегистрирован: 27.11.2016

Брехня на какую тему...что то не понятно

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

Брехня - к тому, что так не бывает. Если он работает в ардуине, то работает и на отдельной плате.

А что касается " не получается загрузить картинку" - учитесь. Проблема наверняка в Вашей "самой простой" схеме, так будьте любезны её показать.

Да и скетчи так не выкладываются. Выложите как положено.

Valera19701
Valera19701 аватар
Offline
Зарегистрирован: 18.10.2015

AVCC pin чипа куда подключен?

Vadim0312
Offline
Зарегистрирован: 27.11.2016

А что касается " не получается загрузить картинку" - учитесь. Проблема наверняка в Вашей "самой простой" схеме, так будьте любезны её показать.

Да и скетчи так не выкладываются. Выложите как положено.

Уж и не знаю как фотку выложить...HELP !

Vadim0312
Offline
Зарегистрирован: 27.11.2016

[quote=Valera19701]

AVCC pin чипа куда подключен?

Как положенно. к  +5В ...Вот кварцы не запустились это точно...

 

Valera19701
Valera19701 аватар
Offline
Зарегистрирован: 18.10.2015

Vadim0312 пишет:

AVCC pin чипа куда подключен?

Как положенно. к  +5В ...Вот кварцы не запустились это точно...

Кварцы?, там всего один кварц и два конденсатора по 22пф

dimax
dimax аватар
Offline
Зарегистрирован: 25.12.2013

Vadim0312,   ваш рассказ в ушах коллективного разума звучит примерно так: "немного научился водить автомобиль, пользоваться переключателем скоростей. Пришла пора собрать свой автомобиль, собрал в минимальной комплектации, залил бензин. Сажусь в машину -и тишина. Сел в другой автомобиль -всё в порядке. Что я не учёл или не сделал чего?"

Vadim0312
Offline
Зарегистрирован: 27.11.2016

Может вообще без кварца сделать ?

Valera19701
Valera19701 аватар
Offline
Зарегистрирован: 18.10.2015

Vadim0312 пишет:

Может вообще без кварца сделать ?

можно

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

Vadim0312 пишет:

Да и скетчи так не выкладываются. Выложите как положено.

Уж и не знаю как фотку выложить...HELP !

Выкладывание скетчей.

Про картинку, давите на линку "Форум" в верху. Справа под ником увидите "Мой Профиль". Заходите туда. Там есть File Browser. Там разберётесь как выложить картинку на сервер. Потом в сообщении давите "Вставить картинку" и "Выбрать на сервере".

Vadim0312
Offline
Зарегистрирован: 27.11.2016

Точно...один кварц прошит...пошло!!!! Вах!!! Всем спасибо !!!!

 

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

Vadim0312 пишет:

Точно...один кварц прошит...пошло!!!! Вах!!! Всем спасибо !!!!

Переведите с русского на русский

Voodoo Doll
Voodoo Doll аватар
Offline
Зарегистрирован: 18.09.2016

Vadim0312, выводы VCC, AVCC должны идти к питанию, GND, AGND если он есть - к земле, все. Выводов питания/земли несколько, подключены должны быть все до единого.

Выводы XTAL1, XTAL2 должны вести к кварцу, а от выводов кварца - уже к конденсаторам, и быть как можно короче. Провод земли, соединённый с конденсаторами должен быть отведён от одного из выводов GND, ничто больше не должно соединяться с ним, чтобы по этому участку земляного провода не тёк большой ток. То есть он должен быть отростком, как аппендицит.

На выводе Reset должна быть стабильная единица, например резистор 10 кОм к плюсу.

На проводах питания должен висеть керамический конденсатор 0.1 мкФ, непосредственно возле микросхемы, и вообще, такой конденсатор полагается на каждый корпус.

Yarik.Yar
Offline
Зарегистрирован: 07.09.2014
Клапауций 234
Offline
Зарегистрирован: 24.10.2016

Voodoo Doll пишет:

Выводы XTAL1, XTAL2 должны вести к кварцу, а от выводов кварца - уже к конденсаторам, и быть как можно короче. Провод земли, соединённый с конденсаторами должен быть отведён от одного из выводов GND, ничто больше не должно соединяться с ним, чтобы по этому участку земляного провода не тёк большой ток. То есть он должен быть отростком, как аппендицит.

без конденсаторов, тоже, всё работает - странно, но факт.

*и, именно конденсаторы вносят нестабильность в частоту работы кварцевого генератора.

diger67
Offline
Зарегистрирован: 25.07.2015

Клапауций 234 пишет:

Voodoo Doll пишет:

Выводы XTAL1, XTAL2 должны вести к кварцу, а от выводов кварца - уже к конденсаторам, и быть как можно короче. Провод земли, соединённый с конденсаторами должен быть отведён от одного из выводов GND, ничто больше не должно соединяться с ним, чтобы по этому участку земляного провода не тёк большой ток. То есть он должен быть отростком, как аппендицит.

без конденсаторов, тоже, всё работает - странно, но факт.

*и, именно конденсаторы вносят нестабильность в частоту работы кварцевого генератора.

Все зависит от резонатора, т.е. от его емкости. Я подключал как то 32 кГц к stm, там обязательно подключать емкости от 6.3 до 16 пф, а по факту заработало и так. Кварц имел реактивную емкость 16 пф плюс видимо емкость дорожек, вот и завелся генератор часов.