Мелкие вопросы по МК и ПЛИС.

Если ваш вопрос не влез ни в одну из вышеперечисленных тем, вам сюда.
Ответить
Друг Кота
Сообщения: 4583
Зарегистрирован: Вс дек 05, 2010 06:10:34
Откуда: ЮВ

Сообщение HHIMERA »

Будем искать что??? И, главное, зачем??? :))
http://www.microchip.com/wwwproducts/De ... e=en010166
PIC16C63A/65B/73B/74B - Program Memory Type OTP
Это значит, что она однократно программируемая... то бишь - в мусор!!!
Особенно учитывая ваши познания...
"Я не даю готовых решений, я заставляю думать!"(С)
Реклама
Открыл глаза
Сообщения: 66
Зарегистрирован: Ср окт 17, 2012 08:46:23

Сообщение Sergksv08 »

Ну вы меня удивили- сразу в мусор :) а зачем же тогда однократно программируемые продают ?ну а насчет познании нельзя знать все
Реклама
Опытный кот
Аватара пользователя
Сообщения: 842
Зарегистрирован: Чт дек 31, 2009 19:27:45
Откуда: Бровари, Україна

Сообщение avreal »

Sergksv08 писал(а): pic16c73b-201
Только не -201, а -20I (Industry)
Корпус-то какой?
Если pic16c73b-201/JW, то вполне себе стираемая ультрафиолетом.

Если нет, то OTP, если при этом не свежекупленная, а выдранная откуда-то, то таки да, в морг.

Хотя можно попробовать пластик растворить и стереть :-)
Хотя если она залочена, что очень вероятно, то стирать бессмысленно, у них защита не стирается.
Программа пропадёт, а новую не зашить.
Лень в виде мании величия: «ты гений, зачем стараться?». В виде комплекса: «всё равно не выйдет, зачем упираться?». Как логика: «если достаточно, зачем знать и уметь больше?». Цель одна: остановить. Не любит тепло работающих мышц и шум работающего мозга.
Контактная информация:
Друг Кота
Сообщения: 4550
Зарегистрирован: Чт май 05, 2011 21:26:34
Откуда: Украина, Славутич

Сообщение Alexeyslav »

OTP продают только упаковками по 1000 штук при мелкосерийном производстве отлаженных конструкций. Притом еще не все из них удачно программируются.
Не представляю вообще зачем бы их продавали в розницу.
Контактная информация:
Реклама
Эиком - электронные компоненты и радиодетали
Открыл глаза
Сообщения: 66
Зарегистрирован: Ср окт 17, 2012 08:46:23

Сообщение Sergksv08 »

Корпус обычный а так просто досталась парочка вот и подумал куда приспособить .спасибо за ответы . маленький вопрос в схеме из журнала применяется attini15 но их нет в магазине т.к сняли с производства,возможно ли его заменить на attini 13 без замены прошивки?
Реклама
Друг Кота
Сообщения: 4550
Зарегистрирован: Чт май 05, 2011 21:26:34
Откуда: Украина, Славутич

Сообщение Alexeyslav »

Смотря какие особенности контроллеров используются.
Контактная информация:
Реклама
Родился
Сообщения: 3
Зарегистрирован: Пт окт 19, 2012 20:35:02

Сообщение mrSir »

помогите с подключение ATmega32A. никак не определяется программатором. до этого прошивал ATtiny2313 все ок было.

в общем:
СпойлерИзображение
Изображение
я правильно понимаю что нужно подключать ноги следующим образом MOSI=6, XTAL=не трогать, RST=9, SCK=8, MISO=7, VTG=10,30 (оба контакта?), RXD,TXD=не трогать, GND=11,31 (оба контакта?).
это верно?

может какие еще хитрости с подключение есть? где-то прочитал что надо между VCC и RST 10к резистор повесить. это важно?
Держит паяльник хвостом
Аватара пользователя
Сообщения: 920
Зарегистрирован: Сб янв 16, 2010 15:34:57
Откуда: Sevsk/Moscow

