Внешний НИЗКИЙ уровень на линию РО. 14 LPC2129, необходимый для запуска обработчика команд ISP, подается с помощью перемычки BSL.
Перемычка JRST используется для подключения линии 4 (DTR) интерфейса RS-232 через цепь согласования уровней (D3, D4, Tl, R8, R9) к входу RESET (RST) микроконтроллера, что дает возможность с помощью программы-загруз-
чика LPC2000 Flash Utility производить «ручной» сброс LPC2129 (см. раздел 31.1 «Загрузка Flash-памяти с помощью LPC2000 Flash Utility*).
Перемычкой BDG линия RTCK интерфейса JTAG целевой системы (отладочной платы) может быть подключена к НИЗКОМУ уровню через резистор сопротивлением 10 кОм, что необходимо для отладки пользовательских приложений в целевой системе (см. раздел 30.1 «Аппаратные средства отладчика C-SPY»).
Питание отладочной платы осуществляется от внешнего источника постоянного напряжения +5 В, и подается через разъем PWR_JACK.
Программная часть каждого проекта включает в себя файл главной функции (основного цикла управляющей программы) main.c, а также приведенные ниже файлы специальных функций и специальных заголовков и определений hardware.c и hardware.fi.
Файл hardware.c
//------------------------------------------------------------------------
// Специальные функции
//------------------------------------------------------------------------
#include "hardware.h" // подключение специальных заголовков и определений //Константы инициализации системы
#define FOSC 14745600 //Частота кварцевого резонатора в Гц
#define VALUEOFM 4 //соответствует PLLCFG_bit.MSEL=3
#define CCLK (FOSC*VALUEOFM) //CCLK = 58.9824 МГц
#define PCLK (CCLK/4) //соответствует VPBDIV_bit.VPBDIV=0;
#define PLOCK 0x0400
//FCCO = CCLK*2*P'= 156...320 МГц, значит, P=2, что соответствует PLLCFG_bit.PSEL=l; #define VIC_TIMER0_bit (1 « VIC_TIMER0)
//Инициализация системы -------------------------------------------------
void CPUinit(void) {
//Настройка PLL (ФАПЧ)
PLLCFG_bit.MSEL=3; //См. Расчет PLL в секции idefine этого файла PLLCFG_bit.PSEL=l; //См. расчет PLL в секции #define этого файла PLLFEED=0xAA; PLLFEED=0x55;
PLLCON_bit.PLLE=l; // Включение PLL (ФАПЧ) без подключения к ядру
PLLFEED=0xAA;
PLLFEED=0x55;
while(!(PLLSTAT & PLOCK)); // Ожидание замыкания петли PLL (ФАПЧ)
PLLCON_bit.PLLC=l; // Подключение PLL (ФАПЧ) к ядру
PLLFEED=0xAA; PLLFEED=0x55;
//Инициализация МАМ и тактовой частоты периферии MAMCR_bit.MODECTRL=0; //Первоначальное отключение МАМ MAMTIM_bit.CYCLES=3; //Рекомендуется для CCLK>40 МГц
MAMCR_bit.MODECTRL=2; //Включение МАМ (функции МАМ полностью реализуются) VPBDIV_bit.VPBDIV=0; //См. расчет PLL в секции Idefine этого файла //Инициализация GPIO
PINSEL0=0; //Младшие линии Р0 являются GPIO
PINSEL1=0; //Старшие линии Р0 являются GPIO
НА ГЛАВНУЮ | | ЧТО ТАКОЕ PIC ? | | ПРОГРАММАТОР | | ПРОЕКТЫ | | СТАТЬИ | | ССЫЛКИ | | КАРТА САЙТА |