Перейти к содержанию
    

Хочу изучить язык С. Прошу помощи.

Хочу изучить С, а то хвалят, хвалят :) Есть опыт программирования на асме - работаю с AVRStudio.

Не подскажет ли кто-нибудь из знатоков, где можно найти (скачать) литературу по обучению программированию на С для AVR? Желательно на русском. Сейчас начал изучать С по имеющейся книге с уклоном на программирование для компов.

Писать проги, наверное, буду в CodeVisionAVR C Compiler. Можно ли в этой проге пошагово гонять свою программу, просматривать содержимое памяти, регистров и пр.?

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

CV - только компилятор, отладка и симуляция - в AVR Studio, он поддерживает отладку программы в сишных исходниках (через создаваемый при компиляции COFF-файл). Из CV студия вызывается нажатием кнопки в тулбаре.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

где можно найти (скачать) литературу по обучению программированию на С для AVR? Желательно на русском.

Лучше всего начинать с книги Кернигана и Ритчи "Язык программирования Си". В интернете ее нетрудно найти, в т.ч. на русском, например http://masterpc.alfaspace.net/books/CCScie...amming/preface/

 

Осваивать язык лучше всего на РС, безо всяких заморочек с мелкоконтроллерами ("С для AVR" - это примерно как "чернила для шестого класса" (с)). Чтобы жизнь медом не казалась, лучше осваивать "чистый С" (или т.н. ANSI C), безо всяких С++ добавок. Например, можно установить Dev-C++ http://bloodshed.net/dev/ и создать консольный проект на чистом С. По своей глюкавости и по убогости средств отладки Dev-C++ хорошо соответствует тому, чем впоследствии придется пользоваться для embedded. Как известно, "тяжело в ученьи - легко в бою" (с)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Спасибо, статьи начинаю скачивать и изучать.

Насчет отладчика. Первоначально в CV прописан сам CV (при нажатии кнопки "запуск отладчика" запускается CV), получается надо изменить Directory and Filename? Чтобы запускалась AVRStudio?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ой, беда, беда, огорчение!!!

СV то у меня 1.23.8d - демка, а у нее ограничение на размер программы.

Подскажите, где можно скачать работающую версию программы?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А как узнать, как в Си вычисляются тригонометрические функции и операции с плавающей запятой? Сам алгоритм вычисления. Есть ли такие алгоритмы и на асме?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А как узнать, как в Си вычисляются тригонометрические функции и операции с плавающей запятой? Сам алгоритм вычисления. Есть ли такие алгоритмы и на асме?

 

Если вычислительный модуль не поддерживает аппаратного вычисления тригонометрических ф-й, то можно использовать, например, выч-е с помощью рядов Маклорена:

sin(x)=X - X^3/3! + X^5/5! - ... + (-1)^k*(X^(2k+1)/(2k+1)!) , k=0,1,2,3,4,5.....

cos(x)=1- X^2/2! + X^4/4! - ... + (-1)^k*((X^2k)/2k!) , k=0,1,2,3,4,5.....

и т.д.

погрешность не более последнего отброшенного члена ряда (по модулю).

Но данный метод довольно медленный. Более быстрым является метод составления таблицы значений функций заранее и выбор результатов(с интерполяцией) из нее во время работы.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А что подскажете почитать про Си именно для микроконтроллеров? (обычный Си основы знаю) Желательно на английском.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

По моему мнению , которое может и быть ошибочным процесс програмирования на языке С для Embedded , не может быть ограничен одним лишь языком - это всего лиш верзушка айсберга.

Думаю что следуюшие знания или инфомация просто необходима для серьезного разработчика (коим сам пока что не являюсь):

- язык С ))

- библиотека C

- abstract data structures and algorythms

- Real Time programming theory and RTOS, interprocess communication ...

- конкретно знание железа на котором работаешь

- про электронику , аналоговую и дискретную чуть не забыл)

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

 

Буду рад если кто нибудь дополнит этот список, написанный скорее рукой моей безграмотности нежели желанием пустить пыль в глаза.

 

Есть подборка книг на любую из вышеперечисленных тем. Большинство на английском. Скину список сюда позднее ...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Есть подборка книг на любую из вышеперечисленных тем. Большинство на английском. Скину список сюда позднее ...

Буду признателен.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Извиняюсь за задержку - harddisk в мусорку превратился . Вот эти пока что первыми нашел . Хорошо бы узнать мнение народа на форуме по поводу представленных книг и их варианты.

Наверняка некоторые из представленных могут быть и не самые хорошие но это то что у меня есть. В основном по обшему С но есть несколько и для ембеддед. Начинать думаю надо с Керинигана Ритсше , мое мнение что лучше на языке оригинала , но многие могут и не согласиться со мной. Некоторые из книг есть на фтп .

 

Linkers and loaders

ANSI C Rationale

C and Data Structures

The ANSI C programming language K&R

Sams - Advanced C

Hackers Delight

ISO9899 C Language 1999.04

The Practice of Programming Kernigan

MuCOS II The Real Time Kernel(with source)

Designing Embedded Communications Software

Embedded Controller Hardware Design

Embedded Microprocessor Systems Real World Design

Programming Embedded Systems in C and C++

 

Если нужно могу сбросить на фтп или куда нибудь еше. Здесь места не хватит.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Designing Embedded Communications Software

Embedded Controller Hardware Design

Embedded Microprocessor Systems Real World Design

Programming Embedded Systems in C and C++

 

Если нужно могу сбросить на фтп или куда нибудь еше. Здесь места не хватит.

вот эти, пожалуйста.

ftp://upload:[email protected]:2100/

огромное спасибо.

 

если не получится на фтп тот, то на alexТОЧКАyakavenkaНАgmail.com

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...