Сообщение gauss »

Вообще, минимальный набор - MOSI, MISO, SCK, RST, GND. Также надо подать напряжение питания
VCC.
:idea:
Друг Кота
Сообщения: 4550
Зарегистрирован: Чт май 05, 2011 21:26:34
Откуда: Украина, Славутич

Сообщение Alexeyslav »

И еще подать на тактовый вход(XTAL1) меандр 1Мгц, на тот случай если изначально контроллер сконфигурирован на работу от кварца или внешним тактовым импульсам.
Контактная информация:
Родился
Сообщения: 3
Зарегистрирован: Пт окт 19, 2012 20:35:02

Сообщение mrSir »

ну, не находится программатором, хоть убей. мог он откинуться если разок VCC в GND подал и наоборот?
И еще подать на тактовый вход(XTAL1) меандр 1Мгц, на тот случай если изначально контроллер сконфигурирован на работу от кварца или внешним тактовым импульсам.
покупал новый в магазине, мог он быть настроен на работу от кварца? и можно ли использовать кварц на 24МГц?
Последний раз редактировалось mrSir Сб окт 20, 2012 10:05:22, всего редактировалось 1 раз.
Открыл глаза
Сообщения: 40
Зарегистрирован: Вт янв 18, 2011 08:15:32

Сообщение Ruslan-maniak »

Приветствую. Пытаюсь на STM32 наладить УСАРТ с ДМА на приём и на отправку. На приём запустил без труда. Циклический пишет себе и пишет туда, я лишь слежу за адресацией байт в буфере. А вот с отправкой как-то туго пошло. Например, не могу ни как понять как оно работает. Как правильно организуется укладываение в буфер из которого всё отправляется. или там надо сначало уложить а потом выставить какоёто флаг типа УСАРТ забирай по возможности? И можно ли использовать ДМА в режиме и приёма и передачи на одном УСАРТЕ без переклчений? ПОведайте в общих чертах.
Родился
Сообщения: 3
Зарегистрирован: Пт окт 19, 2012 20:35:02

Сообщение mrSir »

mrSir писал(а):помогите с подключение ATmega32A. никак не определяется программатором. до этого прошивал ATtiny2313 все ок было.

в общем:
СпойлерИзображение
Изображение
я правильно понимаю что нужно подключать ноги следующим образом MOSI=6, XTAL=не трогать, RST=9, SCK=8, MISO=7, VTG=10,30 (оба контакта?), RXD,TXD=не трогать, GND=11,31 (оба контакта?).
это верно?

может какие еще хитрости с подключение есть? где-то прочитал что надо между VCC и RST 10к резистор повесить. это важно?

проблему решил переустановкой драйверов программатора =)

но все же хочу узнать насчет кварца. насколько я понял 16МГц можно максимум использовать с 32й мегой, верно?
Друг Кота
Сообщения: 4550
Зарегистрирован: Чт май 05, 2011 21:26:34
Откуда: Украина, Славутич

Сообщение Alexeyslav »

А что на этот счет говорит даташит? В нем наиболее полная информация по этому поводу, в особенности графики зависимости максимальной частоты от напряжения питания. Если твой программатор дает ей питание 3.3В то она может и на 16Мгц не заработать. Если выставлен низкочастотный режим кварцевого резонатора, она может не завестись с высокочастотным кварцем.
Контактная информация:
Потрогал лапой паяльник
Сообщения: 303
Зарегистрирован: Сб янв 08, 2011 13:48:41

Сообщение спящий »

Подскажите где косяк,10 раз перепроверил ШИМ - неработает,простой непреывный режим :cry:


Код: Выделить всё

#include <stdio.h>
#include <mega48.h>
#include <delay.h>
#include <string.h>
#include <io.h>

int x,y;

