как на языке СИ организовать запись и чтение ОЗУ микроконтроллера? (мега"8") типа команд на асемблере st, sts. ld, ldi
ну вы, блин, даете! ну хотя бы азы языка Си освоили бы!!! ё-моё! вроде и хочется подсказать, но видя такое - просто от возмущения слова исчезают (цензурные)...
_________________ если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе при взгляде на многих сверху ничего не меняется...
Зарегистрирован: Вс мар 04, 2007 01:17:12 Сообщений: 690
Рейтинг сообщения:0
Я понимаю ваше возмущение, осваиваю понемногу, пока новичек в этом. Просто начал изучать программирования мк на асемблере, более менее основы уяснил. Теперь бы на си тоже самое перенести... Естественно изучаю команды си, но если углубляться во все досконально это никакого времени не хватит, а с ним у меня напряженка...
может посоветуете ссылочку на уроки по си для avr?
Я понимаю ваше возмущение, осваиваю понемногу, пока новичек в этом. Просто начал изучать программирования мк на асемблере, более менее основы уяснил. Теперь бы на си тоже самое перенести... Естественно изучаю команды си, но если углубляться во все досконально это никакого времени не хватит, а с ним у меня напряженка...
может посоветуете ссылочку на уроки по си для avr?
Мне кажется, что лучше изучать C не только в связке с АВР а в общем, и по мере обучения применять знания к АВР. Если не хотите "углубляться досконально", то лучше не начинайте, иначе будете постоянно задавать подобные вопросы и толком ничему не научитесь.
На всякий случай книга от "отцов основателей" C http://masterpc.alfaspace.net/books/CCS ... ogramming/ Также смотрите стандарты на C.
А что касается АВР - вам нужно будет выбрать компилятор, которым вы будете пользоваться и изучить мануал к нему.
значит не ответите мне как с озу мк в си оперировать? (считайте это риторическим вопросом)
Давайте я Вам тоже риторический вопрос задам. Вы знаете что такое переменные и массивы, и как они используются в С? Как только узнаете так я Вам отвечу как оперировать с ОЗУ.
Если не хотите "углубляться досконально", то лучше не начинайте, иначе будете постоянно задавать подобные вопросы и толком ничему не научитесь.
+5! я хочу сесть на феррари и побить рекорд скорости в кольцевых гонках... но я новичек (стаж вождения 5 часов)... дайте мне советы, как быстренько научиться водить, как шумахер. а то времени досконально все осваивать нет - гонки скоро...
не смешно?
вот я вам даю ответ на ваш вопрос:
Код:
unsignedchar data; unsignedchar *ptr; // указатель на память // чтение ячекйи по адресу 0х100 ptr = (void*)0x100; data = *ptr; // запись в ячейку 0х200 числа 15 ptr = (void*)0x200; *ptr = 15;
вам стало легче? а если я вам скажу, что применив этот способ, вы огребете такой геморрой (как начинающий), что впору вешеться?
послушайте советов: изучите язык, и работайте. кстати, начинающие успешно обходятся без доступа к произвольным ячейкам памяти и еще кстати: вы спрашивали про аналог LDI... так вот, по вашему вопросу ясно, что вы и с ассемблером знакомы меньше, чем с папой римским... слышать - слышали, да руку не целовали...
_________________ если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе при взгляде на многих сверху ничего не меняется...
Зарегистрирован: Вс мар 04, 2007 01:17:12 Сообщений: 690
Рейтинг сообщения:0
Электроника -это мое увлечение, но к сожалению времени на него по жизни мало. Я столкнулся с тем, что без мк мне не сделать один проект, а раньше я его вообще в руках не держал, извините за откровенность. Вот по крохам собираю пока то что, как мне кажеться, мне нужно для его реализации. Вы же уже серьезно изучили мк и языки программирования, ваше возмущение, как реакция на подобные вопросы понятно.
Про ассемблер я уже писал, что изучил основы, и, на самом деле, пока мне этого хватает. И продолжаю понемногу изучать. А Си попробовать решил, посмотреть на отличия от ассемблера. Все сразу не изучить, так хотя бы выбрать платформу попроще и с нее начать.
А Ваши ответы очень важны для меня. В любом случае Вам большое спасибо. Не сердитесь
Про феррари, это конечно сильно вы... у меня хоть и стаж вождения 10лет, но я не ставлю себя как опытного гонщика
вы тоже извините за резкость... но тут таких, кто просто не желает осваивать ничего, а желает сразу в дамки - толпа! уже наступает отвращение одно и то же по 1000 раз повторять...
Си тем и отличается от ассемблера, что оперирует не отдельными ячейками памяти, а переменными. т.е. для хранения какого-то числа вам практически никогда не нужно знать, в какой именно ячейке (или ячейках) оно хранится. поэтому использование указателей просто на память - это опасный и нежелательный метод, особенно для начинающих.
_________________ если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе при взгляде на многих сверху ничего не меняется...
Доброго дня всем.
Подскажите новичку с парой вопросов, пожалуйста.
Есть CodeVision AVR, есть прошивка в формате .hex , есть файл-листинг, есть файл асмы.
Вопрос состоит в том, как это прошить в МК?
Опыта прошивания нет. Только учусь.
Так же: настройка тактовой частоты делается в CodeWizard? Нужно ли трогать фузы, если пака учусь на бегущих огоньках?
_________________ Только те, кто предпринимают абсурдные попытки, смогут достичь невозможного.
Есть вопросик. Наверняка он уже обсуждался в этой ветке, но перечитывать 30 страниц - глаза на лоб лезут.
Вопрос:
Стоит CVAVR pro 2.03.9. ЧИтал статью о фьюзах, чтобы разобраться и узрел одну разницу между моей прогой, и той, что у других в скринах: у меня в окне "chip phogrammer" нет поля ввода тактовой частоты, которое есть у других.
Если менять другой вид программатора, вместо моего STK200+/300, то поле появляется (например, если ставить стк 500). Но это же не дело!
Как эта проблема решается, и как задавать частоту, если есть внешний генератор (кварц)? Просто фьюзами без указания конкретного значения?
_________________ Только те, кто предпринимают абсурдные попытки, смогут достичь невозможного.
подскажите пожалуйста как правильно выставить задержку в 300 нано секунд. заранее спс
Думаю, если только ассемблерной вставкой #asm("nop"); (можно несколько подряд) и то совсем не для любой частоты генератора тактового подойдет, считать надо.
_________________ Оптимизм х (Опыт + Знания) = const
Aheir, а не мог бы ты помочь расчитать или дать линк на мануальчик гдето это расписано? контроллер у меня тини13, частота по умолчанию. точно даже не знаю какая. наверно 4мгц
Зарегистрирован: Вс мар 04, 2007 01:17:12 Сообщений: 690
Рейтинг сообщения:0
DataLife писал(а):
Есть вопросик. Наверняка он уже обсуждался в этой ветке, но перечитывать 30 страниц - глаза на лоб лезут. Вопрос: Стоит CVAVR pro 2.03.9. ЧИтал статью о фьюзах, чтобы разобраться и узрел одну разницу между моей прогой, и той, что у других в скринах: у меня в окне "chip phogrammer" нет поля ввода тактовой частоты, которое есть у других. Если менять другой вид программатора, вместо моего STK200+/300, то поле появляется (например, если ставить стк 500). Но это же не дело!
Как эта проблема решается, и как задавать частоту, если есть внешний генератор (кварц)? Просто фьюзами без указания конкретного значения?
у меня тоже нет задания тактовой частоты, даже незнаю нафига это вообще нужно. (это может с какой частотой прошивать мк?)
вообще частотота кварца по фьюзам ставиться интервалами, от 1мГц до 4мГц, от 4мГц до 8мГц и т.д., просто выбираешь интервал в который попадает твой кварц, и мк будет работать на частоте, которая указана на корпусе кварца... (почитай даташит на мк)
Сейчас этот форум просматривают: Google [Bot] и гости: 10
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения