Файлы  •  Ссылки  •  Прошивки  •  Правила  •  Архив  •   FAQ  •  Участники  •  Поиск
Регистрация  •  Вход

Язык програмирования С для AVR

Список форумов » Программное обеспечение » Микроконтроллеры На страницу 1, 2  След.
АвторСообщение
pavel-pervomaysk
Your editor
Сообщения: 7972




07-03-2008 19:01

Здесь работаем с примерами и изучением работы на языке С улыбка
Vasil_
Забанен
Забанен
Сообщения: 203




08-03-2008 06:39

Посоветовал бы с начала не брать толстые книги, а примерно такой минимальный набор:
http://linfoline.homedns.org/ansi-c/ansi-c.html
http://www.bookssite.ru/scr/read_117452.html
Библиотеки Си для AVR:
http://hubbard.engr.scu.edu/avr/avrlib/
Популярные IDE, - Integrated Development Environment - интегрированная среда разработки:
(ссылки на производителя ищутся поисковиком)
- CodeVisionAVR (для МК AVR)
- IAR (для любых МК)
- ICC (для МК AVR, msp430, ARM7, Motorola )
- WinAVR (для МК AVR)
- Keil (для МК архитектуры 8051 и ARM)
- HiTECH (для МК архитектуры 8051 и PIC от Microchip)

  C Programming.rar  127,83 КБ  Скачано: 3501 раз(а)

Murka
Профессор
Сообщения: 2750




08-03-2008 23:09

Не знаю стоит ли в данном случае давать советы, но всё таки скажу что изучать стоит универсальное ПО и как по мне то это IAR (C, ассемблер, отладчик - дебажер) т. к. существуют пакеты для различных процессоров, и тогда переход на другую архитектуру не составит большого труда, хотя бы потому что интерфейс программы вам знаком.
Vasil_
Забанен
Забанен
Сообщения: 203




09-08-2008 06:06

GIP, попробуй найти Vitaly, :
http://monitor.net.ru/forum/profile.php?mode=viewprofile&u=2360
мне кажется, он тебе сможет помочь, пока пивка попьете, все будет уже на бортУ.
ЗЫ, с и_фолдыря как раз докачка возможна, даже при смене IP. А вот с рапидшары и депозита при бесплатном доступе- нет.
GarikBaza
Новичок
Сообщения: 667




11-08-2008 16:38

По просьбам трудящихся порезал по 20М и перелил EWAVR 5.10A

На рапидшаре

http://rapidshare.com/files/136506319/for_all_members_monitor_net_ru.p ...
http://rapidshare.com/files/136510281/for_all_members_monitor_net_ru.p ...
http://rapidshare.com/files/136513392/for_all_members_monitor_net_ru.p ...
http://rapidshare.com/files/136521666/for_all_members_monitor_net_ru.p ...
http://rapidshare.com/files/136526212/for_all_members_monitor_net_ru.p ...
http://rapidshare.com/files/136529115/for_all_members_monitor_net_ru.p ...
http://rapidshare.com/files/136529847/for_all_members_monitor_net_ru.p ...

То же на ifolder

Название: for_all_members_monitor_net_ru.part1.rar
Размер: 19.07 Мб
Доступен до: 2008-09-10 17:59:51
Ссылка для скачивания файла: http://ifolder.ru/7673175

Название: for_all_members_monitor_net_ru.part2.rar
Размер: 19.07 Мб
Доступен до: 2008-09-10 18:18:39
Ссылка для скачивания файла: http://ifolder.ru/7673413

Название: for_all_members_monitor_net_ru.part3.rar
Размер: 19.07 Мб
Доступен до: 2008-09-10 18:40:17
Ссылка для скачивания файла: http://ifolder.ru/7673628

Название: for_all_members_monitor_net_ru.part4.rar
Размер: 19.07 Мб
Доступен до: 2008-09-10 19:13:15
Ссылка для скачивания файла: http://ifolder.ru/7674090

Название: for_all_members_monitor_net_ru.part5.rar
Размер: 19.07 Мб
Доступен до: 2008-09-10 19:40:25
Ссылка для скачивания файла: http://ifolder.ru/7674212

Название: for_all_members_monitor_net_ru.part6.rar
Размер: 19.07 Мб
Доступен до: 2008-09-10 20:07:23
Ссылка для скачивания файла: http://ifolder.ru/7674564

Название: for_all_members_monitor_net_ru.part7.rar
Размер: 4.47 Мб
Доступен до: 2008-09-10 20:13:13
Ссылка для скачивания файла: http://ifolder.ru/7674721

ПС На депозите грохнули
GIP
Гость 82.207.*.*





12-08-2008 03:31

Спасибо тебе, о добрый человек!
одобряю
Благодаря разбивке по серверам появилась возможность ставить на закачку сразу две разных ссылки (бесплатно один сервер дает качать лишь один поток, т.е. один файл).
Начал качать - все Ок.
улыбка
GarikBaza писал:
Добавлено 10-08-2008 10:41
пропустил депозит, и туда налью

Кстати, не критично, но просто к слову - не вышло или просто руки не дошли?
GIP
Гость 82.207.*.*





13-08-2008 05:01

Вот еще нашел, в плане обмена опытом:
"Полный IAR AVR 5.11B + генератор ключей на все компиляторы IAR".
http://kazus.ru/forum/topics/f_90216.html#90216
GarikBaza
Новичок
Сообщения: 667




13-08-2008 11:20

News in the current product version
Version 5.11 of IAR Embedded Workbench for AVR includes the following new and enhanced functionality:
Support for Atmel XMEGA family in C-SPY Debugger for Atmel AVR JTAGICE mkII
The C-SPY Debugger for Atmel AVR JTAGICE mkII now supports the new Atmel XMEGA AVR device family.

Support for the Atmel AVR Dragon emulator
Support has been added for the Atmel AVR Dragon emulator.

Для меня ничего интересного
Но скачаю на всяк случай улыбка
Александр777tv
Новичок
Сообщения: 26




20-01-2009 17:01

Библиотека функций С для AVR (дается описание на русском языке):
http://avr-libc.narod.ru/index.html
Komi
Участник
Сообщения: 1396




20-01-2009 17:42

Александр777tv, одобряю хорошая ссылка.
Вот тоже Курс "Программирование МК AVR на Си"
Vitkos
Гость 94.179.*.*





29-01-2009 14:20

Доброго времини суток. Помогите ламеру,так-как програмирую в С++ впервые.
Есть программа, не могу дописать команду чтоб после прохождения цикла она не повторялась (завершить действие)
Пример программы.
#include <90s2313.h>
#include <delay.h>

void main(void)
{
// инициализация (настройка) порта B
DDRB=0xff; // Порт B работает на вывод (т.е. управляет внешней схемой)
PORTB=0xff; // Установить на всех выводах порта B уровень напряжения +5 В

while(1)
{
PORTB.1=0; // Зажечь светодиод
delay_ms(15000);
PORTB.1=1; // Погасить светодиод
delay_ms(2500);
PORTB.2=0; // Зажечь светодиод
delay_ms(15000);
PORTB.2=1; // Погасить светодиод
delay_ms(2500);

} // while(1)

} // main

Спасибо.
GarikBaza
Новичок
Сообщения: 667




29-01-2009 15:29

Vitkos писал:


void main(void)
{
// инициализация (настройка) порта B
DDRB=0xff; // Порт B работает на вывод (т.е. управляет внешней схемой)
PORTB=0xff; // Установить на всех выводах порта B уровень напряжения +5 В

while(1)
{

PORTB.1=0; // Зажечь светодиод
delay_ms(15000);
PORTB.1=1; // Погасить светодиод
delay_ms(2500);
PORTB.2=0; // Зажечь светодиод
delay_ms(15000);
PORTB.2=1; // Погасить светодиод
delay_ms(2500);

} // while(1)

} // main

Спасибо.


Убери то что выделено. И кстати кодвижин - это не C++

Или же

Vitkos писал:

void main(void)
{
// инициализация (настройка) порта B
DDRB=0xff; // Порт B работает на вывод (т.е. управляет внешней схемой)
PORTB=0xff; // Установить на всех выводах порта B уровень напряжения +5 В

PORTB.1=0; // Зажечь светодиод
delay_ms(15000);
PORTB.1=1; // Погасить светодиод
delay_ms(2500);
PORTB.2=0; // Зажечь светодиод
delay_ms(15000);
PORTB.2=1; // Погасить светодиод
delay_ms(2500);

while(1)
{} // while(1)


} // main




так, если собака не включена,

если включена то

Vitkos писал:


while(1)
{} asm("wdr")// while(1)


.

Vitkos
Гость 94.179.*.*





29-01-2009 22:50

GarikBaza, Дружище! да ты просто гений! Спасибо, заработало! Вот еслибы Вы помогли нам ещё в этом:

Как заставить это действие повторятся а то что за ним чтобы шло дальше по программе до логического конца
#include <90s2313.h>
#include <delay.h>

void main(void)
{
// инициализация (настройка) порта B
DDRB=0xff; // Порт B работает на вывод (т.е. управляет внешней схемой)
PORTB=0xff; // Установить на всех выводах порта B уровень напряжения +5 В

PORTB.1=0; // Зажечь светодиод
delay_ms(1000);
PORTB.1=1; // Погасить светодиод
delay_ms(1000);
PORTB.2=0; // Зажечь светодиод
delay_ms(1000);
PORTB.2=1; // Погасить светодиод
delay_ms(1000);
//это действие надо повторять до безконечности

PORTB.3=1;
delay_ms(90000);
PORTB.3=0;
delay_ms(20000);
PORTB.4=1;
delay_ms(20000);
PORTB.4=0;
delay_ms(20000);
while(1)
{} // while(1)

} // main
jeka123456
Гость 95.133.*.*





01-02-2009 22:20

:) Доброго времини суток. Помогите ламеру.
Не могу дописать команду ,чтоб светодиод зажигался только после нажатия на кнопку через вход PORTD.1

void main(void)
{
DDRB=0xff;
PORTB=0xff;
PORTB.1=0;// Зажечь светодиод
while(1)
{} // while(1)
} // main

HELP! HELP! HELP! HELP! HELP! HELP! HELP! HELP!
:cry: :cry: :cry: :cry: :cry: :cry: :cry: :cry: :cry:
GarikBaza
Новичок
Сообщения: 667




02-02-2009 00:25

Vitkos,
Это надо делать в прерываниях на таймере. Тогда программа не будет зависить от миганий.
jeka123456,
допустим кнопка висит на PORTB.5
тогдак код будет
void main(void)
{
DDRB = 0xDF;
PORTB = 0xFF;
PORTB.1=0;// Зажечь светодиод
while(1)
{
if ( PIND.5 == 0 ) PORTB.1=0;// Зажечь светодиод
} // while(1)
} // main

Это исключая дребезг и прочую лабуду
Для начала пойдет, я сам так начинал.
А грамотно - при нажатию на кнопку запускать таймер на 20мс и в прерывании таймера еще раз проверить кнопку, если состояние не изменилось, то принять решение о том что кнопка нажата
jeka123456
Гость 95.133.*.*





02-02-2009 01:42

улыбка Большое тебе спосибо GarikBaza за ценейшую инфу . улыбка улыбка улыбка улыбка у меня на стенде получилось так void main(void)
{
DDRB = 0xDF;
PORTB = 0xFF;
PORTB.1=1;// Погасить светодиод
while(1)
{
if ( PIND.5 == 1 ) PORTB.1=0;// Зажечь светодиод
} // while(1)
} // main спосибо GarikBaza за ценейшую инфу .

Добавлено 02-02-2009 02:22

улыбка Доброго времини суток.
HELP! Есть прога по которой должны мигать светодиоды

void main(void)
{

DDRB=0xff;
PORTB=0xff;

PORTB.0--;
delay_ms(500);
PORTB.1--;
delay_ms(500);
PORTB.2--;
delay_ms(500);
PORTB.3--;
delay_ms(500);
PORTB.4--;
delay_ms(500);
PORTB.5--;
delay_ms(500);
PORTB.6--;
delay_ms(500);


PORTB.0--;
delay_ms(500);
PORTB.1--;
delay_ms(500);
PORTB.2--;
delay_ms(500);
PORTB.3--;
delay_ms(500);
PORTB.4--;
delay_ms(500);
PORTB.5--;
delay_ms(500);
PORTB.6--;
delay_ms(500);


while(1)
{}

}

GarikBaza ты научил меня зажигать нопкой светодиод теперь я твой должник спасибо тебе Огромное!!!!
Вот если б ты ещё помог мне этой кнопкой приводить в действие мою програму!
ФАНАТИК-05
Забанен
Забанен
Сообщения: 29




08-02-2009 15:01

кто нибудь Прошу помощи Прошу помощи Прошу помощи поможет мне с библиотеками на протеус?
Murka
Профессор
Сообщения: 2750




08-02-2009 15:31

ФАНАТИК-05, Тема не про протеус, про библиотеки тема тут http://kazus.ru/forum/topics/11178.html
yuriy.pv
Гость 94.179.*.*





25-12-2009 17:10

http://radioded.ru/content/blogsection/6/44/
GarikBaza
Новичок
Сообщения: 667




20-05-2010 16:17

IAR Embedded Workbench for AVR Version 5.50.1

http://decoding-tool.at.ua/soft/IAR_EW_AVR_v5-50-1.rar.torrent

IAR Embedded Workbench for ARM Version 5.41

http://decoding-tool.at.ua/soft/IAR_Embedded_Workbench_for_ARM_Version ...
GarikBaza
Новичок
Сообщения: 667




27-05-2010 09:39

На раздаче с 10 до 18 с работы, иногда вечером с дома. Скорость нормальная. Встроеным в оперу клиентом не качается. Пользую uTorrent 2.0.2.
Murka
Профессор
Сообщения: 2750




27-05-2010 21:11

Вот теперь нормальненько, спасибо.

Добавлено 27.05.2010 21:12

Подержу некоторое время на раздаче.
Mikstura
Гость 87.119.*.*





06-06-2010 08:26

Спасибо большое за IAR Embedded Workbench for AVR Version 5.50.1, отличная среда программирования и отладки, но, скачал с торрента большим трудом недовольство, огорчение

Перезалил на файлообменник, может кому-то с него удобнее скачать будет:

Depositfiles
ManzVol
Новичок
Сообщения: 2




19-03-2011 13:46

Помогите определиться.

unsigned char *page;

main() {
....
page = malloc(128);
...
}

Сообщение Toolchain:
error: invalid conversion from 'void*' to 'unsigned char*'

При этом по описанию функции malloc "Функция malloc() возвращает указатель типа void *, поэтому его можно присвоить указателю любого типа"
Что делать?
Пробовал
unsigned char (*page);
Бесполезно.
GarikBaza
Новичок
Сообщения: 667




19-03-2011 15:14

unsigned char *page;
page = ( unsigned char * ) malloc ( 128 );
Так делай.
Дело в том что malloc возвращает нетипизированый указатель на void, приведение этого указателя нужно делать ручками.
Murka
Профессор
Сообщения: 2750




19-03-2011 15:27

Так-же есть сомнения что указатель может быть unsigned char, скорее он unsigned int.
GarikBaza
Новичок
Сообщения: 667




19-03-2011 18:43

Murka, Кхе. сам указатель может иметь размерность и инт это зависит от системы ( на АВР до 128к флеш - 16 бит, на ПС - 32 бит ) , а вот УКАЗЫВАТЬ - на unsigned char
Размерность указателя и размерность данных на которые он указывает - это разные вещи
Murka
Профессор
Сообщения: 2750




19-03-2011 19:02

Да это понятно, видимо не помню уже чего я делал, тока IAR упёрся и грит не могет указатель char быть.
ManzVol
Новичок
Сообщения: 2




20-03-2011 10:51

page = ( unsigned char * ) malloc ( 128 );

Всё отлично прошло! Спасибо!
slav0n
Забанен
Забанен
Сообщения: 3366




20-03-2011 20:48

ManzVol писал:
unsigned char *page;

main() {
....
page = malloc(128);
...
}


А почему бы не выделить память через объявление массива? Какой смысл использовать malloc() ?
Код:
unsigned char *page;

main() {
//....
unsigned char buf[128];
//....
page = buf;
//...
}

Kozzy
Участник
Сообщения: 60




03-05-2011 20:52

Помогите ламеру. Впервые пишу на Си (mikroC). Программу попробовал написать по подобию. В общем необходимо, чтобы при подаче питания PIC12F675 записал в 24С32 в определенную область кусок прошивки.
#include "AN997_i2c.h"
#include "AN997_i2c.c"
#define MIRROR 0b10100100 //
#define TARGET 0b10100000 //
#define PAGESIZE 16 //
#define MASSIV 0xA60//
#define SAMS 0
//#define BEEP GPIO.F0
/** V A R I A B L E S **********************************************/
unsigned char flag, clock;
// Data array
const unsigned char samsung[]={ \
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x49,0x4E,0x49,0x54,0x5F,0x5F,0x54,0x4F, \
0x4E,0x45,0x52,0x00,0x00,0x00,0x00,0x01, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, \
//*****Кусок прошивки
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, \
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, \
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, \
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, \
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, \
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, \
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, \
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, \
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, \
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, \
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, \
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, \
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, \
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, \
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, \
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, \
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, \
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, \
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, \
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, \
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, \
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, \
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, \
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, \
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, \
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, \
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, \
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, \
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, \
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, \
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, \
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, \
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, \
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, \
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, \
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, \
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00, \
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, \
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, \
0x00,0x00,0xff,0xff,0x00,0x00,0x00,0x00, 0x02,0xff,0xff,0xff,0x00,0x00,0x00,0x00, \
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff };

/** P R O T O T Y P E S ********************************************/
void init(void); //
void zapis(void); //
//*****************************************************************

//***************************************************************************
// Begin
//***************************************************************************
void main() {
unsigned char i,k,j;
init();
clock=0;
address = 0x00;
control = TARGET;
{flag=SAMS; zapis();} //samsung

// заснуть
//..........................................

asm {
sleep;
}
}

//*************** Рутины *****************

//*********** Инициализация
void init()
{
CMCON=0x07; //
OPTION_REG=0b01000111;
SCL = 1;
TRISIO=0b00001100; //
INTCON=0b10100000; //
}

//****** Запись всего кода в ПЗУ
void zapis()
{
unsigned char i,k;
i=0x7C0;
while (i < MASSIV)
{
address = i;
{LowDensPageWrite((samsung+i),PAGESIZE);}
i=i+0x10;
}

}

Что за переменная clock здесь используется? Нужна ли она?
Каким образом задать адрес микросхемы в которую писать прошивку, если в аппарате микросхем стоит 2-е параллельно?
GarikBaza
Новичок
Сообщения: 667




04-05-2011 12:31

LowDensPageWrite((samsung+i),PAGESIZE)
Ищи эту функцию, она пишет в еепром
Первый параметр - это адрес откуда брать прошивку, второй параметр - размер для записи
Где устанавливается адрес в еепром невидно, походу в этой функции он инкрементируется автоматом.
Список форумов » Программное обеспечение » Микроконтроллеры » Язык програмирования С для AVR На страницу 1, 2  След.
Перейти:  
Текущий раздел » Программное обеспечение » Микроконтроллеры (Микроконтроллеры - AVR-ы, PIC-и и другие)


Похожая информация:
  • Помогите опознать алгоритм програмирования
  • Вопрос про язык C для AVR !?







  • Электроника
    Прошивки и схемы на телевизоры, мониторы, dvd, телефоны. Schematic, Service Manual (mode), eeprom dumps Информация по ремонту для специалистов - справочники, инструкции, энциклопедия, советы и секреты ремонта,  настройка, сервисные режимы поиск и продажа электронных компонентов, магазины, datasheet, pdf, размещение в интернете рекламы на сайтах электронной тематики
    Powered by phpBB 2.0.18 © 2001, 2002 phpBB Group!