Форум Микро-Чип
Поиск и заказ электронных компонентов
 

Вернуться   Форум Микро-Чип > Микроконтроллеры других производителей

Микроконтроллеры других производителей Все, что касается микроконтроллеров и НЕ подошло в раздел Microchip.

Ответ
 
Опции темы Опции просмотра
Старый 17.07.2017, 23:42   #1
Pridnya
Senior Member
 
Регистрация: 21.01.2009
Возраст: 38
Сообщений: 4,444
Вес репутации: 4370/120
Pridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond repute
По умолчанию Вопрос по микроконтроллеру 8051

Здравствуйте, товарищи!
Простой вопрос по давно известному семейству, вроде как все должны знать. IDE Reads51 v4.52, микроконтроллер STC15F2K60S2 (возможно, что это не существенно, просто хороший микроконтроллер и шьется без программатора по UART-у), хочется понять как работает x51 вообще (я с ними никогда не работал):
если просто переключать вывод порта P0_0, то один этот вывод и переключается, а если добавить небольшую задержку (вроде бы обычный синтаксис), то вижу пачки импульсов с некой периодичностью на всех линиях порта P0 (P0_0...P0_7) и примерно аналогичная картина на P1, пачки импульсов на P1_0...P1_5 и P1_7. Странно как-то.
Код:
#include <sfr51.h>

main(){
int n;

 while(1)
  { 
   for(n=0; n<5; n++) {;} // waste some cycles 
   P0_0^=1;
   for(n=0; n<5; n++) {;} // waste some cycles 
   P0_0^=1;  
   }
}
PS: Ежели кому не понятно, почему такой микроконтроллер, то представьте, что нуно импортозамещение и перспектива покупки за юани (без доллара), причем ведрами. Ну, как бы. Это, если кому поругать захочется, вместо ответа на вопрос.
__________________
Прогресс неизбежен.

Последний раз редактировалось Pridnya; 17.07.2017 в 23:56.
Pridnya вне форума   Ответить с цитированием
Старый 18.07.2017, 00:44   #2
bzx
Senior Member
 
Аватар для bzx
 
Регистрация: 25.02.2007
Адрес: St. Petersburg
Возраст: 44
Сообщений: 449
Вес репутации: 1095/54
bzx has much to be proud ofbzx has much to be proud ofbzx has much to be proud ofbzx has much to be proud ofbzx has much to be proud ofbzx has much to be proud ofbzx has much to be proud ofbzx has much to be proud of
Отправить сообщение для bzx с помощью ICQ Отправить сообщение для bzx с помощью Skype™
По умолчанию Re: Вопрос по микроконтроллеру 8051

1. Настройку портов проверьте, регистры PxMDIN, PxMDOUT, P0SKIP, XBR0 и XBR1.
2. WDT отключите, по умолчанию может быть включен.
__________________
Для связи email: info собака qbit.su
bzx на форуме   Ответить с цитированием
Старый 18.07.2017, 09:06   #3
Pridnya
Senior Member
 
Регистрация: 21.01.2009
Возраст: 38
Сообщений: 4,444
Вес репутации: 4370/120
Pridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond repute
По умолчанию Re: Вопрос по микроконтроллеру 8051

Цитата:
Сообщение от bzx Посмотреть сообщение
1. Настройку портов проверьте, регистры PxMDIN, PxMDOUT, P0SKIP, XBR0 и XBR1.
2. WDT отключите, по умолчанию может быть включен.
Регистры в нем по-другому называются. По умолчанию пины настроены как квазидвунаправленный, т.е. позволяет писать в порт и читать порт без перенастройки.
Цитата:
Quasi bidirectional (traditional 8051 I/O port output)
Sink Current up to 20mA, pull-up Current is 270 uA.

A quasi-bidirectional port can be used as an input and output without the need

to reconfigure the port.
Я хотел включить в этом микроконтроллере UART, чтобы с его помощью выводить значения регистров, т.е. использовать отладку через UART, но так и не смог его включить.

На Си для x51 cмог только клокать выводами.

Никак не пойму откуда пачки импульсов, это точно не WDT, импульсы похожи на пакеты UART-а, причем на P0_6 и P0_7 импульсы одинаковые. Похоже, что какой-то кусок кода (не мой) что-то выдает.

Вот пример blink из каталога установки Reads51, лишнее я закомментировал. Размер HEX-а 2 килобайта, что-то многовато для простого клокания, ну да ладно. Если скомпилировать и прошить МК, то на P1_0 сигнал частотой около 1 МГц, вроде все нормально, четвертый скриншот. Может, дело в этой IDE Reads x51 v4.52? Хрень генерит?