void main() { 
DDRB=0xff;
DDRD=0xff;
DDRC=0b11111110;



ADCSRA = 0b11100010; //8-aden,7-adsc,6-adate,0,1,2-частота
ADCSRB = 0b00000000;//1,2,3-непрерывный режим
ADMUX =  0b00000000;//8,7-опорное REF 
DIDR0 = 0b00000001;//ADC(0)
while(1)
{
delay_ms(2);
PORTB=ADCH;
PORTD=ADCL;

x=ADCH;
y=ADCL;
 
}

}
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2482
Зарегистрирован: Пт авг 27, 2010 05:57:06
Откуда: Тюмень

Сообщение vitalik_1984 »

Честно говоря не увидел в вашем коде изменения значения шим.Может вместо того, чтобы пихать значения в порт изменять значение шим?
И значение Ацп нужно по другому читать. Если даже не используете прерывания, то все равно нужно делать запуск преобразования, ждать пока флаг готовности результата не станет равным 1.
Контактная информация:
Потрогал лапой паяльник
Сообщения: 303
Зарегистрирован: Сб янв 08, 2011 13:48:41

Сообщение спящий »

Перепутал,конечноже АЦП.

Код: Выделить всё

#include <stdio.h>
#include <mega48.h>
#include <delay.h>
#include <string.h>
#include <io.h>

int x,y;

void main() { 
DDRB=0xff;
DDRD=0xff;
DDRC=0b11111110;


#asm("sei")  ;
ADCSRA = 0b11100010;
ADCSRB = 0b00000000;
ADMUX =  0b01100000;
DIDR0 = 0b00000001;
while(1)
{
delay_ms(2);
PORTB=ADCH;
PORTD=ADCL;

x=ADCH;
y=ADCL;
while (!( ADCSRA&(1<<4)));
}

}
так чтоли?всерно непомагает,какюудто 1 раз измерил и все,и то вроде неправильно.
Модератор
Аватара пользователя
Сообщения: 4614
Зарегистрирован: Чт мар 18, 2010 23:09:57
Откуда: Планета Земля

Сообщение Аlex »

какюудто 1 раз измерил и все
Вам же посоветовали:
vitalik_1984 писал(а):нужно делать запуск преобразования
и
vitalik_1984 писал(а):ждать пока флаг готовности результата не станет равным 1
.
Контактная информация:
Потрогал лапой паяльник
Сообщения: 303
Зарегистрирован: Сб янв 08, 2011 13:48:41

Сообщение спящий »

Да я вроде и так,сделал:
Спойлер#include <stdio.h>
#include <mega48.h>
#include <delay.h>
#include <string.h>
#include <io.h>

int x,y;

void main() {
DDRB=0xff;
DDRD=0xff;
DDRC=0b11111110;


#asm("sei") ;
ADCSRA = 0b11100010;// ЗАПУСК ПРЕОБРАЗОВАНИЯ
ADCSRB = 0b00000000;
ADMUX = 0b01100000;
DIDR0 = 0b00000001;
while(1)
{
while (!( ADCSRA&(1<<4)));//ЖДЕМ ФЛАГ ГОТОВНОСТИ

PORTB=ADCH;
PORTD=ADCL;

x=ADCH;
y=ADCL;

}

}
Друг Кота
Аватара пользователя
Сообщения: 3059
Зарегистрирован: Пн май 11, 2009 14:15:00
Откуда: СПб

Сообщение *Trigger* »

Преобразование запускается 1 раз при старте программы, а дальше в бесконечном цикле запуска нет.
Этот пост оказался полезен? Не поленись, нажми Изображение слева!
:) :)) :)))
Куплю индикаторы ИТС-1А, ИТС-1Б, ИГВ1-8х5Л, ИГПС1-222/7, ИГПС1-111/7 и подобные.
Друг Кота
Сообщения: 4550
Зарегистрирован: Чт май 05, 2011 21:26:34
Откуда: Украина, Славутич

Сообщение Alexeyslav »

Тогда уж АЦП перевести в режим автоматического запуска по окончанию преобразования.
Контактная информация:
Ответить

Вернуться в «Разные вопросы по МК»