Чем прошить AT89C2051
Чем прошить AT89C2051
День добрый
Решил собрать Термометр на AT89C2051 и DS18B20, возник вопрос чем прошить микроконтроллер.
В общем посоветуйте какой программатор приобрести (в ПК нет ни COM, ни LPT).
Погуглив нашёл это но там в списке поддерживаемых микроконтроллеров нету AT89C2051.
Заранее спасибо
Решил собрать Термометр на AT89C2051 и DS18B20, возник вопрос чем прошить микроконтроллер.
В общем посоветуйте какой программатор приобрести (в ПК нет ни COM, ни LPT).
Погуглив нашёл это но там в списке поддерживаемых микроконтроллеров нету AT89C2051.
Заранее спасибо
- Реклама
- Alter Ego
- Сверлит текстолит когтями
- Сообщения: 1119
- Зарегистрирован: Ср май 01, 2013 22:37:08
- Откуда: Украина
Re: Чем прошить AT89C2051
Вместо AT89C2051 удобнее использовать AT89S2051, с нею могут справиться многие программаторы.
- Engineer_Keen
- Друг Кота
- Сообщения: 3872
- Зарегистрирован: Пт янв 29, 2010 10:27:40
- Откуда: Москва
Re: Чем прошить AT89C2051
Потому что AT80C2051 это не авр, а MCS-51, и внутрисхемно они не прошиваются. Для них нужен параллельный программатор (wizardprog, chipprog и подобные). Или ищите, как уже сказали AT89S2051.Neolane писал(а):Погуглив нашёл это но там в списке поддерживаемых микроконтроллеров нету AT89C2051.
Re: Чем прошить AT89C2051
Можно пример программатора?Alter Ego писал(а): удобнее использовать AT89S2051, с нею могут справиться многие программаторы.
Последний раз редактировалось Neolane Пн окт 21, 2013 15:29:58, всего редактировалось 1 раз.
Re: Чем прошить AT89C2051
Если просто нужен термометр с мк и таким датчиком, то сделайте лучше термометр на ATTiny2313 и DS18B20, хоть вот LED с ОК,с ОА, ее прошить легче, чем эту древность и кварц не нужен. Ну а если хочется помучаться с 89С2051 - то делайте программатор к немуNeolane писал(а):Решил собрать Термометр на AT89C2051 и DS18B20,
- Реклама
Re: Чем прошить AT89C2051
Спасибо, да нет, термометр не принципиально, просто хотелось что нибудь своими кривыми ручонками сделать)Martin76 писал(а):Если просто нужен термометр с мк и таким датчиком, то сделайте лучше термометр на ATTiny2313 и DS18B20, хоть вот LED с ОК,с ОА, ее прошить легче, чем эту древность и кварц не нужен. Ну а если хочется помучаться с 89С2051 - то делайте программатор к немуNeolane писал(а):Решил собрать Термометр на AT89C2051 и DS18B20,
Так что лучше на ATTiny2313 и подобных буду оттачивать скил)
Вам нужно прочитать Правила форума.
http://radiokot.ru/forum/viewtopic.php?f=19&t=6538
Нарушение Правил форума п. 2.7
aen
- Ariadna-on-Line
- Это не хвост, это антенна
- Сообщения: 1482
- Зарегистрирован: Вс май 13, 2012 00:01:54
Re: Чем прошить AT89C2051
Собирал программатор. TAFE или TEFI - уже не помню. Работал в ICProg вроде. Давно было. Сам строил плату. Щас поищу.
- Вложения
-
- TEFIboard.GIF
- (25.58 КБ) 1589 скачиваний
-
- TEFIprog.GIF
- (23.87 КБ) 1519 скачиваний
- Ariadna-on-Line
- Это не хвост, это антенна
- Сообщения: 1482
- Зарегистрирован: Вс май 13, 2012 00:01:54
Re: Чем прошить AT89C2051
Вот на моём любимом ОрКаде
- Вложения
-
- OrCad TEFI.MAX.gif
- (239.8 КБ) 869 скачиваний
- Panda_Y2K
- Грызет канифоль
- Сообщения: 258
- Зарегистрирован: Пт сен 23, 2011 06:44:41
- Откуда: ЮФО
- Контактная информация:
Re: Чем прошить AT89C2051
Вот программатор

