Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: с чего начать программу для BF532?
Форум разработчиков электроники ELECTRONIX.ru > Цифровая обработка сигналов - ЦОС (DSP) > Алгоритмы ЦОС (DSP)
PrSt
Запустил свою плату с BF532.

Теперь нужна Ваша помощь. (надеюсь что ктото поможет)
Теперь хочу написать свою программулинку и помигать 2ми светодиодами на этой плате (на PF3 и PF4)
Не могу, ни где в интернете, найти примера типа как проекта - "led blink".
Перерыл пол инета, может искал не правильно както.
...у себя тоже нигде такой пример не нашел.
Искал начиная с этого форума (правда в глюбь не залазил), и кончая http://blackfin.uclinux.org/gf/
Может перемудренно искал както...

...не могу даже найти от куда хидеры тянуть для начала написания программы, вот что обидно, помогите плиз начать программу писать.
...так сказать толкнуть, а дальше я, как гордая птица, сам полечу... 8)

Надеюсь на Вашу помощь!
Заранее спасибо отозвавшимся!


.
bychkov_vladimir
Вы посмотрите в директорию куда установили Visual
там масса готовых примеров.
для Блинка возмите пример для кита 533

если не найдете примером могу снабдить.
что у Вас за плата ? вроде китов под 532 не делают ?
PrSt
Цитата(bychkov_vladimir @ Aug 7 2007, 16:44) *
Вы посмотрите в директорию куда установили Visual
там масса готовых примеров.
для Блинка возмите пример для кита 533

рад бы туда посмотреть, только есть загвоздка 8)))
...у меня нет Visual - у меня LINUX и GCC (bfin-uclinux-gcc)

.
bychkov_vladimir
понял.
еще раз спрошу, что за плата, ?
PrSt
Цитата(bychkov_vladimir @ Aug 7 2007, 16:51) *
понял.
еще раз спрошу, что за плата, ?