Цитата:
#define TRUE 1
#define FALSE 0

#include <sfr51.h> // P1_0 is defined here
// prototypes
//#include <Sio51.h>

main(){
int n;

// --- initialize serial port (9600 Baud) ---
//InitSerialPort0(DEF_SIO_MODE); //DEF_SIO_MODE is defined in <Sio51.h>
//putc('\n');

// endless loop
while(TRUE)
{
P1_0=0; // LED on
//putc('+');
//for(n=0; n<10000; n++); // waste some cycles
P1_0=1; // LED off
//putc('0');
//for(n=0; n<10000; n++); // waste some cycles
}
}
PS: Если код исправить, то частота в два раза уменьшается, т.е. код мой.
Код:
while(TRUE)
  {
  P1_0=0;                 // LED on
  P1_0=0;                 // LED on

  P1_0=1;                 // LED off
  P1_0=1;                 // LED off
  }
}
Изображения
Тип файла: png P0_6 P0_7.PNG (25.8 Кб, 5 просмотров)
Тип файла: png Quasi-bidirectional.PNG (21.3 Кб, 2 просмотров)
Тип файла: png STC ISP.PNG (84.2 Кб, 4 просмотров)
Тип файла: png P1_0 1MHz.PNG (23.3 Кб, 2 просмотров)
__________________
Прогресс неизбежен.

Последний раз редактировалось Pridnya; 18.07.2017 в 09:23.
Pridnya вне форума   Ответить с цитированием
Старый 18.07.2017, 10:20   #4
Zhuk72
Member
 
Аватар для Zhuk72
 
Регистрация: 09.11.2015
Адрес: Baku
Возраст: 45
Сообщений: 97
Вес репутации: 431/12
Zhuk72 is just really niceZhuk72 is just really niceZhuk72 is just really niceZhuk72 is just really niceZhuk72 is just really nice
По умолчанию Re: Вопрос по микроконтроллеру 8051

Попробуйте родной хедер.

Для STC хорошо подходит Keil, они сами его советуют.
Можете выложить целиком исходник, откомпилирую и выложу хекс.
Вложения
Тип файла: zip STC15F2K60S2.zip (2.8 Кб, 7 просмотров)
Zhuk72 вне форума   Ответить с цитированием
Старый 18.07.2017, 10:42   #5
Pridnya
Senior Member
 
Регистрация: 21.01.2009
Возраст: 38
Сообщений: 4,444
Вес репутации: 4370/120
Pridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond repute
По умолчанию Re: Вопрос по микроконтроллеру 8051

Цитата:
Сообщение от Zhuk72 Посмотреть сообщение
Попробуйте родной хедер.

Для STC хорошо подходит Keil, они сами его советуют.
Можете выложить целиком исходник, откомпилирую и выложу хекс.
Спасибо за STC15F2K60S2.H! Вопрос решен. По умолчанию IDE Reads51 v4.52 генерит код для внешней памяти, а нужно переключить на внутреннюю. У меня же на макетке только STC15F2K60S2 (и CH340 USB-UART). Я про это не знал. Теперь строки с задержкой не вносят ничего странного, работает правильно.

PS: Вот UART бы еще включить.
Изображения
Тип файла: png Options.PNG (9.4 Кб, 0 просмотров)
__________________
Прогресс неизбежен.
Pridnya вне форума   Ответить с цитированием
Старый 18.07.2017, 10:56   #6
Zhuk72
Member
 
Аватар для Zhuk72
 
Регистрация: 09.11.2015
Адрес: Baku
Возраст: 45
Сообщений: 97
Вес репутации: 431/12
Zhuk72 is just really niceZhuk72 is just really niceZhuk72 is just really niceZhuk72 is just really niceZhuk72 is just really nice
По умолчанию Re: Вопрос по микроконтроллеру 8051

Все эти хедеры генерятся из прошивальщика. Выбирается из списка слева чип, в правом окне на вкладке Keil ICE жмется кнопка.
Zhuk72 вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы
Опции просмотра
Комбинированный вид Комбинированный вид

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вопрос по ПИД в инерциальной, сильношумящей системе. FlashBack Общетехнические вопросы 4 29.04.2011 17:06
Вопрос по прерываниям RB7-RB4 KSB31 Продукция MICROCHIP 4 15.08.2010 23:53
Вопрос по Altium Designer Iptash Печатный монтаж 2 14.09.2008 14:57
вопрос по PICC EXT_INT Вопросы начинающих 13 26.08.2008 07:53
Вопрос новичка по Си ramonchik Продукция MICROCHIP 3 05.03.2007 16:28


Часовой пояс GMT +3, время: 04:14.


Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd. Перевод: zCarot