AT89c52
AT89c52
Добрый день!
Пожалуйста подскажите в каком компиляторе можно запрограммировать AT89C52?
В Атмел студио нет этого контроллера.
Хотелось бы на Си
Спасибо!
Пожалуйста подскажите в каком компиляторе можно запрограммировать AT89C52?
В Атмел студио нет этого контроллера.
Хотелось бы на Си
Спасибо!
- Реклама
- oleg110592
- Друг Кота
- Сообщения: 3832
- Зарегистрирован: Сб сен 10, 2011 17:46:25
Re: AT89c52
IAR, Keil платные, SDCC бесплатный
- ARV
- Ум, честь и совесть. И скромность.
- Сообщения: 18561
- Зарегистрирован: Чт дек 28, 2006 08:19:56
- Откуда: Новочеркасск
- Контактная информация:
Re: AT89c52
[uquote="leftmails",url="/forum/viewtopic.php?p=3138515#p3138515"]В Атмел студио нет этого контроллера.[/uquote]это не AVR
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
Re: AT89c52
спасибо буду пробовать
- Mishany
- Электрический кот
- Сообщения: 1031
- Зарегистрирован: Чт июн 20, 2013 00:00:58
- Откуда: москва, м.Сходненская
Re: AT89c52
я в KEIL программил...
- Реклама
Re: AT89c52
скачал IAR 6.12.1, но там этой микрухи нет, пожалуйста подскажите как добавить?
- oleg110592
- Друг Кота
- Сообщения: 3832
- Зарегистрирован: Сб сен 10, 2011 17:46:25
Re: AT89c52
10.10.1
http://caxapa.ru/747170.html
скачать по прямой ссылке, потом в будку (прочесть начало топика)
http://caxapa.ru/747170.html
скачать по прямой ссылке, потом в будку (прочесть начало топика)
Re: AT89c52
[uquote="oleg110592",url="/forum/viewtopic.php?p=3138839#p3138839"]10.10.1
http://caxapa.ru/747170.html
скачать по прямой ссылке, потом в будку (прочесть начало топика)[/uquote]
Спасибо!
Установил, но к сожалению там нету серии 89, только 90:(
http://caxapa.ru/747170.html
скачать по прямой ссылке, потом в будку (прочесть начало топика)[/uquote]
Спасибо!
Установил, но к сожалению там нету серии 89, только 90:(
Re: AT89c52
Ассемблер для MCS51 от атмел:
http://www.atmel.com/tools/C51ASM.aspx
есть и другое, но либо условно-бесплатное либо "устаревшее"...
С AT89C52 необходимо специальный программатор иметь.
Более простым является использование STK200 с AT89S51/AT89S52 и специальной оболочки ISP programmer.
Как вариант отладчика реального времени - "котуинка":
http://radiokot.ru/forum/viewtopic.php? ... 1#p3104991
и одна из реализаций работы с ней:
http://radiokot.ru/forum/viewtopic.php? ... 3#p3132273

http://www.atmel.com/tools/C51ASM.aspx
есть и другое, но либо условно-бесплатное либо "устаревшее"...
С AT89C52 необходимо специальный программатор иметь.
Более простым является использование STK200 с AT89S51/AT89S52 и специальной оболочки ISP programmer.
Как вариант отладчика реального времени - "котуинка":
http://radiokot.ru/forum/viewtopic.php? ... 1#p3104991
и одна из реализаций работы с ней:
http://radiokot.ru/forum/viewtopic.php? ... 3#p3132273
Re: AT89c52
[uquote="BOB51",url="/forum/viewtopic.php?p=3138898#p3138898"]Ассемблер для MCS51 от атмел:
http://www.atmel.com/tools/C51ASM.aspx
есть и другое, но либо условно-бесплатное либо "устаревшее"...
С AT89C52 необходимо специальный программатор иметь.
Более простым является использование STK200 с AT89S51/AT89S52 и специальной оболочки ISP programmer.
Как вариант отладчика реального времени - "котуинка":
http://radiokot.ru/forum/viewtopic.php? ... 1#p3104991
и одна из реализаций работы с ней:
http://radiokot.ru/forum/viewtopic.php? ... 3#p3132273
[/uquote]
Спасибо!
программатор есть.
Вопрос только в компиляторе.
KEIL, IAR ставил, но там этой микрухи нет(
а на ассемблере проблематично будет:(
Си компилятор ищу
http://www.atmel.com/tools/C51ASM.aspx
есть и другое, но либо условно-бесплатное либо "устаревшее"...
С AT89C52 необходимо специальный программатор иметь.
Более простым является использование STK200 с AT89S51/AT89S52 и специальной оболочки ISP programmer.
Как вариант отладчика реального времени - "котуинка":
http://radiokot.ru/forum/viewtopic.php? ... 1#p3104991
и одна из реализаций работы с ней:
http://radiokot.ru/forum/viewtopic.php? ... 3#p3132273
Спасибо!
программатор есть.
Вопрос только в компиляторе.
KEIL, IAR ставил, но там этой микрухи нет(
а на ассемблере проблематично будет:(
Си компилятор ищу
Re: AT89c52
СИ...
Для KEIL была версия с локализацией от силабса (за получением надо на силабс идти). Там возможно и переделка под атмел.
Еще (опять же демка) от Raisonance (RIDE7 IDE). Или от https://www.mikroe.com/mikroc/ ...

Для KEIL была версия с локализацией от силабса (за получением надо на силабс идти). Там возможно и переделка под атмел.
Еще (опять же демка) от Raisonance (RIDE7 IDE). Или от https://www.mikroe.com/mikroc/ ...
Re: AT89c52
Как вариант, поставить ATmega8515
Цепь RESET только сделать. Да и делать там особо нечего.
Re: AT89c52
Это ежли человеку захочется именно мегами/тиньками заняться.
Там и диповская ATmega162 пройдет.

Там и диповская ATmega162 пройдет.
- oleg110592
- Друг Кота
- Сообщения: 3832
- Зарегистрирован: Сб сен 10, 2011 17:46:25
Re: AT89c52
Странно, писал ответ что все норм, скачал нужный пакет Кеил и там всетаки появился этот пакет.
Всем спасибо!
Но возникла еще одна интересная штука:
Написал простенькую программу:
В протеусе все работает, но в реальном железе на выходе единичка.
Странно, может не правильно настраиваю?
Всем спасибо!
Но возникла еще одна интересная штука:
Написал простенькую программу:
Спойлер
Код: Выделить всё
#include <REGX52.H>
sfr P1 = 0x90;
sbit P1_0 = P1^0;
sbit P1_1 = P1^1;
sbit P1_2 = P1^2;
sbit P1_3 = P1^3;
sbit P1_4 = P1^4;
sbit P1_5 = P1^5;
sbit P1_6 = P1^6;
sbit P1_7 = P1^7;
void delay(unsigned int itime) {
unsigned int i,j;
for (i=0; i<itime; i++)
for (j=0; j<1275; j++); // 1ms delay
}
void main (void)
{
{
P1_3 = 0;
delay(50);
P1_3 = 1;
delay(50);
}
}Странно, может не правильно настраиваю?
- oleg110592
- Друг Кота
- Сообщения: 3832
- Зарегистрирован: Сб сен 10, 2011 17:46:25
Re: AT89c52
зачем тогда #include <REGX52.H> там уже есть:
http://www.keil.com/dd/docs/c51/atmel/regx52.h
Код: Выделить всё
sfr P1 = 0x90;
.........
/*------------------------------------------------
P1 Bit Registers
------------------------------------------------*/
sbit P1_0 = 0x90;
sbit P1_1 = 0x91;
sbit P1_2 = 0x92;
sbit P1_3 = 0x93;
sbit P1_4 = 0x94;
sbit P1_5 = 0x95;
sbit P1_6 = 0x96;
sbit P1_7 = 0x97;Re: AT89c52
[uquote="oleg110592",url="/forum/viewtopic.php?p=3139174#p3139174"]зачем тогда #include <REGX52.H> там уже есть:
http://www.keil.com/dd/docs/c51/atmel/regx52.h[/uquote]
Без доп объявлений, тоже ноль реакции в железе
Код: Выделить всё
sfr P1 = 0x90;
.........
/*------------------------------------------------
P1 Bit Registers
------------------------------------------------*/
sbit P1_0 = 0x90;
sbit P1_1 = 0x91;
sbit P1_2 = 0x92;
sbit P1_3 = 0x93;
sbit P1_4 = 0x94;
sbit P1_5 = 0x95;
sbit P1_6 = 0x96;
sbit P1_7 = 0x97;Без доп объявлений, тоже ноль реакции в железе
- ARV
- Ум, честь и совесть. И скромность.
- Сообщения: 18561
- Зарегистрирован: Чт дек 28, 2006 08:19:56
- Откуда: Новочеркасск
- Контактная информация:
Re: AT89c52
а что вы хотели-то? вреальном железе вы просто не успеваете заметить, как нолик сменяется единичкой.leftmails писал(а):В протеусе все работает, но в реальном железе на выходе единичка.
leftmails писал(а):void main (void)
{
{
P1_3 = 0;
delay(50);
P1_3 = 1;
delay(50);
}
}
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
Re: AT89c52
[uquote="ARV",url="/forum/viewtopic.php?p=3139595#p3139595"]
Меняя время на увеличение не меняет ситуации.
Даже если просто написать:
То все равно на выходе в железе 1, а в симуляторе все ок. Несколько микрух перепробывал, результат тотже.
Кстати, забыл сказать к этой ножке подтянут резистор 10К через +, тоесть работа происходит через подачу 0
а что вы хотели-то? вреальном железе вы просто не успеваете заметить, как нолик сменяется единичкой.leftmails писал(а):В протеусе все работает, но в реальном железе на выходе единичка.
[/uquote]leftmails писал(а):void main (void)
{
{
P1_3 = 0;
delay(50);
P1_3 = 1;
delay(50);
}
}
Меняя время на увеличение не меняет ситуации.
Даже если просто написать:
Код: Выделить всё
void main (void)
{
{
P1_3 = 0;
}
}Кстати, забыл сказать к этой ножке подтянут резистор 10К через +, тоесть работа происходит через подачу 0
Re: AT89c52
Давай сюды схемку - тогда можно чего подсказать будет.