плата своя, (тоесть не STAMP, не EZ-KIT) сделанная мной для нашей фирмы под разарабатываемое устройство.
тоесть плата есть, и вроде работает...
по крайней мере я уже загрузился с AT25256, и программу пробовал прошивать, прошивается... (через проект - http://bfmodul.narod.ru/index1.htm) тоесть плата работает, теперь хочу начать писать свой софт к этому контроллеру(процессору).
вот и вопрос родился - как мне начать?

.
bychkov_vladimir
посмотрите пример для 533

ФФФФhttp://upload.com.ua/get/899953544

пример несколько переделанный готового.
спрашивайте в случае чего
PrSt
Цитата(bychkov_vladimir @ Aug 7 2007, 17:54) *
http://upload.com.ua/get/899953544
пример несколько переделанный готового.
спрашивайте в случае чего

не работает эта ссылка, чтото видимо с сайтом... беда там какаято - вот что выдает
Цитата
Warning: Cannot modify header information - headers already sent by (output started at /home/hosting/upload.com.ua/www/htdocs/lib/template.php(127) : eval()'d code:1) in /home/hosting/upload.com.ua/www/htdocs/lib/get_url.php on line 74

попробуйте загрузить это файлик на мой сайт - http://dp.org.ua/upload/index.php

.
bychkov_vladimir
Цитата(PrSt @ Aug 7 2007, 18:19) *
не работает эта ссылка, чтото видимо с сайтом... беда там какаято - вот что выдает

попробуйте загрузить это файлик на мой сайт - http://dp.org.ua/upload/index.php

.



архив Led contol - загрузил Вам
PrSt
Цитата(bychkov_vladimir @ Aug 8 2007, 10:03) *
архив Led contol - загрузил Вам
Огромное Вам спасибо!
(...только Вы забыли указать путь - http://www.dp.org.ua/upload/files/LedControl.zip - может еще кому пригодится...)

Это по ходу то что нужно!!! Правда пример под вижуал как я понял, но ни че... перенесу на Linux...

Чтоже... буду пробовать начинать!
Еще раз спасибо!

.
bychkov_vladimir
Цитата(PrSt @ Aug 8 2007, 11:02) *
Огромное Вам спасибо!
(...только Вы забыли указать путь - http://www.dp.org.ua/upload/files/LedControl.zip - может еще кому пригодится...)

Это по ходу то что нужно!!! Правда пример под вижуал как я понял, но ни че... перенесу на Linux...

Чтоже... буду пробовать начинать!
Еще раз спасибо!

.



Ой про путь забыл ! Сорри .
А так нет за что спасибо
PrSt
Цитата(bychkov_vladimir @ Aug 8 2007, 11:57) *
Ой про путь забыл ! Сорри .

Архив не полный...
Вы еще кое что забыли, вложить файлики:
#include "ccblkfn.h"
#include "sysreg.h"
и
#include <sys\exception.h>
#include <cdefBF533.h>

дайте пожалуйста еще и эти фийлики, а то как-то некоторые вещи не понятны, мысль улавливается а реализации не видно...

.
bychkov_vladimir
Перезалил Вам архив с недостающими хедерами.
Ссылка как я понял та же .
PrSt
Спасибо!

.
PrSt
перекрестный линк с вопросом от сюда - http://electronix.ru/forum/index.php?act=S...=30#entry282417

помогите пожалуйста разобраться что не верно?

прощиваю программу через программу BFloader_20 (http://bfmodul.narod.ru/index1.htm)
я хочу от этой программы - зажечь светодиоды на PF3,PF4.

я загружаюсь с at25256, потом через программу BFloader_20 помещяю LDR файл в at45db041b и ставлю BOOTMODE="11", и CS иагнал подаю на at45db041b

все верно?
но не работает, и я не мойму в чем причина.

не могу понять где у меня проблемма:
- толи не правильно чтото в самой программе, а где не могу найти.
- толи я генерирую не корректно HEX, или LDR файлы...
- толи я не так программитрую бутовый флэш, что маловероятно, но тоже не исключено...
- толи гружусь не правильно как то, так вроде бы же для at45db041b - должно быть BOOTMODE="11"


вот она, сама тестовая программулина:


вот файл сборки и генерерации HEX,LDR файлов
Код
#  Makefile для сборки модулей и компиляции программ для Blackfin
.....
SRC = dkv.c
BINARY = dkv
SRCS = $(wildcard *.c)
HDRS = $(wildcard *.h)
OBJS = $(SRCS:.c=.o)

.PHONY: clean

default:
# Компиляция программы
# ASM
#    $(CCbf)  $(FLAGS) -S dkv.c
# ELF
    $(CCbf)  $(FLAGS) -o $(BINARY) $(SRC)
# Удаление временных файлов
    rm -f *.elf *.gdb *.o *.mod.c
# генерация - HEX, LDR
    $(OBJCOPY) --strip-unneeded -I binary -O ihex $(BINARY) $(BINARY).hex
    ls --color  $(BINARY)  $(BINARY).hex

dkv: dkv.o
    $(OBJS): $(HDRS)
....



но это я получил HEX, а как же мне получить LDR ?



вот С код тестовой программы:
Код
#include <stdio.h>
#define BF532_PROJECT

#ifdef BF532_PROJECT
    #include "cdefBF532.h"
#else
//    #include <cdefBF533.h>
#endif

//--------------------------------------------------------------------------//
void leds_blink(void);
void leds_init(void);
void Init_Flags(void);
void Init_Timers(void);
void Init_EBIU(void);
void Init_Interrupts(void);

//--------------------------------------------------------------------------//
int main (void){
    Init_Flags();
    Init_Timers();
    Init_EBIU();

    while(1){
        leds_blink();
    }

    return 0;
}


//--------------------------------------------------------------------------//
void leds_init(void){
    *pFIO_DIR = 0x001F; // Direction PF0..4 as Output
}

//--------------------------------------------------------------------------//
void leds_blink(void){
    *pFIO_FLAG_C=0xFF;
    *pFIO_FLAG_S=0xFF;
}

//--------------------------------------------------------------------------//
// Function:    ининциализауия_флагов                                                                                                            
// Description:    рассматриваемая функция инициализирует флаг PF8 как вход    
//              и описывает чувствительность по уровню к прерыванию по входу
//                кнопка платы SW7 подсоеденена к восьмому флагу
//--------------------------------------------------------------------------//
void Init_Flags(void)
{
    *pFIO_INEN        = 0x0000; // разрешение буфферизации входного флага 8
    *pFIO_DIR        = 0x001F; // все флаги входные
    *pFIO_EDGE        = 0x0000; // флаг 8 демаскирует прерывание и срабатывает по уровню
    *pFIO_MASKA_D    = 0x0000; // разрешение прерывания PF8
}
//--------------------------------------------------------------------------//
// Function:    Инициализация таймера0                                       //
// Description:    функция инициализирует таймер0 в режиме ШИМ                 //
//                It is used as reference for the 'shift-clock'.                //
//--------------------------------------------------------------------------//
void Init_Timers(void)
{
    *pTIMER0_CONFIG        = 0x0019;
    *pTIMER0_PERIOD        = 0x00800000; //
    *pTIMER0_WIDTH        = 0x00400000; //
    *pTIMER_ENABLE        = 0; //0x0001;     // разрешение работы нулевого таймера
}

//-------------------------------------------------------------------------------------//
// Function:    Init_EBIU                                                               //
//                                                                                       //
// Parameters:    None                                                                   //
//                                                                                       //
// Return:        None                                                                   //
//                                                                                       //
// Description:    Рассматриваемая функция осуществляет инициализацию и разрешение работы //
//              ассинхронных банков памяти для External Bus Interface Unit (EBIU)      //
//              и которая  разрешает доступ к Flash A                                  //
//-------------------------------------------------------------------------------------//
void Init_EBIU(void)
{
    *pEBIU_AMBCTL0    = 0x7bb07bb0;
    *pEBIU_AMBCTL1    = 0x7bb07bb0;
    *pEBIU_AMGCTL    = 0x000f;
}


в общем - помогите разобраться пожалуйста.
заранее большое человеческое спасибо всем откликнувшимся

.
vanokuten
>>но это я получил HEX, а как же мне получить LDR ?
>>вот С код тестовой программы:

В uClinux toolchain есть тузы для генерации ldrок для VSDP из linuxовых elf/flat
ldr-utils называется - смотри туда

Best regards,
Ivan
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.