реклама на сайте
подробности

 
 
> C8051F320, Отладочный набор
evsx1
сообщение Nov 26 2010, 11:24
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 46
Регистрация: 1-11-10
Пользователь №: 60 586



Есть отладочный набор C8051F32X DEVELOPMENT KIT ,у сего девайся на порт 2 подключены на пин0 и пин1 две кнопочки и на пины 2,3 светодиоды.имею простую задачку зажигать диод при нажатии(компилятор IAR)
Код
/-----------------------------------------------------------------------------
#include <ioC8051f320.h>                    // SFR declarations
#include <intrinsics.h>
//-----------------------------------------------------------------------------
// 16-bit SFR Definitions for 'F32x
//-----------------------------------------------------------------------------

__sfr __no_init volatile unsigned short TMR2RL   @ 0xCA;                    // Timer2 reload value
__sfr __no_init volatile unsigned short TMR2     @ 0xCC;                    // Timer2 counter

//-----------------------------------------------------------------------------
// Global CONSTANTS
//-----------------------------------------------------------------------------

#define SYSCLK       24500000 / 8         // SYSCLK frequency in Hz

#define LED P2_bit.P22                          // LED='1' means ON
#define SW2 P2_bit.P0                          // SW2='0' means switch pressed

//-----------------------------------------------------------------------------
// Function PROTOTYPES
//-----------------------------------------------------------------------------
void SYSCLK_Init (void);
void PORT_Init (void);
void Timer2_Init (int counts);
__interrupt void Timer2_ISR (void);

//-----------------------------------------------------------------------------
// MAIN Routine
//-----------------------------------------------------------------------------
void main (void) {

   // disable watchdog timer
   PCA0MD &= ~0x40;                       // WDTE = 0 (clear watchdog timer
                                          // enable)

   SYSCLK_Init ();                        // Initialize system clock to
                                          // 24.5MHz
   PORT_Init ();                          // Initialize crossbar and GPIO
  

   while (1) {
  
    
     if (!P2_bit.P20)  {P2_bit.P22&=0x01;} else {P2_bit.P22==0x00;};
     if (!P2_bit.P21)  {P2_bit.P23&=0x01;} else {P2_bit.P23==0x00;};// код мигания
   }
}

//-----------------------------------------------------------------------------
// SYSCLK_Init
//-----------------------------------------------------------------------------
//
// This routine initializes the system clock to use the internal 24.5MHz / 8
// oscillator as its clock source.  Also enables missing clock detector reset.
//
void SYSCLK_Init (void)
{
   OSCICN = 0x80;                         // configure internal oscillator for
                                          // its lowest frequency
   RSTSRC = 0x08;                         // enable missing clock detector
}


void PORT_Init (void)
{
   XBR0     = 0x00;                      
   XBR1     = 0x40;                      
   P2      &= 0x03;                               // настраиваем пины 0 и 1 на вход
   P2MDOUT |= 0x0C;                       // обозначаем выход для пинов на которых диоды
    P2_bit.P22&=0x00;                       //гасим загорающиеся диоды
       P2_bit.P23&=0x00;                    //гасим загорающиеся диоды
}

Однако условия не выполняются,независимо от того нажата кнопка или нет,такое ощущения что эти пины не настроились на ввод.Ошибка в коде?
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- evsx1   C8051F320   Nov 26 2010, 11:24
- - barabek   Цитата(evsx1 @ Nov 26 2010, 21:24) Однако...   Nov 26 2010, 12:08
|- - evsx1   Цитата(barabek @ Nov 26 2010, 15:08) В IA...   Nov 26 2010, 15:51
|- - Палыч   Цитата(evsx1 @ Nov 26 2010, 18:51) КодP2_...   Nov 26 2010, 16:57
|- - evsx1   Цитата(Палыч @ Nov 26 2010, 19:57) Наверн...   Nov 26 2010, 17:08
- - kosyak©   Цитата(evsx1 @ Nov 26 2010, 14:24) ... ...   Nov 26 2010, 16:35
|- - evsx1   Цитата(kosyak© @ Nov 26 2010, 19:35) Поче...   Nov 26 2010, 16:42
- - kosyak©   У Вас случаем компилятор этот кусок кода не выкину...   Nov 26 2010, 16:52
- - kosyak©   Код вообще не понятный. сам для х51 на ИАр никогда...   Nov 26 2010, 17:09
- - evsx1   в данном случае меня интересуют настройки порта,по...   Nov 26 2010, 17:57
|- - Палыч   Цитата(evsx1 @ Nov 26 2010, 20:57) ...исп...   Nov 26 2010, 20:22
|- - barabek   Цитата(Палыч @ Nov 27 2010, 06:22) Нужно ...   Nov 27 2010, 01:15
|- - evsx1   Цитата(Палыч @ Nov 26 2010, 23:22) Нужно ...   Nov 27 2010, 11:26
|- - Палыч   Цитата(evsx1 @ Nov 27 2010, 14:26) не пон...   Nov 27 2010, 16:38
- - kosyak©   В 51 есть возможность оперировать битами. т.е. Что...   Nov 26 2010, 18:28
- - Sujan   Цитата(evsx1 @ Nov 27 2010, 13:26) Вот,в ...   Nov 28 2010, 12:46


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 22nd June 2025 - 13:34
Рейтинг@Mail.ru


Страница сгенерированна за 0.0137 секунд с 7
ELECTRONIX ©2004-2016