продаю
http://radiokot.ru/forum/viewtopic.php? ... 5&start=20
и тут же контроллеры
а вот термометр (программа для него)
схема

работает уже сто лет.
P.S. забыл - вот программа для программатора (Blowit) исправленная, рабочая.

продаю
http://radiokot.ru/forum/viewtopic.php? ... 5&start=20
и тут же контроллеры
а вот термометр (программа для него)
Спойлер
Код: Выделить всё
/*******************************************************************
Termometr project
by Panda
Mart 2010 year
Project information:
Microprocessor type AT89C2051
Flash size 2Kbyte
Cristal 11.0592 Mhz
Led indicator Kingbright BC56-12EWR Red
*******************************************************************/
#include <reg2051.h>
#define A P1_6 //Segment A - P1.6
#define B P1_7 //Segmebt B - P1.7
#define C P1_1 //Segment C - P1.1
#define D P1_3 //Segment D - P1.3
#define E P1_4 //Segment E - P1.4
#define F P1_5 //Segment F - P1.5
#define G P1_0 //Segment G - P1.0
#define H P1_2 //Segment H - P1.2
#define com1 P3_3 //Common1 - P3.3
#define com2 P3_5 //Common2 - P3.5
#define com3 P3_4 //Common3 - P3.4
#define XTAL 11059200
//ABCDEF 1111 1010 {0}
//BC 1000 0010 {1}
//ABDEG 1101 1001 {2}
//ABCDG 1100 1011 {3}
//BCFG 1010 0011 {4}
//ACDFG 0110 1011 {5}
//ACDEFG 0111 1011 {6}
//ABC 1100 0010 {7}
//ABCDEFG 1111 1011 {8}
//ABCDFG 1110 1011 {9}
//ABCEFG 1111 0011 {A}
//CDEFG 0011 1011 {B}
//ADEF 0111 1000 {C}
//BCDEG 1001 1011 {D}
//ADEFG 0111 1001 {E}
//AEFG 0111 0001 {F}
//ACDEF 0111 1010 {G}
//BCEFG 1011 0011 {H}
//BCD 1000 1010 {J}
//DEFG 0011 1001 {T}
//DEF 0011 1000 {L}
//G 0000 0001 {-}
const digit[22] ={0xFA, 0x82, 0xD9, 0xCB, 0xA3, 0x6B, 0x7B, 0xC2, 0xFB, 0xEB, 0xF3, 0x3B, 0x78, 0x9B, 0x79, 0x71, 0x7A, 0xB3, 0x8A, 0x39, 0x38, 0x01};
unsigned int TEMP;
//#define DEBUG
//#define TIME_MEASURE
sbit IO = 0xB0; //Set Port 3.0 for 1wire interface
/* ROM COMANDS */
#define READ_ROM 0x33
#define MATCH_ROM 0x55
#define SKIP_ROM 0xCC
#define SEARCH_ROM 0xF0
#define ALARM_SEARCH 0xEC
/* MEMORY FUNCTIONS */
#define WRITE 0x4E
#define READ 0xBE
#define COPY 0x48
#define CONV 0x44
//function prototipes
void _1w_write(char out);
char _1w_read(void);
char _1w_reset();
void delay(unsigned int us);
void delay(unsigned int us)
{
while(us--);
}
//function definetion
void _1w_write(char out){
char i,j;
for (j=0; j<=7;j++){
IO = 0; //set low
if(out & 0x01){ /* write '1' */
i=4;
while(i) i--; //~14 mks
IO = 1; //set high
i=25;
while(i) i--; //~55mks
}
else {
i=35;
while(i) i--; //~80mks
IO = 1; //set high
}
out = out >> 1;
}
}
char _1w_read(void){
char i,j;
char t = 0;
//out 0 or input without pullup
for(i=0; i<=7; i++){
IO = 0; // set output 0;
j=0;
IO = 1; //set out through 1 mks
j=3;
while(j) j--; /* 10us delay */
t>>=1; /*next bit */
if(IO == 1)
t |= 0x80;
else
t &= 0x7f;
j=30;
while(j) j--; /* 66us delay */
}
return t;
}
char _1w_reset(){
unsigned char i;
unsigned char status;
IO = 0; //reset send
i=250;
while(i) i--; //~544mks
IO = 1;
i=35;
while(i) i--; //~77mks
/* wait for presence pulse */
/* read presence pulse */
if (IO)
status = 0;
else
status = 1;
i=100; /*wait for idle */
while(i--);
return status;
}
void demo(void)
{
//switch off all segment on led
P1=0;
delay(2000);
A=1;
delay(2000);
A=0;
B=1;
delay(2000);
B=0;
C=1;
delay(20000);
C=0;
D=1;
delay(2000);
D=0;
E=1;
delay(2000);
E=0;
F=1;
delay(2000);
F=0;
}
void main(void)
{unsigned char i,DEC;
int temperature, tmp;
unsigned char T[3];
//demonstration
com1=0;
com2=1;
com3=1;
demo();
delay(200);
com1=1;
com2=0;
demo();
delay(200);
com2=1;
com3=0;
demo();
delay(200);
com3=1;
//end of demonstration
while(1)
{
//measurement
#ifdef DEBUG
tmp=_1w_reset();
for(i=0; i<255; i++)
{ P1=digit[(tmp>>4)&0x000F];
com2=0;
delay(1000);
com2=1;
P1=digit[tmp&0x000F];
com3=0;
delay(1000);
com3=1;
};
_1w_write(SKIP_ROM);
_1w_write(CONV);
delay(200);
_1w_reset();
_1w_write(SKIP_ROM);
tmp=_1w_read();
for(i=0; i<255; i++)
{ P1=digit[(tmp>>4)&0x000F];
com2=0;
delay(1000);
com2=1;
P1=digit[tmp&0x000F];
com3=0;
delay(1000);
com3=1;
};
#endif
#ifndef DEBUG
_1w_reset();
_1w_write(SKIP_ROM);
_1w_write(CONV);
while(!IO);
_1w_reset();
_1w_write(SKIP_ROM);
_1w_write(READ);
tmp=_1w_read();
temperature=_1w_read();
temperature<<=8;
tmp&=0x00FF;
temperature|=tmp;
for(i=0;i<3;i++) T[i]=0; //Clear T
if (temperature&0x8000) //less zero
{T[0]=21;
temperature=~temperature+1; //addition code
};
if(T[0]==0)
{// T>0
DEC=0;
for(i=0; i<4; i++)
{DEC|=(temperature>>i)&0x01;
DEC<<=1;
};
DEC&=0x0F;
if (DEC > 0) DEC=10/DEC;
temperature>>=4;
temperature=temperature & 0x007F;
T[0]=temperature/10;
T[1]=temperature-T[0]*10;
T[2]=DEC;
}
else{
temperature>>=4;
temperature=temperature & 0x007F;
T[0]=21;
T[1]=temperature/10;
T[2]=temperature-T[1]*10;
};
for(i=0;i<255;i++);
{com1=1;
com2=1;
com3=1;
P1=digit[T[0]];
com1=0;
delay(800);
com1=1;
P1=digit[T[1]];
if(T[0]!=21) P1|=0x04;
com2=0;
delay(800);
com2=1;
P1=digit[T[2]];
com3=0;
delay(800);
com3=1;};//end of for
#endif
};//end of while
}Спойлер
Спойлер
работает уже сто лет.
P.S. забыл - вот программа для программатора (Blowit) исправленная, рабочая.
- Вложения
-
- _Blowit.zip
- (509.38 КБ) 645 скачиваний
-
- схема.JPG
- (57.36 КБ) 9107 скачиваний
-
- 25102013367.jpg
- (123.57 КБ) 3315 скачиваний
-
- 25102013366.jpg
- (134.27 КБ) 3585 скачиваний
Купи два беляша и собери из них кошку
Labor est etiam ipse voluptas Труд уже сам по себе есть наслаждение (*Формула любви)
Ave novie-nostra ales Если один человек построил - другой завсегда разобрать может....(*Формула Любви).
Labor est etiam ipse voluptas Труд уже сам по себе есть наслаждение (*Формула любви)
Ave novie-nostra ales Если один человек построил - другой завсегда разобрать может....(*Формула Любви).
Re: Чем прошить AT89C2051
А ничего, что:Panda_Y2K писал(а):Вот программатор
продаю
Neolane писал(а):в ПК нет ни COM, ни LPT
- Panda_Y2K
- Грызет канифоль
- Сообщения: 258
- Зарегистрирован: Пт сен 23, 2011 06:44:41
- Откуда: ЮФО
- Контактная информация:
Re: Чем прошить AT89C2051
я думаю ничего.
В яндексе же пока не банят
http://yandex.ru/yandsearch?text=usb+lp ... 1%8C&lr=39
http://www.sotmarket.ru/product/perehod ... _cb20.html
http://www.kernelchip.ru/pcports/PS010.php
В яндексе же пока не банят
http://yandex.ru/yandsearch?text=usb+lp ... 1%8C&lr=39
http://www.sotmarket.ru/product/perehod ... _cb20.html
http://www.kernelchip.ru/pcports/PS010.php
Купи два беляша и собери из них кошку
Labor est etiam ipse voluptas Труд уже сам по себе есть наслаждение (*Формула любви)
Ave novie-nostra ales Если один человек построил - другой завсегда разобрать может....(*Формула Любви).
Labor est etiam ipse voluptas Труд уже сам по себе есть наслаждение (*Формула любви)
Ave novie-nostra ales Если один человек построил - другой завсегда разобрать может....(*Формула Любви).
Re: Чем прошить AT89C2051
А старые компы, с КОМами и ЛПТ, отдают задаром.Panda_Y2K писал(а):В яндексе же пока не банят
И что?
- Ariadna-on-Line
- Это не хвост, это антенна
- Сообщения: 1482
- Зарегистрирован: Вс май 13, 2012 00:01:54
Re: Чем прошить AT89C2051
Компьютер без портов LPT и COM - из ИНСТРУМЕНТА превращается в пишущую машинку + калькулятор. И не более. USB и LAN выходы -это не Выход (о тавтология!), с ними напрямую не поработаешь. Покупай FT232, как минимум. А на неё цены всё время только растут и будут расти, пока плебс на планшеты переходить будет. А потом она и из продажи вообще пропадёт, я уверен. Про LAN и упоминать не надо. Ему уже запрограммированный проц нужен. Помните про курицу и яйцо? Где взять одно без другого. Порочный круг. Ну это уже флуд...
Вот нашёл картинки.
Вот нашёл картинки.
- Вложения
-
- Image2.jpg
- (27.33 КБ) 942 скачивания
-
- Image1.jpg
- (38.67 КБ) 1122 скачивания
- Panda_Y2K
- Грызет канифоль
- Сообщения: 258
- Зарегистрирован: Пт сен 23, 2011 06:44:41
- Откуда: ЮФО
- Контактная информация:
Re: Чем прошить AT89C2051
и собственно не ясен вопрос. ну так возьмите его задаром и программируйте себе на здоровье.А старые компы, с КОМами и ЛПТ, отдают задаром.
И что?
Купи два беляша и собери из них кошку
Labor est etiam ipse voluptas Труд уже сам по себе есть наслаждение (*Формула любви)
Ave novie-nostra ales Если один человек построил - другой завсегда разобрать может....(*Формула Любви).
Labor est etiam ipse voluptas Труд уже сам по себе есть наслаждение (*Формула любви)
Ave novie-nostra ales Если один человек построил - другой завсегда разобрать может....(*Формула Любви).
- balmer
- Это не хвост, это антенна
- Сообщения: 1433
- Зарегистрирован: Вс дек 02, 2012 03:13:48
- Откуда: Калининград
Re: Чем прошить AT89C2051
Переходи на STM32, их через USB можно прошивать при желании...Ariadna-on-Line писал(а):Компьютер без портов LPT и COM - из ИНСТРУМЕНТА превращается в пишущую машинку
- Panda_Y2K
- Грызет канифоль
- Сообщения: 258
- Зарегистрирован: Пт сен 23, 2011 06:44:41
- Откуда: ЮФО
- Контактная информация:
Re: Чем прошить AT89C2051
для avr также полно программаторов под USB, вот например http://www.getchip.net/posts/056-usb-pr ... o-usbtiny/
на меге 8й был аналогичный, на ft232, да их куча...
на меге 8й был аналогичный, на ft232, да их куча...
Купи два беляша и собери из них кошку
Labor est etiam ipse voluptas Труд уже сам по себе есть наслаждение (*Формула любви)
Ave novie-nostra ales Если один человек построил - другой завсегда разобрать может....(*Формула Любви).
Labor est etiam ipse voluptas Труд уже сам по себе есть наслаждение (*Формула любви)
Ave novie-nostra ales Если один человек построил - другой завсегда разобрать может....(*Формула Любви).
Re: Чем прошить AT89C2051
Мне вот тоже не ясно, если ТС нужен программатор для 51-го, под ЮСБ, зачем советовать под ЛПТ?Panda_Y2K писал(а):и собственно не ясен вопрос
Да уже давно взял (и не один).Panda_Y2K писал(а):так возьмите его задаром
И программаторов тоже всяких есть.
Вопрос-то не я задаю.
Re: Чем прошить AT89C2051
ТС, если бы все внимательно читали, просто нужен термометр с ЛЕД и ДС18Б20. А этот антиквариат ему видимо первым на глаза попался, вот и все.
А дальше ТС пошел изучать подобные схемы на АВР.
А дальше ТС пошел изучать подобные схемы на АВР.
Re: Чем прошить AT89C2051
Это уже для другого топика.Martin76 писал(а):ТС пошел изучать подобные схемы на АВР.
А данная тема называется: "Чем прошить AT89C2051"
- Panda_Y2K
- Грызет канифоль
- Сообщения: 258
- Зарегистрирован: Пт сен 23, 2011 06:44:41
- Откуда: ЮФО
- Контактная информация:
Re: Чем прошить AT89C2051
К стати в схеме, что я привел вполне можно использовать ATTINY2313 по ногам соответствует 1:1
необходимо поменять местами конденсатор С3 и резистор Р1
Программа тоже вполне подходит, необходимо только подправить задержки (аврки поыстрее бегают
)
да, и инклюду заменить на тиньковскую
необходимо поменять местами конденсатор С3 и резистор Р1
Программа тоже вполне подходит, необходимо только подправить задержки (аврки поыстрее бегают
да, и инклюду заменить на тиньковскую
Купи два беляша и собери из них кошку
Labor est etiam ipse voluptas Труд уже сам по себе есть наслаждение (*Формула любви)
Ave novie-nostra ales Если один человек построил - другой завсегда разобрать может....(*Формула Любви).
Labor est etiam ipse voluptas Труд уже сам по себе есть наслаждение (*Формула любви)
Ave novie-nostra ales Если один человек построил - другой завсегда разобрать может....(*Формула Любви).


