[an error occurred while processing this directive]
Ответ:
(«Телесистемы»: Конференция «Цифровые сигнальные процессоры (DSP) и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено east@tercom.ru 29 декабря 2004 г. 11:57
В ответ на: Как в CCS настроить управляющие регистры? отправлено Илюха-ха 28 декабря 2004 г. 20:50


#define GPIO_GPEN_ADDR 0x01b00000 /*GPIO Enable register*/
#define GPIO_GPDIR_ADDR 0x01b00004 /*GPIO Direction register*/
#define GPIO_GPVAL_ADDR 0x01b00008 /*GPIO Value register*/
#define GPIO_GPDH_ADDR 0x01b00010 /*GPIO Delta High register*/
#define GPIO_GPHM_ADDR 0x01b00014 /*GPIO High Mask register*/
#define GPIO_GPDL_ADDR 0x01b00018 /*GPIO Delta Low register*/
#define GPIO_GPLM_ADDR 0x01b0001c /*GPIO Low Mask register*/
#define GPIO_GPGC_ADDR 0x01b00020 /*GPIO Global Control register*/
#define GPIO_GPPOL_ADDR 0x01b00024 /*GPIO Interrupt Polarity register*/


#define GPIO_GPEN (*(volatile unsigned int *)GPIO_GPEN_ADDR)
#define GPIO_GPDIR (*(volatile unsigned int *)GPIO_GPDIR_ADDR)
#define GPIO_GPVAL (*(volatile unsigned int *)GPIO_GPVAL_ADDR)
#define GPIO_GPDH (*(volatile unsigned int *)GPIO_GPDH_ADDR)
#define GPIO_GPHM (*(volatile unsigned int *)GPIO_GPHM_ADDR)
#define GPIO_GPDL (*(volatile unsigned int *)GPIO_GPDL_ADDR)
#define GPIO_GPLM (*(volatile unsigned int *)GPIO_GPLM_ADDR)
#define GPIO_GPGC (*(volatile unsigned int *)GPIO_GPGC_ADDR)
#define GPIO_GPPOL (*(volatile unsigned int *)GPIO_GPPOL_ADDR)

#define SET_REG(reg,val) \
((reg)= (val))

void config_gpio();
#pragma CODE_SECTION (config_gpio, "function");
void config_gpio(){
SET_REG(GPIO_GPDIR,0x0000fe0d); /* GPIO Direction Register 0x01B00004 */
SET_REG(GPIO_GPEN,0x0000fe7d); /* GPIO Enable Register 0x01B00000 */
SET_REG(GPIO_GPVAL,0x00003e0d); /* GPIO Value Register 0x01B00008*/
/* SET_REG(GPIO_GPDH,0x00000000);
SET_REG(GPIO_GPDL,0x00000000);*/
SET_REG(GPIO_GPGC,0x00000001); /* GPIO Global Control Register 0x01B00020*/
/* 0 bit(GPINTDV) - 1 Value Mode
1 bit(LOGIC) - 0
2 bit(GPINTPOL) - 0
4 bit(GPINTOM) - 0 Pass Throuth Mode
5 bit(GPOM) - 0 GPIO mode */
SET_REG(GPIO_GPPOL,0x00000000); /* GPIO Interrupt Polarity Register 0x01B00024*/
/* 0 bit(GPINT0POL) - 0
4 bit(GPINT4POL) - 0
5 bit(GPINT5POL) - 0
6 bit(GPINT6POL) - 0
7 bit(GPINT7POL) - 0
GPINTxPOL = 0; GPINTx is asserted (high) based on a rising edge
of GPx (effectively based on the value of the corresponding GPxVAL) */
/*SET_REG(GPIO_GPHM,0x00000030);*/ /*GPIO High Mask Register 0x01B00014*/
/* 4 bit(GP4) - 1 interupt/event generation enable
5 bit(GP5) - 1 interupt/event generation enable */
/*SET_REG(GPIO_GPLM,0x00000000);*/ /*GPIO Low Mask Register 0x01B0001c*/
/* 4 bit(GP4) - 0 interupt/event generation disable
5 bit(GP5) - 0 interupt/event generation disable */
}

Составить ответ  |||  Конференция  |||  Архив

Ответы


Отправка ответа

Имя (обязательно): 
Пароль: 
E-mail: 

Тема (обязательно):
Сообщение:

Ссылка на URL: 
Название ссылки: 

URL изображения: 


Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru