Свежие обсуждения
Не про радио

Всем, кого достал 1,2,3 ! Краткий курс.

1 4 5

А мне консультации не по мэйкфайлам бы пригодились (с ними я, в принципе, знаком), а по самому языку Си применительно к МК.

 

применительно к мк только наличие обработчиков прерывания
типа INTERRUPT(SIG_OVERFLOW0)
{
if UP up++; else up = 0;
if DOWN down++; else down = 0;
if MENU menu++; else menu = 0;

...
}

в остальном все так же
обязательный иклюд #include <avr/io.h> для гцц
дальше завит от твоей проги

например вот кусок кода главной функции

int main(void)
{
InitTimer0();
InitPorts();
InitPLL();
lcdInit();
вызываем тут заранее написанные функции для инициализации

теперь опять применительно к мк
sei(); разрешает все прерывания
while(1);
запускаем бесконечный цикл и в нем ничего не делаем

возникает вопрос: а где прога?
а прога сидит в обработчике прерывания
в данном случае SIG_OVERFLOW0 означает, что счетчик переполнился и бесконечный цикл в этот момент прерывается
мк прыгает на какой-то адрес памяти программ, где лежит код обработчика прерываний и начинает от туда выполняться до конца
а потом мк опять попадает в адрес, на котором остановился бесконечный цикл

у меня тут есть идея видеокурса
с таким курсом очень просто начать и его удобней воспринимать, чем голый текст

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

 

Есть идея "билинугального" курса по МК, где каждый пример показывается не только на си, но и с "переводом" на паскаль, просто чтобы было понятно, что какой фрагмент делает.

 

В идеале в курсе должны присутствовать задачи и решения на АСМ Си Паскаль Бейсик

 

Нескромный вопрос - а зачем Паскаль? Асм - понятно, классика жанра. Си - новая классика. Бейсик - для тех, кто не желает лезть в дебри. А Паскаль-??? Хотя... дело хозяйское, конечно.

chav1961: picmaniac, давайте с Вашей стороны постановку
Для затравки могу предложить сделать на AVR то же самое устройство, что и в первом ликбезе по PIC. 4 кнопки и 4 светодиода. Это будет весьма несложно. Алгоритм, в принципе, уже есть. Создадим соответствующую тему в "Микроконтроллерах". Напишем программу для AVR на ассемблере и на Си. Тем временем я подумаю над очередной задачкой.
Только лучше не сразу выкладывать в форум готовый код, а объяснять подробно весь процесс. Желательно даже со скриншотами. Как я сделал вот тут: http://pro-radio.ru/controllers/3435-11/
На первом этапе нас не столько код интересует, сколько сам процесс создания проекта и работы с ним. Код на первом этапе будет играть вспомогательную роль. Освоим работу с CVAVR, AVR Studio, VMLAB или тем, что предложат опытные АВРщики - тогда уже уделим основное внимание самой программе.
Предстоит (лучше уже в новой ветке, не здесь) выбрать МК и среды программирования для асма и для Си.

P.S. Очень не хотелось бы новых стычек с "ним".

 

Со средой и так понятно - AVR-GCC, а МК предлагаю выбрать ATMEGA8. У него нет конкурентов по такому параметру, как отношение цены к числу ног.

 

Num Lock: и так понятно Не стоит спешить как на пожар. Обсудим разные варианты и выберем сообща. Повторяю, лучше не здесь! (всё ИМХО)

 

picmaniac: Повторяю, лучше не здесь! (всё ИМХО)
давай мути тему уже
а то заглохнет все на стадии стучания кулаками по столу

 

picmaniac, давайте, создавайте тему - у Вас рука легкая. Я боюсь - тот в прошлый раз прямиком в мою ветку влез

 

Поехали! http://www.pro-radio.ru/controllers/4743/